diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..c2658d7 --- /dev/null +++ b/.dockerignore @@ -0,0 +1 @@ +node_modules/ diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index e53c474..d927dae 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -5,9 +5,8 @@ name: CI # Controls when the workflow will run on: push: - branches: [ master, Stable-Test, QA-Test ] + branches: [master, Stable-Test, QA-Test] pull_request: - branches: [ master, Stable-Test, QA-Test ] # Allows you to run this workflow manually from the Actions tab workflow_dispatch: @@ -27,21 +26,28 @@ jobs: # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4.2.1 - - name: Use Node.js 19.6.0 + - name: Use Node.js 20.15.1 uses: actions/setup-node@0a44ba7841725637a19e28fa30b79a866c81b0a6 # v4.0.4 with: - node-version: '19.6.0' - - - name: Install truffle - run: npm install -g truffle + node-version: "20.15.1" - name: NPM Login - run: npm config set //npm.pkg.github.com/:_authToken ${{ secrets.GITHUB_TOKEN }} + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + run: npm config set //npm.pkg.github.com/:_authToken $GITHUB_TOKEN - name: Install dependencies run: npm ci - # - name: Lint source and tests - # run: npm run lint + + - name: Lint contracts + run: npm run lint:sol + + - name: Compile contracts + run: npm run compile + + - name: Lint test and scripts + run: npm run lint:ts + - name: Unit test smart contracts run: npm test # - name: Coverage report diff --git a/.github/workflows/dependency-review.yml b/.github/workflows/dependency-review.yml index 448b1bd..1bc4eae 100644 --- a/.github/workflows/dependency-review.yml +++ b/.github/workflows/dependency-review.yml @@ -6,7 +6,7 @@ # PRs introducing known-vulnerable packages will be blocked from merging. # # Source repository: https://github.com/actions/dependency-review-action -name: 'Dependency Review' +name: "Dependency Review" on: [pull_request] permissions: @@ -14,9 +14,14 @@ permissions: jobs: dependency-review: + permissions: + contents: read + pull-requests: write runs-on: ubuntu-latest steps: - - name: 'Checkout Repository' + - name: "Checkout Repository" uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4.2.1 - - name: 'Dependency Review' + - name: "Dependency Review" uses: actions/dependency-review-action@5a2ce3f5b92ee19cbb1541a4984c76d921601d7c # v4.3.4 + with: + comment-summary-in-pr: true diff --git a/.github/workflows/scorecard.yml b/.github/workflows/scorecard.yml index b50e0e9..1491a2c 100644 --- a/.github/workflows/scorecard.yml +++ b/.github/workflows/scorecard.yml @@ -2,9 +2,9 @@ name: Scorecard supply-chain security on: branch_protection_rule: schedule: - - cron: '0 0 * * 1' + - cron: "0 0 * * 1" push: - branches: [ "master" ] + branches: ["master"] permissions: read-all diff --git a/.github/workflows/slither.yml b/.github/workflows/slither.yml index 61f3f9a..098d088 100644 --- a/.github/workflows/slither.yml +++ b/.github/workflows/slither.yml @@ -13,13 +13,15 @@ jobs: steps: - uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4.2.1 - - name: Use Node.js 19.6.0 + - name: Use Node.js 20.15.1 uses: actions/setup-node@0a44ba7841725637a19e28fa30b79a866c81b0a6 # v4.0.4 with: - node-version: '19.6.0' + node-version: "20.15.1" - name: NPM Login - run: npm config set //npm.pkg.github.com/:_authToken ${{ secrets.GITHUB_TOKEN }} + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + run: npm config set //npm.pkg.github.com/:_authToken $GITHUB_TOKEN - name: Install dependencies run: npm ci diff --git a/.gitignore b/.gitignore index a92703b..b628d12 100644 --- a/.gitignore +++ b/.gitignore @@ -11,3 +11,21 @@ coverage.json .DS_Store integration-test/test.config.json .env + +node_modules +.env + +# Hardhat files +/cache +/artifacts + +# TypeChain files +/typechain +/typechain-types + +# solidity-coverage files +/coverage +/coverage.json + +# Hardhat Ignition default folder for deployments against a local node +ignition/deployments/chain-31337 diff --git a/.nvmrc b/.nvmrc new file mode 100644 index 0000000..1efe0ac --- /dev/null +++ b/.nvmrc @@ -0,0 +1 @@ +v20.15.1 diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index a3e788b..3023cd6 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -1,35 +1,44 @@ repos: -- repo: https://github.com/gitleaks/gitleaks - rev: v8.16.3 - hooks: - - id: gitleaks -- repo: https://github.com/jumanjihouse/pre-commit-hooks - rev: 3.0.0 - hooks: - - id: shellcheck -- repo: https://github.com/pre-commit/pre-commit-hooks - rev: v4.4.0 - hooks: - - id: "trailing-whitespace" - - id: "end-of-file-fixer" - exclude: '\.tf\.json$' - - id: "check-yaml" - args: - - "--unsafe" - - id: "check-executables-have-shebangs" - - id: "check-case-conflict" -# Project specific -- repo: local - hooks: - - id: code-style - name: Project Style Check - entry: npm run lint - language: system - types: [solidity] -- repo: local - hooks: - - id: unit-tests - name: Project Unit Tests - entry: npm run test - language: system - types: [solidity, javascript] + - repo: https://github.com/gitleaks/gitleaks + rev: v8.16.3 + hooks: + - id: gitleaks + - repo: https://github.com/jumanjihouse/pre-commit-hooks + rev: 3.0.0 + hooks: + - id: shellcheck + - repo: https://github.com/pre-commit/pre-commit-hooks + rev: v4.4.0 + hooks: + - id: "trailing-whitespace" + - id: "end-of-file-fixer" + exclude: '\.tf\.json$' + - id: "check-yaml" + args: + - "--unsafe" + - id: "check-executables-have-shebangs" + - id: "check-case-conflict" + # Project specific + - repo: local + hooks: + - id: code-style + name: Check contract code style + entry: npm run lint:sol + language: system + types: [file] + files: ^.*\.sol$ + - repo: local + hooks: + - id: code-style + name: Check typescript code style + entry: npm run lint:ts + language: system + types: [file] + files: ^.*\.ts$ + - repo: local + hooks: + - id: unit-tests + name: Project Unit Tests + entry: npm run test + language: system + types: [solidity, ts] diff --git a/.prettierignore b/.prettierignore new file mode 100644 index 0000000..a60d955 --- /dev/null +++ b/.prettierignore @@ -0,0 +1,9 @@ +build +contracts +typechain-types +artifacts +cache +node_modules +errorCodes.json +coverage/ +coverage.json diff --git a/.prettierrc b/.prettierrc new file mode 100644 index 0000000..0967ef4 --- /dev/null +++ b/.prettierrc @@ -0,0 +1 @@ +{} diff --git a/.solhint.json b/.solhint.json index 3f87b3e..958ba16 100644 --- a/.solhint.json +++ b/.solhint.json @@ -2,10 +2,7 @@ "extends": "solhint:recommended", "rules": { "avoid-throw": "off", - "compiler-version": [ - "error", - "^0.8.3" - ], + "compiler-version": ["error", "^0.8.18"], "max-line-length": ["error", 120], "max-states-count": ["error", 20], "avoid-tx-origin": "off", @@ -23,4 +20,4 @@ "no-unused-vars": "error", "no-empty-blocks": "off" } -} \ No newline at end of file +} diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 2e6bf6f..66c04e0 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -1,4 +1,5 @@ # Contributing + ## How to contribute to RSK These are mostly guidelines, not rules. Use your best judgment, and feel free to propose changes to this document in a pull request. @@ -7,15 +8,15 @@ These are mostly guidelines, not rules. Use your best judgment, and feel free to Continued code reviews and audits are required for security. As such, we encourage interested security researchers to: -* Review our code, even if no contributions are planned. -* Publish their findings whichever way they choose, even if no particular bug or vulnerability was found. We can all learn from new sets of eyes and benefit from increased scrutiny. +- Review our code, even if no contributions are planned. +- Publish their findings whichever way they choose, even if no particular bug or vulnerability was found. We can all learn from new sets of eyes and benefit from increased scrutiny. ### Code contributions A code contribution process starts with someone identifying a need for writing code. If you're thinking about making your first contribution, we suggest you take a moment to get in touch and see how your idea fits in the development plan: -* Is it a bug in our [issue tracker](https://github.com/rsksmart/liquidity-bridge-contract/issues)? -* Is it a novel idea that should be proposed and discussed first? +- Is it a bug in our [issue tracker](https://github.com/rsksmart/liquidity-bridge-contract/issues)? +- Is it a novel idea that should be proposed and discussed first? #### Review process @@ -30,9 +31,9 @@ We make use of GitHub Checks to ensure all changes meet a certain criteria: Since this is a security-sensitive project, we encourage everyone to be proactive and participate in the review process. To help collaboration we propose adhering to these conventions: -* **Request changes** only for correctness and security issues. -* **Comment** when leaving feedback without explicit approval or rejection. This is useful for design and implementation discussions. -* **Approve** when changes look good from a correctness, security, design and implementation standpoint. +- **Request changes** only for correctness and security issues. +- **Comment** when leaving feedback without explicit approval or rejection. This is useful for design and implementation discussions. +- **Approve** when changes look good from a correctness, security, design and implementation standpoint. All unit and integration tests pass without loss of coverage (e.g can't remove tests without writing equivalent or better ones). @@ -46,7 +47,7 @@ When automatic code quality and security checks are ready in the pipeline for ex ### Pull request etiquette -* Separate your changes into multiple commits -* If your pull request gets too big, try to split it -* Each commit should at least compile, and ideally pass all unit tests -* Avoid merge commits, and always rebase your changes on top of `master` +- Separate your changes into multiple commits +- If your pull request gets too big, try to split it +- Each commit should at least compile, and ideally pass all unit tests +- Avoid merge commits, and always rebase your changes on top of `master` diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..5538be9 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,27 @@ +FROM node:20.15.1@sha256:6326b52a508f0d99ffdbfaa29a69380321b215153db6f32974835bac71b38fa4 + +RUN apt-get update -y && \ + apt-get install -y -qq --no-install-recommends jq && \ + apt-get clean + +USER node + +WORKDIR /home/node + +COPY --chown=node:node package.json \ + package-lock.json \ + deploy.sh \ + .solhint.json \ + hardhat.config.ts \ + tsconfig.json \ + addresses.json ./ + +RUN npm ci --ignore-scripts + +COPY --chown=node:node tasks ./tasks +COPY --chown=node:node scripts ./scripts +COPY --chown=node:node contracts ./contracts + +RUN npm run compile + +ENTRYPOINT [ "./deploy.sh" ] diff --git a/README.md b/README.md index 1272be2..feacd42 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,5 @@ # Liquidity Bridge Contract + [![OpenSSF Scorecard](https://api.scorecard.dev/projects/github.com/rsksmart/liquidity-bridge-contract/badge)](https://scorecard.dev/viewer/?uri=github.com/rsksmart/liquidity-bridge-contract) The Liquidity Bridge Contract (LBC) manages the interaction between users and liquidity providers (LP) in order to achieve fast peg-ins and peg-outs. @@ -10,7 +11,7 @@ The Liquidity Bridge Contract (LBC) manages the interaction between users and li 3. After a number of confirmations, the LP performs a call in RSK on behalf of the user advancing the funds 4. After the deposit achieves a number of additional confirmations, the Bridge contract refunds the LBC in RBTC. The LBC then pays the LP for the service. -Note that the call performed by the LP can be a transfer of value to an account or a call to a contract method. This is specified by the ``value`` and ``data`` arguments of the call. +Note that the call performed by the LP can be a transfer of value to an account or a call to a contract method. This is specified by the `value` and `data` arguments of the call. ## PegOut process @@ -20,11 +21,12 @@ Note that the call performed by the LP can be a transfer of value to an account 4. After the deposit achieves a number of additional confirmations, the LP calls refundPegout function in LBC so the contract refunds the LP in RBTC and pay him for the service 5. Once the LP has been refunded with RBTC he sends that RBTC to the Bridge contract to convert it to BTC and get the liquidity back - ## Quote + The quote structure defines the conditions of a service, and acts as a contract between users and LPs. ### PegIn Quote + PegIn Quotes consist of: PeginQuote { @@ -83,100 +85,149 @@ PegOut Quotes consist of: ) returns bool success This method performs a call on behalf of a user. + #### Parameters + * quote: The quote that identifies the service + #### Return value + Boolean indicating whether the call was successful ### **registerPegIn** function registerPegIn( - Quote quote, + Quote quote, bytes signature, bytes btcRawTransaction, bytes partialMerkleTree, uint256 height - ) returns int executionStatus + ) returns int executionStatus This method requests the Bridge contract on RSK a refund for the service. + #### Parameters + * quote The quote of the service * signature The signature of the quote * btcRawTransaction The peg-in transaction * partialMerkleTree The merkle tree path that proves transaction inclusion * height The block that contains the peg-in transaction + #### Return value + This method returns the amount transferred to the contract or an [error code](https://github.com/rsksmart/RSKIPs/blob/fast-bridge-alternative/IPs/RSKIP176.md#error-codes). ### **isOperational** + function isOperational(address addr) external view returns (bool) + Checks whether a liquidity provider can deliver a pegin service + #### Parametets + * addr: address of the liquidity provider + #### Return value + Whether the liquidity provider is registered and has enough locked collateral ### **isOperationalForPegout** + function isOperationalForPegout(address addr) external view returns (bool) + Checks whether a liquidity provider can deliver a pegout service + #### Parametets + * addr: address of the liquidity provider + #### Return value + Whether the liquidity provider is registered and has enough locked pegout collateral ### **register** + function register( string memory _name, string memory _apiBaseUrl, bool _status, string memory _providerType ) external payable onlyEoa returns (uint) + Registers msg.sender as a liquidity provider with msg.value as collateral + #### Parametets + * name: name of the LP * apiBaseUrl: url of this LP's Liquidity Provider Server instance * status: if the LP is active * providerType: if the LP allows pegin operations, pegout operations or both + #### Return value + The registered provider ID ### **getProviders** + function getProviders() external view returns (LiquidityProvider[] memory) + Retrieves the information of a group of liquidity providers + #### Return value + Array with the information of the requested LPs ### **getProvider** + function getProvider(address providerAddress) external view returns (LiquidityProvider memory) + Retrieves the information of a specific liquidity provider, regardless if it has resigned or has been disabled + #### Parameters + * providerAddress: address of the provider to fetch + #### Return value + Information of the requested LP ### **withdrawCollateral** + function withdrawCollateral() external + Used to withdraw the locked collateral. It is only for LPs who have resigned ### **resign** + function resign() external + Used to resign as a liquidity provider ### **addCollateral** + function addCollateral() external payable + Increases the amount of collateral of the sender ### **addPegoutCollateral** + function addPegoutCollateral() external payable + Increases the amount of pegout collateral of the sender ### **withdraw** + function withdraw(uint256 amount) external + Used by LPs to withdraw funds + #### Parameters + * amount: the amount to withdraw ### **refundPegOut** + function refundPegOut( bytes32 quoteHash, bytes calldata btcTx, @@ -184,8 +235,11 @@ Used by LPs to withdraw funds uint256 partialMerkleTree, bytes32[] memory merkleBranchHashes ) public + Validates that the LP made the deposit of the service and applies the corresponding punishments if any apply + #### Parametets + * quoteHash: the hash of the pegout quote representing the service * btcTx: raw btc transaction * btcBlockHeaderHash: header of the block where the transaction was included @@ -193,115 +247,148 @@ Validates that the LP made the deposit of the service and applies the correspond * merkleBranchHashes: merkleBranchHashes used by the bridge to validate transaction ### **refundUserPegOut** + function refundUserPegOut( bytes32 quoteHash ) public + Allows user to get his money back if LP didn't made the BTC deposit + #### Parametets + * quote: the hash of the pegout quote to be refunded ### **depositPegout** + function depositPegout( PegOutQuote memory quote, bytes memory signature ) external payable + Used by the user to deposit the payment of a pegout service + #### Parametets + * quote: the accepted pegout quote * signature: signature of the LP expressing commitment to pay for the quote ### **setProviderStatus** + function setProviderStatus( uint _providerId, bool status ) external + Enables or disables an specific liquidity provider + #### Parametets + * _providerId: the id of the provider to modify its status * status: the new status ### **updateProvider** + function updateProvider( string memory _name, string memory _url ) external + Updates the stored information about the LP (msg.sender) + #### Parametets + * _name: the new provider name * _url: the new LPS url ### **isPegOutQuoteCompleted** + function isPegOutQuoteCompleted( bytes32 quoteHash ) external view returns (bool) + Returns whether a given quote has been completed (refunded to the LP or the user) or not + #### Parametets + * quoteHash: hash of the pegout quote ### **deposit** + function deposit() external payable + Allows the LP to increase its balance by the msg.value amount ## **validatePeginDepositAddress** + validatePeginDepositAddress( PeginQuote memory quote, bytes memory depositAddress ) external view returns (bool) + Validates if a given BTC address is the derivate deposit address for a pegin quote - * quote: the quote of the pegin service - * depositAddress: the bytes of the deposit address to validate (should include the 4 bytes of the base58check checksum) +_ quote: the quote of the pegin service +_ depositAddress: the bytes of the deposit address to validate (should include the 4 bytes of the base58check checksum) + #### Return value + Whether the address is the correct deposit address for that quote or not ## **hashQuote** + hashQuote( PeginQuote memory quote ) public view returns (bytes32) -Calculates hash of a pegin quote. Besides calculation, this function also validates the quote. - * quote: the pegin quote to hash + +Calculates hash of a pegin quote. Besides calculation, this function also validates the quote. \* quote: the pegin quote to hash + #### Return value + The 32 bytes of the quote hash ## **hashPegoutQuote** + hashPegoutQuote( PegOutQuote memory quote ) public view returns (bytes32) -Calculates hash of a pegout quote. Besides calculation, this function also validates the quote. - * quote: the pegout quote to hash + +Calculates hash of a pegout quote. Besides calculation, this function also validates the quote. \* quote: the pegout quote to hash + #### Return value + The 32 bytes of the quote hash ## **getBalance** + getBalance( address addr ) external view returns (uint256) -Returns the amount of funds of a liquidity provider - * addr: The address of the liquidity provider + +Returns the amount of funds of a liquidity provider \* addr: The address of the liquidity provider + #### Return value + The balance of the liquidity provider ## **getCollateral** + getCollateral( address addr ) external view returns (uint256) -Returns the amount of pegin collateral locked by a liquidity provider - * addr: The address of the liquidity provider + +Returns the amount of pegin collateral locked by a liquidity provider \* addr: The address of the liquidity provider + #### Return value + The amount of locked collateral for pegin operations ## **getPegoutCollateral** + getPegoutCollateral( address addr ) external view returns (uint256) -Returns the amount of pegout collateral locked by a liquidity provider - * addr: The address of the liquidity provider -#### Return value - The amount of locked collateral for pegout operations -### Deploy and Upgrade +Returns the amount of pegout collateral locked by a liquidity provider \* addr: The address of the liquidity provider -After the first dploy we don't have to change anymore the LiquidityBridgeContract.sol instead we need to create a new version like LiquidityBridgeContractV2.sol and uncomment and update the 3_upgrade_contracts.js script with the last version that will upgrade the contract. -With that we can easily get back on any mistake and swicth version. +#### Return value -#### Alphanet support -If you're working in your own alphanet you must have an environment variable called `ALPHANET_RPC_URL` with the RPC server url so truffle can run all the necessary scripts. + The amount of locked collateral for pegout operations diff --git a/SECURITY.md b/SECURITY.md index 17b1f50..4e41b68 100644 --- a/SECURITY.md +++ b/SECURITY.md @@ -14,16 +14,16 @@ For all security related issues, Liquidity Bridge Contract has two main points o RootstockLabs will make a best effort to meet the following response times for reported vulnerabilities: -* Time to first response (from report submit) - 5 business days -* Time to triage (from report submit) - 7 business days -* Time to bounty (from triage) - 15 business days +- Time to first response (from report submit) - 5 business days +- Time to triage (from report submit) - 7 business days +- Time to bounty (from triage) - 15 business days We’ll try to keep you informed about our progress throughout the process. ### Disclosure Policy -* Follow HackerOne's [disclosure guidelines](https://www.hackerone.com/disclosure-guidelines). -* Public disclosure of a vulnerability makes it ineligible for a bounty. If the user reports the vulnerability to other security teams (e.g. Ethereum or ETC) but reports to RootstockLabs with considerable delay, then RootstockLabs may reduce or cancel the bounty. +- Follow HackerOne's [disclosure guidelines](https://www.hackerone.com/disclosure-guidelines). +- Public disclosure of a vulnerability makes it ineligible for a bounty. If the user reports the vulnerability to other security teams (e.g. Ethereum or ETC) but reports to RootstockLabs with considerable delay, then RootstockLabs may reduce or cancel the bounty. For more information check RootstockLabs bounty program policy at [HackerOne](https://hackerone.com/rootstocklabs) diff --git a/config.json b/addresses.json similarity index 100% rename from config.json rename to addresses.json diff --git a/build/contracts/Address.json b/build/contracts/Address.json deleted file mode 100644 index 6851cba..0000000 --- a/build/contracts/Address.json +++ /dev/null @@ -1,4386 +0,0 @@ -{ - "contractName": "Address", - "abi": [], - "metadata": "{\"compiler\":{\"version\":\"0.8.18+commit.87f61d96\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"details\":\"Collection of functions related to the address type\",\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@openzeppelin/contracts/utils/Address.sol\":\"Address\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":1},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]}},\"version\":1}", - "bytecode": "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220fe0220448f32dcac6d89a6022a1e519421fcea76fbebb53cd896cfec9772d79764736f6c63430008120033", - "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220fe0220448f32dcac6d89a6022a1e519421fcea76fbebb53cd896cfec9772d79764736f6c63430008120033", - "immutableReferences": {}, - "generatedSources": [], - "deployedGeneratedSources": [], - "sourceMap": "194:9169:14:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;194:9169:14;;;;;;;;;;;;;;;;;", - "deployedSourceMap": "194:9169:14:-:0;;;;;;;;", - "source": "// SPDX-License-Identifier: MIT\n// OpenZeppelin Contracts (last updated v4.9.0) (utils/Address.sol)\n\npragma solidity ^0.8.1;\n\n/**\n * @dev Collection of functions related to the address type\n */\nlibrary Address {\n /**\n * @dev Returns true if `account` is a contract.\n *\n * [IMPORTANT]\n * ====\n * It is unsafe to assume that an address for which this function returns\n * false is an externally-owned account (EOA) and not a contract.\n *\n * Among others, `isContract` will return false for the following\n * types of addresses:\n *\n * - an externally-owned account\n * - a contract in construction\n * - an address where a contract will be created\n * - an address where a contract lived, but was destroyed\n *\n * Furthermore, `isContract` will also return true if the target contract within\n * the same transaction is already scheduled for destruction by `SELFDESTRUCT`,\n * which only has an effect at the end of a transaction.\n * ====\n *\n * [IMPORTANT]\n * ====\n * You shouldn't rely on `isContract` to protect against flash loan attacks!\n *\n * Preventing calls from contracts is highly discouraged. It breaks composability, breaks support for smart wallets\n * like Gnosis Safe, and does not provide security since it can be circumvented by calling from a contract\n * constructor.\n * ====\n */\n function isContract(address account) internal view returns (bool) {\n // This method relies on extcodesize/address.code.length, which returns 0\n // for contracts in construction, since the code is only stored at the end\n // of the constructor execution.\n\n return account.code.length > 0;\n }\n\n /**\n * @dev Replacement for Solidity's `transfer`: sends `amount` wei to\n * `recipient`, forwarding all available gas and reverting on errors.\n *\n * https://eips.ethereum.org/EIPS/eip-1884[EIP1884] increases the gas cost\n * of certain opcodes, possibly making contracts go over the 2300 gas limit\n * imposed by `transfer`, making them unable to receive funds via\n * `transfer`. {sendValue} removes this limitation.\n *\n * https://consensys.net/diligence/blog/2019/09/stop-using-soliditys-transfer-now/[Learn more].\n *\n * IMPORTANT: because control is transferred to `recipient`, care must be\n * taken to not create reentrancy vulnerabilities. Consider using\n * {ReentrancyGuard} or the\n * https://solidity.readthedocs.io/en/v0.8.0/security-considerations.html#use-the-checks-effects-interactions-pattern[checks-effects-interactions pattern].\n */\n function sendValue(address payable recipient, uint256 amount) internal {\n require(address(this).balance >= amount, \"Address: insufficient balance\");\n\n (bool success, ) = recipient.call{value: amount}(\"\");\n require(success, \"Address: unable to send value, recipient may have reverted\");\n }\n\n /**\n * @dev Performs a Solidity function call using a low level `call`. A\n * plain `call` is an unsafe replacement for a function call: use this\n * function instead.\n *\n * If `target` reverts with a revert reason, it is bubbled up by this\n * function (like regular Solidity function calls).\n *\n * Returns the raw returned data. To convert to the expected return value,\n * use https://solidity.readthedocs.io/en/latest/units-and-global-variables.html?highlight=abi.decode#abi-encoding-and-decoding-functions[`abi.decode`].\n *\n * Requirements:\n *\n * - `target` must be a contract.\n * - calling `target` with `data` must not revert.\n *\n * _Available since v3.1._\n */\n function functionCall(address target, bytes memory data) internal returns (bytes memory) {\n return functionCallWithValue(target, data, 0, \"Address: low-level call failed\");\n }\n\n /**\n * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`], but with\n * `errorMessage` as a fallback revert reason when `target` reverts.\n *\n * _Available since v3.1._\n */\n function functionCall(\n address target,\n bytes memory data,\n string memory errorMessage\n ) internal returns (bytes memory) {\n return functionCallWithValue(target, data, 0, errorMessage);\n }\n\n /**\n * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],\n * but also transferring `value` wei to `target`.\n *\n * Requirements:\n *\n * - the calling contract must have an ETH balance of at least `value`.\n * - the called Solidity function must be `payable`.\n *\n * _Available since v3.1._\n */\n function functionCallWithValue(address target, bytes memory data, uint256 value) internal returns (bytes memory) {\n return functionCallWithValue(target, data, value, \"Address: low-level call with value failed\");\n }\n\n /**\n * @dev Same as {xref-Address-functionCallWithValue-address-bytes-uint256-}[`functionCallWithValue`], but\n * with `errorMessage` as a fallback revert reason when `target` reverts.\n *\n * _Available since v3.1._\n */\n function functionCallWithValue(\n address target,\n bytes memory data,\n uint256 value,\n string memory errorMessage\n ) internal returns (bytes memory) {\n require(address(this).balance >= value, \"Address: insufficient balance for call\");\n (bool success, bytes memory returndata) = target.call{value: value}(data);\n return verifyCallResultFromTarget(target, success, returndata, errorMessage);\n }\n\n /**\n * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],\n * but performing a static call.\n *\n * _Available since v3.3._\n */\n function functionStaticCall(address target, bytes memory data) internal view returns (bytes memory) {\n return functionStaticCall(target, data, \"Address: low-level static call failed\");\n }\n\n /**\n * @dev Same as {xref-Address-functionCall-address-bytes-string-}[`functionCall`],\n * but performing a static call.\n *\n * _Available since v3.3._\n */\n function functionStaticCall(\n address target,\n bytes memory data,\n string memory errorMessage\n ) internal view returns (bytes memory) {\n (bool success, bytes memory returndata) = target.staticcall(data);\n return verifyCallResultFromTarget(target, success, returndata, errorMessage);\n }\n\n /**\n * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],\n * but performing a delegate call.\n *\n * _Available since v3.4._\n */\n function functionDelegateCall(address target, bytes memory data) internal returns (bytes memory) {\n return functionDelegateCall(target, data, \"Address: low-level delegate call failed\");\n }\n\n /**\n * @dev Same as {xref-Address-functionCall-address-bytes-string-}[`functionCall`],\n * but performing a delegate call.\n *\n * _Available since v3.4._\n */\n function functionDelegateCall(\n address target,\n bytes memory data,\n string memory errorMessage\n ) internal returns (bytes memory) {\n (bool success, bytes memory returndata) = target.delegatecall(data);\n return verifyCallResultFromTarget(target, success, returndata, errorMessage);\n }\n\n /**\n * @dev Tool to verify that a low level call to smart-contract was successful, and revert (either by bubbling\n * the revert reason or using the provided one) in case of unsuccessful call or if target was not a contract.\n *\n * _Available since v4.8._\n */\n function verifyCallResultFromTarget(\n address target,\n bool success,\n bytes memory returndata,\n string memory errorMessage\n ) internal view returns (bytes memory) {\n if (success) {\n if (returndata.length == 0) {\n // only check isContract if the call was successful and the return data is empty\n // otherwise we already know that it was a contract\n require(isContract(target), \"Address: call to non-contract\");\n }\n return returndata;\n } else {\n _revert(returndata, errorMessage);\n }\n }\n\n /**\n * @dev Tool to verify that a low level call was successful, and revert if it wasn't, either by bubbling the\n * revert reason or using the provided one.\n *\n * _Available since v4.3._\n */\n function verifyCallResult(\n bool success,\n bytes memory returndata,\n string memory errorMessage\n ) internal pure returns (bytes memory) {\n if (success) {\n return returndata;\n } else {\n _revert(returndata, errorMessage);\n }\n }\n\n function _revert(bytes memory returndata, string memory errorMessage) private pure {\n // Look for revert reason and bubble it up if present\n if (returndata.length > 0) {\n // The easiest way to bubble the revert reason is using memory via assembly\n /// @solidity memory-safe-assembly\n assembly {\n let returndata_size := mload(returndata)\n revert(add(32, returndata), returndata_size)\n }\n } else {\n revert(errorMessage);\n }\n }\n}\n", - "sourcePath": "@openzeppelin/contracts/utils/Address.sol", - "ast": { - "absolutePath": "@openzeppelin/contracts/utils/Address.sol", - "exportedSymbols": { - "Address": [ - 2103 - ] - }, - "id": 2104, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1775, - "literals": [ - "solidity", - "^", - "0.8", - ".1" - ], - "nodeType": "PragmaDirective", - "src": "101:23:14" - }, - { - "abstract": false, - "baseContracts": [], - "canonicalName": "Address", - "contractDependencies": [], - "contractKind": "library", - "documentation": { - "id": 1776, - "nodeType": "StructuredDocumentation", - "src": "126:67:14", - "text": " @dev Collection of functions related to the address type" - }, - "fullyImplemented": true, - "id": 2103, - "linearizedBaseContracts": [ - 2103 - ], - "name": "Address", - "nameLocation": "202:7:14", - "nodeType": "ContractDefinition", - "nodes": [ - { - "body": { - "id": 1790, - "nodeType": "Block", - "src": "1478:254:14", - "statements": [ - { - "expression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1788, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "expression": { - "id": 1784, - "name": "account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1779, - "src": "1702:7:14", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1785, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "1710:4:14", - "memberName": "code", - "nodeType": "MemberAccess", - "src": "1702:12:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 1786, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "1715:6:14", - "memberName": "length", - "nodeType": "MemberAccess", - "src": "1702:19:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 1787, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1724:1:14", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "1702:23:14", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 1783, - "id": 1789, - "nodeType": "Return", - "src": "1695:30:14" - } - ] - }, - "documentation": { - "id": 1777, - "nodeType": "StructuredDocumentation", - "src": "216:1191:14", - "text": " @dev Returns true if `account` is a contract.\n [IMPORTANT]\n ====\n It is unsafe to assume that an address for which this function returns\n false is an externally-owned account (EOA) and not a contract.\n Among others, `isContract` will return false for the following\n types of addresses:\n - an externally-owned account\n - a contract in construction\n - an address where a contract will be created\n - an address where a contract lived, but was destroyed\n Furthermore, `isContract` will also return true if the target contract within\n the same transaction is already scheduled for destruction by `SELFDESTRUCT`,\n which only has an effect at the end of a transaction.\n ====\n [IMPORTANT]\n ====\n You shouldn't rely on `isContract` to protect against flash loan attacks!\n Preventing calls from contracts is highly discouraged. It breaks composability, breaks support for smart wallets\n like Gnosis Safe, and does not provide security since it can be circumvented by calling from a contract\n constructor.\n ====" - }, - "id": 1791, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "isContract", - "nameLocation": "1421:10:14", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1780, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1779, - "mutability": "mutable", - "name": "account", - "nameLocation": "1440:7:14", - "nodeType": "VariableDeclaration", - "scope": 1791, - "src": "1432:15:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1778, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1432:7:14", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "1431:17:14" - }, - "returnParameters": { - "id": 1783, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1782, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1791, - "src": "1472:4:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1781, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1472:4:14", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "1471:6:14" - }, - "scope": 2103, - "src": "1412:320:14", - "stateMutability": "view", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 1824, - "nodeType": "Block", - "src": "2718:241:14", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1806, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "arguments": [ - { - "id": 1802, - "name": "this", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967268, - "src": "2744:4:14", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Address_$2103", - "typeString": "library Address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_Address_$2103", - "typeString": "library Address" - } - ], - "id": 1801, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "2736:7:14", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 1800, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2736:7:14", - "typeDescriptions": {} - } - }, - "id": 1803, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2736:13:14", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1804, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "2750:7:14", - "memberName": "balance", - "nodeType": "MemberAccess", - "src": "2736:21:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "id": 1805, - "name": "amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1796, - "src": "2761:6:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2736:31:14", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "416464726573733a20696e73756666696369656e742062616c616e6365", - "id": 1807, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2769:31:14", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_5597a22abd0ef5332f8053862eb236db7590f17e2b93a53f63a103becfb561f9", - "typeString": "literal_string \"Address: insufficient balance\"" - }, - "value": "Address: insufficient balance" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_5597a22abd0ef5332f8053862eb236db7590f17e2b93a53f63a103becfb561f9", - "typeString": "literal_string \"Address: insufficient balance\"" - } - ], - "id": 1799, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "2728:7:14", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1808, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2728:73:14", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1809, - "nodeType": "ExpressionStatement", - "src": "2728:73:14" - }, - { - "assignments": [ - 1811, - null - ], - "declarations": [ - { - "constant": false, - "id": 1811, - "mutability": "mutable", - "name": "success", - "nameLocation": "2818:7:14", - "nodeType": "VariableDeclaration", - "scope": 1824, - "src": "2813:12:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1810, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "2813:4:14", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - null - ], - "id": 1818, - "initialValue": { - "arguments": [ - { - "hexValue": "", - "id": 1816, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2861:2:14", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - }, - "value": "" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - } - ], - "expression": { - "id": 1812, - "name": "recipient", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1794, - "src": "2831:9:14", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "id": 1813, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "2841:4:14", - "memberName": "call", - "nodeType": "MemberAccess", - "src": "2831:14:14", - "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": 1815, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "names": [ - "value" - ], - "nodeType": "FunctionCallOptions", - "options": [ - { - "id": 1814, - "name": "amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1796, - "src": "2853:6:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "src": "2831:29:14", - "typeDescriptions": { - "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$value", - "typeString": "function (bytes memory) payable returns (bool,bytes memory)" - } - }, - "id": 1817, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2831:33:14", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "tuple(bool,bytes memory)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "2812:52:14" - }, - { - "expression": { - "arguments": [ - { - "id": 1820, - "name": "success", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1811, - "src": "2882:7:14", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "416464726573733a20756e61626c6520746f2073656e642076616c75652c20726563697069656e74206d61792068617665207265766572746564", - "id": 1821, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2891:60:14", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_51ddaa38748c0a1144620fb5bfe8edab31ea437571ad591a7734bbfd0429aeae", - "typeString": "literal_string \"Address: unable to send value, recipient may have reverted\"" - }, - "value": "Address: unable to send value, recipient may have reverted" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_51ddaa38748c0a1144620fb5bfe8edab31ea437571ad591a7734bbfd0429aeae", - "typeString": "literal_string \"Address: unable to send value, recipient may have reverted\"" - } - ], - "id": 1819, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "2874:7:14", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1822, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2874:78:14", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1823, - "nodeType": "ExpressionStatement", - "src": "2874:78:14" - } - ] - }, - "documentation": { - "id": 1792, - "nodeType": "StructuredDocumentation", - "src": "1738:904:14", - "text": " @dev Replacement for Solidity's `transfer`: sends `amount` wei to\n `recipient`, forwarding all available gas and reverting on errors.\n https://eips.ethereum.org/EIPS/eip-1884[EIP1884] increases the gas cost\n of certain opcodes, possibly making contracts go over the 2300 gas limit\n imposed by `transfer`, making them unable to receive funds via\n `transfer`. {sendValue} removes this limitation.\n https://consensys.net/diligence/blog/2019/09/stop-using-soliditys-transfer-now/[Learn more].\n IMPORTANT: because control is transferred to `recipient`, care must be\n taken to not create reentrancy vulnerabilities. Consider using\n {ReentrancyGuard} or the\n https://solidity.readthedocs.io/en/v0.8.0/security-considerations.html#use-the-checks-effects-interactions-pattern[checks-effects-interactions pattern]." - }, - "id": 1825, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "sendValue", - "nameLocation": "2656:9:14", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1797, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1794, - "mutability": "mutable", - "name": "recipient", - "nameLocation": "2682:9:14", - "nodeType": "VariableDeclaration", - "scope": 1825, - "src": "2666:25:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - }, - "typeName": { - "id": 1793, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2666:15:14", - "stateMutability": "payable", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1796, - "mutability": "mutable", - "name": "amount", - "nameLocation": "2701:6:14", - "nodeType": "VariableDeclaration", - "scope": 1825, - "src": "2693:14:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1795, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2693:7:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "2665:43:14" - }, - "returnParameters": { - "id": 1798, - "nodeType": "ParameterList", - "parameters": [], - "src": "2718:0:14" - }, - "scope": 2103, - "src": "2647:312:14", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 1842, - "nodeType": "Block", - "src": "3790:96:14", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 1836, - "name": "target", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1828, - "src": "3829:6:14", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 1837, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1830, - "src": "3837:4:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "hexValue": "30", - "id": 1838, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3843:1:14", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - { - "hexValue": "416464726573733a206c6f772d6c6576656c2063616c6c206661696c6564", - "id": 1839, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3846:32:14", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_24d7ab5d382116e64324f19950ca9340b8af1ddeb09a8d026e0a3c6a01dcc9df", - "typeString": "literal_string \"Address: low-level call failed\"" - }, - "value": "Address: low-level call failed" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - { - "typeIdentifier": "t_stringliteral_24d7ab5d382116e64324f19950ca9340b8af1ddeb09a8d026e0a3c6a01dcc9df", - "typeString": "literal_string \"Address: low-level call failed\"" - } - ], - "id": 1835, - "name": "functionCallWithValue", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 1883, - 1927 - ], - "referencedDeclaration": 1927, - "src": "3807:21:14", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_bytes_memory_ptr_$_t_uint256_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (address,bytes memory,uint256,string memory) returns (bytes memory)" - } - }, - "id": 1840, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "3807:72:14", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 1834, - "id": 1841, - "nodeType": "Return", - "src": "3800:79:14" - } - ] - }, - "documentation": { - "id": 1826, - "nodeType": "StructuredDocumentation", - "src": "2965:731:14", - "text": " @dev Performs a Solidity function call using a low level `call`. A\n plain `call` is an unsafe replacement for a function call: use this\n function instead.\n If `target` reverts with a revert reason, it is bubbled up by this\n function (like regular Solidity function calls).\n Returns the raw returned data. To convert to the expected return value,\n use https://solidity.readthedocs.io/en/latest/units-and-global-variables.html?highlight=abi.decode#abi-encoding-and-decoding-functions[`abi.decode`].\n Requirements:\n - `target` must be a contract.\n - calling `target` with `data` must not revert.\n _Available since v3.1._" - }, - "id": 1843, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "functionCall", - "nameLocation": "3710:12:14", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1831, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1828, - "mutability": "mutable", - "name": "target", - "nameLocation": "3731:6:14", - "nodeType": "VariableDeclaration", - "scope": 1843, - "src": "3723:14:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1827, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3723:7:14", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1830, - "mutability": "mutable", - "name": "data", - "nameLocation": "3752:4:14", - "nodeType": "VariableDeclaration", - "scope": 1843, - "src": "3739:17:14", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1829, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "3739:5:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "3722:35:14" - }, - "returnParameters": { - "id": 1834, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1833, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1843, - "src": "3776:12:14", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1832, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "3776:5:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "3775:14:14" - }, - "scope": 2103, - "src": "3701:185:14", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 1862, - "nodeType": "Block", - "src": "4255:76:14", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 1856, - "name": "target", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1846, - "src": "4294:6:14", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 1857, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1848, - "src": "4302:4:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "hexValue": "30", - "id": 1858, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4308:1:14", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - { - "id": 1859, - "name": "errorMessage", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1850, - "src": "4311:12:14", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1855, - "name": "functionCallWithValue", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 1883, - 1927 - ], - "referencedDeclaration": 1927, - "src": "4272:21:14", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_bytes_memory_ptr_$_t_uint256_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (address,bytes memory,uint256,string memory) returns (bytes memory)" - } - }, - "id": 1860, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4272:52:14", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 1854, - "id": 1861, - "nodeType": "Return", - "src": "4265:59:14" - } - ] - }, - "documentation": { - "id": 1844, - "nodeType": "StructuredDocumentation", - "src": "3892:211:14", - "text": " @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`], but with\n `errorMessage` as a fallback revert reason when `target` reverts.\n _Available since v3.1._" - }, - "id": 1863, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "functionCall", - "nameLocation": "4117:12:14", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1851, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1846, - "mutability": "mutable", - "name": "target", - "nameLocation": "4147:6:14", - "nodeType": "VariableDeclaration", - "scope": 1863, - "src": "4139:14:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1845, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "4139:7:14", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1848, - "mutability": "mutable", - "name": "data", - "nameLocation": "4176:4:14", - "nodeType": "VariableDeclaration", - "scope": 1863, - "src": "4163:17:14", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1847, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "4163:5:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1850, - "mutability": "mutable", - "name": "errorMessage", - "nameLocation": "4204:12:14", - "nodeType": "VariableDeclaration", - "scope": 1863, - "src": "4190:26:14", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1849, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "4190:6:14", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "4129:93:14" - }, - "returnParameters": { - "id": 1854, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1853, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1863, - "src": "4241:12:14", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1852, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "4241:5:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "4240:14:14" - }, - "scope": 2103, - "src": "4108:223:14", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 1882, - "nodeType": "Block", - "src": "4806:111:14", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 1876, - "name": "target", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1866, - "src": "4845:6:14", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 1877, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1868, - "src": "4853:4:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "id": 1878, - "name": "value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1870, - "src": "4859:5:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "hexValue": "416464726573733a206c6f772d6c6576656c2063616c6c20776974682076616c7565206661696c6564", - "id": 1879, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4866:43:14", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_88a4a0b5e975840320a0475d4027005235904fdb5ece94df156f3d717cb2dbfc", - "typeString": "literal_string \"Address: low-level call with value failed\"" - }, - "value": "Address: low-level call with value failed" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_stringliteral_88a4a0b5e975840320a0475d4027005235904fdb5ece94df156f3d717cb2dbfc", - "typeString": "literal_string \"Address: low-level call with value failed\"" - } - ], - "id": 1875, - "name": "functionCallWithValue", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 1883, - 1927 - ], - "referencedDeclaration": 1927, - "src": "4823:21:14", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_bytes_memory_ptr_$_t_uint256_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (address,bytes memory,uint256,string memory) returns (bytes memory)" - } - }, - "id": 1880, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4823:87:14", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 1874, - "id": 1881, - "nodeType": "Return", - "src": "4816:94:14" - } - ] - }, - "documentation": { - "id": 1864, - "nodeType": "StructuredDocumentation", - "src": "4337:351:14", - "text": " @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],\n but also transferring `value` wei to `target`.\n Requirements:\n - the calling contract must have an ETH balance of at least `value`.\n - the called Solidity function must be `payable`.\n _Available since v3.1._" - }, - "id": 1883, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "functionCallWithValue", - "nameLocation": "4702:21:14", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1871, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1866, - "mutability": "mutable", - "name": "target", - "nameLocation": "4732:6:14", - "nodeType": "VariableDeclaration", - "scope": 1883, - "src": "4724:14:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1865, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "4724:7:14", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1868, - "mutability": "mutable", - "name": "data", - "nameLocation": "4753:4:14", - "nodeType": "VariableDeclaration", - "scope": 1883, - "src": "4740:17:14", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1867, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "4740:5:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1870, - "mutability": "mutable", - "name": "value", - "nameLocation": "4767:5:14", - "nodeType": "VariableDeclaration", - "scope": 1883, - "src": "4759:13:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1869, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "4759:7:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "4723:50:14" - }, - "returnParameters": { - "id": 1874, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1873, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1883, - "src": "4792:12:14", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1872, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "4792:5:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "4791:14:14" - }, - "scope": 2103, - "src": "4693:224:14", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 1926, - "nodeType": "Block", - "src": "5344:267:14", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1904, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "arguments": [ - { - "id": 1900, - "name": "this", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967268, - "src": "5370:4:14", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Address_$2103", - "typeString": "library Address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_Address_$2103", - "typeString": "library Address" - } - ], - "id": 1899, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "5362:7:14", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 1898, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "5362:7:14", - "typeDescriptions": {} - } - }, - "id": 1901, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5362:13:14", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1902, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "5376:7:14", - "memberName": "balance", - "nodeType": "MemberAccess", - "src": "5362:21:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "id": 1903, - "name": "value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1890, - "src": "5387:5:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "5362:30:14", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "416464726573733a20696e73756666696369656e742062616c616e636520666f722063616c6c", - "id": 1905, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5394:40:14", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_565f1a77334fc4792800921178c71e4521acffab18ff9e7885b49377ee80ab4c", - "typeString": "literal_string \"Address: insufficient balance for call\"" - }, - "value": "Address: insufficient balance for call" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_565f1a77334fc4792800921178c71e4521acffab18ff9e7885b49377ee80ab4c", - "typeString": "literal_string \"Address: insufficient balance for call\"" - } - ], - "id": 1897, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "5354:7:14", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1906, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5354:81:14", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1907, - "nodeType": "ExpressionStatement", - "src": "5354:81:14" - }, - { - "assignments": [ - 1909, - 1911 - ], - "declarations": [ - { - "constant": false, - "id": 1909, - "mutability": "mutable", - "name": "success", - "nameLocation": "5451:7:14", - "nodeType": "VariableDeclaration", - "scope": 1926, - "src": "5446:12:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1908, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "5446:4:14", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1911, - "mutability": "mutable", - "name": "returndata", - "nameLocation": "5473:10:14", - "nodeType": "VariableDeclaration", - "scope": 1926, - "src": "5460:23:14", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1910, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "5460:5:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 1918, - "initialValue": { - "arguments": [ - { - "id": 1916, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1888, - "src": "5513:4:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "id": 1912, - "name": "target", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1886, - "src": "5487:6:14", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1913, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "5494:4:14", - "memberName": "call", - "nodeType": "MemberAccess", - "src": "5487:11:14", - "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": 1915, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "names": [ - "value" - ], - "nodeType": "FunctionCallOptions", - "options": [ - { - "id": 1914, - "name": "value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1890, - "src": "5506:5:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "src": "5487:25:14", - "typeDescriptions": { - "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$value", - "typeString": "function (bytes memory) payable returns (bool,bytes memory)" - } - }, - "id": 1917, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5487:31:14", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "tuple(bool,bytes memory)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "5445:73:14" - }, - { - "expression": { - "arguments": [ - { - "id": 1920, - "name": "target", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1886, - "src": "5562:6:14", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 1921, - "name": "success", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1909, - "src": "5570:7:14", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "id": 1922, - "name": "returndata", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1911, - "src": "5579:10:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "id": 1923, - "name": "errorMessage", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1892, - "src": "5591:12:14", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1919, - "name": "verifyCallResultFromTarget", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2058, - "src": "5535:26:14", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$_t_bool_$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (address,bool,bytes memory,string memory) view returns (bytes memory)" - } - }, - "id": 1924, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5535:69:14", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 1896, - "id": 1925, - "nodeType": "Return", - "src": "5528:76:14" - } - ] - }, - "documentation": { - "id": 1884, - "nodeType": "StructuredDocumentation", - "src": "4923:237:14", - "text": " @dev Same as {xref-Address-functionCallWithValue-address-bytes-uint256-}[`functionCallWithValue`], but\n with `errorMessage` as a fallback revert reason when `target` reverts.\n _Available since v3.1._" - }, - "id": 1927, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "functionCallWithValue", - "nameLocation": "5174:21:14", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1893, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1886, - "mutability": "mutable", - "name": "target", - "nameLocation": "5213:6:14", - "nodeType": "VariableDeclaration", - "scope": 1927, - "src": "5205:14:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1885, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "5205:7:14", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1888, - "mutability": "mutable", - "name": "data", - "nameLocation": "5242:4:14", - "nodeType": "VariableDeclaration", - "scope": 1927, - "src": "5229:17:14", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1887, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "5229:5:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1890, - "mutability": "mutable", - "name": "value", - "nameLocation": "5264:5:14", - "nodeType": "VariableDeclaration", - "scope": 1927, - "src": "5256:13:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1889, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "5256:7:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1892, - "mutability": "mutable", - "name": "errorMessage", - "nameLocation": "5293:12:14", - "nodeType": "VariableDeclaration", - "scope": 1927, - "src": "5279:26:14", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1891, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "5279:6:14", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "5195:116:14" - }, - "returnParameters": { - "id": 1896, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1895, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1927, - "src": "5330:12:14", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1894, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "5330:5:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "5329:14:14" - }, - "scope": 2103, - "src": "5165:446:14", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 1943, - "nodeType": "Block", - "src": "5888:97:14", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 1938, - "name": "target", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1930, - "src": "5924:6:14", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 1939, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1932, - "src": "5932:4:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "hexValue": "416464726573733a206c6f772d6c6576656c207374617469632063616c6c206661696c6564", - "id": 1940, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5938:39:14", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_90ec82aa826a536a4cbfae44ecfa384680faa9a4b77344bce96aa761ad904df0", - "typeString": "literal_string \"Address: low-level static call failed\"" - }, - "value": "Address: low-level static call failed" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_stringliteral_90ec82aa826a536a4cbfae44ecfa384680faa9a4b77344bce96aa761ad904df0", - "typeString": "literal_string \"Address: low-level static call failed\"" - } - ], - "id": 1937, - "name": "functionStaticCall", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 1944, - 1973 - ], - "referencedDeclaration": 1973, - "src": "5905:18:14", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (address,bytes memory,string memory) view returns (bytes memory)" - } - }, - "id": 1941, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5905:73:14", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 1936, - "id": 1942, - "nodeType": "Return", - "src": "5898:80:14" - } - ] - }, - "documentation": { - "id": 1928, - "nodeType": "StructuredDocumentation", - "src": "5617:166:14", - "text": " @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],\n but performing a static call.\n _Available since v3.3._" - }, - "id": 1944, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "functionStaticCall", - "nameLocation": "5797:18:14", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1933, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1930, - "mutability": "mutable", - "name": "target", - "nameLocation": "5824:6:14", - "nodeType": "VariableDeclaration", - "scope": 1944, - "src": "5816:14:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1929, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "5816:7:14", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1932, - "mutability": "mutable", - "name": "data", - "nameLocation": "5845:4:14", - "nodeType": "VariableDeclaration", - "scope": 1944, - "src": "5832:17:14", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1931, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "5832:5:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "5815:35:14" - }, - "returnParameters": { - "id": 1936, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1935, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1944, - "src": "5874:12:14", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1934, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "5874:5:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "5873:14:14" - }, - "scope": 2103, - "src": "5788:197:14", - "stateMutability": "view", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 1972, - "nodeType": "Block", - "src": "6327:168:14", - "statements": [ - { - "assignments": [ - 1957, - 1959 - ], - "declarations": [ - { - "constant": false, - "id": 1957, - "mutability": "mutable", - "name": "success", - "nameLocation": "6343:7:14", - "nodeType": "VariableDeclaration", - "scope": 1972, - "src": "6338:12:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1956, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "6338:4:14", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1959, - "mutability": "mutable", - "name": "returndata", - "nameLocation": "6365:10:14", - "nodeType": "VariableDeclaration", - "scope": 1972, - "src": "6352:23:14", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1958, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "6352:5:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 1964, - "initialValue": { - "arguments": [ - { - "id": 1962, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1949, - "src": "6397:4:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "id": 1960, - "name": "target", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1947, - "src": "6379:6:14", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1961, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "6386:10:14", - "memberName": "staticcall", - "nodeType": "MemberAccess", - "src": "6379:17:14", - "typeDescriptions": { - "typeIdentifier": "t_function_barestaticcall_view$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "function (bytes memory) view returns (bool,bytes memory)" - } - }, - "id": 1963, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "6379:23:14", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "tuple(bool,bytes memory)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "6337:65:14" - }, - { - "expression": { - "arguments": [ - { - "id": 1966, - "name": "target", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1947, - "src": "6446:6:14", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 1967, - "name": "success", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1957, - "src": "6454:7:14", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "id": 1968, - "name": "returndata", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1959, - "src": "6463:10:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "id": 1969, - "name": "errorMessage", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1951, - "src": "6475:12:14", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1965, - "name": "verifyCallResultFromTarget", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2058, - "src": "6419:26:14", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$_t_bool_$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (address,bool,bytes memory,string memory) view returns (bytes memory)" - } - }, - "id": 1970, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "6419:69:14", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 1955, - "id": 1971, - "nodeType": "Return", - "src": "6412:76:14" - } - ] - }, - "documentation": { - "id": 1945, - "nodeType": "StructuredDocumentation", - "src": "5991:173:14", - "text": " @dev Same as {xref-Address-functionCall-address-bytes-string-}[`functionCall`],\n but performing a static call.\n _Available since v3.3._" - }, - "id": 1973, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "functionStaticCall", - "nameLocation": "6178:18:14", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1952, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1947, - "mutability": "mutable", - "name": "target", - "nameLocation": "6214:6:14", - "nodeType": "VariableDeclaration", - "scope": 1973, - "src": "6206:14:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1946, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "6206:7:14", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1949, - "mutability": "mutable", - "name": "data", - "nameLocation": "6243:4:14", - "nodeType": "VariableDeclaration", - "scope": 1973, - "src": "6230:17:14", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1948, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "6230:5:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1951, - "mutability": "mutable", - "name": "errorMessage", - "nameLocation": "6271:12:14", - "nodeType": "VariableDeclaration", - "scope": 1973, - "src": "6257:26:14", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1950, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "6257:6:14", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "6196:93:14" - }, - "returnParameters": { - "id": 1955, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1954, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1973, - "src": "6313:12:14", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1953, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "6313:5:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "6312:14:14" - }, - "scope": 2103, - "src": "6169:326:14", - "stateMutability": "view", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 1989, - "nodeType": "Block", - "src": "6771:101:14", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 1984, - "name": "target", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1976, - "src": "6809:6:14", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 1985, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1978, - "src": "6817:4:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "hexValue": "416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564", - "id": 1986, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6823:41:14", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_9fdcd12e4b726339b32a442b0a448365d5d85c96b2d2cff917b4f66c63110398", - "typeString": "literal_string \"Address: low-level delegate call failed\"" - }, - "value": "Address: low-level delegate call failed" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_stringliteral_9fdcd12e4b726339b32a442b0a448365d5d85c96b2d2cff917b4f66c63110398", - "typeString": "literal_string \"Address: low-level delegate call failed\"" - } - ], - "id": 1983, - "name": "functionDelegateCall", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 1990, - 2019 - ], - "referencedDeclaration": 2019, - "src": "6788:20:14", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (address,bytes memory,string memory) returns (bytes memory)" - } - }, - "id": 1987, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "6788:77:14", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 1982, - "id": 1988, - "nodeType": "Return", - "src": "6781:84:14" - } - ] - }, - "documentation": { - "id": 1974, - "nodeType": "StructuredDocumentation", - "src": "6501:168:14", - "text": " @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],\n but performing a delegate call.\n _Available since v3.4._" - }, - "id": 1990, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "functionDelegateCall", - "nameLocation": "6683:20:14", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1979, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1976, - "mutability": "mutable", - "name": "target", - "nameLocation": "6712:6:14", - "nodeType": "VariableDeclaration", - "scope": 1990, - "src": "6704:14:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1975, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "6704:7:14", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1978, - "mutability": "mutable", - "name": "data", - "nameLocation": "6733:4:14", - "nodeType": "VariableDeclaration", - "scope": 1990, - "src": "6720:17:14", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1977, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "6720:5:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "6703:35:14" - }, - "returnParameters": { - "id": 1982, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1981, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1990, - "src": "6757:12:14", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1980, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "6757:5:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "6756:14:14" - }, - "scope": 2103, - "src": "6674:198:14", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 2018, - "nodeType": "Block", - "src": "7213:170:14", - "statements": [ - { - "assignments": [ - 2003, - 2005 - ], - "declarations": [ - { - "constant": false, - "id": 2003, - "mutability": "mutable", - "name": "success", - "nameLocation": "7229:7:14", - "nodeType": "VariableDeclaration", - "scope": 2018, - "src": "7224:12:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2002, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "7224:4:14", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2005, - "mutability": "mutable", - "name": "returndata", - "nameLocation": "7251:10:14", - "nodeType": "VariableDeclaration", - "scope": 2018, - "src": "7238:23:14", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2004, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "7238:5:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 2010, - "initialValue": { - "arguments": [ - { - "id": 2008, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1995, - "src": "7285:4:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "id": 2006, - "name": "target", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1993, - "src": "7265:6:14", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 2007, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "7272:12:14", - "memberName": "delegatecall", - "nodeType": "MemberAccess", - "src": "7265:19:14", - "typeDescriptions": { - "typeIdentifier": "t_function_baredelegatecall_nonpayable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "function (bytes memory) returns (bool,bytes memory)" - } - }, - "id": 2009, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "7265:25:14", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "tuple(bool,bytes memory)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "7223:67:14" - }, - { - "expression": { - "arguments": [ - { - "id": 2012, - "name": "target", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1993, - "src": "7334:6:14", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 2013, - "name": "success", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2003, - "src": "7342:7:14", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "id": 2014, - "name": "returndata", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2005, - "src": "7351:10:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "id": 2015, - "name": "errorMessage", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1997, - "src": "7363:12:14", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 2011, - "name": "verifyCallResultFromTarget", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2058, - "src": "7307:26:14", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$_t_bool_$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (address,bool,bytes memory,string memory) view returns (bytes memory)" - } - }, - "id": 2016, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "7307:69:14", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 2001, - "id": 2017, - "nodeType": "Return", - "src": "7300:76:14" - } - ] - }, - "documentation": { - "id": 1991, - "nodeType": "StructuredDocumentation", - "src": "6878:175:14", - "text": " @dev Same as {xref-Address-functionCall-address-bytes-string-}[`functionCall`],\n but performing a delegate call.\n _Available since v3.4._" - }, - "id": 2019, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "functionDelegateCall", - "nameLocation": "7067:20:14", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1998, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1993, - "mutability": "mutable", - "name": "target", - "nameLocation": "7105:6:14", - "nodeType": "VariableDeclaration", - "scope": 2019, - "src": "7097:14:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1992, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "7097:7:14", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1995, - "mutability": "mutable", - "name": "data", - "nameLocation": "7134:4:14", - "nodeType": "VariableDeclaration", - "scope": 2019, - "src": "7121:17:14", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1994, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "7121:5:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1997, - "mutability": "mutable", - "name": "errorMessage", - "nameLocation": "7162:12:14", - "nodeType": "VariableDeclaration", - "scope": 2019, - "src": "7148:26:14", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1996, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "7148:6:14", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "7087:93:14" - }, - "returnParameters": { - "id": 2001, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2000, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2019, - "src": "7199:12:14", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1999, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "7199:5:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "7198:14:14" - }, - "scope": 2103, - "src": "7058:325:14", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 2057, - "nodeType": "Block", - "src": "7865:434:14", - "statements": [ - { - "condition": { - "id": 2033, - "name": "success", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2024, - "src": "7879:7:14", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 2055, - "nodeType": "Block", - "src": "8235:58:14", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 2051, - "name": "returndata", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2026, - "src": "8257:10:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "id": 2052, - "name": "errorMessage", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2028, - "src": "8269:12:14", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 2050, - "name": "_revert", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2102, - "src": "8249:7:14", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bytes memory,string memory) pure" - } - }, - "id": 2053, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "8249:33:14", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2054, - "nodeType": "ExpressionStatement", - "src": "8249:33:14" - } - ] - }, - "id": 2056, - "nodeType": "IfStatement", - "src": "7875:418:14", - "trueBody": { - "id": 2049, - "nodeType": "Block", - "src": "7888:341:14", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2037, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 2034, - "name": "returndata", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2026, - "src": "7906:10:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 2035, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "7917:6:14", - "memberName": "length", - "nodeType": "MemberAccess", - "src": "7906:17:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 2036, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7927:1:14", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "7906:22:14", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 2046, - "nodeType": "IfStatement", - "src": "7902:286:14", - "trueBody": { - "id": 2045, - "nodeType": "Block", - "src": "7930:258:14", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "id": 2040, - "name": "target", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2022, - "src": "8132:6:14", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 2039, - "name": "isContract", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1791, - "src": "8121:10:14", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", - "typeString": "function (address) view returns (bool)" - } - }, - "id": 2041, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "8121:18:14", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374", - "id": 2042, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "8141:31:14", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_cc2e4e38850b7c0a3e942cfed89b71c77302df25bcb2ec297a0c4ff9ff6b90ad", - "typeString": "literal_string \"Address: call to non-contract\"" - }, - "value": "Address: call to non-contract" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_cc2e4e38850b7c0a3e942cfed89b71c77302df25bcb2ec297a0c4ff9ff6b90ad", - "typeString": "literal_string \"Address: call to non-contract\"" - } - ], - "id": 2038, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "8113:7:14", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 2043, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "8113:60:14", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2044, - "nodeType": "ExpressionStatement", - "src": "8113:60:14" - } - ] - } - }, - { - "expression": { - "id": 2047, - "name": "returndata", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2026, - "src": "8208:10:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 2032, - "id": 2048, - "nodeType": "Return", - "src": "8201:17:14" - } - ] - } - } - ] - }, - "documentation": { - "id": 2020, - "nodeType": "StructuredDocumentation", - "src": "7389:277:14", - "text": " @dev Tool to verify that a low level call to smart-contract was successful, and revert (either by bubbling\n the revert reason or using the provided one) in case of unsuccessful call or if target was not a contract.\n _Available since v4.8._" - }, - "id": 2058, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "verifyCallResultFromTarget", - "nameLocation": "7680:26:14", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2029, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2022, - "mutability": "mutable", - "name": "target", - "nameLocation": "7724:6:14", - "nodeType": "VariableDeclaration", - "scope": 2058, - "src": "7716:14:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2021, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "7716:7:14", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2024, - "mutability": "mutable", - "name": "success", - "nameLocation": "7745:7:14", - "nodeType": "VariableDeclaration", - "scope": 2058, - "src": "7740:12:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2023, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "7740:4:14", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2026, - "mutability": "mutable", - "name": "returndata", - "nameLocation": "7775:10:14", - "nodeType": "VariableDeclaration", - "scope": 2058, - "src": "7762:23:14", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2025, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "7762:5:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2028, - "mutability": "mutable", - "name": "errorMessage", - "nameLocation": "7809:12:14", - "nodeType": "VariableDeclaration", - "scope": 2058, - "src": "7795:26:14", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2027, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "7795:6:14", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "7706:121:14" - }, - "returnParameters": { - "id": 2032, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2031, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2058, - "src": "7851:12:14", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2030, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "7851:5:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "7850:14:14" - }, - "scope": 2103, - "src": "7671:628:14", - "stateMutability": "view", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 2081, - "nodeType": "Block", - "src": "8680:135:14", - "statements": [ - { - "condition": { - "id": 2070, - "name": "success", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2061, - "src": "8694:7:14", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 2079, - "nodeType": "Block", - "src": "8751:58:14", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 2075, - "name": "returndata", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2063, - "src": "8773:10:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "id": 2076, - "name": "errorMessage", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2065, - "src": "8785:12:14", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 2074, - "name": "_revert", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2102, - "src": "8765:7:14", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bytes memory,string memory) pure" - } - }, - "id": 2077, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "8765:33:14", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2078, - "nodeType": "ExpressionStatement", - "src": "8765:33:14" - } - ] - }, - "id": 2080, - "nodeType": "IfStatement", - "src": "8690:119:14", - "trueBody": { - "id": 2073, - "nodeType": "Block", - "src": "8703:42:14", - "statements": [ - { - "expression": { - "id": 2071, - "name": "returndata", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2063, - "src": "8724:10:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 2069, - "id": 2072, - "nodeType": "Return", - "src": "8717:17:14" - } - ] - } - } - ] - }, - "documentation": { - "id": 2059, - "nodeType": "StructuredDocumentation", - "src": "8305:210:14", - "text": " @dev Tool to verify that a low level call was successful, and revert if it wasn't, either by bubbling the\n revert reason or using the provided one.\n _Available since v4.3._" - }, - "id": 2082, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "verifyCallResult", - "nameLocation": "8529:16:14", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2066, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2061, - "mutability": "mutable", - "name": "success", - "nameLocation": "8560:7:14", - "nodeType": "VariableDeclaration", - "scope": 2082, - "src": "8555:12:14", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2060, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "8555:4:14", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2063, - "mutability": "mutable", - "name": "returndata", - "nameLocation": "8590:10:14", - "nodeType": "VariableDeclaration", - "scope": 2082, - "src": "8577:23:14", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2062, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "8577:5:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2065, - "mutability": "mutable", - "name": "errorMessage", - "nameLocation": "8624:12:14", - "nodeType": "VariableDeclaration", - "scope": 2082, - "src": "8610:26:14", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2064, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "8610:6:14", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "8545:97:14" - }, - "returnParameters": { - "id": 2069, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2068, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2082, - "src": "8666:12:14", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2067, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "8666:5:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "8665:14:14" - }, - "scope": 2103, - "src": "8520:295:14", - "stateMutability": "pure", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 2101, - "nodeType": "Block", - "src": "8904:457:14", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2092, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 2089, - "name": "returndata", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2084, - "src": "8980:10:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 2090, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "8991:6:14", - "memberName": "length", - "nodeType": "MemberAccess", - "src": "8980:17:14", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 2091, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9000:1:14", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "8980:21:14", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 2099, - "nodeType": "Block", - "src": "9310:45:14", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 2096, - "name": "errorMessage", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2086, - "src": "9331:12:14", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 2095, - "name": "revert", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967277, - 4294967277 - ], - "referencedDeclaration": 4294967277, - "src": "9324:6:14", - "typeDescriptions": { - "typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory) pure" - } - }, - "id": 2097, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "9324:20:14", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2098, - "nodeType": "ExpressionStatement", - "src": "9324:20:14" - } - ] - }, - "id": 2100, - "nodeType": "IfStatement", - "src": "8976:379:14", - "trueBody": { - "id": 2094, - "nodeType": "Block", - "src": "9003:301:14", - "statements": [ - { - "AST": { - "nodeType": "YulBlock", - "src": "9161:133:14", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "9179:40:14", - "value": { - "arguments": [ - { - "name": "returndata", - "nodeType": "YulIdentifier", - "src": "9208:10:14" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "9202:5:14" - }, - "nodeType": "YulFunctionCall", - "src": "9202:17:14" - }, - "variables": [ - { - "name": "returndata_size", - "nodeType": "YulTypedName", - "src": "9183:15:14", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9247:2:14", - "type": "", - "value": "32" - }, - { - "name": "returndata", - "nodeType": "YulIdentifier", - "src": "9251:10:14" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9243:3:14" - }, - "nodeType": "YulFunctionCall", - "src": "9243:19:14" - }, - { - "name": "returndata_size", - "nodeType": "YulIdentifier", - "src": "9264:15:14" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "9236:6:14" - }, - "nodeType": "YulFunctionCall", - "src": "9236:44:14" - }, - "nodeType": "YulExpressionStatement", - "src": "9236:44:14" - } - ] - }, - "documentation": "@solidity memory-safe-assembly", - "evmVersion": "paris", - "externalReferences": [ - { - "declaration": 2084, - "isOffset": false, - "isSlot": false, - "src": "9208:10:14", - "valueSize": 1 - }, - { - "declaration": 2084, - "isOffset": false, - "isSlot": false, - "src": "9251:10:14", - "valueSize": 1 - } - ], - "id": 2093, - "nodeType": "InlineAssembly", - "src": "9152:142:14" - } - ] - } - } - ] - }, - "id": 2102, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_revert", - "nameLocation": "8830:7:14", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2087, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2084, - "mutability": "mutable", - "name": "returndata", - "nameLocation": "8851:10:14", - "nodeType": "VariableDeclaration", - "scope": 2102, - "src": "8838:23:14", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2083, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "8838:5:14", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2086, - "mutability": "mutable", - "name": "errorMessage", - "nameLocation": "8877:12:14", - "nodeType": "VariableDeclaration", - "scope": 2102, - "src": "8863:26:14", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2085, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "8863:6:14", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "8837:53:14" - }, - "returnParameters": { - "id": 2088, - "nodeType": "ParameterList", - "parameters": [], - "src": "8904:0:14" - }, - "scope": 2103, - "src": "8821:540:14", - "stateMutability": "pure", - "virtual": false, - "visibility": "private" - } - ], - "scope": 2104, - "src": "194:9169:14", - "usedErrors": [] - } - ], - "src": "101:9263:14" - }, - "compiler": { - "name": "solc", - "version": "0.8.18+commit.87f61d96.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "3.4.13", - "updatedAt": "2024-12-10T18:52:58.862Z", - "devdoc": { - "details": "Collection of functions related to the address type", - "kind": "dev", - "methods": {}, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } -} \ No newline at end of file diff --git a/build/contracts/AddressUpgradeable.json b/build/contracts/AddressUpgradeable.json deleted file mode 100644 index d906b54..0000000 --- a/build/contracts/AddressUpgradeable.json +++ /dev/null @@ -1,4386 +0,0 @@ -{ - "contractName": "AddressUpgradeable", - "abi": [], - "metadata": "{\"compiler\":{\"version\":\"0.8.18+commit.87f61d96\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"details\":\"Collection of functions related to the address type\",\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol\":\"AddressUpgradeable\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":1},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]}},\"version\":1}", - "bytecode": "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220d6d70008f0b5cfd76737dacf25d9abd9723fbbc5eb9fa94cda986748ff65888564736f6c63430008120033", - "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220d6d70008f0b5cfd76737dacf25d9abd9723fbbc5eb9fa94cda986748ff65888564736f6c63430008120033", - "immutableReferences": {}, - "generatedSources": [], - "deployedGeneratedSources": [], - "sourceMap": "194:9180:3:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;194:9180:3;;;;;;;;;;;;;;;;;", - "deployedSourceMap": "194:9180:3:-:0;;;;;;;;", - "source": "// SPDX-License-Identifier: MIT\n// OpenZeppelin Contracts (last updated v4.9.0) (utils/Address.sol)\n\npragma solidity ^0.8.1;\n\n/**\n * @dev Collection of functions related to the address type\n */\nlibrary AddressUpgradeable {\n /**\n * @dev Returns true if `account` is a contract.\n *\n * [IMPORTANT]\n * ====\n * It is unsafe to assume that an address for which this function returns\n * false is an externally-owned account (EOA) and not a contract.\n *\n * Among others, `isContract` will return false for the following\n * types of addresses:\n *\n * - an externally-owned account\n * - a contract in construction\n * - an address where a contract will be created\n * - an address where a contract lived, but was destroyed\n *\n * Furthermore, `isContract` will also return true if the target contract within\n * the same transaction is already scheduled for destruction by `SELFDESTRUCT`,\n * which only has an effect at the end of a transaction.\n * ====\n *\n * [IMPORTANT]\n * ====\n * You shouldn't rely on `isContract` to protect against flash loan attacks!\n *\n * Preventing calls from contracts is highly discouraged. It breaks composability, breaks support for smart wallets\n * like Gnosis Safe, and does not provide security since it can be circumvented by calling from a contract\n * constructor.\n * ====\n */\n function isContract(address account) internal view returns (bool) {\n // This method relies on extcodesize/address.code.length, which returns 0\n // for contracts in construction, since the code is only stored at the end\n // of the constructor execution.\n\n return account.code.length > 0;\n }\n\n /**\n * @dev Replacement for Solidity's `transfer`: sends `amount` wei to\n * `recipient`, forwarding all available gas and reverting on errors.\n *\n * https://eips.ethereum.org/EIPS/eip-1884[EIP1884] increases the gas cost\n * of certain opcodes, possibly making contracts go over the 2300 gas limit\n * imposed by `transfer`, making them unable to receive funds via\n * `transfer`. {sendValue} removes this limitation.\n *\n * https://consensys.net/diligence/blog/2019/09/stop-using-soliditys-transfer-now/[Learn more].\n *\n * IMPORTANT: because control is transferred to `recipient`, care must be\n * taken to not create reentrancy vulnerabilities. Consider using\n * {ReentrancyGuard} or the\n * https://solidity.readthedocs.io/en/v0.8.0/security-considerations.html#use-the-checks-effects-interactions-pattern[checks-effects-interactions pattern].\n */\n function sendValue(address payable recipient, uint256 amount) internal {\n require(address(this).balance >= amount, \"Address: insufficient balance\");\n\n (bool success, ) = recipient.call{value: amount}(\"\");\n require(success, \"Address: unable to send value, recipient may have reverted\");\n }\n\n /**\n * @dev Performs a Solidity function call using a low level `call`. A\n * plain `call` is an unsafe replacement for a function call: use this\n * function instead.\n *\n * If `target` reverts with a revert reason, it is bubbled up by this\n * function (like regular Solidity function calls).\n *\n * Returns the raw returned data. To convert to the expected return value,\n * use https://solidity.readthedocs.io/en/latest/units-and-global-variables.html?highlight=abi.decode#abi-encoding-and-decoding-functions[`abi.decode`].\n *\n * Requirements:\n *\n * - `target` must be a contract.\n * - calling `target` with `data` must not revert.\n *\n * _Available since v3.1._\n */\n function functionCall(address target, bytes memory data) internal returns (bytes memory) {\n return functionCallWithValue(target, data, 0, \"Address: low-level call failed\");\n }\n\n /**\n * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`], but with\n * `errorMessage` as a fallback revert reason when `target` reverts.\n *\n * _Available since v3.1._\n */\n function functionCall(\n address target,\n bytes memory data,\n string memory errorMessage\n ) internal returns (bytes memory) {\n return functionCallWithValue(target, data, 0, errorMessage);\n }\n\n /**\n * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],\n * but also transferring `value` wei to `target`.\n *\n * Requirements:\n *\n * - the calling contract must have an ETH balance of at least `value`.\n * - the called Solidity function must be `payable`.\n *\n * _Available since v3.1._\n */\n function functionCallWithValue(address target, bytes memory data, uint256 value) internal returns (bytes memory) {\n return functionCallWithValue(target, data, value, \"Address: low-level call with value failed\");\n }\n\n /**\n * @dev Same as {xref-Address-functionCallWithValue-address-bytes-uint256-}[`functionCallWithValue`], but\n * with `errorMessage` as a fallback revert reason when `target` reverts.\n *\n * _Available since v3.1._\n */\n function functionCallWithValue(\n address target,\n bytes memory data,\n uint256 value,\n string memory errorMessage\n ) internal returns (bytes memory) {\n require(address(this).balance >= value, \"Address: insufficient balance for call\");\n (bool success, bytes memory returndata) = target.call{value: value}(data);\n return verifyCallResultFromTarget(target, success, returndata, errorMessage);\n }\n\n /**\n * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],\n * but performing a static call.\n *\n * _Available since v3.3._\n */\n function functionStaticCall(address target, bytes memory data) internal view returns (bytes memory) {\n return functionStaticCall(target, data, \"Address: low-level static call failed\");\n }\n\n /**\n * @dev Same as {xref-Address-functionCall-address-bytes-string-}[`functionCall`],\n * but performing a static call.\n *\n * _Available since v3.3._\n */\n function functionStaticCall(\n address target,\n bytes memory data,\n string memory errorMessage\n ) internal view returns (bytes memory) {\n (bool success, bytes memory returndata) = target.staticcall(data);\n return verifyCallResultFromTarget(target, success, returndata, errorMessage);\n }\n\n /**\n * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],\n * but performing a delegate call.\n *\n * _Available since v3.4._\n */\n function functionDelegateCall(address target, bytes memory data) internal returns (bytes memory) {\n return functionDelegateCall(target, data, \"Address: low-level delegate call failed\");\n }\n\n /**\n * @dev Same as {xref-Address-functionCall-address-bytes-string-}[`functionCall`],\n * but performing a delegate call.\n *\n * _Available since v3.4._\n */\n function functionDelegateCall(\n address target,\n bytes memory data,\n string memory errorMessage\n ) internal returns (bytes memory) {\n (bool success, bytes memory returndata) = target.delegatecall(data);\n return verifyCallResultFromTarget(target, success, returndata, errorMessage);\n }\n\n /**\n * @dev Tool to verify that a low level call to smart-contract was successful, and revert (either by bubbling\n * the revert reason or using the provided one) in case of unsuccessful call or if target was not a contract.\n *\n * _Available since v4.8._\n */\n function verifyCallResultFromTarget(\n address target,\n bool success,\n bytes memory returndata,\n string memory errorMessage\n ) internal view returns (bytes memory) {\n if (success) {\n if (returndata.length == 0) {\n // only check isContract if the call was successful and the return data is empty\n // otherwise we already know that it was a contract\n require(isContract(target), \"Address: call to non-contract\");\n }\n return returndata;\n } else {\n _revert(returndata, errorMessage);\n }\n }\n\n /**\n * @dev Tool to verify that a low level call was successful, and revert if it wasn't, either by bubbling the\n * revert reason or using the provided one.\n *\n * _Available since v4.3._\n */\n function verifyCallResult(\n bool success,\n bytes memory returndata,\n string memory errorMessage\n ) internal pure returns (bytes memory) {\n if (success) {\n return returndata;\n } else {\n _revert(returndata, errorMessage);\n }\n }\n\n function _revert(bytes memory returndata, string memory errorMessage) private pure {\n // Look for revert reason and bubble it up if present\n if (returndata.length > 0) {\n // The easiest way to bubble the revert reason is using memory via assembly\n /// @solidity memory-safe-assembly\n assembly {\n let returndata_size := mload(returndata)\n revert(add(32, returndata), returndata_size)\n }\n } else {\n revert(errorMessage);\n }\n }\n}\n", - "sourcePath": "@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", - "ast": { - "absolutePath": "@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", - "exportedSymbols": { - "AddressUpgradeable": [ - 716 - ] - }, - "id": 717, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 388, - "literals": [ - "solidity", - "^", - "0.8", - ".1" - ], - "nodeType": "PragmaDirective", - "src": "101:23:3" - }, - { - "abstract": false, - "baseContracts": [], - "canonicalName": "AddressUpgradeable", - "contractDependencies": [], - "contractKind": "library", - "documentation": { - "id": 389, - "nodeType": "StructuredDocumentation", - "src": "126:67:3", - "text": " @dev Collection of functions related to the address type" - }, - "fullyImplemented": true, - "id": 716, - "linearizedBaseContracts": [ - 716 - ], - "name": "AddressUpgradeable", - "nameLocation": "202:18:3", - "nodeType": "ContractDefinition", - "nodes": [ - { - "body": { - "id": 403, - "nodeType": "Block", - "src": "1489:254:3", - "statements": [ - { - "expression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 401, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "expression": { - "id": 397, - "name": "account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 392, - "src": "1713:7:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 398, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "1721:4:3", - "memberName": "code", - "nodeType": "MemberAccess", - "src": "1713:12:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 399, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "1726:6:3", - "memberName": "length", - "nodeType": "MemberAccess", - "src": "1713:19:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 400, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1735:1:3", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "1713:23:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 396, - "id": 402, - "nodeType": "Return", - "src": "1706:30:3" - } - ] - }, - "documentation": { - "id": 390, - "nodeType": "StructuredDocumentation", - "src": "227:1191:3", - "text": " @dev Returns true if `account` is a contract.\n [IMPORTANT]\n ====\n It is unsafe to assume that an address for which this function returns\n false is an externally-owned account (EOA) and not a contract.\n Among others, `isContract` will return false for the following\n types of addresses:\n - an externally-owned account\n - a contract in construction\n - an address where a contract will be created\n - an address where a contract lived, but was destroyed\n Furthermore, `isContract` will also return true if the target contract within\n the same transaction is already scheduled for destruction by `SELFDESTRUCT`,\n which only has an effect at the end of a transaction.\n ====\n [IMPORTANT]\n ====\n You shouldn't rely on `isContract` to protect against flash loan attacks!\n Preventing calls from contracts is highly discouraged. It breaks composability, breaks support for smart wallets\n like Gnosis Safe, and does not provide security since it can be circumvented by calling from a contract\n constructor.\n ====" - }, - "id": 404, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "isContract", - "nameLocation": "1432:10:3", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 393, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 392, - "mutability": "mutable", - "name": "account", - "nameLocation": "1451:7:3", - "nodeType": "VariableDeclaration", - "scope": 404, - "src": "1443:15:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 391, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1443:7:3", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "1442:17:3" - }, - "returnParameters": { - "id": 396, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 395, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 404, - "src": "1483:4:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 394, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1483:4:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "1482:6:3" - }, - "scope": 716, - "src": "1423:320:3", - "stateMutability": "view", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 437, - "nodeType": "Block", - "src": "2729:241:3", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 419, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "arguments": [ - { - "id": 415, - "name": "this", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967268, - "src": "2755:4:3", - "typeDescriptions": { - "typeIdentifier": "t_contract$_AddressUpgradeable_$716", - "typeString": "library AddressUpgradeable" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_AddressUpgradeable_$716", - "typeString": "library AddressUpgradeable" - } - ], - "id": 414, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "2747:7:3", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 413, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2747:7:3", - "typeDescriptions": {} - } - }, - "id": 416, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2747:13:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 417, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "2761:7:3", - "memberName": "balance", - "nodeType": "MemberAccess", - "src": "2747:21:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "id": 418, - "name": "amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 409, - "src": "2772:6:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2747:31:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "416464726573733a20696e73756666696369656e742062616c616e6365", - "id": 420, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2780:31:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_5597a22abd0ef5332f8053862eb236db7590f17e2b93a53f63a103becfb561f9", - "typeString": "literal_string \"Address: insufficient balance\"" - }, - "value": "Address: insufficient balance" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_5597a22abd0ef5332f8053862eb236db7590f17e2b93a53f63a103becfb561f9", - "typeString": "literal_string \"Address: insufficient balance\"" - } - ], - "id": 412, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "2739:7:3", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 421, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2739:73:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 422, - "nodeType": "ExpressionStatement", - "src": "2739:73:3" - }, - { - "assignments": [ - 424, - null - ], - "declarations": [ - { - "constant": false, - "id": 424, - "mutability": "mutable", - "name": "success", - "nameLocation": "2829:7:3", - "nodeType": "VariableDeclaration", - "scope": 437, - "src": "2824:12:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 423, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "2824:4:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - null - ], - "id": 431, - "initialValue": { - "arguments": [ - { - "hexValue": "", - "id": 429, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2872:2:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - }, - "value": "" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - } - ], - "expression": { - "id": 425, - "name": "recipient", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 407, - "src": "2842:9:3", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "id": 426, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "2852:4:3", - "memberName": "call", - "nodeType": "MemberAccess", - "src": "2842:14:3", - "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": 428, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "names": [ - "value" - ], - "nodeType": "FunctionCallOptions", - "options": [ - { - "id": 427, - "name": "amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 409, - "src": "2864:6:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "src": "2842:29:3", - "typeDescriptions": { - "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$value", - "typeString": "function (bytes memory) payable returns (bool,bytes memory)" - } - }, - "id": 430, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2842:33:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "tuple(bool,bytes memory)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "2823:52:3" - }, - { - "expression": { - "arguments": [ - { - "id": 433, - "name": "success", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 424, - "src": "2893:7:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "416464726573733a20756e61626c6520746f2073656e642076616c75652c20726563697069656e74206d61792068617665207265766572746564", - "id": 434, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2902:60:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_51ddaa38748c0a1144620fb5bfe8edab31ea437571ad591a7734bbfd0429aeae", - "typeString": "literal_string \"Address: unable to send value, recipient may have reverted\"" - }, - "value": "Address: unable to send value, recipient may have reverted" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_51ddaa38748c0a1144620fb5bfe8edab31ea437571ad591a7734bbfd0429aeae", - "typeString": "literal_string \"Address: unable to send value, recipient may have reverted\"" - } - ], - "id": 432, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "2885:7:3", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 435, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2885:78:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 436, - "nodeType": "ExpressionStatement", - "src": "2885:78:3" - } - ] - }, - "documentation": { - "id": 405, - "nodeType": "StructuredDocumentation", - "src": "1749:904:3", - "text": " @dev Replacement for Solidity's `transfer`: sends `amount` wei to\n `recipient`, forwarding all available gas and reverting on errors.\n https://eips.ethereum.org/EIPS/eip-1884[EIP1884] increases the gas cost\n of certain opcodes, possibly making contracts go over the 2300 gas limit\n imposed by `transfer`, making them unable to receive funds via\n `transfer`. {sendValue} removes this limitation.\n https://consensys.net/diligence/blog/2019/09/stop-using-soliditys-transfer-now/[Learn more].\n IMPORTANT: because control is transferred to `recipient`, care must be\n taken to not create reentrancy vulnerabilities. Consider using\n {ReentrancyGuard} or the\n https://solidity.readthedocs.io/en/v0.8.0/security-considerations.html#use-the-checks-effects-interactions-pattern[checks-effects-interactions pattern]." - }, - "id": 438, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "sendValue", - "nameLocation": "2667:9:3", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 410, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 407, - "mutability": "mutable", - "name": "recipient", - "nameLocation": "2693:9:3", - "nodeType": "VariableDeclaration", - "scope": 438, - "src": "2677:25:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - }, - "typeName": { - "id": 406, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2677:15:3", - "stateMutability": "payable", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 409, - "mutability": "mutable", - "name": "amount", - "nameLocation": "2712:6:3", - "nodeType": "VariableDeclaration", - "scope": 438, - "src": "2704:14:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 408, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2704:7:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "2676:43:3" - }, - "returnParameters": { - "id": 411, - "nodeType": "ParameterList", - "parameters": [], - "src": "2729:0:3" - }, - "scope": 716, - "src": "2658:312:3", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 455, - "nodeType": "Block", - "src": "3801:96:3", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 449, - "name": "target", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 441, - "src": "3840:6:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 450, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 443, - "src": "3848:4:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "hexValue": "30", - "id": 451, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3854:1:3", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - { - "hexValue": "416464726573733a206c6f772d6c6576656c2063616c6c206661696c6564", - "id": 452, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3857:32:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_24d7ab5d382116e64324f19950ca9340b8af1ddeb09a8d026e0a3c6a01dcc9df", - "typeString": "literal_string \"Address: low-level call failed\"" - }, - "value": "Address: low-level call failed" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - { - "typeIdentifier": "t_stringliteral_24d7ab5d382116e64324f19950ca9340b8af1ddeb09a8d026e0a3c6a01dcc9df", - "typeString": "literal_string \"Address: low-level call failed\"" - } - ], - "id": 448, - "name": "functionCallWithValue", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 496, - 540 - ], - "referencedDeclaration": 540, - "src": "3818:21:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_bytes_memory_ptr_$_t_uint256_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (address,bytes memory,uint256,string memory) returns (bytes memory)" - } - }, - "id": 453, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "3818:72:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 447, - "id": 454, - "nodeType": "Return", - "src": "3811:79:3" - } - ] - }, - "documentation": { - "id": 439, - "nodeType": "StructuredDocumentation", - "src": "2976:731:3", - "text": " @dev Performs a Solidity function call using a low level `call`. A\n plain `call` is an unsafe replacement for a function call: use this\n function instead.\n If `target` reverts with a revert reason, it is bubbled up by this\n function (like regular Solidity function calls).\n Returns the raw returned data. To convert to the expected return value,\n use https://solidity.readthedocs.io/en/latest/units-and-global-variables.html?highlight=abi.decode#abi-encoding-and-decoding-functions[`abi.decode`].\n Requirements:\n - `target` must be a contract.\n - calling `target` with `data` must not revert.\n _Available since v3.1._" - }, - "id": 456, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "functionCall", - "nameLocation": "3721:12:3", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 444, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 441, - "mutability": "mutable", - "name": "target", - "nameLocation": "3742:6:3", - "nodeType": "VariableDeclaration", - "scope": 456, - "src": "3734:14:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 440, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3734:7:3", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 443, - "mutability": "mutable", - "name": "data", - "nameLocation": "3763:4:3", - "nodeType": "VariableDeclaration", - "scope": 456, - "src": "3750:17:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 442, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "3750:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "3733:35:3" - }, - "returnParameters": { - "id": 447, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 446, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 456, - "src": "3787:12:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 445, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "3787:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "3786:14:3" - }, - "scope": 716, - "src": "3712:185:3", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 475, - "nodeType": "Block", - "src": "4266:76:3", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 469, - "name": "target", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 459, - "src": "4305:6:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 470, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 461, - "src": "4313:4:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "hexValue": "30", - "id": 471, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4319:1:3", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - { - "id": 472, - "name": "errorMessage", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 463, - "src": "4322:12:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 468, - "name": "functionCallWithValue", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 496, - 540 - ], - "referencedDeclaration": 540, - "src": "4283:21:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_bytes_memory_ptr_$_t_uint256_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (address,bytes memory,uint256,string memory) returns (bytes memory)" - } - }, - "id": 473, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4283:52:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 467, - "id": 474, - "nodeType": "Return", - "src": "4276:59:3" - } - ] - }, - "documentation": { - "id": 457, - "nodeType": "StructuredDocumentation", - "src": "3903:211:3", - "text": " @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`], but with\n `errorMessage` as a fallback revert reason when `target` reverts.\n _Available since v3.1._" - }, - "id": 476, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "functionCall", - "nameLocation": "4128:12:3", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 464, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 459, - "mutability": "mutable", - "name": "target", - "nameLocation": "4158:6:3", - "nodeType": "VariableDeclaration", - "scope": 476, - "src": "4150:14:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 458, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "4150:7:3", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 461, - "mutability": "mutable", - "name": "data", - "nameLocation": "4187:4:3", - "nodeType": "VariableDeclaration", - "scope": 476, - "src": "4174:17:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 460, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "4174:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 463, - "mutability": "mutable", - "name": "errorMessage", - "nameLocation": "4215:12:3", - "nodeType": "VariableDeclaration", - "scope": 476, - "src": "4201:26:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 462, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "4201:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "4140:93:3" - }, - "returnParameters": { - "id": 467, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 466, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 476, - "src": "4252:12:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 465, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "4252:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "4251:14:3" - }, - "scope": 716, - "src": "4119:223:3", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 495, - "nodeType": "Block", - "src": "4817:111:3", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 489, - "name": "target", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 479, - "src": "4856:6:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 490, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 481, - "src": "4864:4:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "id": 491, - "name": "value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 483, - "src": "4870:5:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "hexValue": "416464726573733a206c6f772d6c6576656c2063616c6c20776974682076616c7565206661696c6564", - "id": 492, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4877:43:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_88a4a0b5e975840320a0475d4027005235904fdb5ece94df156f3d717cb2dbfc", - "typeString": "literal_string \"Address: low-level call with value failed\"" - }, - "value": "Address: low-level call with value failed" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_stringliteral_88a4a0b5e975840320a0475d4027005235904fdb5ece94df156f3d717cb2dbfc", - "typeString": "literal_string \"Address: low-level call with value failed\"" - } - ], - "id": 488, - "name": "functionCallWithValue", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 496, - 540 - ], - "referencedDeclaration": 540, - "src": "4834:21:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_bytes_memory_ptr_$_t_uint256_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (address,bytes memory,uint256,string memory) returns (bytes memory)" - } - }, - "id": 493, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4834:87:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 487, - "id": 494, - "nodeType": "Return", - "src": "4827:94:3" - } - ] - }, - "documentation": { - "id": 477, - "nodeType": "StructuredDocumentation", - "src": "4348:351:3", - "text": " @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],\n but also transferring `value` wei to `target`.\n Requirements:\n - the calling contract must have an ETH balance of at least `value`.\n - the called Solidity function must be `payable`.\n _Available since v3.1._" - }, - "id": 496, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "functionCallWithValue", - "nameLocation": "4713:21:3", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 484, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 479, - "mutability": "mutable", - "name": "target", - "nameLocation": "4743:6:3", - "nodeType": "VariableDeclaration", - "scope": 496, - "src": "4735:14:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 478, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "4735:7:3", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 481, - "mutability": "mutable", - "name": "data", - "nameLocation": "4764:4:3", - "nodeType": "VariableDeclaration", - "scope": 496, - "src": "4751:17:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 480, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "4751:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 483, - "mutability": "mutable", - "name": "value", - "nameLocation": "4778:5:3", - "nodeType": "VariableDeclaration", - "scope": 496, - "src": "4770:13:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 482, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "4770:7:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "4734:50:3" - }, - "returnParameters": { - "id": 487, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 486, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 496, - "src": "4803:12:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 485, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "4803:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "4802:14:3" - }, - "scope": 716, - "src": "4704:224:3", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 539, - "nodeType": "Block", - "src": "5355:267:3", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 517, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "arguments": [ - { - "id": 513, - "name": "this", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967268, - "src": "5381:4:3", - "typeDescriptions": { - "typeIdentifier": "t_contract$_AddressUpgradeable_$716", - "typeString": "library AddressUpgradeable" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_AddressUpgradeable_$716", - "typeString": "library AddressUpgradeable" - } - ], - "id": 512, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "5373:7:3", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 511, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "5373:7:3", - "typeDescriptions": {} - } - }, - "id": 514, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5373:13:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 515, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "5387:7:3", - "memberName": "balance", - "nodeType": "MemberAccess", - "src": "5373:21:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "id": 516, - "name": "value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 503, - "src": "5398:5:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "5373:30:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "416464726573733a20696e73756666696369656e742062616c616e636520666f722063616c6c", - "id": 518, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5405:40:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_565f1a77334fc4792800921178c71e4521acffab18ff9e7885b49377ee80ab4c", - "typeString": "literal_string \"Address: insufficient balance for call\"" - }, - "value": "Address: insufficient balance for call" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_565f1a77334fc4792800921178c71e4521acffab18ff9e7885b49377ee80ab4c", - "typeString": "literal_string \"Address: insufficient balance for call\"" - } - ], - "id": 510, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "5365:7:3", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 519, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5365:81:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 520, - "nodeType": "ExpressionStatement", - "src": "5365:81:3" - }, - { - "assignments": [ - 522, - 524 - ], - "declarations": [ - { - "constant": false, - "id": 522, - "mutability": "mutable", - "name": "success", - "nameLocation": "5462:7:3", - "nodeType": "VariableDeclaration", - "scope": 539, - "src": "5457:12:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 521, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "5457:4:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 524, - "mutability": "mutable", - "name": "returndata", - "nameLocation": "5484:10:3", - "nodeType": "VariableDeclaration", - "scope": 539, - "src": "5471:23:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 523, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "5471:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 531, - "initialValue": { - "arguments": [ - { - "id": 529, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 501, - "src": "5524:4:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "id": 525, - "name": "target", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 499, - "src": "5498:6:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 526, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "5505:4:3", - "memberName": "call", - "nodeType": "MemberAccess", - "src": "5498:11:3", - "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": 528, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "names": [ - "value" - ], - "nodeType": "FunctionCallOptions", - "options": [ - { - "id": 527, - "name": "value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 503, - "src": "5517:5:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "src": "5498:25:3", - "typeDescriptions": { - "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$value", - "typeString": "function (bytes memory) payable returns (bool,bytes memory)" - } - }, - "id": 530, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5498:31:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "tuple(bool,bytes memory)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "5456:73:3" - }, - { - "expression": { - "arguments": [ - { - "id": 533, - "name": "target", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 499, - "src": "5573:6:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 534, - "name": "success", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 522, - "src": "5581:7:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "id": 535, - "name": "returndata", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 524, - "src": "5590:10:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "id": 536, - "name": "errorMessage", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 505, - "src": "5602:12:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 532, - "name": "verifyCallResultFromTarget", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 671, - "src": "5546:26:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$_t_bool_$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (address,bool,bytes memory,string memory) view returns (bytes memory)" - } - }, - "id": 537, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5546:69:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 509, - "id": 538, - "nodeType": "Return", - "src": "5539:76:3" - } - ] - }, - "documentation": { - "id": 497, - "nodeType": "StructuredDocumentation", - "src": "4934:237:3", - "text": " @dev Same as {xref-Address-functionCallWithValue-address-bytes-uint256-}[`functionCallWithValue`], but\n with `errorMessage` as a fallback revert reason when `target` reverts.\n _Available since v3.1._" - }, - "id": 540, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "functionCallWithValue", - "nameLocation": "5185:21:3", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 506, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 499, - "mutability": "mutable", - "name": "target", - "nameLocation": "5224:6:3", - "nodeType": "VariableDeclaration", - "scope": 540, - "src": "5216:14:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 498, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "5216:7:3", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 501, - "mutability": "mutable", - "name": "data", - "nameLocation": "5253:4:3", - "nodeType": "VariableDeclaration", - "scope": 540, - "src": "5240:17:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 500, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "5240:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 503, - "mutability": "mutable", - "name": "value", - "nameLocation": "5275:5:3", - "nodeType": "VariableDeclaration", - "scope": 540, - "src": "5267:13:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 502, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "5267:7:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 505, - "mutability": "mutable", - "name": "errorMessage", - "nameLocation": "5304:12:3", - "nodeType": "VariableDeclaration", - "scope": 540, - "src": "5290:26:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 504, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "5290:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "5206:116:3" - }, - "returnParameters": { - "id": 509, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 508, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 540, - "src": "5341:12:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 507, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "5341:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "5340:14:3" - }, - "scope": 716, - "src": "5176:446:3", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 556, - "nodeType": "Block", - "src": "5899:97:3", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 551, - "name": "target", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 543, - "src": "5935:6:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 552, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 545, - "src": "5943:4:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "hexValue": "416464726573733a206c6f772d6c6576656c207374617469632063616c6c206661696c6564", - "id": 553, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5949:39:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_90ec82aa826a536a4cbfae44ecfa384680faa9a4b77344bce96aa761ad904df0", - "typeString": "literal_string \"Address: low-level static call failed\"" - }, - "value": "Address: low-level static call failed" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_stringliteral_90ec82aa826a536a4cbfae44ecfa384680faa9a4b77344bce96aa761ad904df0", - "typeString": "literal_string \"Address: low-level static call failed\"" - } - ], - "id": 550, - "name": "functionStaticCall", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 557, - 586 - ], - "referencedDeclaration": 586, - "src": "5916:18:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (address,bytes memory,string memory) view returns (bytes memory)" - } - }, - "id": 554, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5916:73:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 549, - "id": 555, - "nodeType": "Return", - "src": "5909:80:3" - } - ] - }, - "documentation": { - "id": 541, - "nodeType": "StructuredDocumentation", - "src": "5628:166:3", - "text": " @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],\n but performing a static call.\n _Available since v3.3._" - }, - "id": 557, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "functionStaticCall", - "nameLocation": "5808:18:3", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 546, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 543, - "mutability": "mutable", - "name": "target", - "nameLocation": "5835:6:3", - "nodeType": "VariableDeclaration", - "scope": 557, - "src": "5827:14:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 542, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "5827:7:3", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 545, - "mutability": "mutable", - "name": "data", - "nameLocation": "5856:4:3", - "nodeType": "VariableDeclaration", - "scope": 557, - "src": "5843:17:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 544, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "5843:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "5826:35:3" - }, - "returnParameters": { - "id": 549, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 548, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 557, - "src": "5885:12:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 547, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "5885:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "5884:14:3" - }, - "scope": 716, - "src": "5799:197:3", - "stateMutability": "view", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 585, - "nodeType": "Block", - "src": "6338:168:3", - "statements": [ - { - "assignments": [ - 570, - 572 - ], - "declarations": [ - { - "constant": false, - "id": 570, - "mutability": "mutable", - "name": "success", - "nameLocation": "6354:7:3", - "nodeType": "VariableDeclaration", - "scope": 585, - "src": "6349:12:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 569, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "6349:4:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 572, - "mutability": "mutable", - "name": "returndata", - "nameLocation": "6376:10:3", - "nodeType": "VariableDeclaration", - "scope": 585, - "src": "6363:23:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 571, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "6363:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 577, - "initialValue": { - "arguments": [ - { - "id": 575, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 562, - "src": "6408:4:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "id": 573, - "name": "target", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 560, - "src": "6390:6:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 574, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "6397:10:3", - "memberName": "staticcall", - "nodeType": "MemberAccess", - "src": "6390:17:3", - "typeDescriptions": { - "typeIdentifier": "t_function_barestaticcall_view$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "function (bytes memory) view returns (bool,bytes memory)" - } - }, - "id": 576, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "6390:23:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "tuple(bool,bytes memory)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "6348:65:3" - }, - { - "expression": { - "arguments": [ - { - "id": 579, - "name": "target", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 560, - "src": "6457:6:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 580, - "name": "success", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 570, - "src": "6465:7:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "id": 581, - "name": "returndata", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 572, - "src": "6474:10:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "id": 582, - "name": "errorMessage", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 564, - "src": "6486:12:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 578, - "name": "verifyCallResultFromTarget", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 671, - "src": "6430:26:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$_t_bool_$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (address,bool,bytes memory,string memory) view returns (bytes memory)" - } - }, - "id": 583, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "6430:69:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 568, - "id": 584, - "nodeType": "Return", - "src": "6423:76:3" - } - ] - }, - "documentation": { - "id": 558, - "nodeType": "StructuredDocumentation", - "src": "6002:173:3", - "text": " @dev Same as {xref-Address-functionCall-address-bytes-string-}[`functionCall`],\n but performing a static call.\n _Available since v3.3._" - }, - "id": 586, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "functionStaticCall", - "nameLocation": "6189:18:3", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 565, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 560, - "mutability": "mutable", - "name": "target", - "nameLocation": "6225:6:3", - "nodeType": "VariableDeclaration", - "scope": 586, - "src": "6217:14:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 559, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "6217:7:3", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 562, - "mutability": "mutable", - "name": "data", - "nameLocation": "6254:4:3", - "nodeType": "VariableDeclaration", - "scope": 586, - "src": "6241:17:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 561, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "6241:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 564, - "mutability": "mutable", - "name": "errorMessage", - "nameLocation": "6282:12:3", - "nodeType": "VariableDeclaration", - "scope": 586, - "src": "6268:26:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 563, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "6268:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "6207:93:3" - }, - "returnParameters": { - "id": 568, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 567, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 586, - "src": "6324:12:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 566, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "6324:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "6323:14:3" - }, - "scope": 716, - "src": "6180:326:3", - "stateMutability": "view", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 602, - "nodeType": "Block", - "src": "6782:101:3", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 597, - "name": "target", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 589, - "src": "6820:6:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 598, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 591, - "src": "6828:4:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "hexValue": "416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564", - "id": 599, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6834:41:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_9fdcd12e4b726339b32a442b0a448365d5d85c96b2d2cff917b4f66c63110398", - "typeString": "literal_string \"Address: low-level delegate call failed\"" - }, - "value": "Address: low-level delegate call failed" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_stringliteral_9fdcd12e4b726339b32a442b0a448365d5d85c96b2d2cff917b4f66c63110398", - "typeString": "literal_string \"Address: low-level delegate call failed\"" - } - ], - "id": 596, - "name": "functionDelegateCall", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 603, - 632 - ], - "referencedDeclaration": 632, - "src": "6799:20:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (address,bytes memory,string memory) returns (bytes memory)" - } - }, - "id": 600, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "6799:77:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 595, - "id": 601, - "nodeType": "Return", - "src": "6792:84:3" - } - ] - }, - "documentation": { - "id": 587, - "nodeType": "StructuredDocumentation", - "src": "6512:168:3", - "text": " @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],\n but performing a delegate call.\n _Available since v3.4._" - }, - "id": 603, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "functionDelegateCall", - "nameLocation": "6694:20:3", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 592, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 589, - "mutability": "mutable", - "name": "target", - "nameLocation": "6723:6:3", - "nodeType": "VariableDeclaration", - "scope": 603, - "src": "6715:14:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 588, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "6715:7:3", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 591, - "mutability": "mutable", - "name": "data", - "nameLocation": "6744:4:3", - "nodeType": "VariableDeclaration", - "scope": 603, - "src": "6731:17:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 590, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "6731:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "6714:35:3" - }, - "returnParameters": { - "id": 595, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 594, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 603, - "src": "6768:12:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 593, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "6768:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "6767:14:3" - }, - "scope": 716, - "src": "6685:198:3", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 631, - "nodeType": "Block", - "src": "7224:170:3", - "statements": [ - { - "assignments": [ - 616, - 618 - ], - "declarations": [ - { - "constant": false, - "id": 616, - "mutability": "mutable", - "name": "success", - "nameLocation": "7240:7:3", - "nodeType": "VariableDeclaration", - "scope": 631, - "src": "7235:12:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 615, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "7235:4:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 618, - "mutability": "mutable", - "name": "returndata", - "nameLocation": "7262:10:3", - "nodeType": "VariableDeclaration", - "scope": 631, - "src": "7249:23:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 617, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "7249:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 623, - "initialValue": { - "arguments": [ - { - "id": 621, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 608, - "src": "7296:4:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "id": 619, - "name": "target", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 606, - "src": "7276:6:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 620, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "7283:12:3", - "memberName": "delegatecall", - "nodeType": "MemberAccess", - "src": "7276:19:3", - "typeDescriptions": { - "typeIdentifier": "t_function_baredelegatecall_nonpayable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "function (bytes memory) returns (bool,bytes memory)" - } - }, - "id": 622, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "7276:25:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "tuple(bool,bytes memory)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "7234:67:3" - }, - { - "expression": { - "arguments": [ - { - "id": 625, - "name": "target", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 606, - "src": "7345:6:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 626, - "name": "success", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 616, - "src": "7353:7:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "id": 627, - "name": "returndata", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 618, - "src": "7362:10:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "id": 628, - "name": "errorMessage", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 610, - "src": "7374:12:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 624, - "name": "verifyCallResultFromTarget", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 671, - "src": "7318:26:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$_t_bool_$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (address,bool,bytes memory,string memory) view returns (bytes memory)" - } - }, - "id": 629, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "7318:69:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 614, - "id": 630, - "nodeType": "Return", - "src": "7311:76:3" - } - ] - }, - "documentation": { - "id": 604, - "nodeType": "StructuredDocumentation", - "src": "6889:175:3", - "text": " @dev Same as {xref-Address-functionCall-address-bytes-string-}[`functionCall`],\n but performing a delegate call.\n _Available since v3.4._" - }, - "id": 632, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "functionDelegateCall", - "nameLocation": "7078:20:3", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 611, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 606, - "mutability": "mutable", - "name": "target", - "nameLocation": "7116:6:3", - "nodeType": "VariableDeclaration", - "scope": 632, - "src": "7108:14:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 605, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "7108:7:3", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 608, - "mutability": "mutable", - "name": "data", - "nameLocation": "7145:4:3", - "nodeType": "VariableDeclaration", - "scope": 632, - "src": "7132:17:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 607, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "7132:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 610, - "mutability": "mutable", - "name": "errorMessage", - "nameLocation": "7173:12:3", - "nodeType": "VariableDeclaration", - "scope": 632, - "src": "7159:26:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 609, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "7159:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "7098:93:3" - }, - "returnParameters": { - "id": 614, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 613, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 632, - "src": "7210:12:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 612, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "7210:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "7209:14:3" - }, - "scope": 716, - "src": "7069:325:3", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 670, - "nodeType": "Block", - "src": "7876:434:3", - "statements": [ - { - "condition": { - "id": 646, - "name": "success", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 637, - "src": "7890:7:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 668, - "nodeType": "Block", - "src": "8246:58:3", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 664, - "name": "returndata", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 639, - "src": "8268:10:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "id": 665, - "name": "errorMessage", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 641, - "src": "8280:12:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 663, - "name": "_revert", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 715, - "src": "8260:7:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bytes memory,string memory) pure" - } - }, - "id": 666, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "8260:33:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 667, - "nodeType": "ExpressionStatement", - "src": "8260:33:3" - } - ] - }, - "id": 669, - "nodeType": "IfStatement", - "src": "7886:418:3", - "trueBody": { - "id": 662, - "nodeType": "Block", - "src": "7899:341:3", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 650, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 647, - "name": "returndata", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 639, - "src": "7917:10:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 648, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "7928:6:3", - "memberName": "length", - "nodeType": "MemberAccess", - "src": "7917:17:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 649, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7938:1:3", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "7917:22:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 659, - "nodeType": "IfStatement", - "src": "7913:286:3", - "trueBody": { - "id": 658, - "nodeType": "Block", - "src": "7941:258:3", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "id": 653, - "name": "target", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 635, - "src": "8143:6:3", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 652, - "name": "isContract", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 404, - "src": "8132:10:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", - "typeString": "function (address) view returns (bool)" - } - }, - "id": 654, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "8132:18:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374", - "id": 655, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "8152:31:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_cc2e4e38850b7c0a3e942cfed89b71c77302df25bcb2ec297a0c4ff9ff6b90ad", - "typeString": "literal_string \"Address: call to non-contract\"" - }, - "value": "Address: call to non-contract" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_cc2e4e38850b7c0a3e942cfed89b71c77302df25bcb2ec297a0c4ff9ff6b90ad", - "typeString": "literal_string \"Address: call to non-contract\"" - } - ], - "id": 651, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "8124:7:3", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 656, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "8124:60:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 657, - "nodeType": "ExpressionStatement", - "src": "8124:60:3" - } - ] - } - }, - { - "expression": { - "id": 660, - "name": "returndata", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 639, - "src": "8219:10:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 645, - "id": 661, - "nodeType": "Return", - "src": "8212:17:3" - } - ] - } - } - ] - }, - "documentation": { - "id": 633, - "nodeType": "StructuredDocumentation", - "src": "7400:277:3", - "text": " @dev Tool to verify that a low level call to smart-contract was successful, and revert (either by bubbling\n the revert reason or using the provided one) in case of unsuccessful call or if target was not a contract.\n _Available since v4.8._" - }, - "id": 671, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "verifyCallResultFromTarget", - "nameLocation": "7691:26:3", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 642, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 635, - "mutability": "mutable", - "name": "target", - "nameLocation": "7735:6:3", - "nodeType": "VariableDeclaration", - "scope": 671, - "src": "7727:14:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 634, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "7727:7:3", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 637, - "mutability": "mutable", - "name": "success", - "nameLocation": "7756:7:3", - "nodeType": "VariableDeclaration", - "scope": 671, - "src": "7751:12:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 636, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "7751:4:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 639, - "mutability": "mutable", - "name": "returndata", - "nameLocation": "7786:10:3", - "nodeType": "VariableDeclaration", - "scope": 671, - "src": "7773:23:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 638, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "7773:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 641, - "mutability": "mutable", - "name": "errorMessage", - "nameLocation": "7820:12:3", - "nodeType": "VariableDeclaration", - "scope": 671, - "src": "7806:26:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 640, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "7806:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "7717:121:3" - }, - "returnParameters": { - "id": 645, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 644, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 671, - "src": "7862:12:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 643, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "7862:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "7861:14:3" - }, - "scope": 716, - "src": "7682:628:3", - "stateMutability": "view", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 694, - "nodeType": "Block", - "src": "8691:135:3", - "statements": [ - { - "condition": { - "id": 683, - "name": "success", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 674, - "src": "8705:7:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 692, - "nodeType": "Block", - "src": "8762:58:3", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 688, - "name": "returndata", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 676, - "src": "8784:10:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "id": 689, - "name": "errorMessage", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 678, - "src": "8796:12:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 687, - "name": "_revert", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 715, - "src": "8776:7:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bytes memory,string memory) pure" - } - }, - "id": 690, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "8776:33:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 691, - "nodeType": "ExpressionStatement", - "src": "8776:33:3" - } - ] - }, - "id": 693, - "nodeType": "IfStatement", - "src": "8701:119:3", - "trueBody": { - "id": 686, - "nodeType": "Block", - "src": "8714:42:3", - "statements": [ - { - "expression": { - "id": 684, - "name": "returndata", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 676, - "src": "8735:10:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 682, - "id": 685, - "nodeType": "Return", - "src": "8728:17:3" - } - ] - } - } - ] - }, - "documentation": { - "id": 672, - "nodeType": "StructuredDocumentation", - "src": "8316:210:3", - "text": " @dev Tool to verify that a low level call was successful, and revert if it wasn't, either by bubbling the\n revert reason or using the provided one.\n _Available since v4.3._" - }, - "id": 695, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "verifyCallResult", - "nameLocation": "8540:16:3", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 679, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 674, - "mutability": "mutable", - "name": "success", - "nameLocation": "8571:7:3", - "nodeType": "VariableDeclaration", - "scope": 695, - "src": "8566:12:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 673, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "8566:4:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 676, - "mutability": "mutable", - "name": "returndata", - "nameLocation": "8601:10:3", - "nodeType": "VariableDeclaration", - "scope": 695, - "src": "8588:23:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 675, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "8588:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 678, - "mutability": "mutable", - "name": "errorMessage", - "nameLocation": "8635:12:3", - "nodeType": "VariableDeclaration", - "scope": 695, - "src": "8621:26:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 677, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "8621:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "8556:97:3" - }, - "returnParameters": { - "id": 682, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 681, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 695, - "src": "8677:12:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 680, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "8677:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "8676:14:3" - }, - "scope": 716, - "src": "8531:295:3", - "stateMutability": "pure", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 714, - "nodeType": "Block", - "src": "8915:457:3", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 705, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 702, - "name": "returndata", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 697, - "src": "8991:10:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 703, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "9002:6:3", - "memberName": "length", - "nodeType": "MemberAccess", - "src": "8991:17:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 704, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9011:1:3", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "8991:21:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 712, - "nodeType": "Block", - "src": "9321:45:3", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 709, - "name": "errorMessage", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 699, - "src": "9342:12:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 708, - "name": "revert", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967277, - 4294967277 - ], - "referencedDeclaration": 4294967277, - "src": "9335:6:3", - "typeDescriptions": { - "typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory) pure" - } - }, - "id": 710, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "9335:20:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 711, - "nodeType": "ExpressionStatement", - "src": "9335:20:3" - } - ] - }, - "id": 713, - "nodeType": "IfStatement", - "src": "8987:379:3", - "trueBody": { - "id": 707, - "nodeType": "Block", - "src": "9014:301:3", - "statements": [ - { - "AST": { - "nodeType": "YulBlock", - "src": "9172:133:3", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "9190:40:3", - "value": { - "arguments": [ - { - "name": "returndata", - "nodeType": "YulIdentifier", - "src": "9219:10:3" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "9213:5:3" - }, - "nodeType": "YulFunctionCall", - "src": "9213:17:3" - }, - "variables": [ - { - "name": "returndata_size", - "nodeType": "YulTypedName", - "src": "9194:15:3", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9258:2:3", - "type": "", - "value": "32" - }, - { - "name": "returndata", - "nodeType": "YulIdentifier", - "src": "9262:10:3" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9254:3:3" - }, - "nodeType": "YulFunctionCall", - "src": "9254:19:3" - }, - { - "name": "returndata_size", - "nodeType": "YulIdentifier", - "src": "9275:15:3" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "9247:6:3" - }, - "nodeType": "YulFunctionCall", - "src": "9247:44:3" - }, - "nodeType": "YulExpressionStatement", - "src": "9247:44:3" - } - ] - }, - "documentation": "@solidity memory-safe-assembly", - "evmVersion": "paris", - "externalReferences": [ - { - "declaration": 697, - "isOffset": false, - "isSlot": false, - "src": "9219:10:3", - "valueSize": 1 - }, - { - "declaration": 697, - "isOffset": false, - "isSlot": false, - "src": "9262:10:3", - "valueSize": 1 - } - ], - "id": 706, - "nodeType": "InlineAssembly", - "src": "9163:142:3" - } - ] - } - } - ] - }, - "id": 715, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_revert", - "nameLocation": "8841:7:3", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 700, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 697, - "mutability": "mutable", - "name": "returndata", - "nameLocation": "8862:10:3", - "nodeType": "VariableDeclaration", - "scope": 715, - "src": "8849:23:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 696, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "8849:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 699, - "mutability": "mutable", - "name": "errorMessage", - "nameLocation": "8888:12:3", - "nodeType": "VariableDeclaration", - "scope": 715, - "src": "8874:26:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 698, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "8874:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "8848:53:3" - }, - "returnParameters": { - "id": 701, - "nodeType": "ParameterList", - "parameters": [], - "src": "8915:0:3" - }, - "scope": 716, - "src": "8832:540:3", - "stateMutability": "pure", - "virtual": false, - "visibility": "private" - } - ], - "scope": 717, - "src": "194:9180:3", - "usedErrors": [] - } - ], - "src": "101:9274:3" - }, - "compiler": { - "name": "solc", - "version": "0.8.18+commit.87f61d96.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "3.4.13", - "updatedAt": "2024-12-10T18:52:58.843Z", - "devdoc": { - "details": "Collection of functions related to the address type", - "kind": "dev", - "methods": {}, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } -} \ No newline at end of file diff --git a/build/contracts/Bridge.json b/build/contracts/Bridge.json deleted file mode 100644 index a75a66b..0000000 --- a/build/contracts/Bridge.json +++ /dev/null @@ -1,5797 +0,0 @@ -{ - "contractName": "Bridge", - "abi": [ - { - "stateMutability": "payable", - "type": "receive" - }, - { - "inputs": [], - "name": "getBtcBlockchainBestChainHeight", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getStateForBtcReleaseClient", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getStateForDebugging", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getBtcBlockchainInitialBlockHeight", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "int256", - "name": "depth", - "type": "int256" - } - ], - "name": "getBtcBlockchainBlockHashAtDepth", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "hash", - "type": "string" - } - ], - "name": "getBtcTxHashProcessedHeight", - "outputs": [ - { - "internalType": "int64", - "name": "", - "type": "int64" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "hash", - "type": "string" - } - ], - "name": "isBtcTxHashAlreadyProcessed", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getFederationAddress", - "outputs": [ - { - "internalType": "string", - "name": "", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "atx", - "type": "bytes" - }, - { - "internalType": "int256", - "name": "height", - "type": "int256" - }, - { - "internalType": "bytes", - "name": "pmt", - "type": "bytes" - } - ], - "name": "registerBtcTransaction", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "pubkey", - "type": "bytes" - }, - { - "internalType": "bytes[]", - "name": "signatures", - "type": "bytes[]" - }, - { - "internalType": "bytes", - "name": "txhash", - "type": "bytes" - } - ], - "name": "addSignature", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes[]", - "name": "blocks", - "type": "bytes[]" - } - ], - "name": "receiveHeaders", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "ablock", - "type": "bytes" - } - ], - "name": "receiveHeader", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "getFederationSize", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getFederationThreshold", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "int256", - "name": "index", - "type": "int256" - } - ], - "name": "getFederatorPublicKey", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "int256", - "name": "index", - "type": "int256" - }, - { - "internalType": "string", - "name": "atype", - "type": "string" - } - ], - "name": "getFederatorPublicKeyOfType", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getFederationCreationTime", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getFederationCreationBlockNumber", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getRetiringFederationAddress", - "outputs": [ - { - "internalType": "string", - "name": "", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getRetiringFederationSize", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getRetiringFederationThreshold", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "int256", - "name": "index", - "type": "int256" - } - ], - "name": "getRetiringFederatorPublicKey", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "int256", - "name": "index", - "type": "int256" - }, - { - "internalType": "string", - "name": "atype", - "type": "string" - } - ], - "name": "getRetiringFederatorPublicKeyOfType", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getRetiringFederationCreationTime", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getRetiringFederationCreationBlockNumber", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "createFederation", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "key", - "type": "bytes" - } - ], - "name": "addFederatorPublicKey", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "btcKey", - "type": "bytes" - }, - { - "internalType": "bytes", - "name": "rskKey", - "type": "bytes" - }, - { - "internalType": "bytes", - "name": "mstKey", - "type": "bytes" - } - ], - "name": "addFederatorPublicKeyMultikey", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "hash", - "type": "bytes" - } - ], - "name": "commitFederation", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "rollbackFederation", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "getPendingFederationHash", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getPendingFederationSize", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "int256", - "name": "index", - "type": "int256" - } - ], - "name": "getPendingFederatorPublicKey", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "int256", - "name": "index", - "type": "int256" - }, - { - "internalType": "string", - "name": "atype", - "type": "string" - } - ], - "name": "getPendingFederatorPublicKeyOfType", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getLockWhitelistSize", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "int256", - "name": "index", - "type": "int256" - } - ], - "name": "getLockWhitelistAddress", - "outputs": [ - { - "internalType": "string", - "name": "", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "aaddress", - "type": "string" - } - ], - "name": "getLockWhitelistEntryByAddress", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "aaddress", - "type": "string" - }, - { - "internalType": "int256", - "name": "maxTransferValue", - "type": "int256" - } - ], - "name": "addLockWhitelistAddress", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "aaddress", - "type": "string" - }, - { - "internalType": "int256", - "name": "maxTransferValue", - "type": "int256" - } - ], - "name": "addOneOffLockWhitelistAddress", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "aaddress", - "type": "string" - } - ], - "name": "addUnlimitedLockWhitelistAddress", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "aaddress", - "type": "string" - } - ], - "name": "removeLockWhitelistAddress", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "int256", - "name": "disableDelay", - "type": "int256" - } - ], - "name": "setLockWhitelistDisableBlockDelay", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "getFeePerKb", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "int256", - "name": "feePerKb", - "type": "int256" - } - ], - "name": "voteFeePerKbChange", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "updateCollections", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "getMinimumLockTxValue", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "txHash", - "type": "bytes32" - }, - { - "internalType": "bytes32", - "name": "blockHash", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "merkleBranchPath", - "type": "uint256" - }, - { - "internalType": "bytes32[]", - "name": "merkleBranchHashes", - "type": "bytes32[]" - } - ], - "name": "getBtcTransactionConfirmations", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getLockingCap", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "int256", - "name": "newLockingCap", - "type": "int256" - } - ], - "name": "increaseLockingCap", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "btcTxSerialized", - "type": "bytes" - }, - { - "internalType": "bytes32", - "name": "blockHash", - "type": "bytes32" - }, - { - "internalType": "bytes", - "name": "pmtSerialized", - "type": "bytes" - }, - { - "internalType": "bytes32", - "name": "witnessMerkleRoot", - "type": "bytes32" - }, - { - "internalType": "bytes32", - "name": "witnessReservedValue", - "type": "bytes32" - } - ], - "name": "registerBtcCoinbaseTransaction", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "blockHash", - "type": "bytes32" - } - ], - "name": "hasBtcBlockCoinbaseTransactionInformation", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "btcTxSerialized", - "type": "bytes" - }, - { - "internalType": "uint256", - "name": "height", - "type": "uint256" - }, - { - "internalType": "bytes", - "name": "pmtSerialized", - "type": "bytes" - }, - { - "internalType": "bytes32", - "name": "derivationArgumentsHash", - "type": "bytes32" - }, - { - "internalType": "bytes", - "name": "userRefundBtcAddress", - "type": "bytes" - }, - { - "internalType": "address payable", - "name": "liquidityBridgeContractAddress", - "type": "address" - }, - { - "internalType": "bytes", - "name": "liquidityProviderBtcAddress", - "type": "bytes" - }, - { - "internalType": "bool", - "name": "shouldTransferToContract", - "type": "bool" - } - ], - "name": "registerFastBridgeBtcTransaction", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "getActiveFederationCreationBlockHeight", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getActivePowpegRedeemScript", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getBtcBlockchainBestBlockHeader", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "btcBlockHash", - "type": "bytes32" - } - ], - "name": "getBtcBlockchainBlockHeaderByHash", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "btcBlockHeight", - "type": "uint256" - } - ], - "name": "getBtcBlockchainBlockHeaderByHeight", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "btcBlockHash", - "type": "bytes32" - } - ], - "name": "getBtcBlockchainParentBlockHeaderByHash", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "stateMutability": "view", - "type": "function" - } - ], - "metadata": "{\"compiler\":{\"version\":\"0.8.18+commit.87f61d96\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"key\",\"type\":\"bytes\"}],\"name\":\"addFederatorPublicKey\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"btcKey\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"rskKey\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"mstKey\",\"type\":\"bytes\"}],\"name\":\"addFederatorPublicKeyMultikey\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"aaddress\",\"type\":\"string\"},{\"internalType\":\"int256\",\"name\":\"maxTransferValue\",\"type\":\"int256\"}],\"name\":\"addLockWhitelistAddress\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"aaddress\",\"type\":\"string\"},{\"internalType\":\"int256\",\"name\":\"maxTransferValue\",\"type\":\"int256\"}],\"name\":\"addOneOffLockWhitelistAddress\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"pubkey\",\"type\":\"bytes\"},{\"internalType\":\"bytes[]\",\"name\":\"signatures\",\"type\":\"bytes[]\"},{\"internalType\":\"bytes\",\"name\":\"txhash\",\"type\":\"bytes\"}],\"name\":\"addSignature\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"aaddress\",\"type\":\"string\"}],\"name\":\"addUnlimitedLockWhitelistAddress\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"hash\",\"type\":\"bytes\"}],\"name\":\"commitFederation\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"createFederation\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getActiveFederationCreationBlockHeight\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getActivePowpegRedeemScript\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getBtcBlockchainBestBlockHeader\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getBtcBlockchainBestChainHeight\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"depth\",\"type\":\"int256\"}],\"name\":\"getBtcBlockchainBlockHashAtDepth\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"btcBlockHash\",\"type\":\"bytes32\"}],\"name\":\"getBtcBlockchainBlockHeaderByHash\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"btcBlockHeight\",\"type\":\"uint256\"}],\"name\":\"getBtcBlockchainBlockHeaderByHeight\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getBtcBlockchainInitialBlockHeight\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"btcBlockHash\",\"type\":\"bytes32\"}],\"name\":\"getBtcBlockchainParentBlockHeaderByHash\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"txHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"blockHash\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"merkleBranchPath\",\"type\":\"uint256\"},{\"internalType\":\"bytes32[]\",\"name\":\"merkleBranchHashes\",\"type\":\"bytes32[]\"}],\"name\":\"getBtcTransactionConfirmations\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"hash\",\"type\":\"string\"}],\"name\":\"getBtcTxHashProcessedHeight\",\"outputs\":[{\"internalType\":\"int64\",\"name\":\"\",\"type\":\"int64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getFederationAddress\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getFederationCreationBlockNumber\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getFederationCreationTime\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getFederationSize\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getFederationThreshold\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"index\",\"type\":\"int256\"}],\"name\":\"getFederatorPublicKey\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"index\",\"type\":\"int256\"},{\"internalType\":\"string\",\"name\":\"atype\",\"type\":\"string\"}],\"name\":\"getFederatorPublicKeyOfType\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getFeePerKb\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"index\",\"type\":\"int256\"}],\"name\":\"getLockWhitelistAddress\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"aaddress\",\"type\":\"string\"}],\"name\":\"getLockWhitelistEntryByAddress\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getLockWhitelistSize\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getLockingCap\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getMinimumLockTxValue\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getPendingFederationHash\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getPendingFederationSize\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"index\",\"type\":\"int256\"}],\"name\":\"getPendingFederatorPublicKey\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"index\",\"type\":\"int256\"},{\"internalType\":\"string\",\"name\":\"atype\",\"type\":\"string\"}],\"name\":\"getPendingFederatorPublicKeyOfType\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRetiringFederationAddress\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRetiringFederationCreationBlockNumber\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRetiringFederationCreationTime\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRetiringFederationSize\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRetiringFederationThreshold\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"index\",\"type\":\"int256\"}],\"name\":\"getRetiringFederatorPublicKey\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"index\",\"type\":\"int256\"},{\"internalType\":\"string\",\"name\":\"atype\",\"type\":\"string\"}],\"name\":\"getRetiringFederatorPublicKeyOfType\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getStateForBtcReleaseClient\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getStateForDebugging\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"blockHash\",\"type\":\"bytes32\"}],\"name\":\"hasBtcBlockCoinbaseTransactionInformation\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"newLockingCap\",\"type\":\"int256\"}],\"name\":\"increaseLockingCap\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"hash\",\"type\":\"string\"}],\"name\":\"isBtcTxHashAlreadyProcessed\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"ablock\",\"type\":\"bytes\"}],\"name\":\"receiveHeader\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes[]\",\"name\":\"blocks\",\"type\":\"bytes[]\"}],\"name\":\"receiveHeaders\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"btcTxSerialized\",\"type\":\"bytes\"},{\"internalType\":\"bytes32\",\"name\":\"blockHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"pmtSerialized\",\"type\":\"bytes\"},{\"internalType\":\"bytes32\",\"name\":\"witnessMerkleRoot\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"witnessReservedValue\",\"type\":\"bytes32\"}],\"name\":\"registerBtcCoinbaseTransaction\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"atx\",\"type\":\"bytes\"},{\"internalType\":\"int256\",\"name\":\"height\",\"type\":\"int256\"},{\"internalType\":\"bytes\",\"name\":\"pmt\",\"type\":\"bytes\"}],\"name\":\"registerBtcTransaction\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"btcTxSerialized\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"height\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"pmtSerialized\",\"type\":\"bytes\"},{\"internalType\":\"bytes32\",\"name\":\"derivationArgumentsHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"userRefundBtcAddress\",\"type\":\"bytes\"},{\"internalType\":\"address payable\",\"name\":\"liquidityBridgeContractAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"liquidityProviderBtcAddress\",\"type\":\"bytes\"},{\"internalType\":\"bool\",\"name\":\"shouldTransferToContract\",\"type\":\"bool\"}],\"name\":\"registerFastBridgeBtcTransaction\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"aaddress\",\"type\":\"string\"}],\"name\":\"removeLockWhitelistAddress\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"rollbackFederation\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"disableDelay\",\"type\":\"int256\"}],\"name\":\"setLockWhitelistDisableBlockDelay\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"updateCollections\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"feePerKb\",\"type\":\"int256\"}],\"name\":\"voteFeePerKbChange\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"project:/contracts/Bridge.sol\":\"Bridge\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":1},\"remappings\":[]},\"sources\":{\"project:/contracts/Bridge.sol\":{\"keccak256\":\"0x1eb986f1f28ace76b72425a2617eaeb89a54c765dc7b16689cb1105a7e6c0f2f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://255860b4bfb0bed73723349493307106fb54fcaf5839a7b0c012fc1a03d0b8ce\",\"dweb:/ipfs/QmUoWjWVkXpUWjaiWQXQVNKEJmCnPtKXXTgFq7kkcTuGMs\"]}},\"version\":1}", - "bytecode": "0x", - "deployedBytecode": "0x", - "immutableReferences": {}, - "generatedSources": [], - "deployedGeneratedSources": [], - "sourceMap": "", - "deployedSourceMap": "", - "source": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.18;\n\ninterface Bridge {\n\n receive() external payable;\n\n function getBtcBlockchainBestChainHeight() external view returns (int);\n\n function getStateForBtcReleaseClient() external view returns (bytes memory);\n\n function getStateForDebugging() external view returns (bytes memory);\n\n function getBtcBlockchainInitialBlockHeight() external view returns (int);\n\n function getBtcBlockchainBlockHashAtDepth(int256 depth) external view returns (bytes memory);\n\n function getBtcTxHashProcessedHeight(string calldata hash) external view returns (int64);\n\n function isBtcTxHashAlreadyProcessed(string calldata hash) external view returns (bool);\n\n function getFederationAddress() external view returns (string memory);\n\n function registerBtcTransaction(bytes calldata atx, int256 height, bytes calldata pmt) external;\n\n function addSignature(bytes calldata pubkey, bytes[] calldata signatures, bytes calldata txhash) external;\n\n function receiveHeaders(bytes[] calldata blocks) external;\n\n function receiveHeader(bytes calldata ablock) external returns (int256);\n\n function getFederationSize() external view returns (int256);\n\n function getFederationThreshold() external view returns (int256);\n\n function getFederatorPublicKey(int256 index) external view returns (bytes memory);\n\n function getFederatorPublicKeyOfType(int256 index, string calldata atype) external view returns (bytes memory);\n\n function getFederationCreationTime() external view returns (int256);\n\n function getFederationCreationBlockNumber() external view returns (int256);\n\n function getRetiringFederationAddress() external view returns (string memory);\n\n function getRetiringFederationSize() external view returns (int256);\n\n function getRetiringFederationThreshold() external view returns (int256);\n\n function getRetiringFederatorPublicKey(int256 index) external view returns (bytes memory);\n\n function getRetiringFederatorPublicKeyOfType(int256 index, string calldata atype)\n external view returns (bytes memory);\n\n function getRetiringFederationCreationTime() external view returns (int256);\n\n function getRetiringFederationCreationBlockNumber() external view returns (int256);\n\n function createFederation() external returns (int256);\n\n function addFederatorPublicKey(bytes calldata key) external returns (int256);\n\n function addFederatorPublicKeyMultikey(bytes calldata btcKey, bytes calldata rskKey,\n bytes calldata mstKey) external returns (int256);\n\n function commitFederation(bytes calldata hash) external returns (int256);\n\n function rollbackFederation() external returns (int256);\n\n function getPendingFederationHash() external view returns (bytes memory);\n\n function getPendingFederationSize() external view returns (int256);\n\n function getPendingFederatorPublicKey(int256 index) external view returns (bytes memory);\n\n function getPendingFederatorPublicKeyOfType(int256 index, string calldata atype)\n external view returns (bytes memory);\n\n function getLockWhitelistSize() external view returns (int256);\n\n function getLockWhitelistAddress(int256 index) external view returns (string memory);\n\n function getLockWhitelistEntryByAddress(string calldata aaddress) external view returns (int256);\n\n function addLockWhitelistAddress(string calldata aaddress, int256 maxTransferValue) external returns (int256);\n\n function addOneOffLockWhitelistAddress(string calldata aaddress, int256 maxTransferValue)\n external returns (int256);\n\n function addUnlimitedLockWhitelistAddress(string calldata aaddress) external returns (int256);\n\n function removeLockWhitelistAddress(string calldata aaddress) external returns (int256);\n\n function setLockWhitelistDisableBlockDelay(int256 disableDelay) external returns (int256);\n\n function getFeePerKb() external view returns (int256);\n\n function voteFeePerKbChange(int256 feePerKb) external returns (int256);\n\n function updateCollections() external;\n\n function getMinimumLockTxValue() external view returns (int256);\n\n function getBtcTransactionConfirmations(bytes32 txHash, bytes32 blockHash,\n uint256 merkleBranchPath, bytes32[] calldata merkleBranchHashes) external view returns (int256);\n\n function getLockingCap() external view returns (int256);\n\n function increaseLockingCap(int256 newLockingCap) external returns (bool);\n\n function registerBtcCoinbaseTransaction(bytes calldata btcTxSerialized, bytes32 blockHash,\n bytes calldata pmtSerialized, bytes32 witnessMerkleRoot, bytes32 witnessReservedValue) external;\n\n function hasBtcBlockCoinbaseTransactionInformation(bytes32 blockHash) external view returns (bool);\n\n function registerFastBridgeBtcTransaction(bytes calldata btcTxSerialized, uint256 height,\n bytes calldata pmtSerialized, bytes32 derivationArgumentsHash,\n bytes calldata userRefundBtcAddress, address payable liquidityBridgeContractAddress,\n bytes calldata liquidityProviderBtcAddress, bool shouldTransferToContract) external returns (int256);\n\n function getActiveFederationCreationBlockHeight() external view returns (uint256);\n\n function getActivePowpegRedeemScript() external view returns (bytes memory);\n\n function getBtcBlockchainBestBlockHeader() external view returns (bytes memory);\n\n function getBtcBlockchainBlockHeaderByHash(bytes32 btcBlockHash) external view returns (bytes memory);\n\n function getBtcBlockchainBlockHeaderByHeight(uint256 btcBlockHeight) external view returns (bytes memory);\n\n function getBtcBlockchainParentBlockHeaderByHash(bytes32 btcBlockHash) external view returns (bytes memory);\n}", - "sourcePath": "/Users/luischavez/iov/liquidity-bridge-contract/contracts/Bridge.sol", - "ast": { - "absolutePath": "project:/contracts/Bridge.sol", - "exportedSymbols": { - "Bridge": [ - 4173 - ] - }, - "id": 4174, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 3772, - "literals": [ - "solidity", - "^", - "0.8", - ".18" - ], - "nodeType": "PragmaDirective", - "src": "32:24:19" - }, - { - "abstract": false, - "baseContracts": [], - "canonicalName": "Bridge", - "contractDependencies": [], - "contractKind": "interface", - "fullyImplemented": false, - "id": 4173, - "linearizedBaseContracts": [ - 4173 - ], - "name": "Bridge", - "nameLocation": "68:6:19", - "nodeType": "ContractDefinition", - "nodes": [ - { - "id": 3775, - "implemented": false, - "kind": "receive", - "modifiers": [], - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3773, - "nodeType": "ParameterList", - "parameters": [], - "src": "89:2:19" - }, - "returnParameters": { - "id": 3774, - "nodeType": "ParameterList", - "parameters": [], - "src": "108:0:19" - }, - "scope": 4173, - "src": "82:27:19", - "stateMutability": "payable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "14c89c01", - "id": 3780, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getBtcBlockchainBestChainHeight", - "nameLocation": "124:31:19", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3776, - "nodeType": "ParameterList", - "parameters": [], - "src": "155:2:19" - }, - "returnParameters": { - "id": 3779, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3778, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 3780, - "src": "181:3:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 3777, - "name": "int", - "nodeType": "ElementaryTypeName", - "src": "181:3:19", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "180:5:19" - }, - "scope": 4173, - "src": "115:71:19", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "c4fbca20", - "id": 3785, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getStateForBtcReleaseClient", - "nameLocation": "201:27:19", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3781, - "nodeType": "ParameterList", - "parameters": [], - "src": "228:2:19" - }, - "returnParameters": { - "id": 3784, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3783, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 3785, - "src": "254:12:19", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 3782, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "254:5:19", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "253:14:19" - }, - "scope": 4173, - "src": "192:76:19", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "0d0cee93", - "id": 3790, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getStateForDebugging", - "nameLocation": "283:20:19", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3786, - "nodeType": "ParameterList", - "parameters": [], - "src": "303:2:19" - }, - "returnParameters": { - "id": 3789, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3788, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 3790, - "src": "329:12:19", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 3787, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "329:5:19", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "328:14:19" - }, - "scope": 4173, - "src": "274:69:19", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "4897193f", - "id": 3795, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getBtcBlockchainInitialBlockHeight", - "nameLocation": "358:34:19", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3791, - "nodeType": "ParameterList", - "parameters": [], - "src": "392:2:19" - }, - "returnParameters": { - "id": 3794, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3793, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 3795, - "src": "418:3:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 3792, - "name": "int", - "nodeType": "ElementaryTypeName", - "src": "418:3:19", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "417:5:19" - }, - "scope": 4173, - "src": "349:74:19", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "efd44418", - "id": 3802, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getBtcBlockchainBlockHashAtDepth", - "nameLocation": "438:32:19", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3798, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3797, - "mutability": "mutable", - "name": "depth", - "nameLocation": "478:5:19", - "nodeType": "VariableDeclaration", - "scope": 3802, - "src": "471:12:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 3796, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "471:6:19", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "470:14:19" - }, - "returnParameters": { - "id": 3801, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3800, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 3802, - "src": "508:12:19", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 3799, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "508:5:19", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "507:14:19" - }, - "scope": 4173, - "src": "429:93:19", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "97fcca7d", - "id": 3809, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getBtcTxHashProcessedHeight", - "nameLocation": "537:27:19", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3805, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3804, - "mutability": "mutable", - "name": "hash", - "nameLocation": "581:4:19", - "nodeType": "VariableDeclaration", - "scope": 3809, - "src": "565:20:19", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 3803, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "565:6:19", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "564:22:19" - }, - "returnParameters": { - "id": 3808, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3807, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 3809, - "src": "610:5:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int64", - "typeString": "int64" - }, - "typeName": { - "id": 3806, - "name": "int64", - "nodeType": "ElementaryTypeName", - "src": "610:5:19", - "typeDescriptions": { - "typeIdentifier": "t_int64", - "typeString": "int64" - } - }, - "visibility": "internal" - } - ], - "src": "609:7:19" - }, - "scope": 4173, - "src": "528:89:19", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "248a982d", - "id": 3816, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "isBtcTxHashAlreadyProcessed", - "nameLocation": "632:27:19", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3812, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3811, - "mutability": "mutable", - "name": "hash", - "nameLocation": "676:4:19", - "nodeType": "VariableDeclaration", - "scope": 3816, - "src": "660:20:19", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 3810, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "660:6:19", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "659:22:19" - }, - "returnParameters": { - "id": 3815, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3814, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 3816, - "src": "705:4:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 3813, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "705:4:19", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "704:6:19" - }, - "scope": 4173, - "src": "623:88:19", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "6923fa85", - "id": 3821, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getFederationAddress", - "nameLocation": "726:20:19", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3817, - "nodeType": "ParameterList", - "parameters": [], - "src": "746:2:19" - }, - "returnParameters": { - "id": 3820, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3819, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 3821, - "src": "772:13:19", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 3818, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "772:6:19", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "771:15:19" - }, - "scope": 4173, - "src": "717:70:19", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "43dc0656", - "id": 3830, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "registerBtcTransaction", - "nameLocation": "802:22:19", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3828, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3823, - "mutability": "mutable", - "name": "atx", - "nameLocation": "840:3:19", - "nodeType": "VariableDeclaration", - "scope": 3830, - "src": "825:18:19", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 3822, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "825:5:19", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 3825, - "mutability": "mutable", - "name": "height", - "nameLocation": "852:6:19", - "nodeType": "VariableDeclaration", - "scope": 3830, - "src": "845:13:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 3824, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "845:6:19", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 3827, - "mutability": "mutable", - "name": "pmt", - "nameLocation": "875:3:19", - "nodeType": "VariableDeclaration", - "scope": 3830, - "src": "860:18:19", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 3826, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "860:5:19", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "824:55:19" - }, - "returnParameters": { - "id": 3829, - "nodeType": "ParameterList", - "parameters": [], - "src": "888:0:19" - }, - "scope": 4173, - "src": "793:96:19", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "f10b9c59", - "id": 3840, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "addSignature", - "nameLocation": "904:12:19", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3838, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3832, - "mutability": "mutable", - "name": "pubkey", - "nameLocation": "932:6:19", - "nodeType": "VariableDeclaration", - "scope": 3840, - "src": "917:21:19", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 3831, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "917:5:19", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 3835, - "mutability": "mutable", - "name": "signatures", - "nameLocation": "957:10:19", - "nodeType": "VariableDeclaration", - "scope": 3840, - "src": "940:27:19", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes[]" - }, - "typeName": { - "baseType": { - "id": 3833, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "940:5:19", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "id": 3834, - "nodeType": "ArrayTypeName", - "src": "940:7:19", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", - "typeString": "bytes[]" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 3837, - "mutability": "mutable", - "name": "txhash", - "nameLocation": "984:6:19", - "nodeType": "VariableDeclaration", - "scope": 3840, - "src": "969:21:19", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 3836, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "969:5:19", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "916:75:19" - }, - "returnParameters": { - "id": 3839, - "nodeType": "ParameterList", - "parameters": [], - "src": "1000:0:19" - }, - "scope": 4173, - "src": "895:106:19", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "e5400e7b", - "id": 3846, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "receiveHeaders", - "nameLocation": "1016:14:19", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3844, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3843, - "mutability": "mutable", - "name": "blocks", - "nameLocation": "1048:6:19", - "nodeType": "VariableDeclaration", - "scope": 3846, - "src": "1031:23:19", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes[]" - }, - "typeName": { - "baseType": { - "id": 3841, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1031:5:19", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "id": 3842, - "nodeType": "ArrayTypeName", - "src": "1031:7:19", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", - "typeString": "bytes[]" - } - }, - "visibility": "internal" - } - ], - "src": "1030:25:19" - }, - "returnParameters": { - "id": 3845, - "nodeType": "ParameterList", - "parameters": [], - "src": "1064:0:19" - }, - "scope": 4173, - "src": "1007:58:19", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "884bdd86", - "id": 3853, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "receiveHeader", - "nameLocation": "1080:13:19", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3849, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3848, - "mutability": "mutable", - "name": "ablock", - "nameLocation": "1109:6:19", - "nodeType": "VariableDeclaration", - "scope": 3853, - "src": "1094:21:19", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 3847, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1094:5:19", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "1093:23:19" - }, - "returnParameters": { - "id": 3852, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3851, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 3853, - "src": "1135:6:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 3850, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "1135:6:19", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "1134:8:19" - }, - "scope": 4173, - "src": "1071:72:19", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "802ad4b6", - "id": 3858, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getFederationSize", - "nameLocation": "1158:17:19", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3854, - "nodeType": "ParameterList", - "parameters": [], - "src": "1175:2:19" - }, - "returnParameters": { - "id": 3857, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3856, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 3858, - "src": "1201:6:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 3855, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "1201:6:19", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "1200:8:19" - }, - "scope": 4173, - "src": "1149:60:19", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "0fd47456", - "id": 3863, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getFederationThreshold", - "nameLocation": "1224:22:19", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3859, - "nodeType": "ParameterList", - "parameters": [], - "src": "1246:2:19" - }, - "returnParameters": { - "id": 3862, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3861, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 3863, - "src": "1272:6:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 3860, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "1272:6:19", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "1271:8:19" - }, - "scope": 4173, - "src": "1215:65:19", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "6b89a1af", - "id": 3870, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getFederatorPublicKey", - "nameLocation": "1295:21:19", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3866, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3865, - "mutability": "mutable", - "name": "index", - "nameLocation": "1324:5:19", - "nodeType": "VariableDeclaration", - "scope": 3870, - "src": "1317:12:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 3864, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "1317:6:19", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "1316:14:19" - }, - "returnParameters": { - "id": 3869, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3868, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 3870, - "src": "1354:12:19", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 3867, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1354:5:19", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "1353:14:19" - }, - "scope": 4173, - "src": "1286:82:19", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "549cfd1c", - "id": 3879, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getFederatorPublicKeyOfType", - "nameLocation": "1383:27:19", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3875, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3872, - "mutability": "mutable", - "name": "index", - "nameLocation": "1418:5:19", - "nodeType": "VariableDeclaration", - "scope": 3879, - "src": "1411:12:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 3871, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "1411:6:19", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 3874, - "mutability": "mutable", - "name": "atype", - "nameLocation": "1441:5:19", - "nodeType": "VariableDeclaration", - "scope": 3879, - "src": "1425:21:19", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 3873, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1425:6:19", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "1410:37:19" - }, - "returnParameters": { - "id": 3878, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3877, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 3879, - "src": "1471:12:19", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 3876, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1471:5:19", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "1470:14:19" - }, - "scope": 4173, - "src": "1374:111:19", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "5e2db9d4", - "id": 3884, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getFederationCreationTime", - "nameLocation": "1500:25:19", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3880, - "nodeType": "ParameterList", - "parameters": [], - "src": "1525:2:19" - }, - "returnParameters": { - "id": 3883, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3882, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 3884, - "src": "1551:6:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 3881, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "1551:6:19", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "1550:8:19" - }, - "scope": 4173, - "src": "1491:68:19", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "1b2045ee", - "id": 3889, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getFederationCreationBlockNumber", - "nameLocation": "1574:32:19", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3885, - "nodeType": "ParameterList", - "parameters": [], - "src": "1606:2:19" - }, - "returnParameters": { - "id": 3888, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3887, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 3889, - "src": "1632:6:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 3886, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "1632:6:19", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "1631:8:19" - }, - "scope": 4173, - "src": "1565:75:19", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "47227286", - "id": 3894, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getRetiringFederationAddress", - "nameLocation": "1655:28:19", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3890, - "nodeType": "ParameterList", - "parameters": [], - "src": "1683:2:19" - }, - "returnParameters": { - "id": 3893, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3892, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 3894, - "src": "1709:13:19", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 3891, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1709:6:19", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "1708:15:19" - }, - "scope": 4173, - "src": "1646:78:19", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "d970b0fd", - "id": 3899, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getRetiringFederationSize", - "nameLocation": "1739:25:19", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3895, - "nodeType": "ParameterList", - "parameters": [], - "src": "1764:2:19" - }, - "returnParameters": { - "id": 3898, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3897, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 3899, - "src": "1790:6:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 3896, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "1790:6:19", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "1789:8:19" - }, - "scope": 4173, - "src": "1730:68:19", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "07bbdfc4", - "id": 3904, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getRetiringFederationThreshold", - "nameLocation": "1813:30:19", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3900, - "nodeType": "ParameterList", - "parameters": [], - "src": "1843:2:19" - }, - "returnParameters": { - "id": 3903, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3902, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 3904, - "src": "1869:6:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 3901, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "1869:6:19", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "1868:8:19" - }, - "scope": 4173, - "src": "1804:73:19", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "4675d6de", - "id": 3911, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getRetiringFederatorPublicKey", - "nameLocation": "1892:29:19", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3907, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3906, - "mutability": "mutable", - "name": "index", - "nameLocation": "1929:5:19", - "nodeType": "VariableDeclaration", - "scope": 3911, - "src": "1922:12:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 3905, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "1922:6:19", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "1921:14:19" - }, - "returnParameters": { - "id": 3910, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3909, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 3911, - "src": "1959:12:19", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 3908, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1959:5:19", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "1958:14:19" - }, - "scope": 4173, - "src": "1883:90:19", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "68bc2b2b", - "id": 3920, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getRetiringFederatorPublicKeyOfType", - "nameLocation": "1988:35:19", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3916, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3913, - "mutability": "mutable", - "name": "index", - "nameLocation": "2031:5:19", - "nodeType": "VariableDeclaration", - "scope": 3920, - "src": "2024:12:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 3912, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "2024:6:19", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 3915, - "mutability": "mutable", - "name": "atype", - "nameLocation": "2054:5:19", - "nodeType": "VariableDeclaration", - "scope": 3920, - "src": "2038:21:19", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 3914, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2038:6:19", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "2023:37:19" - }, - "returnParameters": { - "id": 3919, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3918, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 3920, - "src": "2088:12:19", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 3917, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "2088:5:19", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "2087:14:19" - }, - "scope": 4173, - "src": "1979:123:19", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "3f0ce9b1", - "id": 3925, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getRetiringFederationCreationTime", - "nameLocation": "2117:33:19", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3921, - "nodeType": "ParameterList", - "parameters": [], - "src": "2150:2:19" - }, - "returnParameters": { - "id": 3924, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3923, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 3925, - "src": "2176:6:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 3922, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "2176:6:19", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "2175:8:19" - }, - "scope": 4173, - "src": "2108:76:19", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "d905153f", - "id": 3930, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getRetiringFederationCreationBlockNumber", - "nameLocation": "2199:40:19", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3926, - "nodeType": "ParameterList", - "parameters": [], - "src": "2239:2:19" - }, - "returnParameters": { - "id": 3929, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3928, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 3930, - "src": "2265:6:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 3927, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "2265:6:19", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "2264:8:19" - }, - "scope": 4173, - "src": "2190:83:19", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "1183d5d1", - "id": 3935, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "createFederation", - "nameLocation": "2288:16:19", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3931, - "nodeType": "ParameterList", - "parameters": [], - "src": "2304:2:19" - }, - "returnParameters": { - "id": 3934, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3933, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 3935, - "src": "2325:6:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 3932, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "2325:6:19", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "2324:8:19" - }, - "scope": 4173, - "src": "2279:54:19", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "ecefd339", - "id": 3942, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "addFederatorPublicKey", - "nameLocation": "2348:21:19", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3938, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3937, - "mutability": "mutable", - "name": "key", - "nameLocation": "2385:3:19", - "nodeType": "VariableDeclaration", - "scope": 3942, - "src": "2370:18:19", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 3936, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "2370:5:19", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "2369:20:19" - }, - "returnParameters": { - "id": 3941, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3940, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 3942, - "src": "2408:6:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 3939, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "2408:6:19", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "2407:8:19" - }, - "scope": 4173, - "src": "2339:77:19", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "444ff9da", - "id": 3953, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "addFederatorPublicKeyMultikey", - "nameLocation": "2431:29:19", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3949, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3944, - "mutability": "mutable", - "name": "btcKey", - "nameLocation": "2476:6:19", - "nodeType": "VariableDeclaration", - "scope": 3953, - "src": "2461:21:19", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 3943, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "2461:5:19", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 3946, - "mutability": "mutable", - "name": "rskKey", - "nameLocation": "2499:6:19", - "nodeType": "VariableDeclaration", - "scope": 3953, - "src": "2484:21:19", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 3945, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "2484:5:19", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 3948, - "mutability": "mutable", - "name": "mstKey", - "nameLocation": "2530:6:19", - "nodeType": "VariableDeclaration", - "scope": 3953, - "src": "2515:21:19", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 3947, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "2515:5:19", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "2460:77:19" - }, - "returnParameters": { - "id": 3952, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3951, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 3953, - "src": "2556:6:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 3950, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "2556:6:19", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "2555:8:19" - }, - "scope": 4173, - "src": "2422:142:19", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "1533330f", - "id": 3960, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "commitFederation", - "nameLocation": "2579:16:19", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3956, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3955, - "mutability": "mutable", - "name": "hash", - "nameLocation": "2611:4:19", - "nodeType": "VariableDeclaration", - "scope": 3960, - "src": "2596:19:19", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 3954, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "2596:5:19", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "2595:21:19" - }, - "returnParameters": { - "id": 3959, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3958, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 3960, - "src": "2635:6:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 3957, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "2635:6:19", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "2634:8:19" - }, - "scope": 4173, - "src": "2570:73:19", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "8dec3d32", - "id": 3965, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "rollbackFederation", - "nameLocation": "2658:18:19", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3961, - "nodeType": "ParameterList", - "parameters": [], - "src": "2676:2:19" - }, - "returnParameters": { - "id": 3964, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3963, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 3965, - "src": "2697:6:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 3962, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "2697:6:19", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "2696:8:19" - }, - "scope": 4173, - "src": "2649:56:19", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "6ce0ed5a", - "id": 3970, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getPendingFederationHash", - "nameLocation": "2720:24:19", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3966, - "nodeType": "ParameterList", - "parameters": [], - "src": "2744:2:19" - }, - "returnParameters": { - "id": 3969, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3968, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 3970, - "src": "2770:12:19", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 3967, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "2770:5:19", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "2769:14:19" - }, - "scope": 4173, - "src": "2711:73:19", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "3ac72b38", - "id": 3975, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getPendingFederationSize", - "nameLocation": "2799:24:19", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3971, - "nodeType": "ParameterList", - "parameters": [], - "src": "2823:2:19" - }, - "returnParameters": { - "id": 3974, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3973, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 3975, - "src": "2849:6:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 3972, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "2849:6:19", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "2848:8:19" - }, - "scope": 4173, - "src": "2790:67:19", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "492f7c44", - "id": 3982, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getPendingFederatorPublicKey", - "nameLocation": "2872:28:19", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3978, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3977, - "mutability": "mutable", - "name": "index", - "nameLocation": "2908:5:19", - "nodeType": "VariableDeclaration", - "scope": 3982, - "src": "2901:12:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 3976, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "2901:6:19", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "2900:14:19" - }, - "returnParameters": { - "id": 3981, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3980, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 3982, - "src": "2938:12:19", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 3979, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "2938:5:19", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "2937:14:19" - }, - "scope": 4173, - "src": "2863:89:19", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "c61295d9", - "id": 3991, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getPendingFederatorPublicKeyOfType", - "nameLocation": "2967:34:19", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3987, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3984, - "mutability": "mutable", - "name": "index", - "nameLocation": "3009:5:19", - "nodeType": "VariableDeclaration", - "scope": 3991, - "src": "3002:12:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 3983, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "3002:6:19", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 3986, - "mutability": "mutable", - "name": "atype", - "nameLocation": "3032:5:19", - "nodeType": "VariableDeclaration", - "scope": 3991, - "src": "3016:21:19", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 3985, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3016:6:19", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "3001:37:19" - }, - "returnParameters": { - "id": 3990, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3989, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 3991, - "src": "3066:12:19", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 3988, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "3066:5:19", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "3065:14:19" - }, - "scope": 4173, - "src": "2958:122:19", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "e9e658dc", - "id": 3996, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getLockWhitelistSize", - "nameLocation": "3095:20:19", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3992, - "nodeType": "ParameterList", - "parameters": [], - "src": "3115:2:19" - }, - "returnParameters": { - "id": 3995, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3994, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 3996, - "src": "3141:6:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 3993, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "3141:6:19", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "3140:8:19" - }, - "scope": 4173, - "src": "3086:63:19", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "93988b76", - "id": 4003, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getLockWhitelistAddress", - "nameLocation": "3164:23:19", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3999, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3998, - "mutability": "mutable", - "name": "index", - "nameLocation": "3195:5:19", - "nodeType": "VariableDeclaration", - "scope": 4003, - "src": "3188:12:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 3997, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "3188:6:19", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "3187:14:19" - }, - "returnParameters": { - "id": 4002, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4001, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4003, - "src": "3225:13:19", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 4000, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3225:6:19", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "3224:15:19" - }, - "scope": 4173, - "src": "3155:85:19", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "251c5f7b", - "id": 4010, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getLockWhitelistEntryByAddress", - "nameLocation": "3255:30:19", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 4006, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4005, - "mutability": "mutable", - "name": "aaddress", - "nameLocation": "3302:8:19", - "nodeType": "VariableDeclaration", - "scope": 4010, - "src": "3286:24:19", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 4004, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3286:6:19", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "3285:26:19" - }, - "returnParameters": { - "id": 4009, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4008, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4010, - "src": "3335:6:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4007, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "3335:6:19", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "3334:8:19" - }, - "scope": 4173, - "src": "3246:97:19", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "502bbbce", - "id": 4019, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "addLockWhitelistAddress", - "nameLocation": "3358:23:19", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 4015, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4012, - "mutability": "mutable", - "name": "aaddress", - "nameLocation": "3398:8:19", - "nodeType": "VariableDeclaration", - "scope": 4019, - "src": "3382:24:19", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 4011, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3382:6:19", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4014, - "mutability": "mutable", - "name": "maxTransferValue", - "nameLocation": "3415:16:19", - "nodeType": "VariableDeclaration", - "scope": 4019, - "src": "3408:23:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4013, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "3408:6:19", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "3381:51:19" - }, - "returnParameters": { - "id": 4018, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4017, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4019, - "src": "3451:6:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4016, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "3451:6:19", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "3450:8:19" - }, - "scope": 4173, - "src": "3349:110:19", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "848206d9", - "id": 4028, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "addOneOffLockWhitelistAddress", - "nameLocation": "3474:29:19", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 4024, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4021, - "mutability": "mutable", - "name": "aaddress", - "nameLocation": "3520:8:19", - "nodeType": "VariableDeclaration", - "scope": 4028, - "src": "3504:24:19", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 4020, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3504:6:19", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4023, - "mutability": "mutable", - "name": "maxTransferValue", - "nameLocation": "3537:16:19", - "nodeType": "VariableDeclaration", - "scope": 4028, - "src": "3530:23:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4022, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "3530:6:19", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "3503:51:19" - }, - "returnParameters": { - "id": 4027, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4026, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4028, - "src": "3581:6:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4025, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "3581:6:19", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "3580:8:19" - }, - "scope": 4173, - "src": "3465:124:19", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "b906c938", - "id": 4035, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "addUnlimitedLockWhitelistAddress", - "nameLocation": "3604:32:19", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 4031, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4030, - "mutability": "mutable", - "name": "aaddress", - "nameLocation": "3653:8:19", - "nodeType": "VariableDeclaration", - "scope": 4035, - "src": "3637:24:19", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 4029, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3637:6:19", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "3636:26:19" - }, - "returnParameters": { - "id": 4034, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4033, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4035, - "src": "3681:6:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4032, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "3681:6:19", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "3680:8:19" - }, - "scope": 4173, - "src": "3595:94:19", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "fcdeb46f", - "id": 4042, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "removeLockWhitelistAddress", - "nameLocation": "3704:26:19", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 4038, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4037, - "mutability": "mutable", - "name": "aaddress", - "nameLocation": "3747:8:19", - "nodeType": "VariableDeclaration", - "scope": 4042, - "src": "3731:24:19", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 4036, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3731:6:19", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "3730:26:19" - }, - "returnParameters": { - "id": 4041, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4040, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4042, - "src": "3775:6:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4039, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "3775:6:19", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "3774:8:19" - }, - "scope": 4173, - "src": "3695:88:19", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "c1cc54f5", - "id": 4049, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "setLockWhitelistDisableBlockDelay", - "nameLocation": "3798:33:19", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 4045, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4044, - "mutability": "mutable", - "name": "disableDelay", - "nameLocation": "3839:12:19", - "nodeType": "VariableDeclaration", - "scope": 4049, - "src": "3832:19:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4043, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "3832:6:19", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "3831:21:19" - }, - "returnParameters": { - "id": 4048, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4047, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4049, - "src": "3871:6:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4046, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "3871:6:19", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "3870:8:19" - }, - "scope": 4173, - "src": "3789:90:19", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "724ec886", - "id": 4054, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getFeePerKb", - "nameLocation": "3894:11:19", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 4050, - "nodeType": "ParameterList", - "parameters": [], - "src": "3905:2:19" - }, - "returnParameters": { - "id": 4053, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4052, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4054, - "src": "3931:6:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4051, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "3931:6:19", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "3930:8:19" - }, - "scope": 4173, - "src": "3885:54:19", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "0461313e", - "id": 4061, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "voteFeePerKbChange", - "nameLocation": "3954:18:19", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 4057, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4056, - "mutability": "mutable", - "name": "feePerKb", - "nameLocation": "3980:8:19", - "nodeType": "VariableDeclaration", - "scope": 4061, - "src": "3973:15:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4055, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "3973:6:19", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "3972:17:19" - }, - "returnParameters": { - "id": 4060, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4059, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4061, - "src": "4008:6:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4058, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "4008:6:19", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "4007:8:19" - }, - "scope": 4173, - "src": "3945:71:19", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "0c5a9990", - "id": 4064, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "updateCollections", - "nameLocation": "4031:17:19", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 4062, - "nodeType": "ParameterList", - "parameters": [], - "src": "4048:2:19" - }, - "returnParameters": { - "id": 4063, - "nodeType": "ParameterList", - "parameters": [], - "src": "4059:0:19" - }, - "scope": 4173, - "src": "4022:38:19", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "2f8d158f", - "id": 4069, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getMinimumLockTxValue", - "nameLocation": "4075:21:19", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 4065, - "nodeType": "ParameterList", - "parameters": [], - "src": "4096:2:19" - }, - "returnParameters": { - "id": 4068, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4067, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4069, - "src": "4122:6:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4066, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "4122:6:19", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "4121:8:19" - }, - "scope": 4173, - "src": "4066:64:19", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "5b644587", - "id": 4083, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getBtcTransactionConfirmations", - "nameLocation": "4145:30:19", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 4079, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4071, - "mutability": "mutable", - "name": "txHash", - "nameLocation": "4184:6:19", - "nodeType": "VariableDeclaration", - "scope": 4083, - "src": "4176:14:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 4070, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "4176:7:19", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4073, - "mutability": "mutable", - "name": "blockHash", - "nameLocation": "4200:9:19", - "nodeType": "VariableDeclaration", - "scope": 4083, - "src": "4192:17:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 4072, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "4192:7:19", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4075, - "mutability": "mutable", - "name": "merkleBranchPath", - "nameLocation": "4227:16:19", - "nodeType": "VariableDeclaration", - "scope": 4083, - "src": "4219:24:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 4074, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "4219:7:19", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4078, - "mutability": "mutable", - "name": "merkleBranchHashes", - "nameLocation": "4264:18:19", - "nodeType": "VariableDeclaration", - "scope": 4083, - "src": "4245:37:19", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr", - "typeString": "bytes32[]" - }, - "typeName": { - "baseType": { - "id": 4076, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "4245:7:19", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "id": 4077, - "nodeType": "ArrayTypeName", - "src": "4245:9:19", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr", - "typeString": "bytes32[]" - } - }, - "visibility": "internal" - } - ], - "src": "4175:108:19" - }, - "returnParameters": { - "id": 4082, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4081, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4083, - "src": "4307:6:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4080, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "4307:6:19", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "4306:8:19" - }, - "scope": 4173, - "src": "4136:179:19", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "3f9db977", - "id": 4088, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getLockingCap", - "nameLocation": "4330:13:19", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 4084, - "nodeType": "ParameterList", - "parameters": [], - "src": "4343:2:19" - }, - "returnParameters": { - "id": 4087, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4086, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4088, - "src": "4369:6:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4085, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "4369:6:19", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "4368:8:19" - }, - "scope": 4173, - "src": "4321:56:19", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "2910aeb2", - "id": 4095, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "increaseLockingCap", - "nameLocation": "4392:18:19", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 4091, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4090, - "mutability": "mutable", - "name": "newLockingCap", - "nameLocation": "4418:13:19", - "nodeType": "VariableDeclaration", - "scope": 4095, - "src": "4411:20:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4089, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "4411:6:19", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "4410:22:19" - }, - "returnParameters": { - "id": 4094, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4093, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4095, - "src": "4451:4:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 4092, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "4451:4:19", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "4450:6:19" - }, - "scope": 4173, - "src": "4383:74:19", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "ccf417ae", - "id": 4108, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "registerBtcCoinbaseTransaction", - "nameLocation": "4472:30:19", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 4106, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4097, - "mutability": "mutable", - "name": "btcTxSerialized", - "nameLocation": "4518:15:19", - "nodeType": "VariableDeclaration", - "scope": 4108, - "src": "4503:30:19", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 4096, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "4503:5:19", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4099, - "mutability": "mutable", - "name": "blockHash", - "nameLocation": "4543:9:19", - "nodeType": "VariableDeclaration", - "scope": 4108, - "src": "4535:17:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 4098, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "4535:7:19", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4101, - "mutability": "mutable", - "name": "pmtSerialized", - "nameLocation": "4577:13:19", - "nodeType": "VariableDeclaration", - "scope": 4108, - "src": "4562:28:19", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 4100, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "4562:5:19", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4103, - "mutability": "mutable", - "name": "witnessMerkleRoot", - "nameLocation": "4600:17:19", - "nodeType": "VariableDeclaration", - "scope": 4108, - "src": "4592:25:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 4102, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "4592:7:19", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4105, - "mutability": "mutable", - "name": "witnessReservedValue", - "nameLocation": "4627:20:19", - "nodeType": "VariableDeclaration", - "scope": 4108, - "src": "4619:28:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 4104, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "4619:7:19", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "4502:146:19" - }, - "returnParameters": { - "id": 4107, - "nodeType": "ParameterList", - "parameters": [], - "src": "4657:0:19" - }, - "scope": 4173, - "src": "4463:195:19", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "253b944b", - "id": 4115, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "hasBtcBlockCoinbaseTransactionInformation", - "nameLocation": "4673:41:19", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 4111, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4110, - "mutability": "mutable", - "name": "blockHash", - "nameLocation": "4723:9:19", - "nodeType": "VariableDeclaration", - "scope": 4115, - "src": "4715:17:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 4109, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "4715:7:19", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "4714:19:19" - }, - "returnParameters": { - "id": 4114, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4113, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4115, - "src": "4757:4:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 4112, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "4757:4:19", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "4756:6:19" - }, - "scope": 4173, - "src": "4664:99:19", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "6adc0133", - "id": 4136, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "registerFastBridgeBtcTransaction", - "nameLocation": "4778:32:19", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 4132, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4117, - "mutability": "mutable", - "name": "btcTxSerialized", - "nameLocation": "4826:15:19", - "nodeType": "VariableDeclaration", - "scope": 4136, - "src": "4811:30:19", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 4116, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "4811:5:19", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4119, - "mutability": "mutable", - "name": "height", - "nameLocation": "4851:6:19", - "nodeType": "VariableDeclaration", - "scope": 4136, - "src": "4843:14:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 4118, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "4843:7:19", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4121, - "mutability": "mutable", - "name": "pmtSerialized", - "nameLocation": "4882:13:19", - "nodeType": "VariableDeclaration", - "scope": 4136, - "src": "4867:28:19", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 4120, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "4867:5:19", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4123, - "mutability": "mutable", - "name": "derivationArgumentsHash", - "nameLocation": "4905:23:19", - "nodeType": "VariableDeclaration", - "scope": 4136, - "src": "4897:31:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 4122, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "4897:7:19", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4125, - "mutability": "mutable", - "name": "userRefundBtcAddress", - "nameLocation": "4953:20:19", - "nodeType": "VariableDeclaration", - "scope": 4136, - "src": "4938:35:19", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 4124, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "4938:5:19", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4127, - "mutability": "mutable", - "name": "liquidityBridgeContractAddress", - "nameLocation": "4991:30:19", - "nodeType": "VariableDeclaration", - "scope": 4136, - "src": "4975:46:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - }, - "typeName": { - "id": 4126, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "4975:15:19", - "stateMutability": "payable", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4129, - "mutability": "mutable", - "name": "liquidityProviderBtcAddress", - "nameLocation": "5046:27:19", - "nodeType": "VariableDeclaration", - "scope": 4136, - "src": "5031:42:19", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 4128, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "5031:5:19", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4131, - "mutability": "mutable", - "name": "shouldTransferToContract", - "nameLocation": "5080:24:19", - "nodeType": "VariableDeclaration", - "scope": 4136, - "src": "5075:29:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 4130, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "5075:4:19", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "4810:295:19" - }, - "returnParameters": { - "id": 4135, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4134, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4136, - "src": "5124:6:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4133, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "5124:6:19", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "5123:8:19" - }, - "scope": 4173, - "src": "4769:363:19", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "177d6e18", - "id": 4141, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getActiveFederationCreationBlockHeight", - "nameLocation": "5147:38:19", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 4137, - "nodeType": "ParameterList", - "parameters": [], - "src": "5185:2:19" - }, - "returnParameters": { - "id": 4140, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4139, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4141, - "src": "5211:7:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 4138, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "5211:7:19", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "5210:9:19" - }, - "scope": 4173, - "src": "5138:82:19", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "1d73d5dd", - "id": 4146, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getActivePowpegRedeemScript", - "nameLocation": "5235:27:19", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 4142, - "nodeType": "ParameterList", - "parameters": [], - "src": "5262:2:19" - }, - "returnParameters": { - "id": 4145, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4144, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4146, - "src": "5288:12:19", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 4143, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "5288:5:19", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "5287:14:19" - }, - "scope": 4173, - "src": "5226:76:19", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "f0b2424b", - "id": 4151, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getBtcBlockchainBestBlockHeader", - "nameLocation": "5317:31:19", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 4147, - "nodeType": "ParameterList", - "parameters": [], - "src": "5348:2:19" - }, - "returnParameters": { - "id": 4150, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4149, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4151, - "src": "5374:12:19", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 4148, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "5374:5:19", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "5373:14:19" - }, - "scope": 4173, - "src": "5308:80:19", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "739e364a", - "id": 4158, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getBtcBlockchainBlockHeaderByHash", - "nameLocation": "5403:33:19", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 4154, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4153, - "mutability": "mutable", - "name": "btcBlockHash", - "nameLocation": "5445:12:19", - "nodeType": "VariableDeclaration", - "scope": 4158, - "src": "5437:20:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 4152, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "5437:7:19", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "5436:22:19" - }, - "returnParameters": { - "id": 4157, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4156, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4158, - "src": "5482:12:19", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 4155, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "5482:5:19", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "5481:14:19" - }, - "scope": 4173, - "src": "5394:102:19", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "bd0c1fff", - "id": 4165, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getBtcBlockchainBlockHeaderByHeight", - "nameLocation": "5511:35:19", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 4161, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4160, - "mutability": "mutable", - "name": "btcBlockHeight", - "nameLocation": "5555:14:19", - "nodeType": "VariableDeclaration", - "scope": 4165, - "src": "5547:22:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 4159, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "5547:7:19", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "5546:24:19" - }, - "returnParameters": { - "id": 4164, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4163, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4165, - "src": "5594:12:19", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 4162, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "5594:5:19", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "5593:14:19" - }, - "scope": 4173, - "src": "5502:106:19", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "e0236724", - "id": 4172, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getBtcBlockchainParentBlockHeaderByHash", - "nameLocation": "5623:39:19", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 4168, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4167, - "mutability": "mutable", - "name": "btcBlockHash", - "nameLocation": "5671:12:19", - "nodeType": "VariableDeclaration", - "scope": 4172, - "src": "5663:20:19", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 4166, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "5663:7:19", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "5662:22:19" - }, - "returnParameters": { - "id": 4171, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4170, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4172, - "src": "5708:12:19", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 4169, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "5708:5:19", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "5707:14:19" - }, - "scope": 4173, - "src": "5614:108:19", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - } - ], - "scope": 4174, - "src": "58:5666:19", - "usedErrors": [] - } - ], - "src": "32:5692:19" - }, - "compiler": { - "name": "solc", - "version": "0.8.18+commit.87f61d96.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "3.4.13", - "updatedAt": "2024-12-10T18:52:58.878Z", - "devdoc": { - "kind": "dev", - "methods": {}, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } -} \ No newline at end of file diff --git a/build/contracts/BridgeMock.json b/build/contracts/BridgeMock.json deleted file mode 100644 index 43a7b91..0000000 --- a/build/contracts/BridgeMock.json +++ /dev/null @@ -1,23830 +0,0 @@ -{ - "contractName": "BridgeMock", - "abi": [ - { - "stateMutability": "payable", - "type": "receive" - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - }, - { - "internalType": "uint256", - "name": "", - "type": "uint256" - }, - { - "internalType": "bytes", - "name": "", - "type": "bytes" - }, - { - "internalType": "bytes32", - "name": "derivationArgumentsHash", - "type": "bytes32" - }, - { - "internalType": "bytes", - "name": "", - "type": "bytes" - }, - { - "internalType": "address payable", - "name": "liquidityBridgeContractAddress", - "type": "address" - }, - { - "internalType": "bytes", - "name": "", - "type": "bytes" - }, - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "name": "registerFastBridgeBtcTransaction", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "height", - "type": "uint256" - } - ], - "name": "getBtcBlockchainBlockHeaderByHeight", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "derivationArgumentsHash", - "type": "bytes32" - } - ], - "name": "setPegin", - "outputs": [], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "height", - "type": "uint256" - }, - { - "internalType": "bytes", - "name": "header", - "type": "bytes" - } - ], - "name": "setHeader", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "blockHash", - "type": "bytes32" - }, - { - "internalType": "bytes", - "name": "header", - "type": "bytes" - } - ], - "name": "setHeaderByHash", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "getActivePowpegRedeemScript", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [], - "name": "getBtcBlockchainBestChainHeight", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [], - "name": "getStateForBtcReleaseClient", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [], - "name": "getStateForDebugging", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [], - "name": "getBtcBlockchainInitialBlockHeight", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "name": "getBtcBlockchainBlockHashAtDepth", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "", - "type": "string" - } - ], - "name": "getBtcTxHashProcessedHeight", - "outputs": [ - { - "internalType": "int64", - "name": "", - "type": "int64" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "", - "type": "string" - } - ], - "name": "isBtcTxHashAlreadyProcessed", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [], - "name": "getFederationAddress", - "outputs": [ - { - "internalType": "string", - "name": "", - "type": "string" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "atx", - "type": "bytes" - }, - { - "internalType": "int256", - "name": "height", - "type": "int256" - }, - { - "internalType": "bytes", - "name": "pmt", - "type": "bytes" - } - ], - "name": "registerBtcTransaction", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "pubkey", - "type": "bytes" - }, - { - "internalType": "bytes[]", - "name": "signatures", - "type": "bytes[]" - }, - { - "internalType": "bytes", - "name": "txhash", - "type": "bytes" - } - ], - "name": "addSignature", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes[]", - "name": "blocks", - "type": "bytes[]" - } - ], - "name": "receiveHeaders", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "name": "receiveHeader", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [], - "name": "getFederationSize", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [], - "name": "getFederationThreshold", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "name": "getFederatorPublicKey", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - }, - { - "internalType": "string", - "name": "", - "type": "string" - } - ], - "name": "getFederatorPublicKeyOfType", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [], - "name": "getFederationCreationTime", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [], - "name": "getFederationCreationBlockNumber", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [], - "name": "getRetiringFederationAddress", - "outputs": [ - { - "internalType": "string", - "name": "", - "type": "string" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [], - "name": "getRetiringFederationSize", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [], - "name": "getRetiringFederationThreshold", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "name": "getRetiringFederatorPublicKey", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - }, - { - "internalType": "string", - "name": "", - "type": "string" - } - ], - "name": "getRetiringFederatorPublicKeyOfType", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [], - "name": "getRetiringFederationCreationTime", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [], - "name": "getRetiringFederationCreationBlockNumber", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [], - "name": "createFederation", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "name": "addFederatorPublicKey", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - }, - { - "internalType": "bytes", - "name": "", - "type": "bytes" - }, - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "name": "addFederatorPublicKeyMultikey", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "name": "commitFederation", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [], - "name": "rollbackFederation", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [], - "name": "getPendingFederationHash", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [], - "name": "getPendingFederationSize", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "name": "getPendingFederatorPublicKey", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - }, - { - "internalType": "string", - "name": "", - "type": "string" - } - ], - "name": "getPendingFederatorPublicKeyOfType", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [], - "name": "getLockWhitelistSize", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "name": "getLockWhitelistAddress", - "outputs": [ - { - "internalType": "string", - "name": "", - "type": "string" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "", - "type": "string" - } - ], - "name": "getLockWhitelistEntryByAddress", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "", - "type": "string" - }, - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "name": "addLockWhitelistAddress", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "", - "type": "string" - }, - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "name": "addOneOffLockWhitelistAddress", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "", - "type": "string" - } - ], - "name": "addUnlimitedLockWhitelistAddress", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "", - "type": "string" - } - ], - "name": "removeLockWhitelistAddress", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "name": "setLockWhitelistDisableBlockDelay", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [], - "name": "getFeePerKb", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "name": "voteFeePerKbChange", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [], - "name": "updateCollections", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "getMinimumLockTxValue", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "", - "type": "bytes32" - }, - { - "internalType": "bytes32", - "name": "", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "", - "type": "uint256" - }, - { - "internalType": "bytes32[]", - "name": "", - "type": "bytes32[]" - } - ], - "name": "getBtcTransactionConfirmations", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [], - "name": "getLockingCap", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "name": "increaseLockingCap", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "btcTxSerialized", - "type": "bytes" - }, - { - "internalType": "bytes32", - "name": "blockHash", - "type": "bytes32" - }, - { - "internalType": "bytes", - "name": "pmtSerialized", - "type": "bytes" - }, - { - "internalType": "bytes32", - "name": "witnessMerkleRoot", - "type": "bytes32" - }, - { - "internalType": "bytes32", - "name": "witnessReservedValue", - "type": "bytes32" - } - ], - "name": "registerBtcCoinbaseTransaction", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "", - "type": "bytes32" - } - ], - "name": "hasBtcBlockCoinbaseTransactionInformation", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [], - "name": "getActiveFederationCreationBlockHeight", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [], - "name": "getBtcBlockchainBestBlockHeader", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "blockHash", - "type": "bytes32" - } - ], - "name": "getBtcBlockchainBlockHeaderByHash", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "", - "type": "bytes32" - } - ], - "name": "getBtcBlockchainParentBlockHeaderByHash", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "stateMutability": "pure", - "type": "function" - } - ], - "metadata": "{\"compiler\":{\"version\":\"0.8.18+commit.87f61d96\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"addFederatorPublicKey\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"addFederatorPublicKeyMultikey\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"},{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"name\":\"addLockWhitelistAddress\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"},{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"name\":\"addOneOffLockWhitelistAddress\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"pubkey\",\"type\":\"bytes\"},{\"internalType\":\"bytes[]\",\"name\":\"signatures\",\"type\":\"bytes[]\"},{\"internalType\":\"bytes\",\"name\":\"txhash\",\"type\":\"bytes\"}],\"name\":\"addSignature\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"addUnlimitedLockWhitelistAddress\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"commitFederation\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"createFederation\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getActiveFederationCreationBlockHeight\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getActivePowpegRedeemScript\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getBtcBlockchainBestBlockHeader\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getBtcBlockchainBestChainHeight\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"name\":\"getBtcBlockchainBlockHashAtDepth\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"blockHash\",\"type\":\"bytes32\"}],\"name\":\"getBtcBlockchainBlockHeaderByHash\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"height\",\"type\":\"uint256\"}],\"name\":\"getBtcBlockchainBlockHeaderByHeight\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getBtcBlockchainInitialBlockHeight\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"getBtcBlockchainParentBlockHeaderByHash\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"bytes32[]\",\"name\":\"\",\"type\":\"bytes32[]\"}],\"name\":\"getBtcTransactionConfirmations\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"getBtcTxHashProcessedHeight\",\"outputs\":[{\"internalType\":\"int64\",\"name\":\"\",\"type\":\"int64\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getFederationAddress\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getFederationCreationBlockNumber\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getFederationCreationTime\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getFederationSize\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getFederationThreshold\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"name\":\"getFederatorPublicKey\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"},{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"getFederatorPublicKeyOfType\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getFeePerKb\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"name\":\"getLockWhitelistAddress\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"getLockWhitelistEntryByAddress\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getLockWhitelistSize\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getLockingCap\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getMinimumLockTxValue\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getPendingFederationHash\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getPendingFederationSize\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"name\":\"getPendingFederatorPublicKey\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"},{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"getPendingFederatorPublicKeyOfType\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRetiringFederationAddress\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRetiringFederationCreationBlockNumber\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRetiringFederationCreationTime\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRetiringFederationSize\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRetiringFederationThreshold\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"name\":\"getRetiringFederatorPublicKey\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"},{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"getRetiringFederatorPublicKeyOfType\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getStateForBtcReleaseClient\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getStateForDebugging\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"hasBtcBlockCoinbaseTransactionInformation\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"name\":\"increaseLockingCap\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"isBtcTxHashAlreadyProcessed\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"receiveHeader\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes[]\",\"name\":\"blocks\",\"type\":\"bytes[]\"}],\"name\":\"receiveHeaders\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"btcTxSerialized\",\"type\":\"bytes\"},{\"internalType\":\"bytes32\",\"name\":\"blockHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"pmtSerialized\",\"type\":\"bytes\"},{\"internalType\":\"bytes32\",\"name\":\"witnessMerkleRoot\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"witnessReservedValue\",\"type\":\"bytes32\"}],\"name\":\"registerBtcCoinbaseTransaction\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"atx\",\"type\":\"bytes\"},{\"internalType\":\"int256\",\"name\":\"height\",\"type\":\"int256\"},{\"internalType\":\"bytes\",\"name\":\"pmt\",\"type\":\"bytes\"}],\"name\":\"registerBtcTransaction\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"},{\"internalType\":\"bytes32\",\"name\":\"derivationArgumentsHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"},{\"internalType\":\"address payable\",\"name\":\"liquidityBridgeContractAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"},{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"name\":\"registerFastBridgeBtcTransaction\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"removeLockWhitelistAddress\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"rollbackFederation\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"height\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"header\",\"type\":\"bytes\"}],\"name\":\"setHeader\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"blockHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"header\",\"type\":\"bytes\"}],\"name\":\"setHeaderByHash\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"name\":\"setLockWhitelistDisableBlockDelay\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"derivationArgumentsHash\",\"type\":\"bytes32\"}],\"name\":\"setPegin\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"updateCollections\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"name\":\"voteFeePerKbChange\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"project:/contracts/BridgeMock.sol\":\"BridgeMock\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":1},\"remappings\":[]},\"sources\":{\"project:/contracts/Bridge.sol\":{\"keccak256\":\"0x1eb986f1f28ace76b72425a2617eaeb89a54c765dc7b16689cb1105a7e6c0f2f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://255860b4bfb0bed73723349493307106fb54fcaf5839a7b0c012fc1a03d0b8ce\",\"dweb:/ipfs/QmUoWjWVkXpUWjaiWQXQVNKEJmCnPtKXXTgFq7kkcTuGMs\"]},\"project:/contracts/BridgeMock.sol\":{\"keccak256\":\"0x68178040deedcf33c1ad21d2f23309abd767060db742ffc633ade48b21175626\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7586771efec0a5aad12dcf3ad55229be935c7dbb2cfca36acdfcc05e6845a4ad\",\"dweb:/ipfs/QmStEUYNAEr6NrrVRd4EC51qF5H1Tuzrxa2QPnLdUn8HxY\"]}},\"version\":1}", - "bytecode": "0x608060405234801561001057600080fd5b5061114e806100206000396000f3fe6080604052600436106102b65760003560e01c80630461313e146102c257806307bbdfc4146102f65780630c5a99901461030a5780630d0cee931461031a5780630fd47456146102f657806310d86efd146103375780631183d5d1146102f657806314c89c01146102f65780631533330f14610358578063177d6e18146102f65780631b2045ee146102f65780631d73d5dd1461037b578063248a982d14610390578063251c5f7b14610358578063253b944b146103bb5780632910aeb2146103bb5780632f8d158f146103d65780633ac72b38146102f65780633f0ce9b1146102f65780633f9db977146102f657806343dc0656146103ea578063444ff9da1461040c5780634675d6de1461043357806347227286146104545780634897193f146102f6578063492f7c4414610433578063502bbbce14610475578063549cfd1c14610499578063572de37b146104bd5780635b644587146104dd5780635e2db9d4146102f657806368bc2b2b146104995780636923fa85146105035780636adc0133146105185780636b89a1af146104335780636ce0ed5a1461031a578063724ec886146102f6578063739e364a14610538578063802ad4b6146102f6578063848206d914610475578063884bdd86146103585780638dec3d32146102f657806393988b761461055857806397fcca7d14610586578063b906c93814610358578063bd0c1fff146105b4578063c1cc54f5146102c2578063c4fbca201461031a578063c61295d914610499578063ccf417ae146105d4578063d5949890146105f8578063d905153f146102f6578063d970b0fd146102f6578063e023672414610433578063e5400e7b14610618578063e9e658dc146102f6578063ecefd33914610358578063efd4441814610433578063f0b2424b1461031a578063f10b9c5914610637578063fcdeb46f1461035857600080fd5b366102bd57005b600080fd5b3480156102ce57600080fd5b506102e36102dd3660046108c6565b50600090565b6040519081526020015b60405180910390f35b34801561030257600080fd5b5060006102e3565b34801561031657600080fd5b505b005b34801561032657600080fd5b5060605b6040516102ed919061092f565b6103186103453660046108c6565b6000908152602081905260409020349055565b34801561036457600080fd5b506102e3610373366004610991565b600092915050565b34801561038757600080fd5b5061032a61065a565b34801561039c57600080fd5b506103ab610373366004610991565b60405190151581526020016102ed565b3480156103c757600080fd5b506103ab6102dd3660046108c6565b3480156103e257600080fd5b5060026102e3565b3480156103f657600080fd5b506103186104053660046109d2565b5050505050565b34801561041857600080fd5b506102e3610427366004610a4b565b60009695505050505050565b34801561043f57600080fd5b5061032a61044e3660046108c6565b50606090565b34801561046057600080fd5b5060408051602081019091526000815261032a565b34801561048157600080fd5b506102e3610490366004610ae4565b60009392505050565b3480156104a557600080fd5b5061032a6104b4366004610b2f565b60609392505050565b3480156104c957600080fd5b506103186104d8366004610c1c565b6106f5565b3480156104e957600080fd5b506102e36104f8366004610ca6565b600295945050505050565b34801561050f57600080fd5b5061032a610712565b34801561052457600080fd5b506102e3610533366004610d21565b610732565b34801561054457600080fd5b5061032a6105533660046108c6565b6107ef565b34801561056457600080fd5b5061032a6105733660046108c6565b5060408051602081019091526000815290565b34801561059257600080fd5b506105a1610373366004610991565b60405160079190910b81526020016102ed565b3480156105c057600080fd5b5061032a6105cf3660046108c6565b610891565b3480156105e057600080fd5b506103186105ef366004610e02565b50505050505050565b34801561060457600080fd5b50610318610613366004610c1c565b6108ae565b34801561062457600080fd5b50610318610633366004610e8a565b5050565b34801561064357600080fd5b50610318610652366004610ebf565b505050505050565b606060006040518060600160405280602981526020016110a360299139905060006040518060600160405280602a81526020016110cc602a913990506000604051806040016040528060168152602001751e4f6a9a7043c32b8bad8995c653187922ef826da9d760511b81525090508282826040516020016106de93929190610f20565b604051602081830303815290604052935050505090565b600082815260016020526040902061070d8282610fe3565b505050565b60606040518060600160405280602381526020016110f660239139905090565b600085815260208190526040808220805490839055905182906001600160a01b0387169083908381818185875af1925050503d8060008114610790576040519150601f19603f3d011682016040523d82523d6000602084013e610795565b606091505b50509050806107e15760405162461bcd60e51b815260206004820152601460248201527314d95b991a5b99c8199d5b991cc819985a5b195960621b604482015260640160405180910390fd5b509998505050505050505050565b600081815260026020526040902080546060919061080c90610f63565b80601f016020809104026020016040519081016040528092919081815260200182805461083890610f63565b80156108855780601f1061085a57610100808354040283529160200191610885565b820191906000526020600020905b81548152906001019060200180831161086857829003601f168201915b50505050509050919050565b600081815260016020526040902080546060919061080c90610f63565b600082815260026020526040902061070d8282610fe3565b6000602082840312156108d857600080fd5b5035919050565b60005b838110156108fa5781810151838201526020016108e2565b50506000910152565b6000815180845261091b8160208601602086016108df565b601f01601f19169290920160200192915050565b6020815260006109426020830184610903565b9392505050565b60008083601f84011261095b57600080fd5b5081356001600160401b0381111561097257600080fd5b60208301915083602082850101111561098a57600080fd5b9250929050565b600080602083850312156109a457600080fd5b82356001600160401b038111156109ba57600080fd5b6109c685828601610949565b90969095509350505050565b6000806000806000606086880312156109ea57600080fd5b85356001600160401b0380821115610a0157600080fd5b610a0d89838a01610949565b9097509550602088013594506040880135915080821115610a2d57600080fd5b50610a3a88828901610949565b969995985093965092949392505050565b60008060008060008060608789031215610a6457600080fd5b86356001600160401b0380821115610a7b57600080fd5b610a878a838b01610949565b90985096506020890135915080821115610aa057600080fd5b610aac8a838b01610949565b90965094506040890135915080821115610ac557600080fd5b50610ad289828a01610949565b979a9699509497509295939492505050565b600080600060408486031215610af957600080fd5b83356001600160401b03811115610b0f57600080fd5b610b1b86828701610949565b909790965060209590950135949350505050565b600080600060408486031215610b4457600080fd5b8335925060208401356001600160401b03811115610b6157600080fd5b610b6d86828701610949565b9497909650939450505050565b634e487b7160e01b600052604160045260246000fd5b600082601f830112610ba157600080fd5b81356001600160401b0380821115610bbb57610bbb610b7a565b604051601f8301601f19908116603f01168101908282118183101715610be357610be3610b7a565b81604052838152866020858801011115610bfc57600080fd5b836020870160208301376000602085830101528094505050505092915050565b60008060408385031215610c2f57600080fd5b8235915060208301356001600160401b03811115610c4c57600080fd5b610c5885828601610b90565b9150509250929050565b60008083601f840112610c7457600080fd5b5081356001600160401b03811115610c8b57600080fd5b6020830191508360208260051b850101111561098a57600080fd5b600080600080600060808688031215610cbe57600080fd5b85359450602086013593506040860135925060608601356001600160401b03811115610ce957600080fd5b610a3a88828901610c62565b80356001600160a01b0381168114610d0c57600080fd5b919050565b80358015158114610d0c57600080fd5b600080600080600080600080610100898b031215610d3e57600080fd5b88356001600160401b0380821115610d5557600080fd5b610d618c838d01610b90565b995060208b0135985060408b0135915080821115610d7e57600080fd5b610d8a8c838d01610b90565b975060608b0135965060808b0135915080821115610da757600080fd5b610db38c838d01610b90565b9550610dc160a08c01610cf5565b945060c08b0135915080821115610dd757600080fd5b50610de48b828c01610b90565b925050610df360e08a01610d11565b90509295985092959890939650565b600080600080600080600060a0888a031215610e1d57600080fd5b87356001600160401b0380821115610e3457600080fd5b610e408b838c01610949565b909950975060208a0135965060408a0135915080821115610e6057600080fd5b50610e6d8a828b01610949565b989b979a5095989597966060870135966080013595509350505050565b60008060208385031215610e9d57600080fd5b82356001600160401b03811115610eb357600080fd5b6109c685828601610c62565b60008060008060008060608789031215610ed857600080fd5b86356001600160401b0380821115610eef57600080fd5b610efb8a838b01610949565b90985096506020890135915080821115610f1457600080fd5b610aac8a838b01610c62565b60008451610f328184602089016108df565b845190830190610f468183602089016108df565b8451910190610f598183602088016108df565b0195945050505050565b600181811c90821680610f7757607f821691505b602082108103610f9757634e487b7160e01b600052602260045260246000fd5b50919050565b601f82111561070d57600081815260208120601f850160051c81016020861015610fc45750805b601f850160051c820191505b8181101561065257828155600101610fd0565b81516001600160401b03811115610ffc57610ffc610b7a565b6110108161100a8454610f63565b84610f9d565b602080601f831160018114611045576000841561102d5750858301515b600019600386901b1c1916600185901b178555610652565b600085815260208120601f198616915b8281101561107457888601518255948401946001909101908401611055565b50858210156110925787850151600019600388901b60f8161c191681555b5050505050600190811b0190555056fe522102cd53fc53a07f211641a677d250f6de99caf620e8e77071e811a28b3bcddf0be1210362634ab57dae9cb373a5d536e66a8c4f67468bbcfb063809bab643072d78a1242103c5946b3fbae03a654237da86324e356d754d65704a697a4a45316752374662484a553643443138563342704e463970a2646970667358221220300b5ed191bc795baea23f05398e4d135dc160d36c5f674e4613ed1ff4385e1d64736f6c63430008120033", - "deployedBytecode": "0x6080604052600436106102b65760003560e01c80630461313e146102c257806307bbdfc4146102f65780630c5a99901461030a5780630d0cee931461031a5780630fd47456146102f657806310d86efd146103375780631183d5d1146102f657806314c89c01146102f65780631533330f14610358578063177d6e18146102f65780631b2045ee146102f65780631d73d5dd1461037b578063248a982d14610390578063251c5f7b14610358578063253b944b146103bb5780632910aeb2146103bb5780632f8d158f146103d65780633ac72b38146102f65780633f0ce9b1146102f65780633f9db977146102f657806343dc0656146103ea578063444ff9da1461040c5780634675d6de1461043357806347227286146104545780634897193f146102f6578063492f7c4414610433578063502bbbce14610475578063549cfd1c14610499578063572de37b146104bd5780635b644587146104dd5780635e2db9d4146102f657806368bc2b2b146104995780636923fa85146105035780636adc0133146105185780636b89a1af146104335780636ce0ed5a1461031a578063724ec886146102f6578063739e364a14610538578063802ad4b6146102f6578063848206d914610475578063884bdd86146103585780638dec3d32146102f657806393988b761461055857806397fcca7d14610586578063b906c93814610358578063bd0c1fff146105b4578063c1cc54f5146102c2578063c4fbca201461031a578063c61295d914610499578063ccf417ae146105d4578063d5949890146105f8578063d905153f146102f6578063d970b0fd146102f6578063e023672414610433578063e5400e7b14610618578063e9e658dc146102f6578063ecefd33914610358578063efd4441814610433578063f0b2424b1461031a578063f10b9c5914610637578063fcdeb46f1461035857600080fd5b366102bd57005b600080fd5b3480156102ce57600080fd5b506102e36102dd3660046108c6565b50600090565b6040519081526020015b60405180910390f35b34801561030257600080fd5b5060006102e3565b34801561031657600080fd5b505b005b34801561032657600080fd5b5060605b6040516102ed919061092f565b6103186103453660046108c6565b6000908152602081905260409020349055565b34801561036457600080fd5b506102e3610373366004610991565b600092915050565b34801561038757600080fd5b5061032a61065a565b34801561039c57600080fd5b506103ab610373366004610991565b60405190151581526020016102ed565b3480156103c757600080fd5b506103ab6102dd3660046108c6565b3480156103e257600080fd5b5060026102e3565b3480156103f657600080fd5b506103186104053660046109d2565b5050505050565b34801561041857600080fd5b506102e3610427366004610a4b565b60009695505050505050565b34801561043f57600080fd5b5061032a61044e3660046108c6565b50606090565b34801561046057600080fd5b5060408051602081019091526000815261032a565b34801561048157600080fd5b506102e3610490366004610ae4565b60009392505050565b3480156104a557600080fd5b5061032a6104b4366004610b2f565b60609392505050565b3480156104c957600080fd5b506103186104d8366004610c1c565b6106f5565b3480156104e957600080fd5b506102e36104f8366004610ca6565b600295945050505050565b34801561050f57600080fd5b5061032a610712565b34801561052457600080fd5b506102e3610533366004610d21565b610732565b34801561054457600080fd5b5061032a6105533660046108c6565b6107ef565b34801561056457600080fd5b5061032a6105733660046108c6565b5060408051602081019091526000815290565b34801561059257600080fd5b506105a1610373366004610991565b60405160079190910b81526020016102ed565b3480156105c057600080fd5b5061032a6105cf3660046108c6565b610891565b3480156105e057600080fd5b506103186105ef366004610e02565b50505050505050565b34801561060457600080fd5b50610318610613366004610c1c565b6108ae565b34801561062457600080fd5b50610318610633366004610e8a565b5050565b34801561064357600080fd5b50610318610652366004610ebf565b505050505050565b606060006040518060600160405280602981526020016110a360299139905060006040518060600160405280602a81526020016110cc602a913990506000604051806040016040528060168152602001751e4f6a9a7043c32b8bad8995c653187922ef826da9d760511b81525090508282826040516020016106de93929190610f20565b604051602081830303815290604052935050505090565b600082815260016020526040902061070d8282610fe3565b505050565b60606040518060600160405280602381526020016110f660239139905090565b600085815260208190526040808220805490839055905182906001600160a01b0387169083908381818185875af1925050503d8060008114610790576040519150601f19603f3d011682016040523d82523d6000602084013e610795565b606091505b50509050806107e15760405162461bcd60e51b815260206004820152601460248201527314d95b991a5b99c8199d5b991cc819985a5b195960621b604482015260640160405180910390fd5b509998505050505050505050565b600081815260026020526040902080546060919061080c90610f63565b80601f016020809104026020016040519081016040528092919081815260200182805461083890610f63565b80156108855780601f1061085a57610100808354040283529160200191610885565b820191906000526020600020905b81548152906001019060200180831161086857829003601f168201915b50505050509050919050565b600081815260016020526040902080546060919061080c90610f63565b600082815260026020526040902061070d8282610fe3565b6000602082840312156108d857600080fd5b5035919050565b60005b838110156108fa5781810151838201526020016108e2565b50506000910152565b6000815180845261091b8160208601602086016108df565b601f01601f19169290920160200192915050565b6020815260006109426020830184610903565b9392505050565b60008083601f84011261095b57600080fd5b5081356001600160401b0381111561097257600080fd5b60208301915083602082850101111561098a57600080fd5b9250929050565b600080602083850312156109a457600080fd5b82356001600160401b038111156109ba57600080fd5b6109c685828601610949565b90969095509350505050565b6000806000806000606086880312156109ea57600080fd5b85356001600160401b0380821115610a0157600080fd5b610a0d89838a01610949565b9097509550602088013594506040880135915080821115610a2d57600080fd5b50610a3a88828901610949565b969995985093965092949392505050565b60008060008060008060608789031215610a6457600080fd5b86356001600160401b0380821115610a7b57600080fd5b610a878a838b01610949565b90985096506020890135915080821115610aa057600080fd5b610aac8a838b01610949565b90965094506040890135915080821115610ac557600080fd5b50610ad289828a01610949565b979a9699509497509295939492505050565b600080600060408486031215610af957600080fd5b83356001600160401b03811115610b0f57600080fd5b610b1b86828701610949565b909790965060209590950135949350505050565b600080600060408486031215610b4457600080fd5b8335925060208401356001600160401b03811115610b6157600080fd5b610b6d86828701610949565b9497909650939450505050565b634e487b7160e01b600052604160045260246000fd5b600082601f830112610ba157600080fd5b81356001600160401b0380821115610bbb57610bbb610b7a565b604051601f8301601f19908116603f01168101908282118183101715610be357610be3610b7a565b81604052838152866020858801011115610bfc57600080fd5b836020870160208301376000602085830101528094505050505092915050565b60008060408385031215610c2f57600080fd5b8235915060208301356001600160401b03811115610c4c57600080fd5b610c5885828601610b90565b9150509250929050565b60008083601f840112610c7457600080fd5b5081356001600160401b03811115610c8b57600080fd5b6020830191508360208260051b850101111561098a57600080fd5b600080600080600060808688031215610cbe57600080fd5b85359450602086013593506040860135925060608601356001600160401b03811115610ce957600080fd5b610a3a88828901610c62565b80356001600160a01b0381168114610d0c57600080fd5b919050565b80358015158114610d0c57600080fd5b600080600080600080600080610100898b031215610d3e57600080fd5b88356001600160401b0380821115610d5557600080fd5b610d618c838d01610b90565b995060208b0135985060408b0135915080821115610d7e57600080fd5b610d8a8c838d01610b90565b975060608b0135965060808b0135915080821115610da757600080fd5b610db38c838d01610b90565b9550610dc160a08c01610cf5565b945060c08b0135915080821115610dd757600080fd5b50610de48b828c01610b90565b925050610df360e08a01610d11565b90509295985092959890939650565b600080600080600080600060a0888a031215610e1d57600080fd5b87356001600160401b0380821115610e3457600080fd5b610e408b838c01610949565b909950975060208a0135965060408a0135915080821115610e6057600080fd5b50610e6d8a828b01610949565b989b979a5095989597966060870135966080013595509350505050565b60008060208385031215610e9d57600080fd5b82356001600160401b03811115610eb357600080fd5b6109c685828601610c62565b60008060008060008060608789031215610ed857600080fd5b86356001600160401b0380821115610eef57600080fd5b610efb8a838b01610949565b90985096506020890135915080821115610f1457600080fd5b610aac8a838b01610c62565b60008451610f328184602089016108df565b845190830190610f468183602089016108df565b8451910190610f598183602088016108df565b0195945050505050565b600181811c90821680610f7757607f821691505b602082108103610f9757634e487b7160e01b600052602260045260246000fd5b50919050565b601f82111561070d57600081815260208120601f850160051c81016020861015610fc45750805b601f850160051c820191505b8181101561065257828155600101610fd0565b81516001600160401b03811115610ffc57610ffc610b7a565b6110108161100a8454610f63565b84610f9d565b602080601f831160018114611045576000841561102d5750858301515b600019600386901b1c1916600185901b178555610652565b600085815260208120601f198616915b8281101561107457888601518255948401946001909101908401611055565b50858210156110925787850151600019600388901b60f8161c191681555b5050505050600190811b0190555056fe522102cd53fc53a07f211641a677d250f6de99caf620e8e77071e811a28b3bcddf0be1210362634ab57dae9cb373a5d536e66a8c4f67468bbcfb063809bab643072d78a1242103c5946b3fbae03a654237da86324e356d754d65704a697a4a45316752374662484a553643443138563342704e463970a2646970667358221220300b5ed191bc795baea23f05398e4d135dc160d36c5f674e4613ed1ff4385e1d64736f6c63430008120033", - "immutableReferences": {}, - "generatedSources": [], - "deployedGeneratedSources": [ - { - "ast": { - "nodeType": "YulBlock", - "src": "0:16754:32", - "statements": [ - { - "nodeType": "YulBlock", - "src": "6:3:32", - "statements": [] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "83:110:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "129:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "138:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "141:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "131:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "131:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "131:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "104:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "113:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "100:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "100:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "125:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "96:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "96:32:32" - }, - "nodeType": "YulIf", - "src": "93:52:32" - }, - { - "nodeType": "YulAssignment", - "src": "154:33:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "177:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "164:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "164:23:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "154:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_int256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "49:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "60:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "72:6:32", - "type": "" - } - ], - "src": "14:179:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "297:76:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "307:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "319:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "330:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "315:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "315:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "307:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "349:9:32" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "360:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "342:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "342:25:32" - }, - "nodeType": "YulExpressionStatement", - "src": "342:25:32" - } - ] - }, - "name": "abi_encode_tuple_t_int256__to_t_int256__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "266:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "277:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "288:4:32", - "type": "" - } - ], - "src": "198:175:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "444:184:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "454:10:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "463:1:32", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "i", - "nodeType": "YulTypedName", - "src": "458:1:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "523:63:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "548:3:32" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "553:1:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "544:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "544:11:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "567:3:32" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "572:1:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "563:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "563:11:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "557:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "557:18:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "537:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "537:39:32" - }, - "nodeType": "YulExpressionStatement", - "src": "537:39:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "484:1:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "487:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "481:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "481:13:32" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "495:19:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "497:15:32", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "506:1:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "509:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "502:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "502:10:32" - }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "497:1:32" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "477:3:32", - "statements": [] - }, - "src": "473:113:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "606:3:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "611:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "602:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "602:16:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "620:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "595:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "595:27:32" - }, - "nodeType": "YulExpressionStatement", - "src": "595:27:32" - } - ] - }, - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "src", - "nodeType": "YulTypedName", - "src": "422:3:32", - "type": "" - }, - { - "name": "dst", - "nodeType": "YulTypedName", - "src": "427:3:32", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "432:6:32", - "type": "" - } - ], - "src": "378:250:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "682:221:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "692:26:32", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "712:5:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "706:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "706:12:32" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "696:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "734:3:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "739:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "727:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "727:19:32" - }, - "nodeType": "YulExpressionStatement", - "src": "727:19:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "794:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "801:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "790:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "790:16:32" - }, - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "812:3:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "817:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "808:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "808:14:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "824:6:32" - } - ], - "functionName": { - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulIdentifier", - "src": "755:34:32" - }, - "nodeType": "YulFunctionCall", - "src": "755:76:32" - }, - "nodeType": "YulExpressionStatement", - "src": "755:76:32" - }, - { - "nodeType": "YulAssignment", - "src": "840:57:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "855:3:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "868:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "876:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "864:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "864:15:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "885:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "881:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "881:7:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "860:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "860:29:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "851:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "851:39:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "892:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "847:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "847:50:32" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "840:3:32" - } - ] - } - ] - }, - "name": "abi_encode_bytes", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "659:5:32", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "666:3:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "674:3:32", - "type": "" - } - ], - "src": "633:270:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1027:98:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1044:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1055:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1037:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1037:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1037:21:32" - }, - { - "nodeType": "YulAssignment", - "src": "1067:52:32", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "1092:6:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1104:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1115:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1100:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1100:18:32" - } - ], - "functionName": { - "name": "abi_encode_bytes", - "nodeType": "YulIdentifier", - "src": "1075:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "1075:44:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "1067:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "996:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "1007:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "1018:4:32", - "type": "" - } - ], - "src": "908:217:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1200:110:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "1246:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1255:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1258:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1248:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1248:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1248:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "1221:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1230:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "1217:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1217:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1242:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "1213:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1213:32:32" - }, - "nodeType": "YulIf", - "src": "1210:52:32" - }, - { - "nodeType": "YulAssignment", - "src": "1271:33:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1294:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "1281:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "1281:23:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "1271:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bytes32", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "1166:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "1177:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "1189:6:32", - "type": "" - } - ], - "src": "1130:180:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1387:275:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "1436:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1445:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1448:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1438:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1438:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1438:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1415:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1423:4:32", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1411:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1411:17:32" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "1430:3:32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "1407:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1407:27:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "1400:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1400:35:32" - }, - "nodeType": "YulIf", - "src": "1397:55:32" - }, - { - "nodeType": "YulAssignment", - "src": "1461:30:32", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1484:6:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "1471:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "1471:20:32" - }, - "variableNames": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "1461:6:32" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1534:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1543:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1546:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1536:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1536:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1536:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "1506:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1522:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1526:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "1518:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1518:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1530:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "1514:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1514:18:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1503:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "1503:30:32" - }, - "nodeType": "YulIf", - "src": "1500:50:32" - }, - { - "nodeType": "YulAssignment", - "src": "1559:29:32", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1575:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1583:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1571:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1571:17:32" - }, - "variableNames": [ - { - "name": "arrayPos", - "nodeType": "YulIdentifier", - "src": "1559:8:32" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1640:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1649:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1652:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1642:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1642:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1642:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1611:6:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "1619:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1607:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1607:19:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1628:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1603:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1603:30:32" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "1635:3:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1600:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "1600:39:32" - }, - "nodeType": "YulIf", - "src": "1597:59:32" - } - ] - }, - "name": "abi_decode_bytes_calldata", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "1350:6:32", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "1358:3:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "arrayPos", - "nodeType": "YulTypedName", - "src": "1366:8:32", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "1376:6:32", - "type": "" - } - ], - "src": "1315:347:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1756:320:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "1802:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1811:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1814:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1804:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1804:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1804:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "1777:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1786:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "1773:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1773:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1798:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "1769:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1769:32:32" - }, - "nodeType": "YulIf", - "src": "1766:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1827:37:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1854:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "1841:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "1841:23:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "1831:6:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1907:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1916:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1919:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1909:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1909:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1909:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1879:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1895:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1899:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "1891:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1891:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1903:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "1887:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1887:18:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1876:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "1876:30:32" - }, - "nodeType": "YulIf", - "src": "1873:50:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1932:84:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1988:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1999:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1984:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1984:22:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "2008:7:32" - } - ], - "functionName": { - "name": "abi_decode_bytes_calldata", - "nodeType": "YulIdentifier", - "src": "1958:25:32" - }, - "nodeType": "YulFunctionCall", - "src": "1958:58:32" - }, - "variables": [ - { - "name": "value0_1", - "nodeType": "YulTypedName", - "src": "1936:8:32", - "type": "" - }, - { - "name": "value1_1", - "nodeType": "YulTypedName", - "src": "1946:8:32", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "2025:18:32", - "value": { - "name": "value0_1", - "nodeType": "YulIdentifier", - "src": "2035:8:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "2025:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "2052:18:32", - "value": { - "name": "value1_1", - "nodeType": "YulIdentifier", - "src": "2062:8:32" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "2052:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bytes_calldata_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "1714:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "1725:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "1737:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "1745:6:32", - "type": "" - } - ], - "src": "1667:409:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2182:76:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "2192:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2204:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2215:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2200:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2200:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "2192:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2234:9:32" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "2245:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2227:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2227:25:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2227:25:32" - } - ] - }, - "name": "abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "2151:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "2162:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "2173:4:32", - "type": "" - } - ], - "src": "2081:177:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2353:320:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "2399:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2408:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2411:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "2401:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2401:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2401:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "2374:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2383:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "2370:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2370:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2395:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "2366:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2366:32:32" - }, - "nodeType": "YulIf", - "src": "2363:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2424:37:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2451:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "2438:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "2438:23:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "2428:6:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2504:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2513:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2516:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "2506:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2506:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2506:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "2476:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2492:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2496:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "2488:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2488:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2500:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "2484:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2484:18:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "2473:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "2473:30:32" - }, - "nodeType": "YulIf", - "src": "2470:50:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2529:84:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2585:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "2596:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2581:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2581:22:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "2605:7:32" - } - ], - "functionName": { - "name": "abi_decode_bytes_calldata", - "nodeType": "YulIdentifier", - "src": "2555:25:32" - }, - "nodeType": "YulFunctionCall", - "src": "2555:58:32" - }, - "variables": [ - { - "name": "value0_1", - "nodeType": "YulTypedName", - "src": "2533:8:32", - "type": "" - }, - { - "name": "value1_1", - "nodeType": "YulTypedName", - "src": "2543:8:32", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "2622:18:32", - "value": { - "name": "value0_1", - "nodeType": "YulIdentifier", - "src": "2632:8:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "2622:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "2649:18:32", - "value": { - "name": "value1_1", - "nodeType": "YulIdentifier", - "src": "2659:8:32" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "2649:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_string_calldata_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "2311:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "2322:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "2334:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "2342:6:32", - "type": "" - } - ], - "src": "2263:410:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2773:92:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "2783:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2795:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2806:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2791:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2791:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "2783:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2825:9:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "2850:6:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "2843:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2843:14:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "2836:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2836:22:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2818:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2818:41:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2818:41:32" - } - ] - }, - "name": "abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "2742:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "2753:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "2764:4:32", - "type": "" - } - ], - "src": "2678:187:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3011:643:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "3057:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3066:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3069:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "3059:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3059:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3059:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "3032:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3041:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "3028:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3028:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3053:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "3024:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3024:32:32" - }, - "nodeType": "YulIf", - "src": "3021:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3082:37:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3109:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "3096:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "3096:23:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "3086:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3128:28:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3146:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3150:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "3142:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3142:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3154:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "3138:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3138:18:32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "3132:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3183:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3192:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3195:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "3185:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3185:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3185:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "3171:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "3179:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "3168:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "3168:14:32" - }, - "nodeType": "YulIf", - "src": "3165:34:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3208:84:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3264:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "3275:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3260:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3260:22:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "3284:7:32" - } - ], - "functionName": { - "name": "abi_decode_bytes_calldata", - "nodeType": "YulIdentifier", - "src": "3234:25:32" - }, - "nodeType": "YulFunctionCall", - "src": "3234:58:32" - }, - "variables": [ - { - "name": "value0_1", - "nodeType": "YulTypedName", - "src": "3212:8:32", - "type": "" - }, - { - "name": "value1_1", - "nodeType": "YulTypedName", - "src": "3222:8:32", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "3301:18:32", - "value": { - "name": "value0_1", - "nodeType": "YulIdentifier", - "src": "3311:8:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "3301:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "3328:18:32", - "value": { - "name": "value1_1", - "nodeType": "YulIdentifier", - "src": "3338:8:32" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "3328:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "3355:42:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3382:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3393:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3378:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3378:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "3365:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "3365:32:32" - }, - "variableNames": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "3355:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3406:48:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3439:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3450:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3435:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3435:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "3422:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "3422:32:32" - }, - "variables": [ - { - "name": "offset_1", - "nodeType": "YulTypedName", - "src": "3410:8:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3483:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3492:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3495:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "3485:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3485:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3485:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "3469:8:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "3479:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "3466:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "3466:16:32" - }, - "nodeType": "YulIf", - "src": "3463:36:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3508:86:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3564:9:32" - }, - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "3575:8:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3560:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3560:24:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "3586:7:32" - } - ], - "functionName": { - "name": "abi_decode_bytes_calldata", - "nodeType": "YulIdentifier", - "src": "3534:25:32" - }, - "nodeType": "YulFunctionCall", - "src": "3534:60:32" - }, - "variables": [ - { - "name": "value3_1", - "nodeType": "YulTypedName", - "src": "3512:8:32", - "type": "" - }, - { - "name": "value4_1", - "nodeType": "YulTypedName", - "src": "3522:8:32", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "3603:18:32", - "value": { - "name": "value3_1", - "nodeType": "YulIdentifier", - "src": "3613:8:32" - }, - "variableNames": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "3603:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "3630:18:32", - "value": { - "name": "value4_1", - "nodeType": "YulIdentifier", - "src": "3640:8:32" - }, - "variableNames": [ - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "3630:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bytes_calldata_ptrt_int256t_bytes_calldata_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "2945:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "2956:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "2968:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "2976:6:32", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "2984:6:32", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "2992:6:32", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "3000:6:32", - "type": "" - } - ], - "src": "2870:784:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3820:843:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "3866:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3875:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3878:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "3868:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3868:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3868:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "3841:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3850:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "3837:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3837:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3862:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "3833:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3833:32:32" - }, - "nodeType": "YulIf", - "src": "3830:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3891:37:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3918:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "3905:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "3905:23:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "3895:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3937:28:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3955:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3959:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "3951:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3951:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3963:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "3947:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3947:18:32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "3941:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3992:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4001:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4004:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "3994:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3994:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3994:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "3980:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "3988:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "3977:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "3977:14:32" - }, - "nodeType": "YulIf", - "src": "3974:34:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "4017:84:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4073:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "4084:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4069:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4069:22:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "4093:7:32" - } - ], - "functionName": { - "name": "abi_decode_bytes_calldata", - "nodeType": "YulIdentifier", - "src": "4043:25:32" - }, - "nodeType": "YulFunctionCall", - "src": "4043:58:32" - }, - "variables": [ - { - "name": "value0_1", - "nodeType": "YulTypedName", - "src": "4021:8:32", - "type": "" - }, - { - "name": "value1_1", - "nodeType": "YulTypedName", - "src": "4031:8:32", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "4110:18:32", - "value": { - "name": "value0_1", - "nodeType": "YulIdentifier", - "src": "4120:8:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "4110:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "4137:18:32", - "value": { - "name": "value1_1", - "nodeType": "YulIdentifier", - "src": "4147:8:32" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "4137:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "4164:48:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4197:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4208:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4193:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4193:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "4180:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "4180:32:32" - }, - "variables": [ - { - "name": "offset_1", - "nodeType": "YulTypedName", - "src": "4168:8:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4241:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4250:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4253:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "4243:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4243:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4243:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "4227:8:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "4237:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "4224:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "4224:16:32" - }, - "nodeType": "YulIf", - "src": "4221:36:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "4266:86:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4322:9:32" - }, - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "4333:8:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4318:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4318:24:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "4344:7:32" - } - ], - "functionName": { - "name": "abi_decode_bytes_calldata", - "nodeType": "YulIdentifier", - "src": "4292:25:32" - }, - "nodeType": "YulFunctionCall", - "src": "4292:60:32" - }, - "variables": [ - { - "name": "value2_1", - "nodeType": "YulTypedName", - "src": "4270:8:32", - "type": "" - }, - { - "name": "value3_1", - "nodeType": "YulTypedName", - "src": "4280:8:32", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "4361:18:32", - "value": { - "name": "value2_1", - "nodeType": "YulIdentifier", - "src": "4371:8:32" - }, - "variableNames": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "4361:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "4388:18:32", - "value": { - "name": "value3_1", - "nodeType": "YulIdentifier", - "src": "4398:8:32" - }, - "variableNames": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "4388:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "4415:48:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4448:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4459:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4444:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4444:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "4431:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "4431:32:32" - }, - "variables": [ - { - "name": "offset_2", - "nodeType": "YulTypedName", - "src": "4419:8:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4492:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4501:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4504:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "4494:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4494:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4494:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_2", - "nodeType": "YulIdentifier", - "src": "4478:8:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "4488:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "4475:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "4475:16:32" - }, - "nodeType": "YulIf", - "src": "4472:36:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "4517:86:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4573:9:32" - }, - { - "name": "offset_2", - "nodeType": "YulIdentifier", - "src": "4584:8:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4569:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4569:24:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "4595:7:32" - } - ], - "functionName": { - "name": "abi_decode_bytes_calldata", - "nodeType": "YulIdentifier", - "src": "4543:25:32" - }, - "nodeType": "YulFunctionCall", - "src": "4543:60:32" - }, - "variables": [ - { - "name": "value4_1", - "nodeType": "YulTypedName", - "src": "4521:8:32", - "type": "" - }, - { - "name": "value5_1", - "nodeType": "YulTypedName", - "src": "4531:8:32", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "4612:18:32", - "value": { - "name": "value4_1", - "nodeType": "YulIdentifier", - "src": "4622:8:32" - }, - "variableNames": [ - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "4612:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "4639:18:32", - "value": { - "name": "value5_1", - "nodeType": "YulIdentifier", - "src": "4649:8:32" - }, - "variableNames": [ - { - "name": "value5", - "nodeType": "YulIdentifier", - "src": "4639:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bytes_calldata_ptrt_bytes_calldata_ptrt_bytes_calldata_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "3746:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "3757:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "3769:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "3777:6:32", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "3785:6:32", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "3793:6:32", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "3801:6:32", - "type": "" - }, - { - "name": "value5", - "nodeType": "YulTypedName", - "src": "3809:6:32", - "type": "" - } - ], - "src": "3659:1004:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4789:98:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4806:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4817:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4799:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4799:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4799:21:32" - }, - { - "nodeType": "YulAssignment", - "src": "4829:52:32", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "4854:6:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4866:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4877:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4862:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4862:18:32" - } - ], - "functionName": { - "name": "abi_encode_bytes", - "nodeType": "YulIdentifier", - "src": "4837:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "4837:44:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "4829:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "4758:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "4769:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "4780:4:32", - "type": "" - } - ], - "src": "4668:219:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4998:371:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "5044:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5053:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5056:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "5046:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "5046:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "5046:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "5019:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5028:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "5015:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5015:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5040:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "5011:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5011:32:32" - }, - "nodeType": "YulIf", - "src": "5008:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "5069:37:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5096:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "5083:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "5083:23:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "5073:6:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5149:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5158:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5161:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "5151:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "5151:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "5151:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "5121:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5137:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5141:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "5133:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5133:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5145:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "5129:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5129:18:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "5118:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "5118:30:32" - }, - "nodeType": "YulIf", - "src": "5115:50:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "5174:84:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5230:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "5241:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5226:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5226:22:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "5250:7:32" - } - ], - "functionName": { - "name": "abi_decode_bytes_calldata", - "nodeType": "YulIdentifier", - "src": "5200:25:32" - }, - "nodeType": "YulFunctionCall", - "src": "5200:58:32" - }, - "variables": [ - { - "name": "value0_1", - "nodeType": "YulTypedName", - "src": "5178:8:32", - "type": "" - }, - { - "name": "value1_1", - "nodeType": "YulTypedName", - "src": "5188:8:32", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "5267:18:32", - "value": { - "name": "value0_1", - "nodeType": "YulIdentifier", - "src": "5277:8:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "5267:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "5294:18:32", - "value": { - "name": "value1_1", - "nodeType": "YulIdentifier", - "src": "5304:8:32" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "5294:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "5321:42:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5348:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5359:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5344:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5344:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "5331:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "5331:32:32" - }, - "variableNames": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "5321:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_string_calldata_ptrt_int256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "4948:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "4959:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "4971:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "4979:6:32", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "4987:6:32", - "type": "" - } - ], - "src": "4892:477:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5480:371:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "5526:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5535:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5538:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "5528:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "5528:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "5528:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "5501:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5510:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "5497:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5497:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5522:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "5493:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5493:32:32" - }, - "nodeType": "YulIf", - "src": "5490:52:32" - }, - { - "nodeType": "YulAssignment", - "src": "5551:33:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5574:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "5561:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "5561:23:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "5551:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "5593:46:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5624:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5635:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5620:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5620:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "5607:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "5607:32:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "5597:6:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5682:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5691:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5694:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "5684:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "5684:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "5684:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "5654:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5670:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5674:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "5666:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5666:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5678:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "5662:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5662:18:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "5651:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "5651:30:32" - }, - "nodeType": "YulIf", - "src": "5648:50:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "5707:84:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5763:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "5774:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5759:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5759:22:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "5783:7:32" - } - ], - "functionName": { - "name": "abi_decode_bytes_calldata", - "nodeType": "YulIdentifier", - "src": "5733:25:32" - }, - "nodeType": "YulFunctionCall", - "src": "5733:58:32" - }, - "variables": [ - { - "name": "value1_1", - "nodeType": "YulTypedName", - "src": "5711:8:32", - "type": "" - }, - { - "name": "value2_1", - "nodeType": "YulTypedName", - "src": "5721:8:32", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "5800:18:32", - "value": { - "name": "value1_1", - "nodeType": "YulIdentifier", - "src": "5810:8:32" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "5800:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "5827:18:32", - "value": { - "name": "value2_1", - "nodeType": "YulIdentifier", - "src": "5837:8:32" - }, - "variableNames": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "5827:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_int256t_string_calldata_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "5430:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "5441:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "5453:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "5461:6:32", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "5469:6:32", - "type": "" - } - ], - "src": "5374:477:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5888:95:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5905:1:32", - "type": "", - "value": "0" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5912:3:32", - "type": "", - "value": "224" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5917:10:32", - "type": "", - "value": "0x4e487b71" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "5908:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5908:20:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5898:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "5898:31:32" - }, - "nodeType": "YulExpressionStatement", - "src": "5898:31:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5945:1:32", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5948:4:32", - "type": "", - "value": "0x41" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5938:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "5938:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "5938:15:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5969:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5972:4:32", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "5962:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "5962:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "5962:15:32" - } - ] - }, - "name": "panic_error_0x41", - "nodeType": "YulFunctionDefinition", - "src": "5856:127:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6040:666:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "6089:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6098:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6101:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "6091:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "6091:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "6091:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "6068:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6076:4:32", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6064:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6064:17:32" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "6083:3:32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "6060:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6060:27:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "6053:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "6053:35:32" - }, - "nodeType": "YulIf", - "src": "6050:55:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "6114:30:32", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "6137:6:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "6124:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "6124:20:32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "6118:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "6153:28:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6171:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6175:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "6167:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6167:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6179:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "6163:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6163:18:32" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "6157:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6204:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "6206:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "6206:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "6206:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "6196:2:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "6200:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "6193:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "6193:10:32" - }, - "nodeType": "YulIf", - "src": "6190:36:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "6235:17:32", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6249:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "6245:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6245:7:32" - }, - "variables": [ - { - "name": "_3", - "nodeType": "YulTypedName", - "src": "6239:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "6261:23:32", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6281:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "6275:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "6275:9:32" - }, - "variables": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "6265:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "6293:71:32", - "value": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "6315:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "6339:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6343:4:32", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6335:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6335:13:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "6350:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "6331:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6331:22:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6355:2:32", - "type": "", - "value": "63" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6327:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6327:31:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "6360:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "6323:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6323:40:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6311:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6311:53:32" - }, - "variables": [ - { - "name": "newFreePtr", - "nodeType": "YulTypedName", - "src": "6297:10:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6423:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "6425:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "6425:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "6425:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "6382:10:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "6394:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "6379:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "6379:18:32" - }, - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "6402:10:32" - }, - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "6414:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "6399:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "6399:22:32" - } - ], - "functionName": { - "name": "or", - "nodeType": "YulIdentifier", - "src": "6376:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "6376:46:32" - }, - "nodeType": "YulIf", - "src": "6373:72:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6461:2:32", - "type": "", - "value": "64" - }, - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "6465:10:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "6454:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "6454:22:32" - }, - "nodeType": "YulExpressionStatement", - "src": "6454:22:32" - }, - { - "expression": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "6492:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "6500:2:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "6485:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "6485:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "6485:18:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6551:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6560:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6563:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "6553:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "6553:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "6553:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "6526:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "6534:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6522:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6522:15:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6539:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6518:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6518:26:32" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "6546:3:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "6515:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "6515:35:32" - }, - "nodeType": "YulIf", - "src": "6512:55:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "6593:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6601:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6589:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6589:17:32" - }, - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "6612:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6620:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6608:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6608:17:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "6627:2:32" - } - ], - "functionName": { - "name": "calldatacopy", - "nodeType": "YulIdentifier", - "src": "6576:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "6576:54:32" - }, - "nodeType": "YulExpressionStatement", - "src": "6576:54:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "6654:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "6662:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6650:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6650:15:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6667:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6646:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6646:26:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6674:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "6639:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "6639:37:32" - }, - "nodeType": "YulExpressionStatement", - "src": "6639:37:32" - }, - { - "nodeType": "YulAssignment", - "src": "6685:15:32", - "value": { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "6694:6:32" - }, - "variableNames": [ - { - "name": "array", - "nodeType": "YulIdentifier", - "src": "6685:5:32" - } - ] - } - ] - }, - "name": "abi_decode_bytes", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "6014:6:32", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "6022:3:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "array", - "nodeType": "YulTypedName", - "src": "6030:5:32", - "type": "" - } - ], - "src": "5988:718:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6807:292:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "6853:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6862:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6865:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "6855:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "6855:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "6855:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "6828:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6837:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "6824:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6824:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6849:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "6820:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6820:32:32" - }, - "nodeType": "YulIf", - "src": "6817:52:32" - }, - { - "nodeType": "YulAssignment", - "src": "6878:33:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6901:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "6888:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "6888:23:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "6878:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "6920:46:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6951:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6962:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6947:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6947:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "6934:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "6934:32:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "6924:6:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7009:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7018:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7021:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "7011:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "7011:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "7011:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "6981:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6997:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7001:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "6993:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6993:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7005:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "6989:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6989:18:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "6978:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "6978:30:32" - }, - "nodeType": "YulIf", - "src": "6975:50:32" - }, - { - "nodeType": "YulAssignment", - "src": "7034:59:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7065:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "7076:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7061:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7061:22:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "7085:7:32" - } - ], - "functionName": { - "name": "abi_decode_bytes", - "nodeType": "YulIdentifier", - "src": "7044:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "7044:49:32" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "7034:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_uint256t_bytes_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "6765:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "6776:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "6788:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "6796:6:32", - "type": "" - } - ], - "src": "6711:388:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7188:283:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "7237:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7246:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7249:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "7239:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "7239:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "7239:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "7216:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7224:4:32", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7212:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7212:17:32" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "7231:3:32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "7208:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7208:27:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "7201:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "7201:35:32" - }, - "nodeType": "YulIf", - "src": "7198:55:32" - }, - { - "nodeType": "YulAssignment", - "src": "7262:30:32", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "7285:6:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "7272:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "7272:20:32" - }, - "variableNames": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "7262:6:32" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7335:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7344:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7347:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "7337:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "7337:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "7337:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "7307:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7323:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7327:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "7319:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7319:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7331:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "7315:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7315:18:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "7304:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "7304:30:32" - }, - "nodeType": "YulIf", - "src": "7301:50:32" - }, - { - "nodeType": "YulAssignment", - "src": "7360:29:32", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "7376:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7384:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7372:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7372:17:32" - }, - "variableNames": [ - { - "name": "arrayPos", - "nodeType": "YulIdentifier", - "src": "7360:8:32" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7449:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7458:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7461:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "7451:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "7451:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "7451:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "7412:6:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7424:1:32", - "type": "", - "value": "5" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "7427:6:32" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "7420:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7420:14:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7408:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7408:27:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7437:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7404:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7404:38:32" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "7444:3:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "7401:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "7401:47:32" - }, - "nodeType": "YulIf", - "src": "7398:67:32" - } - ] - }, - "name": "abi_decode_array_bytes32_dyn_calldata", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "7151:6:32", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "7159:3:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "arrayPos", - "nodeType": "YulTypedName", - "src": "7167:8:32", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "7177:6:32", - "type": "" - } - ], - "src": "7104:367:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7632:486:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "7679:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7688:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7691:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "7681:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "7681:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "7681:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "7653:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7662:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "7649:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7649:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7674:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "7645:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7645:33:32" - }, - "nodeType": "YulIf", - "src": "7642:53:32" - }, - { - "nodeType": "YulAssignment", - "src": "7704:33:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7727:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "7714:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "7714:23:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "7704:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "7746:42:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7773:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7784:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7769:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7769:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "7756:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "7756:32:32" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "7746:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "7797:42:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7824:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7835:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7820:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7820:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "7807:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "7807:32:32" - }, - "variableNames": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "7797:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "7848:46:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7879:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7890:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7875:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7875:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "7862:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "7862:32:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "7852:6:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7937:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7946:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7949:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "7939:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "7939:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "7939:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "7909:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7925:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7929:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "7921:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7921:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7933:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "7917:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7917:18:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "7906:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "7906:30:32" - }, - "nodeType": "YulIf", - "src": "7903:50:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "7962:96:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8030:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "8041:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8026:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8026:22:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "8050:7:32" - } - ], - "functionName": { - "name": "abi_decode_array_bytes32_dyn_calldata", - "nodeType": "YulIdentifier", - "src": "7988:37:32" - }, - "nodeType": "YulFunctionCall", - "src": "7988:70:32" - }, - "variables": [ - { - "name": "value3_1", - "nodeType": "YulTypedName", - "src": "7966:8:32", - "type": "" - }, - { - "name": "value4_1", - "nodeType": "YulTypedName", - "src": "7976:8:32", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "8067:18:32", - "value": { - "name": "value3_1", - "nodeType": "YulIdentifier", - "src": "8077:8:32" - }, - "variableNames": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "8067:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "8094:18:32", - "value": { - "name": "value4_1", - "nodeType": "YulIdentifier", - "src": "8104:8:32" - }, - "variableNames": [ - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "8094:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bytes32t_bytes32t_uint256t_array$_t_bytes32_$dyn_calldata_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "7566:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "7577:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "7589:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "7597:6:32", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "7605:6:32", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "7613:6:32", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "7621:6:32", - "type": "" - } - ], - "src": "7476:642:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8180:124:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "8190:29:32", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "8212:6:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "8199:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "8199:20:32" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "8190:5:32" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8282:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8291:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8294:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "8284:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "8284:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "8284:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "8241:5:32" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "8252:5:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8267:3:32", - "type": "", - "value": "160" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8272:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "8263:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8263:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8276:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "8259:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8259:19:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "8248:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8248:31:32" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "8238:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "8238:42:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "8231:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "8231:50:32" - }, - "nodeType": "YulIf", - "src": "8228:70:32" - } - ] - }, - "name": "abi_decode_address_payable", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "8159:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "8170:5:32", - "type": "" - } - ], - "src": "8123:181:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8355:114:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "8365:29:32", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "8387:6:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "8374:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "8374:20:32" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "8365:5:32" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8447:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8456:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8459:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "8449:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "8449:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "8449:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "8416:5:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "8437:5:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "8430:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "8430:13:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "8423:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "8423:21:32" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "8413:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "8413:32:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "8406:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "8406:40:32" - }, - "nodeType": "YulIf", - "src": "8403:60:32" - } - ] - }, - "name": "abi_decode_bool", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "8334:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "8345:5:32", - "type": "" - } - ], - "src": "8309:160:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8704:1004:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "8751:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8760:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8763:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "8753:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "8753:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "8753:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "8725:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8734:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "8721:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8721:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8746:3:32", - "type": "", - "value": "256" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "8717:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8717:33:32" - }, - "nodeType": "YulIf", - "src": "8714:53:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "8776:37:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8803:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "8790:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "8790:23:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "8780:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "8822:28:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8840:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8844:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "8836:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8836:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8848:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "8832:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8832:18:32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "8826:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8877:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8886:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8889:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "8879:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "8879:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "8879:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "8865:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "8873:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "8862:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "8862:14:32" - }, - "nodeType": "YulIf", - "src": "8859:34:32" - }, - { - "nodeType": "YulAssignment", - "src": "8902:59:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8933:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "8944:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8929:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8929:22:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "8953:7:32" - } - ], - "functionName": { - "name": "abi_decode_bytes", - "nodeType": "YulIdentifier", - "src": "8912:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "8912:49:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "8902:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "8970:42:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8997:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9008:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8993:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8993:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "8980:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "8980:32:32" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "8970:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "9021:48:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9054:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9065:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9050:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9050:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "9037:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "9037:32:32" - }, - "variables": [ - { - "name": "offset_1", - "nodeType": "YulTypedName", - "src": "9025:8:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9098:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9107:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9110:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "9100:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "9100:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "9100:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "9084:8:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "9094:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "9081:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "9081:16:32" - }, - "nodeType": "YulIf", - "src": "9078:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "9123:61:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9154:9:32" - }, - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "9165:8:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9150:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9150:24:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "9176:7:32" - } - ], - "functionName": { - "name": "abi_decode_bytes", - "nodeType": "YulIdentifier", - "src": "9133:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "9133:51:32" - }, - "variableNames": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "9123:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "9193:42:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9220:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9231:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9216:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9216:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "9203:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "9203:32:32" - }, - "variableNames": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "9193:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "9244:49:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9277:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9288:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9273:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9273:19:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "9260:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "9260:33:32" - }, - "variables": [ - { - "name": "offset_2", - "nodeType": "YulTypedName", - "src": "9248:8:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9322:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9331:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9334:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "9324:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "9324:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "9324:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_2", - "nodeType": "YulIdentifier", - "src": "9308:8:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "9318:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "9305:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "9305:16:32" - }, - "nodeType": "YulIf", - "src": "9302:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "9347:61:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9378:9:32" - }, - { - "name": "offset_2", - "nodeType": "YulIdentifier", - "src": "9389:8:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9374:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9374:24:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "9400:7:32" - } - ], - "functionName": { - "name": "abi_decode_bytes", - "nodeType": "YulIdentifier", - "src": "9357:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "9357:51:32" - }, - "variableNames": [ - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "9347:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "9417:57:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9458:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9469:3:32", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9454:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9454:19:32" - } - ], - "functionName": { - "name": "abi_decode_address_payable", - "nodeType": "YulIdentifier", - "src": "9427:26:32" - }, - "nodeType": "YulFunctionCall", - "src": "9427:47:32" - }, - "variableNames": [ - { - "name": "value5", - "nodeType": "YulIdentifier", - "src": "9417:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "9483:49:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9516:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9527:3:32", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9512:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9512:19:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "9499:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "9499:33:32" - }, - "variables": [ - { - "name": "offset_3", - "nodeType": "YulTypedName", - "src": "9487:8:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9561:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9570:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9573:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "9563:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "9563:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "9563:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_3", - "nodeType": "YulIdentifier", - "src": "9547:8:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "9557:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "9544:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "9544:16:32" - }, - "nodeType": "YulIf", - "src": "9541:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "9586:61:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9617:9:32" - }, - { - "name": "offset_3", - "nodeType": "YulIdentifier", - "src": "9628:8:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9613:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9613:24:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "9639:7:32" - } - ], - "functionName": { - "name": "abi_decode_bytes", - "nodeType": "YulIdentifier", - "src": "9596:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "9596:51:32" - }, - "variableNames": [ - { - "name": "value6", - "nodeType": "YulIdentifier", - "src": "9586:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "9656:46:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9686:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9697:3:32", - "type": "", - "value": "224" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9682:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9682:19:32" - } - ], - "functionName": { - "name": "abi_decode_bool", - "nodeType": "YulIdentifier", - "src": "9666:15:32" - }, - "nodeType": "YulFunctionCall", - "src": "9666:36:32" - }, - "variableNames": [ - { - "name": "value7", - "nodeType": "YulIdentifier", - "src": "9656:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bytes_memory_ptrt_uint256t_bytes_memory_ptrt_bytes32t_bytes_memory_ptrt_address_payablet_bytes_memory_ptrt_bool", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "8614:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "8625:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "8637:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "8645:6:32", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "8653:6:32", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "8661:6:32", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "8669:6:32", - "type": "" - }, - { - "name": "value5", - "nodeType": "YulTypedName", - "src": "8677:6:32", - "type": "" - }, - { - "name": "value6", - "nodeType": "YulTypedName", - "src": "8685:6:32", - "type": "" - }, - { - "name": "value7", - "nodeType": "YulTypedName", - "src": "8693:6:32", - "type": "" - } - ], - "src": "8474:1234:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9810:91:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "9820:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9832:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9843:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9828:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9828:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "9820:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9862:9:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9884:1:32", - "type": "", - "value": "7" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "9887:6:32" - } - ], - "functionName": { - "name": "signextend", - "nodeType": "YulIdentifier", - "src": "9873:10:32" - }, - "nodeType": "YulFunctionCall", - "src": "9873:21:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "9855:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "9855:40:32" - }, - "nodeType": "YulExpressionStatement", - "src": "9855:40:32" - } - ] - }, - "name": "abi_encode_tuple_t_int64__to_t_int64__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "9779:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "9790:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "9801:4:32", - "type": "" - } - ], - "src": "9713:188:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9976:110:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "10022:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10031:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10034:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "10024:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "10024:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "10024:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "9997:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10006:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "9993:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9993:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10018:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "9989:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9989:32:32" - }, - "nodeType": "YulIf", - "src": "9986:52:32" - }, - { - "nodeType": "YulAssignment", - "src": "10047:33:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10070:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "10057:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "10057:23:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "10047:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "9942:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "9953:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "9965:6:32", - "type": "" - } - ], - "src": "9906:180:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10267:747:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "10314:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10323:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10326:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "10316:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "10316:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "10316:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "10288:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10297:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "10284:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10284:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10309:3:32", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "10280:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10280:33:32" - }, - "nodeType": "YulIf", - "src": "10277:53:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "10339:37:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10366:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "10353:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "10353:23:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "10343:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "10385:28:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10403:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10407:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "10399:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10399:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10411:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "10395:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10395:18:32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "10389:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10440:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10449:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10452:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "10442:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "10442:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "10442:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "10428:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "10436:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "10425:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "10425:14:32" - }, - "nodeType": "YulIf", - "src": "10422:34:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "10465:84:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10521:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "10532:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10517:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10517:22:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "10541:7:32" - } - ], - "functionName": { - "name": "abi_decode_bytes_calldata", - "nodeType": "YulIdentifier", - "src": "10491:25:32" - }, - "nodeType": "YulFunctionCall", - "src": "10491:58:32" - }, - "variables": [ - { - "name": "value0_1", - "nodeType": "YulTypedName", - "src": "10469:8:32", - "type": "" - }, - { - "name": "value1_1", - "nodeType": "YulTypedName", - "src": "10479:8:32", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "10558:18:32", - "value": { - "name": "value0_1", - "nodeType": "YulIdentifier", - "src": "10568:8:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "10558:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "10585:18:32", - "value": { - "name": "value1_1", - "nodeType": "YulIdentifier", - "src": "10595:8:32" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "10585:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "10612:42:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10639:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10650:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10635:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10635:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "10622:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "10622:32:32" - }, - "variableNames": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "10612:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "10663:48:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10696:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10707:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10692:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10692:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "10679:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "10679:32:32" - }, - "variables": [ - { - "name": "offset_1", - "nodeType": "YulTypedName", - "src": "10667:8:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10740:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10749:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10752:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "10742:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "10742:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "10742:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "10726:8:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "10736:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "10723:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "10723:16:32" - }, - "nodeType": "YulIf", - "src": "10720:36:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "10765:86:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10821:9:32" - }, - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "10832:8:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10817:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10817:24:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "10843:7:32" - } - ], - "functionName": { - "name": "abi_decode_bytes_calldata", - "nodeType": "YulIdentifier", - "src": "10791:25:32" - }, - "nodeType": "YulFunctionCall", - "src": "10791:60:32" - }, - "variables": [ - { - "name": "value3_1", - "nodeType": "YulTypedName", - "src": "10769:8:32", - "type": "" - }, - { - "name": "value4_1", - "nodeType": "YulTypedName", - "src": "10779:8:32", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "10860:18:32", - "value": { - "name": "value3_1", - "nodeType": "YulIdentifier", - "src": "10870:8:32" - }, - "variableNames": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "10860:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "10887:18:32", - "value": { - "name": "value4_1", - "nodeType": "YulIdentifier", - "src": "10897:8:32" - }, - "variableNames": [ - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "10887:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "10914:42:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10941:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10952:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10937:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10937:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "10924:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "10924:32:32" - }, - "variableNames": [ - { - "name": "value5", - "nodeType": "YulIdentifier", - "src": "10914:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "10965:43:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10992:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11003:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10988:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10988:19:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "10975:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "10975:33:32" - }, - "variableNames": [ - { - "name": "value6", - "nodeType": "YulIdentifier", - "src": "10965:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bytes_calldata_ptrt_bytes32t_bytes_calldata_ptrt_bytes32t_bytes32", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "10185:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "10196:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "10208:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "10216:6:32", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "10224:6:32", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "10232:6:32", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "10240:6:32", - "type": "" - }, - { - "name": "value5", - "nodeType": "YulTypedName", - "src": "10248:6:32", - "type": "" - }, - { - "name": "value6", - "nodeType": "YulTypedName", - "src": "10256:6:32", - "type": "" - } - ], - "src": "10091:923:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "11115:292:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "11161:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11170:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11173:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "11163:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "11163:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "11163:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "11136:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11145:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "11132:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11132:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11157:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "11128:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11128:32:32" - }, - "nodeType": "YulIf", - "src": "11125:52:32" - }, - { - "nodeType": "YulAssignment", - "src": "11186:33:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11209:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "11196:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "11196:23:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "11186:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "11228:46:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11259:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11270:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11255:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11255:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "11242:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "11242:32:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "11232:6:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "11317:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11326:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11329:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "11319:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "11319:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "11319:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "11289:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11305:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11309:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "11301:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11301:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11313:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "11297:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11297:18:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "11286:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "11286:30:32" - }, - "nodeType": "YulIf", - "src": "11283:50:32" - }, - { - "nodeType": "YulAssignment", - "src": "11342:59:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11373:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "11384:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11369:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11369:22:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "11393:7:32" - } - ], - "functionName": { - "name": "abi_decode_bytes", - "nodeType": "YulIdentifier", - "src": "11352:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "11352:49:32" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "11342:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bytes32t_bytes_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "11073:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "11084:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "11096:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "11104:6:32", - "type": "" - } - ], - "src": "11019:388:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "11528:332:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "11574:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11583:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11586:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "11576:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "11576:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "11576:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "11549:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11558:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "11545:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11545:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11570:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "11541:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11541:32:32" - }, - "nodeType": "YulIf", - "src": "11538:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "11599:37:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11626:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "11613:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "11613:23:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "11603:6:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "11679:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11688:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11691:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "11681:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "11681:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "11681:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "11651:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11667:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11671:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "11663:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11663:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11675:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "11659:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11659:18:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "11648:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "11648:30:32" - }, - "nodeType": "YulIf", - "src": "11645:50:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "11704:96:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11772:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "11783:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11768:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11768:22:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "11792:7:32" - } - ], - "functionName": { - "name": "abi_decode_array_bytes32_dyn_calldata", - "nodeType": "YulIdentifier", - "src": "11730:37:32" - }, - "nodeType": "YulFunctionCall", - "src": "11730:70:32" - }, - "variables": [ - { - "name": "value0_1", - "nodeType": "YulTypedName", - "src": "11708:8:32", - "type": "" - }, - { - "name": "value1_1", - "nodeType": "YulTypedName", - "src": "11718:8:32", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "11809:18:32", - "value": { - "name": "value0_1", - "nodeType": "YulIdentifier", - "src": "11819:8:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "11809:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "11836:18:32", - "value": { - "name": "value1_1", - "nodeType": "YulIdentifier", - "src": "11846:8:32" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "11836:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "11486:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "11497:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "11509:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "11517:6:32", - "type": "" - } - ], - "src": "11412:448:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12053:855:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "12099:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12108:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12111:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "12101:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "12101:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "12101:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "12074:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12083:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "12070:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12070:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12095:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "12066:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12066:32:32" - }, - "nodeType": "YulIf", - "src": "12063:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "12124:37:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12151:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "12138:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "12138:23:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "12128:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "12170:28:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12188:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12192:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "12184:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12184:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12196:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "12180:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12180:18:32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "12174:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12225:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12234:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12237:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "12227:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "12227:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "12227:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "12213:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "12221:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "12210:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "12210:14:32" - }, - "nodeType": "YulIf", - "src": "12207:34:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "12250:84:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12306:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "12317:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12302:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12302:22:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "12326:7:32" - } - ], - "functionName": { - "name": "abi_decode_bytes_calldata", - "nodeType": "YulIdentifier", - "src": "12276:25:32" - }, - "nodeType": "YulFunctionCall", - "src": "12276:58:32" - }, - "variables": [ - { - "name": "value0_1", - "nodeType": "YulTypedName", - "src": "12254:8:32", - "type": "" - }, - { - "name": "value1_1", - "nodeType": "YulTypedName", - "src": "12264:8:32", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "12343:18:32", - "value": { - "name": "value0_1", - "nodeType": "YulIdentifier", - "src": "12353:8:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "12343:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "12370:18:32", - "value": { - "name": "value1_1", - "nodeType": "YulIdentifier", - "src": "12380:8:32" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "12370:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "12397:48:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12430:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12441:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12426:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12426:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "12413:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "12413:32:32" - }, - "variables": [ - { - "name": "offset_1", - "nodeType": "YulTypedName", - "src": "12401:8:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12474:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12483:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12486:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "12476:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "12476:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "12476:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "12460:8:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "12470:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "12457:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "12457:16:32" - }, - "nodeType": "YulIf", - "src": "12454:36:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "12499:98:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12567:9:32" - }, - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "12578:8:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12563:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12563:24:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "12589:7:32" - } - ], - "functionName": { - "name": "abi_decode_array_bytes32_dyn_calldata", - "nodeType": "YulIdentifier", - "src": "12525:37:32" - }, - "nodeType": "YulFunctionCall", - "src": "12525:72:32" - }, - "variables": [ - { - "name": "value2_1", - "nodeType": "YulTypedName", - "src": "12503:8:32", - "type": "" - }, - { - "name": "value3_1", - "nodeType": "YulTypedName", - "src": "12513:8:32", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "12606:18:32", - "value": { - "name": "value2_1", - "nodeType": "YulIdentifier", - "src": "12616:8:32" - }, - "variableNames": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "12606:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "12633:18:32", - "value": { - "name": "value3_1", - "nodeType": "YulIdentifier", - "src": "12643:8:32" - }, - "variableNames": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "12633:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "12660:48:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12693:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12704:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12689:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12689:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "12676:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "12676:32:32" - }, - "variables": [ - { - "name": "offset_2", - "nodeType": "YulTypedName", - "src": "12664:8:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12737:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12746:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12749:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "12739:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "12739:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "12739:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_2", - "nodeType": "YulIdentifier", - "src": "12723:8:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "12733:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "12720:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "12720:16:32" - }, - "nodeType": "YulIf", - "src": "12717:36:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "12762:86:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12818:9:32" - }, - { - "name": "offset_2", - "nodeType": "YulIdentifier", - "src": "12829:8:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12814:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12814:24:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "12840:7:32" - } - ], - "functionName": { - "name": "abi_decode_bytes_calldata", - "nodeType": "YulIdentifier", - "src": "12788:25:32" - }, - "nodeType": "YulFunctionCall", - "src": "12788:60:32" - }, - "variables": [ - { - "name": "value4_1", - "nodeType": "YulTypedName", - "src": "12766:8:32", - "type": "" - }, - { - "name": "value5_1", - "nodeType": "YulTypedName", - "src": "12776:8:32", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "12857:18:32", - "value": { - "name": "value4_1", - "nodeType": "YulIdentifier", - "src": "12867:8:32" - }, - "variableNames": [ - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "12857:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "12884:18:32", - "value": { - "name": "value5_1", - "nodeType": "YulIdentifier", - "src": "12894:8:32" - }, - "variableNames": [ - { - "name": "value5", - "nodeType": "YulIdentifier", - "src": "12884:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bytes_calldata_ptrt_array$_t_bytes_calldata_ptr_$dyn_calldata_ptrt_bytes_calldata_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "11979:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "11990:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "12002:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "12010:6:32", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "12018:6:32", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "12026:6:32", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "12034:6:32", - "type": "" - }, - { - "name": "value5", - "nodeType": "YulTypedName", - "src": "12042:6:32", - "type": "" - } - ], - "src": "11865:1043:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "13142:468:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "13152:27:32", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "13172:6:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "13166:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "13166:13:32" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "13156:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "13227:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13235:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13223:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13223:17:32" - }, - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "13242:3:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "13247:6:32" - } - ], - "functionName": { - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulIdentifier", - "src": "13188:34:32" - }, - "nodeType": "YulFunctionCall", - "src": "13188:66:32" - }, - "nodeType": "YulExpressionStatement", - "src": "13188:66:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "13263:29:32", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "13280:3:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "13285:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13276:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13276:16:32" - }, - "variables": [ - { - "name": "end_1", - "nodeType": "YulTypedName", - "src": "13267:5:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "13301:29:32", - "value": { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "13323:6:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "13317:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "13317:13:32" - }, - "variables": [ - { - "name": "length_1", - "nodeType": "YulTypedName", - "src": "13305:8:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "13378:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13386:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13374:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13374:17:32" - }, - { - "name": "end_1", - "nodeType": "YulIdentifier", - "src": "13393:5:32" - }, - { - "name": "length_1", - "nodeType": "YulIdentifier", - "src": "13400:8:32" - } - ], - "functionName": { - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulIdentifier", - "src": "13339:34:32" - }, - "nodeType": "YulFunctionCall", - "src": "13339:70:32" - }, - "nodeType": "YulExpressionStatement", - "src": "13339:70:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "13418:33:32", - "value": { - "arguments": [ - { - "name": "end_1", - "nodeType": "YulIdentifier", - "src": "13435:5:32" - }, - { - "name": "length_1", - "nodeType": "YulIdentifier", - "src": "13442:8:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13431:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13431:20:32" - }, - "variables": [ - { - "name": "end_2", - "nodeType": "YulTypedName", - "src": "13422:5:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "13460:29:32", - "value": { - "arguments": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "13482:6:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "13476:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "13476:13:32" - }, - "variables": [ - { - "name": "length_2", - "nodeType": "YulTypedName", - "src": "13464:8:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "13537:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13545:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13533:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13533:17:32" - }, - { - "name": "end_2", - "nodeType": "YulIdentifier", - "src": "13552:5:32" - }, - { - "name": "length_2", - "nodeType": "YulIdentifier", - "src": "13559:8:32" - } - ], - "functionName": { - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulIdentifier", - "src": "13498:34:32" - }, - "nodeType": "YulFunctionCall", - "src": "13498:70:32" - }, - "nodeType": "YulExpressionStatement", - "src": "13498:70:32" - }, - { - "nodeType": "YulAssignment", - "src": "13577:27:32", - "value": { - "arguments": [ - { - "name": "end_2", - "nodeType": "YulIdentifier", - "src": "13588:5:32" - }, - { - "name": "length_2", - "nodeType": "YulIdentifier", - "src": "13595:8:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13584:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13584:20:32" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "13577:3:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_packed_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr__to_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "13102:3:32", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "13107:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "13115:6:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "13123:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "13134:3:32", - "type": "" - } - ], - "src": "12913:697:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "13670:325:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "13680:22:32", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13694:1:32", - "type": "", - "value": "1" - }, - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "13697:4:32" - } - ], - "functionName": { - "name": "shr", - "nodeType": "YulIdentifier", - "src": "13690:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13690:12:32" - }, - "variableNames": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "13680:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "13711:38:32", - "value": { - "arguments": [ - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "13741:4:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13747:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "13737:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13737:12:32" - }, - "variables": [ - { - "name": "outOfPlaceEncoding", - "nodeType": "YulTypedName", - "src": "13715:18:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "13788:31:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "13790:27:32", - "value": { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "13804:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13812:4:32", - "type": "", - "value": "0x7f" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "13800:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13800:17:32" - }, - "variableNames": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "13790:6:32" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "outOfPlaceEncoding", - "nodeType": "YulIdentifier", - "src": "13768:18:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "13761:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "13761:26:32" - }, - "nodeType": "YulIf", - "src": "13758:61:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "13878:111:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13899:1:32", - "type": "", - "value": "0" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13906:3:32", - "type": "", - "value": "224" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13911:10:32", - "type": "", - "value": "0x4e487b71" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "13902:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13902:20:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13892:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "13892:31:32" - }, - "nodeType": "YulExpressionStatement", - "src": "13892:31:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13943:1:32", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13946:4:32", - "type": "", - "value": "0x22" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13936:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "13936:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "13936:15:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13971:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13974:4:32", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "13964:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "13964:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "13964:15:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "outOfPlaceEncoding", - "nodeType": "YulIdentifier", - "src": "13834:18:32" - }, - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "13857:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13865:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "13854:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "13854:14:32" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "13831:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "13831:38:32" - }, - "nodeType": "YulIf", - "src": "13828:161:32" - } - ] - }, - "name": "extract_byte_array_length", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "data", - "nodeType": "YulTypedName", - "src": "13650:4:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "13659:6:32", - "type": "" - } - ], - "src": "13615:380:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "14055:65:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14072:1:32", - "type": "", - "value": "0" - }, - { - "name": "ptr", - "nodeType": "YulIdentifier", - "src": "14075:3:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "14065:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "14065:14:32" - }, - "nodeType": "YulExpressionStatement", - "src": "14065:14:32" - }, - { - "nodeType": "YulAssignment", - "src": "14088:26:32", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14106:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14109:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "keccak256", - "nodeType": "YulIdentifier", - "src": "14096:9:32" - }, - "nodeType": "YulFunctionCall", - "src": "14096:18:32" - }, - "variableNames": [ - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "14088:4:32" - } - ] - } - ] - }, - "name": "array_dataslot_bytes_storage", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "ptr", - "nodeType": "YulTypedName", - "src": "14038:3:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "data", - "nodeType": "YulTypedName", - "src": "14046:4:32", - "type": "" - } - ], - "src": "14000:120:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "14205:464:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "14238:425:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "14252:11:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14262:1:32", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "14256:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "14283:2:32" - }, - { - "name": "array", - "nodeType": "YulIdentifier", - "src": "14287:5:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "14276:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "14276:17:32" - }, - "nodeType": "YulExpressionStatement", - "src": "14276:17:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "14306:31:32", - "value": { - "arguments": [ - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "14328:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14332:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "keccak256", - "nodeType": "YulIdentifier", - "src": "14318:9:32" - }, - "nodeType": "YulFunctionCall", - "src": "14318:19:32" - }, - "variables": [ - { - "name": "data", - "nodeType": "YulTypedName", - "src": "14310:4:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "14350:57:32", - "value": { - "arguments": [ - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "14373:4:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14383:1:32", - "type": "", - "value": "5" - }, - { - "arguments": [ - { - "name": "startIndex", - "nodeType": "YulIdentifier", - "src": "14390:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14402:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14386:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14386:19:32" - } - ], - "functionName": { - "name": "shr", - "nodeType": "YulIdentifier", - "src": "14379:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14379:27:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14369:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14369:38:32" - }, - "variables": [ - { - "name": "deleteStart", - "nodeType": "YulTypedName", - "src": "14354:11:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "14444:23:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "14446:19:32", - "value": { - "name": "data", - "nodeType": "YulIdentifier", - "src": "14461:4:32" - }, - "variableNames": [ - { - "name": "deleteStart", - "nodeType": "YulIdentifier", - "src": "14446:11:32" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "startIndex", - "nodeType": "YulIdentifier", - "src": "14426:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14438:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "14423:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "14423:20:32" - }, - "nodeType": "YulIf", - "src": "14420:47:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "14480:41:32", - "value": { - "arguments": [ - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "14494:4:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14504:1:32", - "type": "", - "value": "5" - }, - { - "arguments": [ - { - "name": "len", - "nodeType": "YulIdentifier", - "src": "14511:3:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14516:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14507:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14507:12:32" - } - ], - "functionName": { - "name": "shr", - "nodeType": "YulIdentifier", - "src": "14500:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14500:20:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14490:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14490:31:32" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "14484:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "14534:24:32", - "value": { - "name": "deleteStart", - "nodeType": "YulIdentifier", - "src": "14547:11:32" - }, - "variables": [ - { - "name": "start", - "nodeType": "YulTypedName", - "src": "14538:5:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "14632:21:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "start", - "nodeType": "YulIdentifier", - "src": "14641:5:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "14648:2:32" - } - ], - "functionName": { - "name": "sstore", - "nodeType": "YulIdentifier", - "src": "14634:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "14634:17:32" - }, - "nodeType": "YulExpressionStatement", - "src": "14634:17:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "start", - "nodeType": "YulIdentifier", - "src": "14582:5:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "14589:2:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "14579:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "14579:13:32" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "14593:26:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "14595:22:32", - "value": { - "arguments": [ - { - "name": "start", - "nodeType": "YulIdentifier", - "src": "14608:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14615:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14604:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14604:13:32" - }, - "variableNames": [ - { - "name": "start", - "nodeType": "YulIdentifier", - "src": "14595:5:32" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "14575:3:32", - "statements": [] - }, - "src": "14571:82:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "len", - "nodeType": "YulIdentifier", - "src": "14221:3:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14226:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "14218:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "14218:11:32" - }, - "nodeType": "YulIf", - "src": "14215:448:32" - } - ] - }, - "name": "clean_up_bytearray_end_slots_bytes_storage", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "array", - "nodeType": "YulTypedName", - "src": "14177:5:32", - "type": "" - }, - { - "name": "len", - "nodeType": "YulTypedName", - "src": "14184:3:32", - "type": "" - }, - { - "name": "startIndex", - "nodeType": "YulTypedName", - "src": "14189:10:32", - "type": "" - } - ], - "src": "14125:544:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "14759:81:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "14769:65:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "14784:4:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14802:1:32", - "type": "", - "value": "3" - }, - { - "name": "len", - "nodeType": "YulIdentifier", - "src": "14805:3:32" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "14798:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14798:11:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14815:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "14811:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14811:6:32" - } - ], - "functionName": { - "name": "shr", - "nodeType": "YulIdentifier", - "src": "14794:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14794:24:32" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "14790:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14790:29:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "14780:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14780:40:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14826:1:32", - "type": "", - "value": "1" - }, - { - "name": "len", - "nodeType": "YulIdentifier", - "src": "14829:3:32" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "14822:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14822:11:32" - } - ], - "functionName": { - "name": "or", - "nodeType": "YulIdentifier", - "src": "14777:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "14777:57:32" - }, - "variableNames": [ - { - "name": "used", - "nodeType": "YulIdentifier", - "src": "14769:4:32" - } - ] - } - ] - }, - "name": "extract_used_part_and_set_length_of_short_byte_array", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "data", - "nodeType": "YulTypedName", - "src": "14736:4:32", - "type": "" - }, - { - "name": "len", - "nodeType": "YulTypedName", - "src": "14742:3:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "used", - "nodeType": "YulTypedName", - "src": "14750:4:32", - "type": "" - } - ], - "src": "14674:166:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "14939:1254:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "14949:24:32", - "value": { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "14969:3:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "14963:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "14963:10:32" - }, - "variables": [ - { - "name": "newLen", - "nodeType": "YulTypedName", - "src": "14953:6:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "15016:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "15018:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "15018:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "15018:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "14988:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15004:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15008:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "15000:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15000:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15012:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "14996:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14996:18:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "14985:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "14985:30:32" - }, - "nodeType": "YulIf", - "src": "14982:56:32" - }, - { - "expression": { - "arguments": [ - { - "name": "slot", - "nodeType": "YulIdentifier", - "src": "15090:4:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "slot", - "nodeType": "YulIdentifier", - "src": "15128:4:32" - } - ], - "functionName": { - "name": "sload", - "nodeType": "YulIdentifier", - "src": "15122:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "15122:11:32" - } - ], - "functionName": { - "name": "extract_byte_array_length", - "nodeType": "YulIdentifier", - "src": "15096:25:32" - }, - "nodeType": "YulFunctionCall", - "src": "15096:38:32" - }, - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "15136:6:32" - } - ], - "functionName": { - "name": "clean_up_bytearray_end_slots_bytes_storage", - "nodeType": "YulIdentifier", - "src": "15047:42:32" - }, - "nodeType": "YulFunctionCall", - "src": "15047:96:32" - }, - "nodeType": "YulExpressionStatement", - "src": "15047:96:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "15152:18:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15169:1:32", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "srcOffset", - "nodeType": "YulTypedName", - "src": "15156:9:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "15179:23:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15198:4:32", - "type": "", - "value": "0x20" - }, - "variables": [ - { - "name": "srcOffset_1", - "nodeType": "YulTypedName", - "src": "15183:11:32", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "15211:24:32", - "value": { - "name": "srcOffset_1", - "nodeType": "YulIdentifier", - "src": "15224:11:32" - }, - "variableNames": [ - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "15211:9:32" - } - ] - }, - { - "cases": [ - { - "body": { - "nodeType": "YulBlock", - "src": "15281:655:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "15295:35:32", - "value": { - "arguments": [ - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "15314:6:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15326:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "15322:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15322:7:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "15310:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15310:20:32" - }, - "variables": [ - { - "name": "loopEnd", - "nodeType": "YulTypedName", - "src": "15299:7:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "15343:48:32", - "value": { - "arguments": [ - { - "name": "slot", - "nodeType": "YulIdentifier", - "src": "15386:4:32" - } - ], - "functionName": { - "name": "array_dataslot_bytes_storage", - "nodeType": "YulIdentifier", - "src": "15357:28:32" - }, - "nodeType": "YulFunctionCall", - "src": "15357:34:32" - }, - "variables": [ - { - "name": "dstPtr", - "nodeType": "YulTypedName", - "src": "15347:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "15404:10:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15413:1:32", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "i", - "nodeType": "YulTypedName", - "src": "15408:1:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "15491:172:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "dstPtr", - "nodeType": "YulIdentifier", - "src": "15516:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "15534:3:32" - }, - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "15539:9:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15530:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15530:19:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "15524:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "15524:26:32" - } - ], - "functionName": { - "name": "sstore", - "nodeType": "YulIdentifier", - "src": "15509:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "15509:42:32" - }, - "nodeType": "YulExpressionStatement", - "src": "15509:42:32" - }, - { - "nodeType": "YulAssignment", - "src": "15568:24:32", - "value": { - "arguments": [ - { - "name": "dstPtr", - "nodeType": "YulIdentifier", - "src": "15582:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15590:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15578:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15578:14:32" - }, - "variableNames": [ - { - "name": "dstPtr", - "nodeType": "YulIdentifier", - "src": "15568:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "15609:40:32", - "value": { - "arguments": [ - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "15626:9:32" - }, - { - "name": "srcOffset_1", - "nodeType": "YulIdentifier", - "src": "15637:11:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15622:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15622:27:32" - }, - "variableNames": [ - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "15609:9:32" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "15438:1:32" - }, - { - "name": "loopEnd", - "nodeType": "YulIdentifier", - "src": "15441:7:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "15435:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "15435:14:32" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "15450:28:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "15452:24:32", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "15461:1:32" - }, - { - "name": "srcOffset_1", - "nodeType": "YulIdentifier", - "src": "15464:11:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15457:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15457:19:32" - }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "15452:1:32" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "15431:3:32", - "statements": [] - }, - "src": "15427:236:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "15711:166:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "15729:43:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "15756:3:32" - }, - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "15761:9:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15752:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15752:19:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "15746:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "15746:26:32" - }, - "variables": [ - { - "name": "lastValue", - "nodeType": "YulTypedName", - "src": "15733:9:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "dstPtr", - "nodeType": "YulIdentifier", - "src": "15796:6:32" - }, - { - "arguments": [ - { - "name": "lastValue", - "nodeType": "YulIdentifier", - "src": "15808:9:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15835:1:32", - "type": "", - "value": "3" - }, - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "15838:6:32" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "15831:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15831:14:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15847:3:32", - "type": "", - "value": "248" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "15827:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15827:24:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15857:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "15853:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15853:6:32" - } - ], - "functionName": { - "name": "shr", - "nodeType": "YulIdentifier", - "src": "15823:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15823:37:32" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "15819:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15819:42:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "15804:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15804:58:32" - } - ], - "functionName": { - "name": "sstore", - "nodeType": "YulIdentifier", - "src": "15789:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "15789:74:32" - }, - "nodeType": "YulExpressionStatement", - "src": "15789:74:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "loopEnd", - "nodeType": "YulIdentifier", - "src": "15682:7:32" - }, - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "15691:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "15679:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "15679:19:32" - }, - "nodeType": "YulIf", - "src": "15676:201:32" - }, - { - "expression": { - "arguments": [ - { - "name": "slot", - "nodeType": "YulIdentifier", - "src": "15897:4:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15911:1:32", - "type": "", - "value": "1" - }, - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "15914:6:32" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "15907:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15907:14:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15923:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15903:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15903:22:32" - } - ], - "functionName": { - "name": "sstore", - "nodeType": "YulIdentifier", - "src": "15890:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "15890:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "15890:36:32" - } - ] - }, - "nodeType": "YulCase", - "src": "15274:662:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15279:1:32", - "type": "", - "value": "1" - } - }, - { - "body": { - "nodeType": "YulBlock", - "src": "15953:234:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "15967:14:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15980:1:32", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "15971:5:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "16016:67:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "16034:35:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "16053:3:32" - }, - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "16058:9:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "16049:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "16049:19:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "16043:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "16043:26:32" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "16034:5:32" - } - ] - } - ] - }, - "condition": { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "15997:6:32" - }, - "nodeType": "YulIf", - "src": "15994:89:32" - }, - { - "expression": { - "arguments": [ - { - "name": "slot", - "nodeType": "YulIdentifier", - "src": "16103:4:32" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "16162:5:32" - }, - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "16169:6:32" - } - ], - "functionName": { - "name": "extract_used_part_and_set_length_of_short_byte_array", - "nodeType": "YulIdentifier", - "src": "16109:52:32" - }, - "nodeType": "YulFunctionCall", - "src": "16109:67:32" - } - ], - "functionName": { - "name": "sstore", - "nodeType": "YulIdentifier", - "src": "16096:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "16096:81:32" - }, - "nodeType": "YulExpressionStatement", - "src": "16096:81:32" - } - ] - }, - "nodeType": "YulCase", - "src": "15945:242:32", - "value": "default" - } - ], - "expression": { - "arguments": [ - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "15254:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15262:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "15251:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "15251:14:32" - }, - "nodeType": "YulSwitch", - "src": "15244:943:32" - } - ] - }, - "name": "copy_byte_array_to_storage_from_t_bytes_memory_ptr_to_t_bytes_storage", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "slot", - "nodeType": "YulTypedName", - "src": "14924:4:32", - "type": "" - }, - { - "name": "src", - "nodeType": "YulTypedName", - "src": "14930:3:32", - "type": "" - } - ], - "src": "14845:1348:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "16389:14:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "16391:10:32", - "value": { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "16398:3:32" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "16391:3:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_packed_t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "16373:3:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "16381:3:32", - "type": "" - } - ], - "src": "16198:205:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "16582:170:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "16599:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16610:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "16592:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "16592:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "16592:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "16633:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16644:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "16629:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "16629:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16649:2:32", - "type": "", - "value": "20" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "16622:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "16622:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "16622:30:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "16672:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16683:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "16668:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "16668:18:32" - }, - { - "hexValue": "53656e64696e672066756e6473206661696c6564", - "kind": "string", - "nodeType": "YulLiteral", - "src": "16688:22:32", - "type": "", - "value": "Sending funds failed" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "16661:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "16661:50:32" - }, - "nodeType": "YulExpressionStatement", - "src": "16661:50:32" - }, - { - "nodeType": "YulAssignment", - "src": "16720:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "16732:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16743:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "16728:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "16728:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "16720:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_5eaf50de5ac7eb5958d1afe53b0b3d8c8f9de1eca637320b2e8c7f3a205ca802__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "16559:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "16573:4:32", - "type": "" - } - ], - "src": "16408:344:32" - } - ] - }, - "contents": "{\n { }\n function abi_decode_tuple_t_int256(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := calldataload(headStart)\n }\n function abi_encode_tuple_t_int256__to_t_int256__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, value0)\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_bytes(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), not(31))), 0x20)\n }\n function abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_reversed(headStart, value0) -> tail\n {\n mstore(headStart, 32)\n tail := abi_encode_bytes(value0, add(headStart, 32))\n }\n function abi_decode_tuple_t_bytes32(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := calldataload(headStart)\n }\n function abi_decode_bytes_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, sub(shl(64, 1), 1)) { 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_bytes_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, sub(shl(64, 1), 1)) { revert(0, 0) }\n let value0_1, value1_1 := abi_decode_bytes_calldata(add(headStart, offset), dataEnd)\n value0 := value0_1\n value1 := value1_1\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_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, sub(shl(64, 1), 1)) { revert(0, 0) }\n let value0_1, value1_1 := abi_decode_bytes_calldata(add(headStart, offset), dataEnd)\n value0 := value0_1\n value1 := value1_1\n }\n function abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, iszero(iszero(value0)))\n }\n function abi_decode_tuple_t_bytes_calldata_ptrt_int256t_bytes_calldata_ptr(headStart, dataEnd) -> value0, value1, value2, value3, value4\n {\n if slt(sub(dataEnd, headStart), 96) { revert(0, 0) }\n let offset := calldataload(headStart)\n let _1 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n let value0_1, value1_1 := abi_decode_bytes_calldata(add(headStart, offset), dataEnd)\n value0 := value0_1\n value1 := value1_1\n value2 := calldataload(add(headStart, 32))\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_bytes_calldata(add(headStart, offset_1), dataEnd)\n value3 := value3_1\n value4 := value4_1\n }\n function abi_decode_tuple_t_bytes_calldata_ptrt_bytes_calldata_ptrt_bytes_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 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n let value0_1, value1_1 := abi_decode_bytes_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_bytes_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_bytes_calldata(add(headStart, offset_2), dataEnd)\n value4 := value4_1\n value5 := value5_1\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_bytes(value0, add(headStart, 32))\n }\n function abi_decode_tuple_t_string_calldata_ptrt_int256(headStart, dataEnd) -> value0, value1, value2\n {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n let offset := calldataload(headStart)\n if gt(offset, sub(shl(64, 1), 1)) { revert(0, 0) }\n let value0_1, value1_1 := abi_decode_bytes_calldata(add(headStart, offset), dataEnd)\n value0 := value0_1\n value1 := value1_1\n value2 := calldataload(add(headStart, 32))\n }\n function abi_decode_tuple_t_int256t_string_calldata_ptr(headStart, dataEnd) -> value0, value1, value2\n {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n value0 := calldataload(headStart)\n let offset := calldataload(add(headStart, 32))\n if gt(offset, sub(shl(64, 1), 1)) { revert(0, 0) }\n let value1_1, value2_1 := abi_decode_bytes_calldata(add(headStart, offset), dataEnd)\n value1 := value1_1\n value2 := value2_1\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_bytes(offset, end) -> array\n {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n let _1 := calldataload(offset)\n let _2 := sub(shl(64, 1), 1)\n if gt(_1, _2) { panic_error_0x41() }\n let _3 := not(31)\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_uint256t_bytes_memory_ptr(headStart, dataEnd) -> value0, value1\n {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n value0 := calldataload(headStart)\n let offset := calldataload(add(headStart, 32))\n if gt(offset, sub(shl(64, 1), 1)) { revert(0, 0) }\n value1 := abi_decode_bytes(add(headStart, offset), dataEnd)\n }\n function abi_decode_array_bytes32_dyn_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, sub(shl(64, 1), 1)) { revert(0, 0) }\n arrayPos := add(offset, 0x20)\n if gt(add(add(offset, shl(5, length)), 0x20), end) { revert(0, 0) }\n }\n function abi_decode_tuple_t_bytes32t_bytes32t_uint256t_array$_t_bytes32_$dyn_calldata_ptr(headStart, dataEnd) -> value0, value1, value2, value3, value4\n {\n if slt(sub(dataEnd, headStart), 128) { revert(0, 0) }\n value0 := calldataload(headStart)\n value1 := calldataload(add(headStart, 32))\n value2 := calldataload(add(headStart, 64))\n let offset := calldataload(add(headStart, 96))\n if gt(offset, sub(shl(64, 1), 1)) { revert(0, 0) }\n let value3_1, value4_1 := abi_decode_array_bytes32_dyn_calldata(add(headStart, offset), dataEnd)\n value3 := value3_1\n value4 := value4_1\n }\n function abi_decode_address_payable(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, sub(shl(160, 1), 1)))) { revert(0, 0) }\n }\n function abi_decode_bool(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, iszero(iszero(value)))) { revert(0, 0) }\n }\n function abi_decode_tuple_t_bytes_memory_ptrt_uint256t_bytes_memory_ptrt_bytes32t_bytes_memory_ptrt_address_payablet_bytes_memory_ptrt_bool(headStart, dataEnd) -> value0, value1, value2, value3, value4, value5, value6, value7\n {\n if slt(sub(dataEnd, headStart), 256) { revert(0, 0) }\n let offset := calldataload(headStart)\n let _1 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n value0 := abi_decode_bytes(add(headStart, offset), dataEnd)\n value1 := calldataload(add(headStart, 32))\n let offset_1 := calldataload(add(headStart, 64))\n if gt(offset_1, _1) { revert(0, 0) }\n value2 := abi_decode_bytes(add(headStart, offset_1), dataEnd)\n value3 := calldataload(add(headStart, 96))\n let offset_2 := calldataload(add(headStart, 128))\n if gt(offset_2, _1) { revert(0, 0) }\n value4 := abi_decode_bytes(add(headStart, offset_2), dataEnd)\n value5 := abi_decode_address_payable(add(headStart, 160))\n let offset_3 := calldataload(add(headStart, 192))\n if gt(offset_3, _1) { revert(0, 0) }\n value6 := abi_decode_bytes(add(headStart, offset_3), dataEnd)\n value7 := abi_decode_bool(add(headStart, 224))\n }\n function abi_encode_tuple_t_int64__to_t_int64__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, signextend(7, value0))\n }\n function abi_decode_tuple_t_uint256(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := calldataload(headStart)\n }\n function abi_decode_tuple_t_bytes_calldata_ptrt_bytes32t_bytes_calldata_ptrt_bytes32t_bytes32(headStart, dataEnd) -> value0, value1, value2, value3, value4, value5, value6\n {\n if slt(sub(dataEnd, headStart), 160) { revert(0, 0) }\n let offset := calldataload(headStart)\n let _1 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n let value0_1, value1_1 := abi_decode_bytes_calldata(add(headStart, offset), dataEnd)\n value0 := value0_1\n value1 := value1_1\n value2 := calldataload(add(headStart, 32))\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_bytes_calldata(add(headStart, offset_1), dataEnd)\n value3 := value3_1\n value4 := value4_1\n value5 := calldataload(add(headStart, 96))\n value6 := calldataload(add(headStart, 128))\n }\n function abi_decode_tuple_t_bytes32t_bytes_memory_ptr(headStart, dataEnd) -> value0, value1\n {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n value0 := calldataload(headStart)\n let offset := calldataload(add(headStart, 32))\n if gt(offset, sub(shl(64, 1), 1)) { revert(0, 0) }\n value1 := abi_decode_bytes(add(headStart, offset), dataEnd)\n }\n function abi_decode_tuple_t_array$_t_bytes_calldata_ptr_$dyn_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, sub(shl(64, 1), 1)) { revert(0, 0) }\n let value0_1, value1_1 := abi_decode_array_bytes32_dyn_calldata(add(headStart, offset), dataEnd)\n value0 := value0_1\n value1 := value1_1\n }\n function abi_decode_tuple_t_bytes_calldata_ptrt_array$_t_bytes_calldata_ptr_$dyn_calldata_ptrt_bytes_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 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n let value0_1, value1_1 := abi_decode_bytes_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_array_bytes32_dyn_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_bytes_calldata(add(headStart, offset_2), dataEnd)\n value4 := value4_1\n value5 := value5_1\n }\n function abi_encode_tuple_packed_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr__to_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value2, value1, value0) -> end\n {\n let length := mload(value0)\n copy_memory_to_memory_with_cleanup(add(value0, 0x20), pos, length)\n let end_1 := add(pos, length)\n let length_1 := mload(value1)\n copy_memory_to_memory_with_cleanup(add(value1, 0x20), end_1, length_1)\n let end_2 := add(end_1, length_1)\n let length_2 := mload(value2)\n copy_memory_to_memory_with_cleanup(add(value2, 0x20), end_2, length_2)\n end := add(end_2, length_2)\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_bytes_storage(ptr) -> data\n {\n mstore(0, ptr)\n data := keccak256(0, 0x20)\n }\n function clean_up_bytearray_end_slots_bytes_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_bytes_memory_ptr_to_t_bytes_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_bytes_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_bytes_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_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos) -> end\n { end := pos }\n function abi_encode_tuple_t_stringliteral_5eaf50de5ac7eb5958d1afe53b0b3d8c8f9de1eca637320b2e8c7f3a205ca802__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), \"Sending funds failed\")\n tail := add(headStart, 96)\n }\n}", - "id": 32, - "language": "Yul", - "name": "#utility.yul" - } - ], - "sourceMap": "82:8500:20:-:0;;;;;;;;;;;;;;;;;;;", - "deployedSourceMap": "82:8500:20:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7043:99;;;;;;;;;;-1:-1:-1;7043:99:20;;;;;:::i;:::-;-1:-1:-1;7115:6:20;;7043:99;;;;342:25:32;;;330:2;315:18;7043:99:20;;;;;;;;4195:105;;;;;;;;;;-1:-1:-1;4273:6:20;4195:105;;7147:52;;;;;;;;;;;;;2097:108;;;;;;;;;;-1:-1:-1;2164:12:20;2097:108;;;;;;;:::i;1046:127::-;;;;;;:::i;:::-;1122:7;:32;;;;;;;;;;1157:9;1122:44;;1046:127;5222:104;;;;;;;;;;-1:-1:-1;5222:104:20;;;;;:::i;:::-;5299:6;5222:104;;;;;1417:455;;;;;;;;;;;;;:::i;2575:110::-;;;;;;;;;;-1:-1:-1;2575:110:20;;;;;:::i;:::-;;;2843:14:32;;2836:22;2818:41;;2806:2;2791:18;2575:110:20;2678:187:32;7872:125:20;;;;;;;;;;-1:-1:-1;7872:125:20;;;;;:::i;7204:95::-;;;;;;;;;;-1:-1:-1;7295:1:20;7204:95;;2860:110;;;;;;;;;;-1:-1:-1;2860:110:20;;;;;:::i;:::-;;;;;;;5057:160;;;;;;;;;;-1:-1:-1;5057:160:20;;;;;:::i;:::-;5190:6;5057:160;;;;;;;;;4305:132;;;;;;;;;;-1:-1:-1;4305:132:20;;;;;:::i;:::-;-1:-1:-1;4388:12:20;;4305:132;3982:103;;;;;;;;;;-1:-1:-1;4074:9:20;;;;;;;;;-1:-1:-1;4074:9:20;;3982:103;;6286:130;;;;;;;;;;-1:-1:-1;6286:130:20;;;;;:::i;:::-;6381:6;6286:130;;;;;;3616:146;;;;;;;;;;-1:-1:-1;3616:146:20;;;;;:::i;:::-;3721:12;3616:146;;;;;;1179:104;;;;;;;;;;-1:-1:-1;1179:104:20;;;;;:::i;:::-;;:::i;7304:160::-;;;;;;;;;;-1:-1:-1;7304:160:20;;;;;:::i;:::-;7460:1;7304:160;;;;;;;;2690:137;;;;;;;;;;;;;:::i;313:575::-;;;;;;;;;;-1:-1:-1;313:575:20;;;;;:::i;:::-;;:::i;8262:170::-;;;;;;;;;;-1:-1:-1;8262:170:20;;;;;:::i;:::-;;:::i;6043:104::-;;;;;;;;;;-1:-1:-1;6043:104:20;;;;;:::i;:::-;-1:-1:-1;6136:9:20;;;;;;;;;-1:-1:-1;6136:9:20;;;6043:104;2456:114;;;;;;;;;;-1:-1:-1;2456:114:20;;;;;:::i;:::-;;;9884:1:32;9873:21;;;;9855:40;;9843:2;9828:18;2456:114:20;9713:188:32;894:146:20;;;;;;;;;;-1:-1:-1;894:146:20;;;;;:::i;:::-;;:::i;7658:209::-;;;;;;;;;;-1:-1:-1;7658:209:20;;;;;:::i;:::-;;;;;;;;;1289:122;;;;;;;;;;-1:-1:-1;1289:122:20;;;;;:::i;:::-;;:::i;3108:72::-;;;;;;;;;;-1:-1:-1;3108:72:20;;;;;:::i;:::-;;;;2975:128;;;;;;;;;;-1:-1:-1;2975:128:20;;;;;:::i;:::-;;;;;;;;1417:455;1479:12;1503:18;:108;;;;;;;;;;;;;;;;;;;1621:18;:110;;;;;;;;;;;;;;;;;;;1741:18;:70;;;;;;;;;;;;;-1:-1:-1;;;1741:70:20;;;;;1845:5;1852;1859;1828:37;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;1821:44;;;;;1417:455;:::o;1179:104::-;1252:15;;;;:7;:15;;;;;:24;1270:6;1252:15;:24;:::i;:::-;;1179:104;;:::o;2690:137::-;2757:13;2781:44;;;;;;;;;;;;;;;;;;;2690:137;:::o;313:575::-;607:6;642:32;;;;;;;;;;;;;684:36;;;;749:54;;607:6;;-1:-1:-1;;;;;749:35:20;;;642:32;;607:6;749:54;607:6;749:54;642:32;749:35;:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;730:73;;;821:7;813:40;;;;-1:-1:-1;;;813:40:20;;16610:2:32;813:40:20;;;16592:21:32;16649:2;16629:18;;;16622:30;-1:-1:-1;;;16668:18:32;;;16661:50;16728:18;;813:40:20;;;;;;;;-1:-1:-1;874:6:20;313:575;-1:-1:-1;;;;;;;;;313:575:20:o;8262:170::-;8401:24;;;;:13;:24;;;;;8394:31;;8370:12;;8401:24;8394:31;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8262:170;;;:::o;894:146::-;1018:15;;;;:7;:15;;;;;1011:22;;987:12;;1018:15;1011:22;;;:::i;1289:122::-;1371:24;;;;:13;:24;;;;;:33;1398:6;1371:24;:33;:::i;14:179:32:-;72:6;125:2;113:9;104:7;100:23;96:32;93:52;;;141:1;138;131:12;93:52;-1:-1:-1;164:23:32;;14:179;-1:-1:-1;14:179:32:o;378:250::-;463:1;473:113;487:6;484:1;481:13;473:113;;;563:11;;;557:18;544:11;;;537:39;509:2;502:10;473:113;;;-1:-1:-1;;620:1:32;602:16;;595:27;378:250::o;633:270::-;674:3;712:5;706:12;739:6;734:3;727:19;755:76;824:6;817:4;812:3;808:14;801:4;794:5;790:16;755:76;:::i;:::-;885:2;864:15;-1:-1:-1;;860:29:32;851:39;;;;892:4;847:50;;633:270;-1:-1:-1;;633:270:32:o;908:217::-;1055:2;1044:9;1037:21;1018:4;1075:44;1115:2;1104:9;1100:18;1092:6;1075:44;:::i;:::-;1067:52;908:217;-1:-1:-1;;;908:217:32:o;1315:347::-;1366:8;1376:6;1430:3;1423:4;1415:6;1411:17;1407:27;1397:55;;1448:1;1445;1438:12;1397:55;-1:-1:-1;1471:20:32;;-1:-1:-1;;;;;1503:30:32;;1500:50;;;1546:1;1543;1536:12;1500:50;1583:4;1575:6;1571:17;1559:29;;1635:3;1628:4;1619:6;1611;1607:19;1603:30;1600:39;1597:59;;;1652:1;1649;1642:12;1597:59;1315:347;;;;;:::o;1667:409::-;1737:6;1745;1798:2;1786:9;1777:7;1773:23;1769:32;1766:52;;;1814:1;1811;1804:12;1766:52;1841:23;;-1:-1:-1;;;;;1876:30:32;;1873:50;;;1919:1;1916;1909:12;1873:50;1958:58;2008:7;1999:6;1988:9;1984:22;1958:58;:::i;:::-;2035:8;;1932:84;;-1:-1:-1;1667:409:32;-1:-1:-1;;;;1667:409:32:o;2870:784::-;2968:6;2976;2984;2992;3000;3053:2;3041:9;3032:7;3028:23;3024:32;3021:52;;;3069:1;3066;3059:12;3021:52;3096:23;;-1:-1:-1;;;;;3168:14:32;;;3165:34;;;3195:1;3192;3185:12;3165:34;3234:58;3284:7;3275:6;3264:9;3260:22;3234:58;:::i;:::-;3311:8;;-1:-1:-1;3208:84:32;-1:-1:-1;3393:2:32;3378:18;;3365:32;;-1:-1:-1;3450:2:32;3435:18;;3422:32;;-1:-1:-1;3466:16:32;;;3463:36;;;3495:1;3492;3485:12;3463:36;;3534:60;3586:7;3575:8;3564:9;3560:24;3534:60;:::i;:::-;2870:784;;;;-1:-1:-1;2870:784:32;;-1:-1:-1;3613:8:32;;3508:86;2870:784;-1:-1:-1;;;2870:784:32:o;3659:1004::-;3769:6;3777;3785;3793;3801;3809;3862:2;3850:9;3841:7;3837:23;3833:32;3830:52;;;3878:1;3875;3868:12;3830:52;3905:23;;-1:-1:-1;;;;;3977:14:32;;;3974:34;;;4004:1;4001;3994:12;3974:34;4043:58;4093:7;4084:6;4073:9;4069:22;4043:58;:::i;:::-;4120:8;;-1:-1:-1;4017:84:32;-1:-1:-1;4208:2:32;4193:18;;4180:32;;-1:-1:-1;4224:16:32;;;4221:36;;;4253:1;4250;4243:12;4221:36;4292:60;4344:7;4333:8;4322:9;4318:24;4292:60;:::i;:::-;4371:8;;-1:-1:-1;4266:86:32;-1:-1:-1;4459:2:32;4444:18;;4431:32;;-1:-1:-1;4475:16:32;;;4472:36;;;4504:1;4501;4494:12;4472:36;;4543:60;4595:7;4584:8;4573:9;4569:24;4543:60;:::i;:::-;3659:1004;;;;-1:-1:-1;3659:1004:32;;-1:-1:-1;3659:1004:32;;4622:8;;3659:1004;-1:-1:-1;;;3659:1004:32:o;4892:477::-;4971:6;4979;4987;5040:2;5028:9;5019:7;5015:23;5011:32;5008:52;;;5056:1;5053;5046:12;5008:52;5083:23;;-1:-1:-1;;;;;5118:30:32;;5115:50;;;5161:1;5158;5151:12;5115:50;5200:58;5250:7;5241:6;5230:9;5226:22;5200:58;:::i;:::-;5277:8;;5174:84;;-1:-1:-1;5359:2:32;5344:18;;;;5331:32;;4892:477;-1:-1:-1;;;;4892:477:32:o;5374:::-;5453:6;5461;5469;5522:2;5510:9;5501:7;5497:23;5493:32;5490:52;;;5538:1;5535;5528:12;5490:52;5561:23;;;-1:-1:-1;5635:2:32;5620:18;;5607:32;-1:-1:-1;;;;;5651:30:32;;5648:50;;;5694:1;5691;5684:12;5648:50;5733:58;5783:7;5774:6;5763:9;5759:22;5733:58;:::i;:::-;5374:477;;5810:8;;-1:-1:-1;5707:84:32;;-1:-1:-1;;;;5374:477:32:o;5856:127::-;5917:10;5912:3;5908:20;5905:1;5898:31;5948:4;5945:1;5938:15;5972:4;5969:1;5962:15;5988:718;6030:5;6083:3;6076:4;6068:6;6064:17;6060:27;6050:55;;6101:1;6098;6091:12;6050:55;6124:20;;-1:-1:-1;;;;;6193:10:32;;;6190:36;;;6206:18;;:::i;:::-;6281:2;6275:9;6249:2;6335:13;;-1:-1:-1;;6331:22:32;;;6355:2;6327:31;6323:40;6311:53;;;6379:18;;;6399:22;;;6376:46;6373:72;;;6425:18;;:::i;:::-;6465:10;6461:2;6454:22;6500:2;6492:6;6485:18;6546:3;6539:4;6534:2;6526:6;6522:15;6518:26;6515:35;6512:55;;;6563:1;6560;6553:12;6512:55;6627:2;6620:4;6612:6;6608:17;6601:4;6593:6;6589:17;6576:54;6674:1;6667:4;6662:2;6654:6;6650:15;6646:26;6639:37;6694:6;6685:15;;;;;;5988:718;;;;:::o;6711:388::-;6788:6;6796;6849:2;6837:9;6828:7;6824:23;6820:32;6817:52;;;6865:1;6862;6855:12;6817:52;6888:23;;;-1:-1:-1;6962:2:32;6947:18;;6934:32;-1:-1:-1;;;;;6978:30:32;;6975:50;;;7021:1;7018;7011:12;6975:50;7044:49;7085:7;7076:6;7065:9;7061:22;7044:49;:::i;:::-;7034:59;;;6711:388;;;;;:::o;7104:367::-;7167:8;7177:6;7231:3;7224:4;7216:6;7212:17;7208:27;7198:55;;7249:1;7246;7239:12;7198:55;-1:-1:-1;7272:20:32;;-1:-1:-1;;;;;7304:30:32;;7301:50;;;7347:1;7344;7337:12;7301:50;7384:4;7376:6;7372:17;7360:29;;7444:3;7437:4;7427:6;7424:1;7420:14;7412:6;7408:27;7404:38;7401:47;7398:67;;;7461:1;7458;7451:12;7476:642;7589:6;7597;7605;7613;7621;7674:3;7662:9;7653:7;7649:23;7645:33;7642:53;;;7691:1;7688;7681:12;7642:53;7714:23;;;-1:-1:-1;7784:2:32;7769:18;;7756:32;;-1:-1:-1;7835:2:32;7820:18;;7807:32;;-1:-1:-1;7890:2:32;7875:18;;7862:32;-1:-1:-1;;;;;7906:30:32;;7903:50;;;7949:1;7946;7939:12;7903:50;7988:70;8050:7;8041:6;8030:9;8026:22;7988:70;:::i;8123:181::-;8199:20;;-1:-1:-1;;;;;8248:31:32;;8238:42;;8228:70;;8294:1;8291;8284:12;8228:70;8123:181;;;:::o;8309:160::-;8374:20;;8430:13;;8423:21;8413:32;;8403:60;;8459:1;8456;8449:12;8474:1234;8637:6;8645;8653;8661;8669;8677;8685;8693;8746:3;8734:9;8725:7;8721:23;8717:33;8714:53;;;8763:1;8760;8753:12;8714:53;8790:23;;-1:-1:-1;;;;;8862:14:32;;;8859:34;;;8889:1;8886;8879:12;8859:34;8912:49;8953:7;8944:6;8933:9;8929:22;8912:49;:::i;:::-;8902:59;;9008:2;8997:9;8993:18;8980:32;8970:42;;9065:2;9054:9;9050:18;9037:32;9021:48;;9094:2;9084:8;9081:16;9078:36;;;9110:1;9107;9100:12;9078:36;9133:51;9176:7;9165:8;9154:9;9150:24;9133:51;:::i;:::-;9123:61;;9231:2;9220:9;9216:18;9203:32;9193:42;;9288:3;9277:9;9273:19;9260:33;9244:49;;9318:2;9308:8;9305:16;9302:36;;;9334:1;9331;9324:12;9302:36;9357:51;9400:7;9389:8;9378:9;9374:24;9357:51;:::i;:::-;9347:61;;9427:47;9469:3;9458:9;9454:19;9427:47;:::i;:::-;9417:57;;9527:3;9516:9;9512:19;9499:33;9483:49;;9557:2;9547:8;9544:16;9541:36;;;9573:1;9570;9563:12;9541:36;;9596:51;9639:7;9628:8;9617:9;9613:24;9596:51;:::i;:::-;9586:61;;;9666:36;9697:3;9686:9;9682:19;9666:36;:::i;:::-;9656:46;;8474:1234;;;;;;;;;;;:::o;10091:923::-;10208:6;10216;10224;10232;10240;10248;10256;10309:3;10297:9;10288:7;10284:23;10280:33;10277:53;;;10326:1;10323;10316:12;10277:53;10353:23;;-1:-1:-1;;;;;10425:14:32;;;10422:34;;;10452:1;10449;10442:12;10422:34;10491:58;10541:7;10532:6;10521:9;10517:22;10491:58;:::i;:::-;10568:8;;-1:-1:-1;10465:84:32;-1:-1:-1;10650:2:32;10635:18;;10622:32;;-1:-1:-1;10707:2:32;10692:18;;10679:32;;-1:-1:-1;10723:16:32;;;10720:36;;;10752:1;10749;10742:12;10720:36;;10791:60;10843:7;10832:8;10821:9;10817:24;10791:60;:::i;:::-;10091:923;;;;-1:-1:-1;10091:923:32;;10870:8;;10765:86;10952:2;10937:18;;10924:32;;11003:3;10988:19;10975:33;;-1:-1:-1;10091:923:32;-1:-1:-1;;;;10091:923:32:o;11412:448::-;11509:6;11517;11570:2;11558:9;11549:7;11545:23;11541:32;11538:52;;;11586:1;11583;11576:12;11538:52;11613:23;;-1:-1:-1;;;;;11648:30:32;;11645:50;;;11691:1;11688;11681:12;11645:50;11730:70;11792:7;11783:6;11772:9;11768:22;11730:70;:::i;11865:1043::-;12002:6;12010;12018;12026;12034;12042;12095:2;12083:9;12074:7;12070:23;12066:32;12063:52;;;12111:1;12108;12101:12;12063:52;12138:23;;-1:-1:-1;;;;;12210:14:32;;;12207:34;;;12237:1;12234;12227:12;12207:34;12276:58;12326:7;12317:6;12306:9;12302:22;12276:58;:::i;:::-;12353:8;;-1:-1:-1;12250:84:32;-1:-1:-1;12441:2:32;12426:18;;12413:32;;-1:-1:-1;12457:16:32;;;12454:36;;;12486:1;12483;12476:12;12454:36;12525:72;12589:7;12578:8;12567:9;12563:24;12525:72;:::i;12913:697::-;13134:3;13172:6;13166:13;13188:66;13247:6;13242:3;13235:4;13227:6;13223:17;13188:66;:::i;:::-;13317:13;;13276:16;;;;13339:70;13317:13;13276:16;13386:4;13374:17;;13339:70;:::i;:::-;13476:13;;13431:20;;;13498:70;13476:13;13431:20;13545:4;13533:17;;13498:70;:::i;:::-;13584:20;;12913:697;-1:-1:-1;;;;;12913:697:32:o;13615:380::-;13694:1;13690:12;;;;13737;;;13758:61;;13812:4;13804:6;13800:17;13790:27;;13758:61;13865:2;13857:6;13854:14;13834:18;13831:38;13828:161;;13911:10;13906:3;13902:20;13899:1;13892:31;13946:4;13943:1;13936:15;13974:4;13971:1;13964:15;13828:161;;13615:380;;;:::o;14125:544::-;14226:2;14221:3;14218:11;14215:448;;;14262:1;14287:5;14283:2;14276:17;14332:4;14328:2;14318:19;14402:2;14390:10;14386:19;14383:1;14379:27;14373:4;14369:38;14438:4;14426:10;14423:20;14420:47;;;-1:-1:-1;14461:4:32;14420:47;14516:2;14511:3;14507:12;14504:1;14500:20;14494:4;14490:31;14480:41;;14571:82;14589:2;14582:5;14579:13;14571:82;;;14634:17;;;14615:1;14604:13;14571:82;;14845:1348;14963:10;;-1:-1:-1;;;;;14985:30:32;;14982:56;;;15018:18;;:::i;:::-;15047:96;15136:6;15096:38;15128:4;15122:11;15096:38;:::i;:::-;15090:4;15047:96;:::i;:::-;15198:4;;15262:2;15251:14;;15279:1;15274:662;;;;15980:1;15997:6;15994:89;;;-1:-1:-1;16049:19:32;;;16043:26;15994:89;-1:-1:-1;;14802:1:32;14798:11;;;14794:24;14790:29;14780:40;14826:1;14822:11;;;14777:57;16096:81;;15244:943;;15274:662;14072:1;14065:14;;;14109:4;14096:18;;-1:-1:-1;;15310:20:32;;;15427:236;15441:7;15438:1;15435:14;15427:236;;;15530:19;;;15524:26;15509:42;;15622:27;;;;15590:1;15578:14;;;;15457:19;;15427:236;;;15431:3;15691:6;15682:7;15679:19;15676:201;;;15752:19;;;15746:26;-1:-1:-1;;15835:1:32;15831:14;;;15847:3;15827:24;15823:37;15819:42;15804:58;15789:74;;15676:201;-1:-1:-1;;;;;15923:1:32;15907:14;;;15903:22;15890:36;;-1:-1:-1;14845:1348:32:o", - "source": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.18;\n\nimport \"./Bridge.sol\";\n\ncontract BridgeMock is Bridge {\n\n mapping(bytes32 => uint256) private amounts;\n mapping(uint256 => bytes) private headers;\n mapping (bytes32 => bytes) private headersByHash;\n\n receive() external payable override {}\n function registerFastBridgeBtcTransaction(\n bytes memory ,\n uint256 ,\n bytes memory,\n bytes32 derivationArgumentsHash,\n bytes memory,\n address payable liquidityBridgeContractAddress,\n bytes memory ,\n bool\n ) external override returns (int256) {\n uint256 amount = amounts[derivationArgumentsHash];\n amounts[derivationArgumentsHash] = 0;\n (bool success, ) = liquidityBridgeContractAddress.call{value: amount}(\"\");\n require(success, \"Sending funds failed\");\n return int(amount);\n }\n\n function getBtcBlockchainBlockHeaderByHeight(uint256 height) external view override returns (bytes memory) {\n return headers[height];\n }\n\n function setPegin(bytes32 derivationArgumentsHash) public payable {\n amounts[derivationArgumentsHash] = msg.value;\n }\n\n function setHeader(uint256 height, bytes memory header) public {\n headers[height] = header;\n }\n\n function setHeaderByHash(bytes32 blockHash, bytes memory header) public {\n headersByHash[blockHash] = header;\n }\n\n function getActivePowpegRedeemScript() external pure returns (bytes memory) {\n bytes memory part1 = hex\"522102cd53fc53a07f211641a677d250f6de99caf620e8e77071e811a28b3bcddf0be1210362634ab5\";\n bytes memory part2 = hex\"7dae9cb373a5d536e66a8c4f67468bbcfb063809bab643072d78a1242103c5946b3fbae03a654237da86\";\n bytes memory part3 = hex\"3c9ed534e0878657175b132b8ca630f245df04db53ae\";\n return abi.encodePacked(part1, part2, part3);\n }\n\n function getBtcBlockchainBestChainHeight ( ) external pure override returns (int) {return 0;}\n function getStateForBtcReleaseClient ( ) external pure override returns (bytes memory) {bytes memory b; return b;}\n function getStateForDebugging ( ) external pure override returns (bytes memory) {bytes memory b; return b;}\n function getBtcBlockchainInitialBlockHeight ( ) external pure override returns (int) {return int(0);}\n function getBtcBlockchainBlockHashAtDepth ( int256 ) external pure override returns\n (bytes memory) {bytes memory b; return b;}\n function getBtcTxHashProcessedHeight ( string calldata ) external pure override returns (int64) {return int64(0);}\n function isBtcTxHashAlreadyProcessed ( string calldata ) external pure override returns (bool) {return false;}\n function getFederationAddress ( ) external pure override returns (string memory)\n {return \"2N5muMepJizJE1gR7FbHJU6CD18V3BpNF9p\";} // regtest genesis fed addr\n function registerBtcTransaction ( bytes calldata atx, int256 height, bytes calldata pmt ) external override {}\n function addSignature ( bytes calldata pubkey, bytes[] calldata signatures, bytes calldata txhash )\n external override {}\n function receiveHeaders ( bytes[] calldata blocks ) external override {}\n function receiveHeader ( bytes calldata ) external pure override returns (int256) {return int256(0);}\n function getFederationSize ( ) external pure override returns (int256) {return int256(0);}\n function getFederationThreshold ( ) external pure override returns (int256) {return int256(0);}\n function getFederatorPublicKey ( int256 ) external pure override returns (bytes memory)\n {bytes memory b; return b;}\n function getFederatorPublicKeyOfType ( int256, string calldata ) external pure\n override returns (bytes memory) {bytes memory b; return b;}\n function getFederationCreationTime ( ) external pure override returns (int256) {return int256(0);}\n function getFederationCreationBlockNumber ( ) external pure override returns (int256) {return int256(0);}\n function getRetiringFederationAddress ( ) external pure override returns (string memory) {return \"\";}\n function getRetiringFederationSize ( ) external override pure returns (int256) {return int256(0);}\n function getRetiringFederationThreshold ( ) external override pure returns (int256) {return int256(0);}\n function getRetiringFederatorPublicKey ( int256 ) external override pure returns (bytes memory)\n {bytes memory b; return b;}\n function getRetiringFederatorPublicKeyOfType ( int256,string calldata ) external pure override\n returns (bytes memory) {bytes memory b; return b;}\n function getRetiringFederationCreationTime ( ) external pure override returns (int256) {return int256(0);}\n function getRetiringFederationCreationBlockNumber ( ) external override pure returns\n (int256) {return int256(0);}\n function createFederation ( ) external pure override returns (int256) {return int256(0);}\n function addFederatorPublicKey ( bytes calldata ) external pure override returns (int256)\n {return int256(0);}\n function addFederatorPublicKeyMultikey ( bytes calldata , bytes calldata , bytes calldata )\n external pure override returns (int256) {return int256(0);}\n function commitFederation ( bytes calldata ) external pure override returns (int256) {return int256(0);}\n function rollbackFederation ( ) external pure override returns (int256) {return int256(0);}\n function getPendingFederationHash ( ) external pure override returns (bytes memory) {bytes memory b; return b;}\n function getPendingFederationSize ( ) external pure override returns (int256) {return int256(0);}\n function getPendingFederatorPublicKey ( int256 ) external pure override returns (bytes memory)\n {bytes memory b; return b;}\n function getPendingFederatorPublicKeyOfType ( int256 , string calldata ) external pure override\n returns (bytes memory) {bytes memory b; return b;}\n function getLockWhitelistSize ( ) external pure override returns (int256) {return int256(0);}\n function getLockWhitelistAddress ( int256 ) external pure override returns (string memory) {return \"\";}\n function getLockWhitelistEntryByAddress ( string calldata ) external pure override returns (int256)\n {return int256(0);}\n function addLockWhitelistAddress ( string calldata , int256 ) external pure override returns (int256)\n {return int256(0);}\n function addOneOffLockWhitelistAddress ( string calldata , int256 ) external pure override returns\n (int256) {return int256(0);}\n function addUnlimitedLockWhitelistAddress ( string calldata ) external pure override returns (int256)\n {return int256(0);}\n function removeLockWhitelistAddress ( string calldata ) external pure override returns (int256)\n {return int256(0);}\n function setLockWhitelistDisableBlockDelay ( int256 ) external pure override returns (int256)\n {return int256(0);}\n function getFeePerKb ( ) external pure override returns (int256) {return int256(0);}\n function voteFeePerKbChange ( int256 ) external pure override returns (int256) {return int256(0);}\n function updateCollections ( ) external override {}\n function getMinimumLockTxValue ( ) external pure override returns (int256) {return int256(2);}\n function getBtcTransactionConfirmations ( bytes32 , bytes32, uint256 , bytes32[] calldata )\n external pure override returns (int256) {return int256(2);}\n function getLockingCap ( ) external pure override returns (int256) {return int256(0);}\n function increaseLockingCap ( int256 ) external pure override returns (bool) {return false;}\n function registerBtcCoinbaseTransaction ( bytes calldata btcTxSerialized, bytes32 blockHash, bytes\n calldata pmtSerialized, bytes32 witnessMerkleRoot, bytes32 witnessReservedValue ) external override {}\n function hasBtcBlockCoinbaseTransactionInformation ( bytes32 ) external pure override returns\n (bool) {return false;}\n function getActiveFederationCreationBlockHeight ( ) external pure override returns (uint256)\n {return uint256(0);}\n function getBtcBlockchainBestBlockHeader ( ) external pure override returns (bytes memory)\n {bytes memory b; return b;}\n\n function getBtcBlockchainBlockHeaderByHash(\n bytes32 blockHash\n ) external view override returns (bytes memory) {\n return headersByHash[blockHash];\n }\n\n function getBtcBlockchainParentBlockHeaderByHash ( bytes32) external pure override returns\n (bytes memory) {bytes memory b; return b;}\n\n}\n", - "sourcePath": "/Users/luischavez/iov/liquidity-bridge-contract/contracts/BridgeMock.sol", - "ast": { - "absolutePath": "project:/contracts/BridgeMock.sol", - "exportedSymbols": { - "Bridge": [ - 4173 - ], - "BridgeMock": [ - 5031 - ] - }, - "id": 5032, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 4175, - "literals": [ - "solidity", - "^", - "0.8", - ".18" - ], - "nodeType": "PragmaDirective", - "src": "32:24:20" - }, - { - "absolutePath": "project:/contracts/Bridge.sol", - "file": "./Bridge.sol", - "id": 4176, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 5032, - "sourceUnit": 4174, - "src": "58:22:20", - "symbolAliases": [], - "unitAlias": "" - }, - { - "abstract": false, - "baseContracts": [ - { - "baseName": { - "id": 4177, - "name": "Bridge", - "nameLocations": [ - "105:6:20" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 4173, - "src": "105:6:20" - }, - "id": 4178, - "nodeType": "InheritanceSpecifier", - "src": "105:6:20" - } - ], - "canonicalName": "BridgeMock", - "contractDependencies": [], - "contractKind": "contract", - "fullyImplemented": true, - "id": 5031, - "linearizedBaseContracts": [ - 5031, - 4173 - ], - "name": "BridgeMock", - "nameLocation": "91:10:20", - "nodeType": "ContractDefinition", - "nodes": [ - { - "constant": false, - "id": 4182, - "mutability": "mutable", - "name": "amounts", - "nameLocation": "155:7:20", - "nodeType": "VariableDeclaration", - "scope": 5031, - "src": "119:43:20", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", - "typeString": "mapping(bytes32 => uint256)" - }, - "typeName": { - "id": 4181, - "keyName": "", - "keyNameLocation": "-1:-1:-1", - "keyType": { - "id": 4179, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "127:7:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "Mapping", - "src": "119:27:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", - "typeString": "mapping(bytes32 => uint256)" - }, - "valueName": "", - "valueNameLocation": "-1:-1:-1", - "valueType": { - "id": 4180, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "138:7:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - }, - "visibility": "private" - }, - { - "constant": false, - "id": 4186, - "mutability": "mutable", - "name": "headers", - "nameLocation": "202:7:20", - "nodeType": "VariableDeclaration", - "scope": 5031, - "src": "168:41:20", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_bytes_storage_$", - "typeString": "mapping(uint256 => bytes)" - }, - "typeName": { - "id": 4185, - "keyName": "", - "keyNameLocation": "-1:-1:-1", - "keyType": { - "id": 4183, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "176:7:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Mapping", - "src": "168:25:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_bytes_storage_$", - "typeString": "mapping(uint256 => bytes)" - }, - "valueName": "", - "valueNameLocation": "-1:-1:-1", - "valueType": { - "id": 4184, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "187:5:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - } - }, - "visibility": "private" - }, - { - "constant": false, - "id": 4190, - "mutability": "mutable", - "name": "headersByHash", - "nameLocation": "250:13:20", - "nodeType": "VariableDeclaration", - "scope": 5031, - "src": "215:48:20", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$", - "typeString": "mapping(bytes32 => bytes)" - }, - "typeName": { - "id": 4189, - "keyName": "", - "keyNameLocation": "-1:-1:-1", - "keyType": { - "id": 4187, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "224:7:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "Mapping", - "src": "215:26:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$", - "typeString": "mapping(bytes32 => bytes)" - }, - "valueName": "", - "valueNameLocation": "-1:-1:-1", - "valueType": { - "id": 4188, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "235:5:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - } - }, - "visibility": "private" - }, - { - "baseFunctions": [ - 3775 - ], - "body": { - "id": 4194, - "nodeType": "Block", - "src": "306:2:20", - "statements": [] - }, - "id": 4195, - "implemented": true, - "kind": "receive", - "modifiers": [], - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4192, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "297:8:20" - }, - "parameters": { - "id": 4191, - "nodeType": "ParameterList", - "parameters": [], - "src": "277:2:20" - }, - "returnParameters": { - "id": 4193, - "nodeType": "ParameterList", - "parameters": [], - "src": "306:0:20" - }, - "scope": 5031, - "src": "270:38:20", - "stateMutability": "payable", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 4136 - ], - "body": { - "id": 4248, - "nodeType": "Block", - "src": "615:273:20", - "statements": [ - { - "assignments": [ - 4218 - ], - "declarations": [ - { - "constant": false, - "id": 4218, - "mutability": "mutable", - "name": "amount", - "nameLocation": "633:6:20", - "nodeType": "VariableDeclaration", - "scope": 4248, - "src": "625:14:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 4217, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "625:7:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 4222, - "initialValue": { - "baseExpression": { - "id": 4219, - "name": "amounts", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4182, - "src": "642:7:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", - "typeString": "mapping(bytes32 => uint256)" - } - }, - "id": 4221, - "indexExpression": { - "id": 4220, - "name": "derivationArgumentsHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4203, - "src": "650:23:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "642:32:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "625:49:20" - }, - { - "expression": { - "id": 4227, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 4223, - "name": "amounts", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4182, - "src": "684:7:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", - "typeString": "mapping(bytes32 => uint256)" - } - }, - "id": 4225, - "indexExpression": { - "id": 4224, - "name": "derivationArgumentsHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4203, - "src": "692:23:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "684:32:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "hexValue": "30", - "id": 4226, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "719:1:20", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "684:36:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 4228, - "nodeType": "ExpressionStatement", - "src": "684:36:20" - }, - { - "assignments": [ - 4230, - null - ], - "declarations": [ - { - "constant": false, - "id": 4230, - "mutability": "mutable", - "name": "success", - "nameLocation": "736:7:20", - "nodeType": "VariableDeclaration", - "scope": 4248, - "src": "731:12:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 4229, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "731:4:20", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - null - ], - "id": 4237, - "initialValue": { - "arguments": [ - { - "hexValue": "", - "id": 4235, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "800:2:20", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - }, - "value": "" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - } - ], - "expression": { - "id": 4231, - "name": "liquidityBridgeContractAddress", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4207, - "src": "749:30:20", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "id": 4232, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "780:4:20", - "memberName": "call", - "nodeType": "MemberAccess", - "src": "749:35:20", - "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": 4234, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "names": [ - "value" - ], - "nodeType": "FunctionCallOptions", - "options": [ - { - "id": 4233, - "name": "amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4218, - "src": "792:6:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "src": "749:50:20", - "typeDescriptions": { - "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$value", - "typeString": "function (bytes memory) payable returns (bool,bytes memory)" - } - }, - "id": 4236, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "749:54:20", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "tuple(bool,bytes memory)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "730:73:20" - }, - { - "expression": { - "arguments": [ - { - "id": 4239, - "name": "success", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4230, - "src": "821:7:20", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "53656e64696e672066756e6473206661696c6564", - "id": 4240, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "830:22:20", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_5eaf50de5ac7eb5958d1afe53b0b3d8c8f9de1eca637320b2e8c7f3a205ca802", - "typeString": "literal_string \"Sending funds failed\"" - }, - "value": "Sending funds failed" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_5eaf50de5ac7eb5958d1afe53b0b3d8c8f9de1eca637320b2e8c7f3a205ca802", - "typeString": "literal_string \"Sending funds failed\"" - } - ], - "id": 4238, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "813:7:20", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 4241, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "813:40:20", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 4242, - "nodeType": "ExpressionStatement", - "src": "813:40:20" - }, - { - "expression": { - "arguments": [ - { - "id": 4245, - "name": "amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4218, - "src": "874:6:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 4244, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "870:3:20", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_int256_$", - "typeString": "type(int256)" - }, - "typeName": { - "id": 4243, - "name": "int", - "nodeType": "ElementaryTypeName", - "src": "870:3:20", - "typeDescriptions": {} - } - }, - "id": 4246, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "870:11:20", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "functionReturnParameters": 4216, - "id": 4247, - "nodeType": "Return", - "src": "863:18:20" - } - ] - }, - "functionSelector": "6adc0133", - "id": 4249, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "registerFastBridgeBtcTransaction", - "nameLocation": "322:32:20", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4213, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "589:8:20" - }, - "parameters": { - "id": 4212, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4197, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4249, - "src": "364:12:20", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 4196, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "364:5:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4199, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4249, - "src": "387:7:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 4198, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "387:7:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4201, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4249, - "src": "405:12:20", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 4200, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "405:5:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4203, - "mutability": "mutable", - "name": "derivationArgumentsHash", - "nameLocation": "435:23:20", - "nodeType": "VariableDeclaration", - "scope": 4249, - "src": "427:31:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 4202, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "427:7:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4205, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4249, - "src": "468:12:20", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 4204, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "468:5:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4207, - "mutability": "mutable", - "name": "liquidityBridgeContractAddress", - "nameLocation": "506:30:20", - "nodeType": "VariableDeclaration", - "scope": 4249, - "src": "490:46:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - }, - "typeName": { - "id": 4206, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "490:15:20", - "stateMutability": "payable", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4209, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4249, - "src": "546:12:20", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 4208, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "546:5:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4211, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4249, - "src": "569:4:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 4210, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "569:4:20", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "354:225:20" - }, - "returnParameters": { - "id": 4216, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4215, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4249, - "src": "607:6:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4214, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "607:6:20", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "606:8:20" - }, - "scope": 5031, - "src": "313:575:20", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 4165 - ], - "body": { - "id": 4261, - "nodeType": "Block", - "src": "1001:39:20", - "statements": [ - { - "expression": { - "baseExpression": { - "id": 4257, - "name": "headers", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4186, - "src": "1018:7:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_bytes_storage_$", - "typeString": "mapping(uint256 => bytes storage ref)" - } - }, - "id": 4259, - "indexExpression": { - "id": 4258, - "name": "height", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4251, - "src": "1026:6:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1018:15:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "functionReturnParameters": 4256, - "id": 4260, - "nodeType": "Return", - "src": "1011:22:20" - } - ] - }, - "functionSelector": "bd0c1fff", - "id": 4262, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getBtcBlockchainBlockHeaderByHeight", - "nameLocation": "903:35:20", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4253, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "969:8:20" - }, - "parameters": { - "id": 4252, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4251, - "mutability": "mutable", - "name": "height", - "nameLocation": "947:6:20", - "nodeType": "VariableDeclaration", - "scope": 4262, - "src": "939:14:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 4250, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "939:7:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "938:16:20" - }, - "returnParameters": { - "id": 4256, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4255, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4262, - "src": "987:12:20", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 4254, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "987:5:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "986:14:20" - }, - "scope": 5031, - "src": "894:146:20", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 4274, - "nodeType": "Block", - "src": "1112:61:20", - "statements": [ - { - "expression": { - "id": 4272, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 4267, - "name": "amounts", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4182, - "src": "1122:7:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", - "typeString": "mapping(bytes32 => uint256)" - } - }, - "id": 4269, - "indexExpression": { - "id": 4268, - "name": "derivationArgumentsHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4264, - "src": "1130:23:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1122:32:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "expression": { - "id": 4270, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "1157:3:20", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 4271, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "1161:5:20", - "memberName": "value", - "nodeType": "MemberAccess", - "src": "1157:9:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1122:44:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 4273, - "nodeType": "ExpressionStatement", - "src": "1122:44:20" - } - ] - }, - "functionSelector": "10d86efd", - "id": 4275, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "setPegin", - "nameLocation": "1055:8:20", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 4265, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4264, - "mutability": "mutable", - "name": "derivationArgumentsHash", - "nameLocation": "1072:23:20", - "nodeType": "VariableDeclaration", - "scope": 4275, - "src": "1064:31:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 4263, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1064:7:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "1063:33:20" - }, - "returnParameters": { - "id": 4266, - "nodeType": "ParameterList", - "parameters": [], - "src": "1112:0:20" - }, - "scope": 5031, - "src": "1046:127:20", - "stateMutability": "payable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 4288, - "nodeType": "Block", - "src": "1242:41:20", - "statements": [ - { - "expression": { - "id": 4286, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 4282, - "name": "headers", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4186, - "src": "1252:7:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_bytes_storage_$", - "typeString": "mapping(uint256 => bytes storage ref)" - } - }, - "id": 4284, - "indexExpression": { - "id": 4283, - "name": "height", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4277, - "src": "1260:6:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1252:15:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 4285, - "name": "header", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4279, - "src": "1270:6:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "src": "1252:24:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "id": 4287, - "nodeType": "ExpressionStatement", - "src": "1252:24:20" - } - ] - }, - "functionSelector": "572de37b", - "id": 4289, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "setHeader", - "nameLocation": "1188:9:20", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 4280, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4277, - "mutability": "mutable", - "name": "height", - "nameLocation": "1206:6:20", - "nodeType": "VariableDeclaration", - "scope": 4289, - "src": "1198:14:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 4276, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1198:7:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4279, - "mutability": "mutable", - "name": "header", - "nameLocation": "1227:6:20", - "nodeType": "VariableDeclaration", - "scope": 4289, - "src": "1214:19:20", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 4278, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1214:5:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "1197:37:20" - }, - "returnParameters": { - "id": 4281, - "nodeType": "ParameterList", - "parameters": [], - "src": "1242:0:20" - }, - "scope": 5031, - "src": "1179:104:20", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 4302, - "nodeType": "Block", - "src": "1361:50:20", - "statements": [ - { - "expression": { - "id": 4300, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 4296, - "name": "headersByHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4190, - "src": "1371:13:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$", - "typeString": "mapping(bytes32 => bytes storage ref)" - } - }, - "id": 4298, - "indexExpression": { - "id": 4297, - "name": "blockHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4291, - "src": "1385:9:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1371:24:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 4299, - "name": "header", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4293, - "src": "1398:6:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "src": "1371:33:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "id": 4301, - "nodeType": "ExpressionStatement", - "src": "1371:33:20" - } - ] - }, - "functionSelector": "d5949890", - "id": 4303, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "setHeaderByHash", - "nameLocation": "1298:15:20", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 4294, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4291, - "mutability": "mutable", - "name": "blockHash", - "nameLocation": "1322:9:20", - "nodeType": "VariableDeclaration", - "scope": 4303, - "src": "1314:17:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 4290, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1314:7:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4293, - "mutability": "mutable", - "name": "header", - "nameLocation": "1346:6:20", - "nodeType": "VariableDeclaration", - "scope": 4303, - "src": "1333:19:20", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 4292, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1333:5:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "1313:40:20" - }, - "returnParameters": { - "id": 4295, - "nodeType": "ParameterList", - "parameters": [], - "src": "1361:0:20" - }, - "scope": 5031, - "src": "1289:122:20", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "baseFunctions": [ - 4146 - ], - "body": { - "id": 4327, - "nodeType": "Block", - "src": "1493:379:20", - "statements": [ - { - "assignments": [ - 4309 - ], - "declarations": [ - { - "constant": false, - "id": 4309, - "mutability": "mutable", - "name": "part1", - "nameLocation": "1516:5:20", - "nodeType": "VariableDeclaration", - "scope": 4327, - "src": "1503:18:20", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 4308, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1503:5:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 4311, - "initialValue": { - "hexValue": "522102cd53fc53a07f211641a677d250f6de99caf620e8e77071e811a28b3bcddf0be1210362634ab5", - "id": 4310, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "hexString", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1524:87:20", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_3886b40ee96a811f8e0b541a5c4fe316785e82e5cededc8b92a87ebb5f9f0107", - "typeString": "literal_string hex\"522102cd53fc53a07f211641a677d250f6de99caf620e8e77071e811a28b3bcddf0be1210362634ab5\"" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1503:108:20" - }, - { - "assignments": [ - 4313 - ], - "declarations": [ - { - "constant": false, - "id": 4313, - "mutability": "mutable", - "name": "part2", - "nameLocation": "1634:5:20", - "nodeType": "VariableDeclaration", - "scope": 4327, - "src": "1621:18:20", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 4312, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1621:5:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 4315, - "initialValue": { - "hexValue": "7dae9cb373a5d536e66a8c4f67468bbcfb063809bab643072d78a1242103c5946b3fbae03a654237da86", - "id": 4314, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "hexString", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1642:89:20", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_87249d82f0ae648d50c50de70a8cbbcc16f0309a57d2dc34e63658fe61a05df0", - "typeString": "literal_string hex\"7dae9cb373a5d536e66a8c4f67468bbcfb063809bab643072d78a1242103c5946b3fbae03a654237da86\"" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1621:110:20" - }, - { - "assignments": [ - 4317 - ], - "declarations": [ - { - "constant": false, - "id": 4317, - "mutability": "mutable", - "name": "part3", - "nameLocation": "1754:5:20", - "nodeType": "VariableDeclaration", - "scope": 4327, - "src": "1741:18:20", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 4316, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1741:5:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 4319, - "initialValue": { - "hexValue": "3c9ed534e0878657175b132b8ca630f245df04db53ae", - "id": 4318, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "hexString", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1762:49:20", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c99d210d13c65053e789718d5e9bd5a9d0d6f747fe09e1aa7ccf65bc101aa795", - "typeString": "literal_string hex\"3c9ed534e0878657175b132b8ca630f245df04db53ae\"" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1741:70:20" - }, - { - "expression": { - "arguments": [ - { - "id": 4322, - "name": "part1", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4309, - "src": "1845:5:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "id": 4323, - "name": "part2", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4313, - "src": "1852:5:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "id": 4324, - "name": "part3", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4317, - "src": "1859:5:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "id": 4320, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "1828:3:20", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 4321, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "1832:12:20", - "memberName": "encodePacked", - "nodeType": "MemberAccess", - "src": "1828:16:20", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 4325, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1828:37:20", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 4307, - "id": 4326, - "nodeType": "Return", - "src": "1821:44:20" - } - ] - }, - "functionSelector": "1d73d5dd", - "id": 4328, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getActivePowpegRedeemScript", - "nameLocation": "1426:27:20", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 4304, - "nodeType": "ParameterList", - "parameters": [], - "src": "1453:2:20" - }, - "returnParameters": { - "id": 4307, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4306, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4328, - "src": "1479:12:20", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 4305, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1479:5:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "1478:14:20" - }, - "scope": 5031, - "src": "1417:455:20", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 3780 - ], - "body": { - "id": 4336, - "nodeType": "Block", - "src": "1961:11:20", - "statements": [ - { - "expression": { - "hexValue": "30", - "id": 4334, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1969:1:20", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "functionReturnParameters": 4333, - "id": 4335, - "nodeType": "Return", - "src": "1962:8:20" - } - ] - }, - "functionSelector": "14c89c01", - "id": 4337, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getBtcBlockchainBestChainHeight", - "nameLocation": "1887:31:20", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4330, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "1938:8:20" - }, - "parameters": { - "id": 4329, - "nodeType": "ParameterList", - "parameters": [], - "src": "1919:4:20" - }, - "returnParameters": { - "id": 4333, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4332, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4337, - "src": "1956:3:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4331, - "name": "int", - "nodeType": "ElementaryTypeName", - "src": "1956:3:20", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "1955:5:20" - }, - "scope": 5031, - "src": "1878:94:20", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 3785 - ], - "body": { - "id": 4348, - "nodeType": "Block", - "src": "2065:27:20", - "statements": [ - { - "assignments": [ - 4344 - ], - "declarations": [ - { - "constant": false, - "id": 4344, - "mutability": "mutable", - "name": "b", - "nameLocation": "2079:1:20", - "nodeType": "VariableDeclaration", - "scope": 4348, - "src": "2066:14:20", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 4343, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "2066:5:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 4345, - "nodeType": "VariableDeclarationStatement", - "src": "2066:14:20" - }, - { - "expression": { - "id": 4346, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4344, - "src": "2089:1:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 4342, - "id": 4347, - "nodeType": "Return", - "src": "2082:8:20" - } - ] - }, - "functionSelector": "c4fbca20", - "id": 4349, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getStateForBtcReleaseClient", - "nameLocation": "1986:27:20", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4339, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "2033:8:20" - }, - "parameters": { - "id": 4338, - "nodeType": "ParameterList", - "parameters": [], - "src": "2014:4:20" - }, - "returnParameters": { - "id": 4342, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4341, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4349, - "src": "2051:12:20", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 4340, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "2051:5:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "2050:14:20" - }, - "scope": 5031, - "src": "1977:115:20", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 3790 - ], - "body": { - "id": 4360, - "nodeType": "Block", - "src": "2178:27:20", - "statements": [ - { - "assignments": [ - 4356 - ], - "declarations": [ - { - "constant": false, - "id": 4356, - "mutability": "mutable", - "name": "b", - "nameLocation": "2192:1:20", - "nodeType": "VariableDeclaration", - "scope": 4360, - "src": "2179:14:20", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 4355, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "2179:5:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 4357, - "nodeType": "VariableDeclarationStatement", - "src": "2179:14:20" - }, - { - "expression": { - "id": 4358, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4356, - "src": "2202:1:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 4354, - "id": 4359, - "nodeType": "Return", - "src": "2195:8:20" - } - ] - }, - "functionSelector": "0d0cee93", - "id": 4361, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getStateForDebugging", - "nameLocation": "2106:20:20", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4351, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "2146:8:20" - }, - "parameters": { - "id": 4350, - "nodeType": "ParameterList", - "parameters": [], - "src": "2127:4:20" - }, - "returnParameters": { - "id": 4354, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4353, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4361, - "src": "2164:12:20", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 4352, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "2164:5:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "2163:14:20" - }, - "scope": 5031, - "src": "2097:108:20", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 3795 - ], - "body": { - "id": 4372, - "nodeType": "Block", - "src": "2296:16:20", - "statements": [ - { - "expression": { - "arguments": [ - { - "hexValue": "30", - "id": 4369, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2308:1:20", - "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": 4368, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "2304:3:20", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_int256_$", - "typeString": "type(int256)" - }, - "typeName": { - "id": 4367, - "name": "int", - "nodeType": "ElementaryTypeName", - "src": "2304:3:20", - "typeDescriptions": {} - } - }, - "id": 4370, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2304:6:20", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "functionReturnParameters": 4366, - "id": 4371, - "nodeType": "Return", - "src": "2297:13:20" - } - ] - }, - "functionSelector": "4897193f", - "id": 4373, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getBtcBlockchainInitialBlockHeight", - "nameLocation": "2219:34:20", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4363, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "2273:8:20" - }, - "parameters": { - "id": 4362, - "nodeType": "ParameterList", - "parameters": [], - "src": "2254:4:20" - }, - "returnParameters": { - "id": 4366, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4365, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4373, - "src": "2291:3:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4364, - "name": "int", - "nodeType": "ElementaryTypeName", - "src": "2291:3:20", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "2290:5:20" - }, - "scope": 5031, - "src": "2210:102:20", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 3802 - ], - "body": { - "id": 4386, - "nodeType": "Block", - "src": "2424:27:20", - "statements": [ - { - "assignments": [ - 4382 - ], - "declarations": [ - { - "constant": false, - "id": 4382, - "mutability": "mutable", - "name": "b", - "nameLocation": "2438:1:20", - "nodeType": "VariableDeclaration", - "scope": 4386, - "src": "2425:14:20", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 4381, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "2425:5:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 4383, - "nodeType": "VariableDeclarationStatement", - "src": "2425:14:20" - }, - { - "expression": { - "id": 4384, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4382, - "src": "2448:1:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 4380, - "id": 4385, - "nodeType": "Return", - "src": "2441:8:20" - } - ] - }, - "functionSelector": "efd44418", - "id": 4387, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getBtcBlockchainBlockHashAtDepth", - "nameLocation": "2326:32:20", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4377, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "2384:8:20" - }, - "parameters": { - "id": 4376, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4375, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4387, - "src": "2361:6:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4374, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "2361:6:20", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "2359:10:20" - }, - "returnParameters": { - "id": 4380, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4379, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4387, - "src": "2410:12:20", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 4378, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "2410:5:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "2409:14:20" - }, - "scope": 5031, - "src": "2317:134:20", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 3809 - ], - "body": { - "id": 4400, - "nodeType": "Block", - "src": "2552:18:20", - "statements": [ - { - "expression": { - "arguments": [ - { - "hexValue": "30", - "id": 4397, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2566:1:20", - "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": 4396, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "2560:5:20", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_int64_$", - "typeString": "type(int64)" - }, - "typeName": { - "id": 4395, - "name": "int64", - "nodeType": "ElementaryTypeName", - "src": "2560:5:20", - "typeDescriptions": {} - } - }, - "id": 4398, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2560:8:20", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int64", - "typeString": "int64" - } - }, - "functionReturnParameters": 4394, - "id": 4399, - "nodeType": "Return", - "src": "2553:15:20" - } - ] - }, - "functionSelector": "97fcca7d", - "id": 4401, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getBtcTxHashProcessedHeight", - "nameLocation": "2465:27:20", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4391, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "2527:8:20" - }, - "parameters": { - "id": 4390, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4389, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4401, - "src": "2495:15:20", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 4388, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2495:6:20", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "2493:19:20" - }, - "returnParameters": { - "id": 4394, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4393, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4401, - "src": "2545:5:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int64", - "typeString": "int64" - }, - "typeName": { - "id": 4392, - "name": "int64", - "nodeType": "ElementaryTypeName", - "src": "2545:5:20", - "typeDescriptions": { - "typeIdentifier": "t_int64", - "typeString": "int64" - } - }, - "visibility": "internal" - } - ], - "src": "2544:7:20" - }, - "scope": 5031, - "src": "2456:114:20", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 3816 - ], - "body": { - "id": 4411, - "nodeType": "Block", - "src": "2670:15:20", - "statements": [ - { - "expression": { - "hexValue": "66616c7365", - "id": 4409, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2678:5:20", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "false" - }, - "functionReturnParameters": 4408, - "id": 4410, - "nodeType": "Return", - "src": "2671:12:20" - } - ] - }, - "functionSelector": "248a982d", - "id": 4412, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "isBtcTxHashAlreadyProcessed", - "nameLocation": "2584:27:20", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4405, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "2646:8:20" - }, - "parameters": { - "id": 4404, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4403, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4412, - "src": "2614:15:20", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 4402, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2614:6:20", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "2612:19:20" - }, - "returnParameters": { - "id": 4408, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4407, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4412, - "src": "2664:4:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 4406, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "2664:4:20", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "2663:6:20" - }, - "scope": 5031, - "src": "2575:110:20", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 3821 - ], - "body": { - "id": 4420, - "nodeType": "Block", - "src": "2780:47:20", - "statements": [ - { - "expression": { - "hexValue": "324e356d754d65704a697a4a45316752374662484a553643443138563342704e463970", - "id": 4418, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2788:37:20", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_8c79f89e7af014eea8382e2a3c8169c304592943b925bf9253319bad789c40ff", - "typeString": "literal_string \"2N5muMepJizJE1gR7FbHJU6CD18V3BpNF9p\"" - }, - "value": "2N5muMepJizJE1gR7FbHJU6CD18V3BpNF9p" - }, - "functionReturnParameters": 4417, - "id": 4419, - "nodeType": "Return", - "src": "2781:44:20" - } - ] - }, - "functionSelector": "6923fa85", - "id": 4421, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getFederationAddress", - "nameLocation": "2699:20:20", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4414, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "2739:8:20" - }, - "parameters": { - "id": 4413, - "nodeType": "ParameterList", - "parameters": [], - "src": "2720:4:20" - }, - "returnParameters": { - "id": 4417, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4416, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4421, - "src": "2757:13:20", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 4415, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2757:6:20", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "2756:15:20" - }, - "scope": 5031, - "src": "2690:137:20", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 3830 - ], - "body": { - "id": 4431, - "nodeType": "Block", - "src": "2968:2:20", - "statements": [] - }, - "functionSelector": "43dc0656", - "id": 4432, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "registerBtcTransaction", - "nameLocation": "2869:22:20", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4429, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "2959:8:20" - }, - "parameters": { - "id": 4428, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4423, - "mutability": "mutable", - "name": "atx", - "nameLocation": "2909:3:20", - "nodeType": "VariableDeclaration", - "scope": 4432, - "src": "2894:18:20", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 4422, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "2894:5:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4425, - "mutability": "mutable", - "name": "height", - "nameLocation": "2921:6:20", - "nodeType": "VariableDeclaration", - "scope": 4432, - "src": "2914:13:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4424, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "2914:6:20", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4427, - "mutability": "mutable", - "name": "pmt", - "nameLocation": "2944:3:20", - "nodeType": "VariableDeclaration", - "scope": 4432, - "src": "2929:18:20", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 4426, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "2929:5:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "2892:57:20" - }, - "returnParameters": { - "id": 4430, - "nodeType": "ParameterList", - "parameters": [], - "src": "2968:0:20" - }, - "scope": 5031, - "src": "2860:110:20", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 3840 - ], - "body": { - "id": 4443, - "nodeType": "Block", - "src": "3101:2:20", - "statements": [] - }, - "functionSelector": "f10b9c59", - "id": 4444, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "addSignature", - "nameLocation": "2984:12:20", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4441, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "3092:8:20" - }, - "parameters": { - "id": 4440, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4434, - "mutability": "mutable", - "name": "pubkey", - "nameLocation": "3014:6:20", - "nodeType": "VariableDeclaration", - "scope": 4444, - "src": "2999:21:20", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 4433, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "2999:5:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4437, - "mutability": "mutable", - "name": "signatures", - "nameLocation": "3039:10:20", - "nodeType": "VariableDeclaration", - "scope": 4444, - "src": "3022:27:20", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes[]" - }, - "typeName": { - "baseType": { - "id": 4435, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "3022:5:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "id": 4436, - "nodeType": "ArrayTypeName", - "src": "3022:7:20", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", - "typeString": "bytes[]" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4439, - "mutability": "mutable", - "name": "txhash", - "nameLocation": "3066:6:20", - "nodeType": "VariableDeclaration", - "scope": 4444, - "src": "3051:21:20", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 4438, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "3051:5:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "2997:77:20" - }, - "returnParameters": { - "id": 4442, - "nodeType": "ParameterList", - "parameters": [], - "src": "3101:0:20" - }, - "scope": 5031, - "src": "2975:128:20", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 3846 - ], - "body": { - "id": 4451, - "nodeType": "Block", - "src": "3178:2:20", - "statements": [] - }, - "functionSelector": "e5400e7b", - "id": 4452, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "receiveHeaders", - "nameLocation": "3117:14:20", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4449, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "3169:8:20" - }, - "parameters": { - "id": 4448, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4447, - "mutability": "mutable", - "name": "blocks", - "nameLocation": "3151:6:20", - "nodeType": "VariableDeclaration", - "scope": 4452, - "src": "3134:23:20", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr", - "typeString": "bytes[]" - }, - "typeName": { - "baseType": { - "id": 4445, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "3134:5:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "id": 4446, - "nodeType": "ArrayTypeName", - "src": "3134:7:20", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", - "typeString": "bytes[]" - } - }, - "visibility": "internal" - } - ], - "src": "3132:27:20" - }, - "returnParameters": { - "id": 4450, - "nodeType": "ParameterList", - "parameters": [], - "src": "3178:0:20" - }, - "scope": 5031, - "src": "3108:72:20", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 3853 - ], - "body": { - "id": 4465, - "nodeType": "Block", - "src": "3267:19:20", - "statements": [ - { - "expression": { - "arguments": [ - { - "hexValue": "30", - "id": 4462, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3282:1:20", - "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": 4461, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "3275:6:20", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_int256_$", - "typeString": "type(int256)" - }, - "typeName": { - "id": 4460, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "3275:6:20", - "typeDescriptions": {} - } - }, - "id": 4463, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "3275:9:20", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "functionReturnParameters": 4459, - "id": 4464, - "nodeType": "Return", - "src": "3268:16:20" - } - ] - }, - "functionSelector": "884bdd86", - "id": 4466, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "receiveHeader", - "nameLocation": "3194:13:20", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4456, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "3241:8:20" - }, - "parameters": { - "id": 4455, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4454, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4466, - "src": "3210:14:20", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 4453, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "3210:5:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "3208:18:20" - }, - "returnParameters": { - "id": 4459, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4458, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4466, - "src": "3259:6:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4457, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "3259:6:20", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "3258:8:20" - }, - "scope": 5031, - "src": "3185:101:20", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 3858 - ], - "body": { - "id": 4477, - "nodeType": "Block", - "src": "3363:19:20", - "statements": [ - { - "expression": { - "arguments": [ - { - "hexValue": "30", - "id": 4474, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3378:1:20", - "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": 4473, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "3371:6:20", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_int256_$", - "typeString": "type(int256)" - }, - "typeName": { - "id": 4472, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "3371:6:20", - "typeDescriptions": {} - } - }, - "id": 4475, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "3371:9:20", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "functionReturnParameters": 4471, - "id": 4476, - "nodeType": "Return", - "src": "3364:16:20" - } - ] - }, - "functionSelector": "802ad4b6", - "id": 4478, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getFederationSize", - "nameLocation": "3300:17:20", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4468, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "3337:8:20" - }, - "parameters": { - "id": 4467, - "nodeType": "ParameterList", - "parameters": [], - "src": "3318:4:20" - }, - "returnParameters": { - "id": 4471, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4470, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4478, - "src": "3355:6:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4469, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "3355:6:20", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "3354:8:20" - }, - "scope": 5031, - "src": "3291:91:20", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 3863 - ], - "body": { - "id": 4489, - "nodeType": "Block", - "src": "3464:19:20", - "statements": [ - { - "expression": { - "arguments": [ - { - "hexValue": "30", - "id": 4486, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3479:1:20", - "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": 4485, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "3472:6:20", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_int256_$", - "typeString": "type(int256)" - }, - "typeName": { - "id": 4484, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "3472:6:20", - "typeDescriptions": {} - } - }, - "id": 4487, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "3472:9:20", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "functionReturnParameters": 4483, - "id": 4488, - "nodeType": "Return", - "src": "3465:16:20" - } - ] - }, - "functionSelector": "0fd47456", - "id": 4490, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getFederationThreshold", - "nameLocation": "3396:22:20", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4480, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "3438:8:20" - }, - "parameters": { - "id": 4479, - "nodeType": "ParameterList", - "parameters": [], - "src": "3419:4:20" - }, - "returnParameters": { - "id": 4483, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4482, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4490, - "src": "3456:6:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4481, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "3456:6:20", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "3455:8:20" - }, - "scope": 5031, - "src": "3387:96:20", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 3870 - ], - "body": { - "id": 4503, - "nodeType": "Block", - "src": "3584:27:20", - "statements": [ - { - "assignments": [ - 4499 - ], - "declarations": [ - { - "constant": false, - "id": 4499, - "mutability": "mutable", - "name": "b", - "nameLocation": "3598:1:20", - "nodeType": "VariableDeclaration", - "scope": 4503, - "src": "3585:14:20", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 4498, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "3585:5:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 4500, - "nodeType": "VariableDeclarationStatement", - "src": "3585:14:20" - }, - { - "expression": { - "id": 4501, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4499, - "src": "3608:1:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 4497, - "id": 4502, - "nodeType": "Return", - "src": "3601:8:20" - } - ] - }, - "functionSelector": "6b89a1af", - "id": 4504, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getFederatorPublicKey", - "nameLocation": "3497:21:20", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4494, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "3544:8:20" - }, - "parameters": { - "id": 4493, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4492, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4504, - "src": "3521:6:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4491, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "3521:6:20", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "3519:10:20" - }, - "returnParameters": { - "id": 4497, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4496, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4504, - "src": "3562:12:20", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 4495, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "3562:5:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "3561:14:20" - }, - "scope": 5031, - "src": "3488:123:20", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 3879 - ], - "body": { - "id": 4519, - "nodeType": "Block", - "src": "3735:27:20", - "statements": [ - { - "assignments": [ - 4515 - ], - "declarations": [ - { - "constant": false, - "id": 4515, - "mutability": "mutable", - "name": "b", - "nameLocation": "3749:1:20", - "nodeType": "VariableDeclaration", - "scope": 4519, - "src": "3736:14:20", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 4514, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "3736:5:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 4516, - "nodeType": "VariableDeclarationStatement", - "src": "3736:14:20" - }, - { - "expression": { - "id": 4517, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4515, - "src": "3759:1:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 4513, - "id": 4518, - "nodeType": "Return", - "src": "3752:8:20" - } - ] - }, - "functionSelector": "549cfd1c", - "id": 4520, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getFederatorPublicKeyOfType", - "nameLocation": "3625:27:20", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4510, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "3703:8:20" - }, - "parameters": { - "id": 4509, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4506, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4520, - "src": "3655:6:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4505, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "3655:6:20", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4508, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4520, - "src": "3663:15:20", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 4507, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3663:6:20", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "3653:27:20" - }, - "returnParameters": { - "id": 4513, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4512, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4520, - "src": "3721:12:20", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 4511, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "3721:5:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "3720:14:20" - }, - "scope": 5031, - "src": "3616:146:20", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 3884 - ], - "body": { - "id": 4531, - "nodeType": "Block", - "src": "3847:19:20", - "statements": [ - { - "expression": { - "arguments": [ - { - "hexValue": "30", - "id": 4528, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3862:1:20", - "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": 4527, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "3855:6:20", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_int256_$", - "typeString": "type(int256)" - }, - "typeName": { - "id": 4526, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "3855:6:20", - "typeDescriptions": {} - } - }, - "id": 4529, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "3855:9:20", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "functionReturnParameters": 4525, - "id": 4530, - "nodeType": "Return", - "src": "3848:16:20" - } - ] - }, - "functionSelector": "5e2db9d4", - "id": 4532, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getFederationCreationTime", - "nameLocation": "3776:25:20", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4522, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "3821:8:20" - }, - "parameters": { - "id": 4521, - "nodeType": "ParameterList", - "parameters": [], - "src": "3802:4:20" - }, - "returnParameters": { - "id": 4525, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4524, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4532, - "src": "3839:6:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4523, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "3839:6:20", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "3838:8:20" - }, - "scope": 5031, - "src": "3767:99:20", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 3889 - ], - "body": { - "id": 4543, - "nodeType": "Block", - "src": "3958:19:20", - "statements": [ - { - "expression": { - "arguments": [ - { - "hexValue": "30", - "id": 4540, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3973:1:20", - "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": 4539, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "3966:6:20", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_int256_$", - "typeString": "type(int256)" - }, - "typeName": { - "id": 4538, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "3966:6:20", - "typeDescriptions": {} - } - }, - "id": 4541, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "3966:9:20", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "functionReturnParameters": 4537, - "id": 4542, - "nodeType": "Return", - "src": "3959:16:20" - } - ] - }, - "functionSelector": "1b2045ee", - "id": 4544, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getFederationCreationBlockNumber", - "nameLocation": "3880:32:20", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4534, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "3932:8:20" - }, - "parameters": { - "id": 4533, - "nodeType": "ParameterList", - "parameters": [], - "src": "3913:4:20" - }, - "returnParameters": { - "id": 4537, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4536, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4544, - "src": "3950:6:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4535, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "3950:6:20", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "3949:8:20" - }, - "scope": 5031, - "src": "3871:106:20", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 3894 - ], - "body": { - "id": 4552, - "nodeType": "Block", - "src": "4073:12:20", - "statements": [ - { - "expression": { - "hexValue": "", - "id": 4550, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4081:2:20", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - }, - "value": "" - }, - "functionReturnParameters": 4549, - "id": 4551, - "nodeType": "Return", - "src": "4074:9:20" - } - ] - }, - "functionSelector": "47227286", - "id": 4553, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getRetiringFederationAddress", - "nameLocation": "3991:28:20", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4546, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "4039:8:20" - }, - "parameters": { - "id": 4545, - "nodeType": "ParameterList", - "parameters": [], - "src": "4020:4:20" - }, - "returnParameters": { - "id": 4549, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4548, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4553, - "src": "4057:13:20", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 4547, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "4057:6:20", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "4056:15:20" - }, - "scope": 5031, - "src": "3982:103:20", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 3899 - ], - "body": { - "id": 4564, - "nodeType": "Block", - "src": "4171:19:20", - "statements": [ - { - "expression": { - "arguments": [ - { - "hexValue": "30", - "id": 4561, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4186:1:20", - "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": 4560, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "4179:6:20", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_int256_$", - "typeString": "type(int256)" - }, - "typeName": { - "id": 4559, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "4179:6:20", - "typeDescriptions": {} - } - }, - "id": 4562, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4179:9:20", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "functionReturnParameters": 4558, - "id": 4563, - "nodeType": "Return", - "src": "4172:16:20" - } - ] - }, - "functionSelector": "d970b0fd", - "id": 4565, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getRetiringFederationSize", - "nameLocation": "4099:25:20", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4555, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "4139:8:20" - }, - "parameters": { - "id": 4554, - "nodeType": "ParameterList", - "parameters": [], - "src": "4125:4:20" - }, - "returnParameters": { - "id": 4558, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4557, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4565, - "src": "4163:6:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4556, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "4163:6:20", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "4162:8:20" - }, - "scope": 5031, - "src": "4090:100:20", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 3904 - ], - "body": { - "id": 4576, - "nodeType": "Block", - "src": "4281:19:20", - "statements": [ - { - "expression": { - "arguments": [ - { - "hexValue": "30", - "id": 4573, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4296:1:20", - "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": 4572, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "4289:6:20", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_int256_$", - "typeString": "type(int256)" - }, - "typeName": { - "id": 4571, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "4289:6:20", - "typeDescriptions": {} - } - }, - "id": 4574, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4289:9:20", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "functionReturnParameters": 4570, - "id": 4575, - "nodeType": "Return", - "src": "4282:16:20" - } - ] - }, - "functionSelector": "07bbdfc4", - "id": 4577, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getRetiringFederationThreshold", - "nameLocation": "4204:30:20", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4567, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "4249:8:20" - }, - "parameters": { - "id": 4566, - "nodeType": "ParameterList", - "parameters": [], - "src": "4235:4:20" - }, - "returnParameters": { - "id": 4570, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4569, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4577, - "src": "4273:6:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4568, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "4273:6:20", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "4272:8:20" - }, - "scope": 5031, - "src": "4195:105:20", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 3911 - ], - "body": { - "id": 4590, - "nodeType": "Block", - "src": "4410:27:20", - "statements": [ - { - "assignments": [ - 4586 - ], - "declarations": [ - { - "constant": false, - "id": 4586, - "mutability": "mutable", - "name": "b", - "nameLocation": "4424:1:20", - "nodeType": "VariableDeclaration", - "scope": 4590, - "src": "4411:14:20", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 4585, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "4411:5:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 4587, - "nodeType": "VariableDeclarationStatement", - "src": "4411:14:20" - }, - { - "expression": { - "id": 4588, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4586, - "src": "4434:1:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 4584, - "id": 4589, - "nodeType": "Return", - "src": "4427:8:20" - } - ] - }, - "functionSelector": "4675d6de", - "id": 4591, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getRetiringFederatorPublicKey", - "nameLocation": "4314:29:20", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4581, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "4364:8:20" - }, - "parameters": { - "id": 4580, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4579, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4591, - "src": "4346:6:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4578, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "4346:6:20", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "4344:10:20" - }, - "returnParameters": { - "id": 4584, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4583, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4591, - "src": "4388:12:20", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 4582, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "4388:5:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "4387:14:20" - }, - "scope": 5031, - "src": "4305:132:20", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 3920 - ], - "body": { - "id": 4606, - "nodeType": "Block", - "src": "4568:27:20", - "statements": [ - { - "assignments": [ - 4602 - ], - "declarations": [ - { - "constant": false, - "id": 4602, - "mutability": "mutable", - "name": "b", - "nameLocation": "4582:1:20", - "nodeType": "VariableDeclaration", - "scope": 4606, - "src": "4569:14:20", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 4601, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "4569:5:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 4603, - "nodeType": "VariableDeclarationStatement", - "src": "4569:14:20" - }, - { - "expression": { - "id": 4604, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4602, - "src": "4592:1:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 4600, - "id": 4605, - "nodeType": "Return", - "src": "4585:8:20" - } - ] - }, - "functionSelector": "68bc2b2b", - "id": 4607, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getRetiringFederatorPublicKeyOfType", - "nameLocation": "4451:35:20", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4597, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "4528:8:20" - }, - "parameters": { - "id": 4596, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4593, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4607, - "src": "4489:6:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4592, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "4489:6:20", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4595, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4607, - "src": "4496:15:20", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 4594, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "4496:6:20", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "4487:26:20" - }, - "returnParameters": { - "id": 4600, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4599, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4607, - "src": "4554:12:20", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 4598, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "4554:5:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "4553:14:20" - }, - "scope": 5031, - "src": "4442:153:20", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 3925 - ], - "body": { - "id": 4618, - "nodeType": "Block", - "src": "4688:19:20", - "statements": [ - { - "expression": { - "arguments": [ - { - "hexValue": "30", - "id": 4615, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4703:1:20", - "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": 4614, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "4696:6:20", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_int256_$", - "typeString": "type(int256)" - }, - "typeName": { - "id": 4613, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "4696:6:20", - "typeDescriptions": {} - } - }, - "id": 4616, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4696:9:20", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "functionReturnParameters": 4612, - "id": 4617, - "nodeType": "Return", - "src": "4689:16:20" - } - ] - }, - "functionSelector": "3f0ce9b1", - "id": 4619, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getRetiringFederationCreationTime", - "nameLocation": "4609:33:20", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4609, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "4662:8:20" - }, - "parameters": { - "id": 4608, - "nodeType": "ParameterList", - "parameters": [], - "src": "4643:4:20" - }, - "returnParameters": { - "id": 4612, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4611, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4619, - "src": "4680:6:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4610, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "4680:6:20", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "4679:8:20" - }, - "scope": 5031, - "src": "4600:107:20", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 3930 - ], - "body": { - "id": 4630, - "nodeType": "Block", - "src": "4816:19:20", - "statements": [ - { - "expression": { - "arguments": [ - { - "hexValue": "30", - "id": 4627, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4831:1:20", - "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": 4626, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "4824:6:20", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_int256_$", - "typeString": "type(int256)" - }, - "typeName": { - "id": 4625, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "4824:6:20", - "typeDescriptions": {} - } - }, - "id": 4628, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4824:9:20", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "functionReturnParameters": 4624, - "id": 4629, - "nodeType": "Return", - "src": "4817:16:20" - } - ] - }, - "functionSelector": "d905153f", - "id": 4631, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getRetiringFederationCreationBlockNumber", - "nameLocation": "4721:40:20", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4621, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "4776:8:20" - }, - "parameters": { - "id": 4620, - "nodeType": "ParameterList", - "parameters": [], - "src": "4762:4:20" - }, - "returnParameters": { - "id": 4624, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4623, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4631, - "src": "4808:6:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4622, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "4808:6:20", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "4807:8:20" - }, - "scope": 5031, - "src": "4712:123:20", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 3935 - ], - "body": { - "id": 4642, - "nodeType": "Block", - "src": "4911:19:20", - "statements": [ - { - "expression": { - "arguments": [ - { - "hexValue": "30", - "id": 4639, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4926:1:20", - "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": 4638, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "4919:6:20", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_int256_$", - "typeString": "type(int256)" - }, - "typeName": { - "id": 4637, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "4919:6:20", - "typeDescriptions": {} - } - }, - "id": 4640, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4919:9:20", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "functionReturnParameters": 4636, - "id": 4641, - "nodeType": "Return", - "src": "4912:16:20" - } - ] - }, - "functionSelector": "1183d5d1", - "id": 4643, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "createFederation", - "nameLocation": "4849:16:20", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4633, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "4885:8:20" - }, - "parameters": { - "id": 4632, - "nodeType": "ParameterList", - "parameters": [], - "src": "4866:4:20" - }, - "returnParameters": { - "id": 4636, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4635, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4643, - "src": "4903:6:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4634, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "4903:6:20", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "4902:8:20" - }, - "scope": 5031, - "src": "4840:90:20", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 3942 - ], - "body": { - "id": 4656, - "nodeType": "Block", - "src": "5033:19:20", - "statements": [ - { - "expression": { - "arguments": [ - { - "hexValue": "30", - "id": 4653, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5048:1:20", - "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": 4652, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "5041:6:20", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_int256_$", - "typeString": "type(int256)" - }, - "typeName": { - "id": 4651, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "5041:6:20", - "typeDescriptions": {} - } - }, - "id": 4654, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5041:9:20", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "functionReturnParameters": 4650, - "id": 4655, - "nodeType": "Return", - "src": "5034:16:20" - } - ] - }, - "functionSelector": "ecefd339", - "id": 4657, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "addFederatorPublicKey", - "nameLocation": "4944:21:20", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4647, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "4999:8:20" - }, - "parameters": { - "id": 4646, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4645, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4657, - "src": "4968:14:20", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 4644, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "4968:5:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "4966:18:20" - }, - "returnParameters": { - "id": 4650, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4649, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4657, - "src": "5017:6:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4648, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "5017:6:20", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "5016:8:20" - }, - "scope": 5031, - "src": "4935:117:20", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 3953 - ], - "body": { - "id": 4674, - "nodeType": "Block", - "src": "5198:19:20", - "statements": [ - { - "expression": { - "arguments": [ - { - "hexValue": "30", - "id": 4671, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5213:1:20", - "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": 4670, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "5206:6:20", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_int256_$", - "typeString": "type(int256)" - }, - "typeName": { - "id": 4669, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "5206:6:20", - "typeDescriptions": {} - } - }, - "id": 4672, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5206:9:20", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "functionReturnParameters": 4668, - "id": 4673, - "nodeType": "Return", - "src": "5199:16:20" - } - ] - }, - "functionSelector": "444ff9da", - "id": 4675, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "addFederatorPublicKeyMultikey", - "nameLocation": "5066:29:20", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4665, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "5172:8:20" - }, - "parameters": { - "id": 4664, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4659, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4675, - "src": "5098:14:20", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 4658, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "5098:5:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4661, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4675, - "src": "5115:14:20", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 4660, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "5115:5:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4663, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4675, - "src": "5132:14:20", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 4662, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "5132:5:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "5096:53:20" - }, - "returnParameters": { - "id": 4668, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4667, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4675, - "src": "5190:6:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4666, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "5190:6:20", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "5189:8:20" - }, - "scope": 5031, - "src": "5057:160:20", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 3960 - ], - "body": { - "id": 4688, - "nodeType": "Block", - "src": "5307:19:20", - "statements": [ - { - "expression": { - "arguments": [ - { - "hexValue": "30", - "id": 4685, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5322:1:20", - "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": 4684, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "5315:6:20", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_int256_$", - "typeString": "type(int256)" - }, - "typeName": { - "id": 4683, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "5315:6:20", - "typeDescriptions": {} - } - }, - "id": 4686, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5315:9:20", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "functionReturnParameters": 4682, - "id": 4687, - "nodeType": "Return", - "src": "5308:16:20" - } - ] - }, - "functionSelector": "1533330f", - "id": 4689, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "commitFederation", - "nameLocation": "5231:16:20", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4679, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "5281:8:20" - }, - "parameters": { - "id": 4678, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4677, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4689, - "src": "5250:14:20", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 4676, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "5250:5:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "5248:18:20" - }, - "returnParameters": { - "id": 4682, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4681, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4689, - "src": "5299:6:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4680, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "5299:6:20", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "5298:8:20" - }, - "scope": 5031, - "src": "5222:104:20", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 3965 - ], - "body": { - "id": 4700, - "nodeType": "Block", - "src": "5404:19:20", - "statements": [ - { - "expression": { - "arguments": [ - { - "hexValue": "30", - "id": 4697, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5419:1:20", - "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": 4696, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "5412:6:20", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_int256_$", - "typeString": "type(int256)" - }, - "typeName": { - "id": 4695, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "5412:6:20", - "typeDescriptions": {} - } - }, - "id": 4698, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5412:9:20", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "functionReturnParameters": 4694, - "id": 4699, - "nodeType": "Return", - "src": "5405:16:20" - } - ] - }, - "functionSelector": "8dec3d32", - "id": 4701, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "rollbackFederation", - "nameLocation": "5340:18:20", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4691, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "5378:8:20" - }, - "parameters": { - "id": 4690, - "nodeType": "ParameterList", - "parameters": [], - "src": "5359:4:20" - }, - "returnParameters": { - "id": 4694, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4693, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4701, - "src": "5396:6:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4692, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "5396:6:20", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "5395:8:20" - }, - "scope": 5031, - "src": "5331:92:20", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 3970 - ], - "body": { - "id": 4712, - "nodeType": "Block", - "src": "5513:27:20", - "statements": [ - { - "assignments": [ - 4708 - ], - "declarations": [ - { - "constant": false, - "id": 4708, - "mutability": "mutable", - "name": "b", - "nameLocation": "5527:1:20", - "nodeType": "VariableDeclaration", - "scope": 4712, - "src": "5514:14:20", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 4707, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "5514:5:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 4709, - "nodeType": "VariableDeclarationStatement", - "src": "5514:14:20" - }, - { - "expression": { - "id": 4710, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4708, - "src": "5537:1:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 4706, - "id": 4711, - "nodeType": "Return", - "src": "5530:8:20" - } - ] - }, - "functionSelector": "6ce0ed5a", - "id": 4713, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getPendingFederationHash", - "nameLocation": "5437:24:20", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4703, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "5481:8:20" - }, - "parameters": { - "id": 4702, - "nodeType": "ParameterList", - "parameters": [], - "src": "5462:4:20" - }, - "returnParameters": { - "id": 4706, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4705, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4713, - "src": "5499:12:20", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 4704, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "5499:5:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "5498:14:20" - }, - "scope": 5031, - "src": "5428:112:20", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 3975 - ], - "body": { - "id": 4724, - "nodeType": "Block", - "src": "5624:19:20", - "statements": [ - { - "expression": { - "arguments": [ - { - "hexValue": "30", - "id": 4721, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5639:1:20", - "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": 4720, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "5632:6:20", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_int256_$", - "typeString": "type(int256)" - }, - "typeName": { - "id": 4719, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "5632:6:20", - "typeDescriptions": {} - } - }, - "id": 4722, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5632:9:20", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "functionReturnParameters": 4718, - "id": 4723, - "nodeType": "Return", - "src": "5625:16:20" - } - ] - }, - "functionSelector": "3ac72b38", - "id": 4725, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getPendingFederationSize", - "nameLocation": "5554:24:20", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4715, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "5598:8:20" - }, - "parameters": { - "id": 4714, - "nodeType": "ParameterList", - "parameters": [], - "src": "5579:4:20" - }, - "returnParameters": { - "id": 4718, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4717, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4725, - "src": "5616:6:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4716, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "5616:6:20", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "5615:8:20" - }, - "scope": 5031, - "src": "5545:98:20", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 3982 - ], - "body": { - "id": 4738, - "nodeType": "Block", - "src": "5752:27:20", - "statements": [ - { - "assignments": [ - 4734 - ], - "declarations": [ - { - "constant": false, - "id": 4734, - "mutability": "mutable", - "name": "b", - "nameLocation": "5766:1:20", - "nodeType": "VariableDeclaration", - "scope": 4738, - "src": "5753:14:20", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 4733, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "5753:5:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 4735, - "nodeType": "VariableDeclarationStatement", - "src": "5753:14:20" - }, - { - "expression": { - "id": 4736, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4734, - "src": "5776:1:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 4732, - "id": 4737, - "nodeType": "Return", - "src": "5769:8:20" - } - ] - }, - "functionSelector": "492f7c44", - "id": 4739, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getPendingFederatorPublicKey", - "nameLocation": "5657:28:20", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4729, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "5712:8:20" - }, - "parameters": { - "id": 4728, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4727, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4739, - "src": "5688:6:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4726, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "5688:6:20", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "5686:11:20" - }, - "returnParameters": { - "id": 4732, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4731, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4739, - "src": "5730:12:20", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 4730, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "5730:5:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "5729:14:20" - }, - "scope": 5031, - "src": "5648:131:20", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 3991 - ], - "body": { - "id": 4754, - "nodeType": "Block", - "src": "5912:27:20", - "statements": [ - { - "assignments": [ - 4750 - ], - "declarations": [ - { - "constant": false, - "id": 4750, - "mutability": "mutable", - "name": "b", - "nameLocation": "5926:1:20", - "nodeType": "VariableDeclaration", - "scope": 4754, - "src": "5913:14:20", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 4749, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "5913:5:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 4751, - "nodeType": "VariableDeclarationStatement", - "src": "5913:14:20" - }, - { - "expression": { - "id": 4752, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4750, - "src": "5936:1:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 4748, - "id": 4753, - "nodeType": "Return", - "src": "5929:8:20" - } - ] - }, - "functionSelector": "c61295d9", - "id": 4755, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getPendingFederatorPublicKeyOfType", - "nameLocation": "5793:34:20", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4745, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "5872:8:20" - }, - "parameters": { - "id": 4744, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4741, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4755, - "src": "5830:6:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4740, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "5830:6:20", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4743, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4755, - "src": "5839:15:20", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 4742, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "5839:6:20", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "5828:29:20" - }, - "returnParameters": { - "id": 4748, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4747, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4755, - "src": "5898:12:20", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 4746, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "5898:5:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "5897:14:20" - }, - "scope": 5031, - "src": "5784:155:20", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 3996 - ], - "body": { - "id": 4766, - "nodeType": "Block", - "src": "6019:19:20", - "statements": [ - { - "expression": { - "arguments": [ - { - "hexValue": "30", - "id": 4763, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6034:1:20", - "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": 4762, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "6027:6:20", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_int256_$", - "typeString": "type(int256)" - }, - "typeName": { - "id": 4761, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "6027:6:20", - "typeDescriptions": {} - } - }, - "id": 4764, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "6027:9:20", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "functionReturnParameters": 4760, - "id": 4765, - "nodeType": "Return", - "src": "6020:16:20" - } - ] - }, - "functionSelector": "e9e658dc", - "id": 4767, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getLockWhitelistSize", - "nameLocation": "5953:20:20", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4757, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "5993:8:20" - }, - "parameters": { - "id": 4756, - "nodeType": "ParameterList", - "parameters": [], - "src": "5974:4:20" - }, - "returnParameters": { - "id": 4760, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4759, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4767, - "src": "6011:6:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4758, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "6011:6:20", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "6010:8:20" - }, - "scope": 5031, - "src": "5944:94:20", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 4003 - ], - "body": { - "id": 4777, - "nodeType": "Block", - "src": "6135:12:20", - "statements": [ - { - "expression": { - "hexValue": "", - "id": 4775, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6143:2:20", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - }, - "value": "" - }, - "functionReturnParameters": 4774, - "id": 4776, - "nodeType": "Return", - "src": "6136:9:20" - } - ] - }, - "functionSelector": "93988b76", - "id": 4778, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getLockWhitelistAddress", - "nameLocation": "6052:23:20", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4771, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "6102:8:20" - }, - "parameters": { - "id": 4770, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4769, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4778, - "src": "6078:6:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4768, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "6078:6:20", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "6076:11:20" - }, - "returnParameters": { - "id": 4774, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4773, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4778, - "src": "6120:13:20", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 4772, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "6120:6:20", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "6119:15:20" - }, - "scope": 5031, - "src": "6043:104:20", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 4010 - ], - "body": { - "id": 4791, - "nodeType": "Block", - "src": "6262:19:20", - "statements": [ - { - "expression": { - "arguments": [ - { - "hexValue": "30", - "id": 4788, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6277:1:20", - "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": 4787, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "6270:6:20", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_int256_$", - "typeString": "type(int256)" - }, - "typeName": { - "id": 4786, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "6270:6:20", - "typeDescriptions": {} - } - }, - "id": 4789, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "6270:9:20", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "functionReturnParameters": 4785, - "id": 4790, - "nodeType": "Return", - "src": "6263:16:20" - } - ] - }, - "functionSelector": "251c5f7b", - "id": 4792, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getLockWhitelistEntryByAddress", - "nameLocation": "6161:30:20", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4782, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "6228:8:20" - }, - "parameters": { - "id": 4781, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4780, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4792, - "src": "6194:15:20", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 4779, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "6194:6:20", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "6192:20:20" - }, - "returnParameters": { - "id": 4785, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4784, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4792, - "src": "6246:6:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4783, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "6246:6:20", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "6245:8:20" - }, - "scope": 5031, - "src": "6152:129:20", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 4019 - ], - "body": { - "id": 4807, - "nodeType": "Block", - "src": "6397:19:20", - "statements": [ - { - "expression": { - "arguments": [ - { - "hexValue": "30", - "id": 4804, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6412:1:20", - "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": 4803, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "6405:6:20", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_int256_$", - "typeString": "type(int256)" - }, - "typeName": { - "id": 4802, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "6405:6:20", - "typeDescriptions": {} - } - }, - "id": 4805, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "6405:9:20", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "functionReturnParameters": 4801, - "id": 4806, - "nodeType": "Return", - "src": "6398:16:20" - } - ] - }, - "functionSelector": "502bbbce", - "id": 4808, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "addLockWhitelistAddress", - "nameLocation": "6295:23:20", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4798, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "6363:8:20" - }, - "parameters": { - "id": 4797, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4794, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4808, - "src": "6321:15:20", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 4793, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "6321:6:20", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4796, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4808, - "src": "6339:6:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4795, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "6339:6:20", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "6319:29:20" - }, - "returnParameters": { - "id": 4801, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4800, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4808, - "src": "6381:6:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4799, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "6381:6:20", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "6380:8:20" - }, - "scope": 5031, - "src": "6286:130:20", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 4028 - ], - "body": { - "id": 4823, - "nodeType": "Block", - "src": "6538:19:20", - "statements": [ - { - "expression": { - "arguments": [ - { - "hexValue": "30", - "id": 4820, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6553:1:20", - "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": 4819, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "6546:6:20", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_int256_$", - "typeString": "type(int256)" - }, - "typeName": { - "id": 4818, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "6546:6:20", - "typeDescriptions": {} - } - }, - "id": 4821, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "6546:9:20", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "functionReturnParameters": 4817, - "id": 4822, - "nodeType": "Return", - "src": "6539:16:20" - } - ] - }, - "functionSelector": "848206d9", - "id": 4824, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "addOneOffLockWhitelistAddress", - "nameLocation": "6430:29:20", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4814, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "6504:8:20" - }, - "parameters": { - "id": 4813, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4810, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4824, - "src": "6462:15:20", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 4809, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "6462:6:20", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4812, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4824, - "src": "6480:6:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4811, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "6480:6:20", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "6460:29:20" - }, - "returnParameters": { - "id": 4817, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4816, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4824, - "src": "6530:6:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4815, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "6530:6:20", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "6529:8:20" - }, - "scope": 5031, - "src": "6421:136:20", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 4035 - ], - "body": { - "id": 4837, - "nodeType": "Block", - "src": "6673:19:20", - "statements": [ - { - "expression": { - "arguments": [ - { - "hexValue": "30", - "id": 4834, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6688:1:20", - "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": 4833, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "6681:6:20", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_int256_$", - "typeString": "type(int256)" - }, - "typeName": { - "id": 4832, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "6681:6:20", - "typeDescriptions": {} - } - }, - "id": 4835, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "6681:9:20", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "functionReturnParameters": 4831, - "id": 4836, - "nodeType": "Return", - "src": "6674:16:20" - } - ] - }, - "functionSelector": "b906c938", - "id": 4838, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "addUnlimitedLockWhitelistAddress", - "nameLocation": "6571:32:20", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4828, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "6639:8:20" - }, - "parameters": { - "id": 4827, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4826, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4838, - "src": "6606:15:20", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 4825, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "6606:6:20", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "6604:20:20" - }, - "returnParameters": { - "id": 4831, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4830, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4838, - "src": "6657:6:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4829, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "6657:6:20", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "6656:8:20" - }, - "scope": 5031, - "src": "6562:130:20", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 4042 - ], - "body": { - "id": 4851, - "nodeType": "Block", - "src": "6802:19:20", - "statements": [ - { - "expression": { - "arguments": [ - { - "hexValue": "30", - "id": 4848, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6817:1:20", - "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": 4847, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "6810:6:20", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_int256_$", - "typeString": "type(int256)" - }, - "typeName": { - "id": 4846, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "6810:6:20", - "typeDescriptions": {} - } - }, - "id": 4849, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "6810:9:20", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "functionReturnParameters": 4845, - "id": 4850, - "nodeType": "Return", - "src": "6803:16:20" - } - ] - }, - "functionSelector": "fcdeb46f", - "id": 4852, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "removeLockWhitelistAddress", - "nameLocation": "6706:26:20", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4842, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "6768:8:20" - }, - "parameters": { - "id": 4841, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4840, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4852, - "src": "6735:15:20", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string" - }, - "typeName": { - "id": 4839, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "6735:6:20", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "6733:20:20" - }, - "returnParameters": { - "id": 4845, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4844, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4852, - "src": "6786:6:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4843, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "6786:6:20", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "6785:8:20" - }, - "scope": 5031, - "src": "6697:124:20", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 4049 - ], - "body": { - "id": 4865, - "nodeType": "Block", - "src": "6929:19:20", - "statements": [ - { - "expression": { - "arguments": [ - { - "hexValue": "30", - "id": 4862, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6944:1:20", - "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": 4861, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "6937:6:20", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_int256_$", - "typeString": "type(int256)" - }, - "typeName": { - "id": 4860, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "6937:6:20", - "typeDescriptions": {} - } - }, - "id": 4863, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "6937:9:20", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "functionReturnParameters": 4859, - "id": 4864, - "nodeType": "Return", - "src": "6930:16:20" - } - ] - }, - "functionSelector": "c1cc54f5", - "id": 4866, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "setLockWhitelistDisableBlockDelay", - "nameLocation": "6835:33:20", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4856, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "6895:8:20" - }, - "parameters": { - "id": 4855, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4854, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4866, - "src": "6871:6:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4853, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "6871:6:20", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "6869:11:20" - }, - "returnParameters": { - "id": 4859, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4858, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4866, - "src": "6913:6:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4857, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "6913:6:20", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "6912:8:20" - }, - "scope": 5031, - "src": "6826:122:20", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 4054 - ], - "body": { - "id": 4877, - "nodeType": "Block", - "src": "7019:19:20", - "statements": [ - { - "expression": { - "arguments": [ - { - "hexValue": "30", - "id": 4874, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7034:1:20", - "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": 4873, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "7027:6:20", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_int256_$", - "typeString": "type(int256)" - }, - "typeName": { - "id": 4872, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "7027:6:20", - "typeDescriptions": {} - } - }, - "id": 4875, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "7027:9:20", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "functionReturnParameters": 4871, - "id": 4876, - "nodeType": "Return", - "src": "7020:16:20" - } - ] - }, - "functionSelector": "724ec886", - "id": 4878, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getFeePerKb", - "nameLocation": "6962:11:20", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4868, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "6993:8:20" - }, - "parameters": { - "id": 4867, - "nodeType": "ParameterList", - "parameters": [], - "src": "6974:4:20" - }, - "returnParameters": { - "id": 4871, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4870, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4878, - "src": "7011:6:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4869, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "7011:6:20", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "7010:8:20" - }, - "scope": 5031, - "src": "6953:85:20", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 4061 - ], - "body": { - "id": 4891, - "nodeType": "Block", - "src": "7123:19:20", - "statements": [ - { - "expression": { - "arguments": [ - { - "hexValue": "30", - "id": 4888, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7138:1:20", - "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": 4887, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "7131:6:20", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_int256_$", - "typeString": "type(int256)" - }, - "typeName": { - "id": 4886, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "7131:6:20", - "typeDescriptions": {} - } - }, - "id": 4889, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "7131:9:20", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "functionReturnParameters": 4885, - "id": 4890, - "nodeType": "Return", - "src": "7124:16:20" - } - ] - }, - "functionSelector": "0461313e", - "id": 4892, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "voteFeePerKbChange", - "nameLocation": "7052:18:20", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4882, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "7097:8:20" - }, - "parameters": { - "id": 4881, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4880, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4892, - "src": "7073:6:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4879, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "7073:6:20", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "7071:11:20" - }, - "returnParameters": { - "id": 4885, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4884, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4892, - "src": "7115:6:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4883, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "7115:6:20", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "7114:8:20" - }, - "scope": 5031, - "src": "7043:99:20", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 4064 - ], - "body": { - "id": 4896, - "nodeType": "Block", - "src": "7197:2:20", - "statements": [] - }, - "functionSelector": "0c5a9990", - "id": 4897, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "updateCollections", - "nameLocation": "7156:17:20", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4894, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "7188:8:20" - }, - "parameters": { - "id": 4893, - "nodeType": "ParameterList", - "parameters": [], - "src": "7174:4:20" - }, - "returnParameters": { - "id": 4895, - "nodeType": "ParameterList", - "parameters": [], - "src": "7197:0:20" - }, - "scope": 5031, - "src": "7147:52:20", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 4069 - ], - "body": { - "id": 4908, - "nodeType": "Block", - "src": "7280:19:20", - "statements": [ - { - "expression": { - "arguments": [ - { - "hexValue": "32", - "id": 4905, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7295:1:20", - "typeDescriptions": { - "typeIdentifier": "t_rational_2_by_1", - "typeString": "int_const 2" - }, - "value": "2" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_rational_2_by_1", - "typeString": "int_const 2" - } - ], - "id": 4904, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "7288:6:20", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_int256_$", - "typeString": "type(int256)" - }, - "typeName": { - "id": 4903, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "7288:6:20", - "typeDescriptions": {} - } - }, - "id": 4906, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "7288:9:20", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "functionReturnParameters": 4902, - "id": 4907, - "nodeType": "Return", - "src": "7281:16:20" - } - ] - }, - "functionSelector": "2f8d158f", - "id": 4909, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getMinimumLockTxValue", - "nameLocation": "7213:21:20", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4899, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "7254:8:20" - }, - "parameters": { - "id": 4898, - "nodeType": "ParameterList", - "parameters": [], - "src": "7235:4:20" - }, - "returnParameters": { - "id": 4902, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4901, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4909, - "src": "7272:6:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4900, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "7272:6:20", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "7271:8:20" - }, - "scope": 5031, - "src": "7204:95:20", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 4083 - ], - "body": { - "id": 4929, - "nodeType": "Block", - "src": "7445:19:20", - "statements": [ - { - "expression": { - "arguments": [ - { - "hexValue": "32", - "id": 4926, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7460:1:20", - "typeDescriptions": { - "typeIdentifier": "t_rational_2_by_1", - "typeString": "int_const 2" - }, - "value": "2" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_rational_2_by_1", - "typeString": "int_const 2" - } - ], - "id": 4925, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "7453:6:20", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_int256_$", - "typeString": "type(int256)" - }, - "typeName": { - "id": 4924, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "7453:6:20", - "typeDescriptions": {} - } - }, - "id": 4927, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "7453:9:20", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "functionReturnParameters": 4923, - "id": 4928, - "nodeType": "Return", - "src": "7446:16:20" - } - ] - }, - "functionSelector": "5b644587", - "id": 4930, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getBtcTransactionConfirmations", - "nameLocation": "7313:30:20", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4920, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "7419:8:20" - }, - "parameters": { - "id": 4919, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4911, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4930, - "src": "7346:7:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 4910, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "7346:7:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4913, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4930, - "src": "7356:7:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 4912, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "7356:7:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4915, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4930, - "src": "7365:7:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 4914, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "7365:7:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4918, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4930, - "src": "7375:18:20", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr", - "typeString": "bytes32[]" - }, - "typeName": { - "baseType": { - "id": 4916, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "7375:7:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "id": 4917, - "nodeType": "ArrayTypeName", - "src": "7375:9:20", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr", - "typeString": "bytes32[]" - } - }, - "visibility": "internal" - } - ], - "src": "7344:52:20" - }, - "returnParameters": { - "id": 4923, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4922, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4930, - "src": "7437:6:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4921, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "7437:6:20", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "7436:8:20" - }, - "scope": 5031, - "src": "7304:160:20", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 4088 - ], - "body": { - "id": 4941, - "nodeType": "Block", - "src": "7537:19:20", - "statements": [ - { - "expression": { - "arguments": [ - { - "hexValue": "30", - "id": 4938, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7552:1:20", - "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": 4937, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "7545:6:20", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_int256_$", - "typeString": "type(int256)" - }, - "typeName": { - "id": 4936, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "7545:6:20", - "typeDescriptions": {} - } - }, - "id": 4939, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "7545:9:20", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "functionReturnParameters": 4935, - "id": 4940, - "nodeType": "Return", - "src": "7538:16:20" - } - ] - }, - "functionSelector": "3f9db977", - "id": 4942, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getLockingCap", - "nameLocation": "7478:13:20", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4932, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "7511:8:20" - }, - "parameters": { - "id": 4931, - "nodeType": "ParameterList", - "parameters": [], - "src": "7492:4:20" - }, - "returnParameters": { - "id": 4935, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4934, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4942, - "src": "7529:6:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4933, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "7529:6:20", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "7528:8:20" - }, - "scope": 5031, - "src": "7469:87:20", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 4095 - ], - "body": { - "id": 4952, - "nodeType": "Block", - "src": "7638:15:20", - "statements": [ - { - "expression": { - "hexValue": "66616c7365", - "id": 4950, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7646:5:20", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "false" - }, - "functionReturnParameters": 4949, - "id": 4951, - "nodeType": "Return", - "src": "7639:12:20" - } - ] - }, - "functionSelector": "2910aeb2", - "id": 4953, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "increaseLockingCap", - "nameLocation": "7570:18:20", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4946, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "7614:8:20" - }, - "parameters": { - "id": 4945, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4944, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4953, - "src": "7591:6:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 4943, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "7591:6:20", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "7589:10:20" - }, - "returnParameters": { - "id": 4949, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4948, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4953, - "src": "7632:4:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 4947, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "7632:4:20", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "7631:6:20" - }, - "scope": 5031, - "src": "7561:92:20", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 4108 - ], - "body": { - "id": 4967, - "nodeType": "Block", - "src": "7865:2:20", - "statements": [] - }, - "functionSelector": "ccf417ae", - "id": 4968, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "registerBtcCoinbaseTransaction", - "nameLocation": "7667:30:20", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4965, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "7856:8:20" - }, - "parameters": { - "id": 4964, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4955, - "mutability": "mutable", - "name": "btcTxSerialized", - "nameLocation": "7715:15:20", - "nodeType": "VariableDeclaration", - "scope": 4968, - "src": "7700:30:20", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 4954, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "7700:5:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4957, - "mutability": "mutable", - "name": "blockHash", - "nameLocation": "7740:9:20", - "nodeType": "VariableDeclaration", - "scope": 4968, - "src": "7732:17:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 4956, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "7732:7:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4959, - "mutability": "mutable", - "name": "pmtSerialized", - "nameLocation": "7774:13:20", - "nodeType": "VariableDeclaration", - "scope": 4968, - "src": "7751:36:20", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 4958, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "7751:5:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4961, - "mutability": "mutable", - "name": "witnessMerkleRoot", - "nameLocation": "7797:17:20", - "nodeType": "VariableDeclaration", - "scope": 4968, - "src": "7789:25:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 4960, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "7789:7:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 4963, - "mutability": "mutable", - "name": "witnessReservedValue", - "nameLocation": "7824:20:20", - "nodeType": "VariableDeclaration", - "scope": 4968, - "src": "7816:28:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 4962, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "7816:7:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "7698:148:20" - }, - "returnParameters": { - "id": 4966, - "nodeType": "ParameterList", - "parameters": [], - "src": "7865:0:20" - }, - "scope": 5031, - "src": "7658:209:20", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 4115 - ], - "body": { - "id": 4978, - "nodeType": "Block", - "src": "7982:15:20", - "statements": [ - { - "expression": { - "hexValue": "66616c7365", - "id": 4976, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7990:5:20", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "false" - }, - "functionReturnParameters": 4975, - "id": 4977, - "nodeType": "Return", - "src": "7983:12:20" - } - ] - }, - "functionSelector": "253b944b", - "id": 4979, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "hasBtcBlockCoinbaseTransactionInformation", - "nameLocation": "7881:41:20", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4972, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "7950:8:20" - }, - "parameters": { - "id": 4971, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4970, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4979, - "src": "7925:7:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 4969, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "7925:7:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "7923:12:20" - }, - "returnParameters": { - "id": 4975, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4974, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4979, - "src": "7976:4:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 4973, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "7976:4:20", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "7975:6:20" - }, - "scope": 5031, - "src": "7872:125:20", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 4141 - ], - "body": { - "id": 4990, - "nodeType": "Block", - "src": "8104:20:20", - "statements": [ - { - "expression": { - "arguments": [ - { - "hexValue": "30", - "id": 4987, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "8120:1:20", - "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": 4986, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "8112:7:20", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint256_$", - "typeString": "type(uint256)" - }, - "typeName": { - "id": 4985, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "8112:7:20", - "typeDescriptions": {} - } - }, - "id": 4988, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "8112:10:20", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 4984, - "id": 4989, - "nodeType": "Return", - "src": "8105:17:20" - } - ] - }, - "functionSelector": "177d6e18", - "id": 4991, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getActiveFederationCreationBlockHeight", - "nameLocation": "8011:38:20", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4981, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "8069:8:20" - }, - "parameters": { - "id": 4980, - "nodeType": "ParameterList", - "parameters": [], - "src": "8050:4:20" - }, - "returnParameters": { - "id": 4984, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4983, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 4991, - "src": "8087:7:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 4982, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "8087:7:20", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "8086:9:20" - }, - "scope": 5031, - "src": "8002:122:20", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 4151 - ], - "body": { - "id": 5002, - "nodeType": "Block", - "src": "8229:27:20", - "statements": [ - { - "assignments": [ - 4998 - ], - "declarations": [ - { - "constant": false, - "id": 4998, - "mutability": "mutable", - "name": "b", - "nameLocation": "8243:1:20", - "nodeType": "VariableDeclaration", - "scope": 5002, - "src": "8230:14:20", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 4997, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "8230:5:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 4999, - "nodeType": "VariableDeclarationStatement", - "src": "8230:14:20" - }, - { - "expression": { - "id": 5000, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4998, - "src": "8253:1:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 4996, - "id": 5001, - "nodeType": "Return", - "src": "8246:8:20" - } - ] - }, - "functionSelector": "f0b2424b", - "id": 5003, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getBtcBlockchainBestBlockHeader", - "nameLocation": "8138:31:20", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 4993, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "8189:8:20" - }, - "parameters": { - "id": 4992, - "nodeType": "ParameterList", - "parameters": [], - "src": "8170:4:20" - }, - "returnParameters": { - "id": 4996, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 4995, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 5003, - "src": "8207:12:20", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 4994, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "8207:5:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "8206:14:20" - }, - "scope": 5031, - "src": "8129:127:20", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 4158 - ], - "body": { - "id": 5015, - "nodeType": "Block", - "src": "8384:48:20", - "statements": [ - { - "expression": { - "baseExpression": { - "id": 5011, - "name": "headersByHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4190, - "src": "8401:13:20", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_bytes_storage_$", - "typeString": "mapping(bytes32 => bytes storage ref)" - } - }, - "id": 5013, - "indexExpression": { - "id": 5012, - "name": "blockHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5005, - "src": "8415:9:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "8401:24:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - }, - "functionReturnParameters": 5010, - "id": 5014, - "nodeType": "Return", - "src": "8394:31:20" - } - ] - }, - "functionSelector": "739e364a", - "id": 5016, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getBtcBlockchainBlockHeaderByHash", - "nameLocation": "8271:33:20", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 5007, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "8352:8:20" - }, - "parameters": { - "id": 5006, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5005, - "mutability": "mutable", - "name": "blockHash", - "nameLocation": "8322:9:20", - "nodeType": "VariableDeclaration", - "scope": 5016, - "src": "8314:17:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 5004, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "8314:7:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "8304:33:20" - }, - "returnParameters": { - "id": 5010, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5009, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 5016, - "src": "8370:12:20", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 5008, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "8370:5:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "8369:14:20" - }, - "scope": 5031, - "src": "8262:170:20", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "baseFunctions": [ - 4172 - ], - "body": { - "id": 5029, - "nodeType": "Block", - "src": "8552:27:20", - "statements": [ - { - "assignments": [ - 5025 - ], - "declarations": [ - { - "constant": false, - "id": 5025, - "mutability": "mutable", - "name": "b", - "nameLocation": "8566:1:20", - "nodeType": "VariableDeclaration", - "scope": 5029, - "src": "8553:14:20", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 5024, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "8553:5:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 5026, - "nodeType": "VariableDeclarationStatement", - "src": "8553:14:20" - }, - { - "expression": { - "id": 5027, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5025, - "src": "8576:1:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 5023, - "id": 5028, - "nodeType": "Return", - "src": "8569:8:20" - } - ] - }, - "functionSelector": "e0236724", - "id": 5030, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getBtcBlockchainParentBlockHeaderByHash", - "nameLocation": "8447:39:20", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 5020, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "8512:8:20" - }, - "parameters": { - "id": 5019, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5018, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 5030, - "src": "8489:7:20", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 5017, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "8489:7:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "8487:10:20" - }, - "returnParameters": { - "id": 5023, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5022, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 5030, - "src": "8538:12:20", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 5021, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "8538:5:20", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "8537:14:20" - }, - "scope": 5031, - "src": "8438:141:20", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - } - ], - "scope": 5032, - "src": "82:8500:20", - "usedErrors": [] - } - ], - "src": "32:8551:20" - }, - "compiler": { - "name": "solc", - "version": "0.8.18+commit.87f61d96.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "3.4.13", - "updatedAt": "2024-12-10T18:53:54.127Z", - "networkType": "ethereum", - "devdoc": { - "kind": "dev", - "methods": {}, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } -} \ No newline at end of file diff --git a/build/contracts/BtcUtils.json b/build/contracts/BtcUtils.json deleted file mode 100644 index 79908d2..0000000 --- a/build/contracts/BtcUtils.json +++ /dev/null @@ -1,31783 +0,0 @@ -{ - "contractName": "BtcUtils", - "abi": [ - { - "inputs": [], - "name": "version", - "outputs": [ - { - "internalType": "string", - "name": "", - "type": "string" - } - ], - "stateMutability": "pure", - "type": "function", - "constant": true - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "rawTx", - "type": "bytes" - } - ], - "name": "getOutputs", - "outputs": [ - { - "components": [ - { - "internalType": "uint64", - "name": "value", - "type": "uint64" - }, - { - "internalType": "bytes", - "name": "pkScript", - "type": "bytes" - }, - { - "internalType": "uint256", - "name": "scriptSize", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "totalSize", - "type": "uint256" - } - ], - "internalType": "struct BtcUtils.TxRawOutput[]", - "name": "", - "type": "tuple[]" - } - ], - "stateMutability": "pure", - "type": "function", - "constant": true - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "outputScript", - "type": "bytes" - }, - { - "internalType": "bool", - "name": "mainnet", - "type": "bool" - } - ], - "name": "outputScriptToAddress", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "stateMutability": "pure", - "type": "function", - "constant": true - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "pkScript", - "type": "bytes" - } - ], - "name": "isP2PKHOutput", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "pure", - "type": "function", - "constant": true - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "pkScript", - "type": "bytes" - } - ], - "name": "isP2SHOutput", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "pure", - "type": "function", - "constant": true - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "pkScript", - "type": "bytes" - } - ], - "name": "isP2WPKHOutput", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "pure", - "type": "function", - "constant": true - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "pkScript", - "type": "bytes" - } - ], - "name": "isP2WSHOutput", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "pure", - "type": "function", - "constant": true - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "pkScript", - "type": "bytes" - } - ], - "name": "isP2TROutput", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "pure", - "type": "function", - "constant": true - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "outputScript", - "type": "bytes" - }, - { - "internalType": "bool", - "name": "mainnet", - "type": "bool" - } - ], - "name": "parsePayToPubKeyHash", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "stateMutability": "pure", - "type": "function", - "constant": true - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "outputScript", - "type": "bytes" - }, - { - "internalType": "bool", - "name": "mainnet", - "type": "bool" - } - ], - "name": "parsePayToScriptHash", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "stateMutability": "pure", - "type": "function", - "constant": true - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "outputScript", - "type": "bytes" - } - ], - "name": "parsePayToWitnessPubKeyHash", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "stateMutability": "pure", - "type": "function", - "constant": true - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "outputScript", - "type": "bytes" - } - ], - "name": "parsePayToWitnessScriptHash", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "stateMutability": "pure", - "type": "function", - "constant": true - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "outputScript", - "type": "bytes" - } - ], - "name": "parsePayToTaproot", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "stateMutability": "pure", - "type": "function", - "constant": true - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "outputScript", - "type": "bytes" - } - ], - "name": "parseNullDataScript", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "stateMutability": "pure", - "type": "function", - "constant": true - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "btcTx", - "type": "bytes" - } - ], - "name": "hashBtcTx", - "outputs": [ - { - "internalType": "bytes32", - "name": "", - "type": "bytes32" - } - ], - "stateMutability": "pure", - "type": "function", - "constant": true - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "header", - "type": "bytes" - } - ], - "name": "getBtcBlockTimestamp", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "pure", - "type": "function", - "constant": true - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "p2sh", - "type": "bytes" - }, - { - "internalType": "bytes", - "name": "script", - "type": "bytes" - }, - { - "internalType": "bool", - "name": "mainnet", - "type": "bool" - } - ], - "name": "validateP2SHAdress", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "pure", - "type": "function", - "constant": true - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "script", - "type": "bytes" - }, - { - "internalType": "bool", - "name": "mainnet", - "type": "bool" - } - ], - "name": "getP2SHAddressFromScript", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "stateMutability": "pure", - "type": "function", - "constant": true - } - ], - "metadata": "{\"compiler\":{\"version\":\"0.8.18+commit.87f61d96\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"header\",\"type\":\"bytes\"}],\"name\":\"getBtcBlockTimestamp\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"rawTx\",\"type\":\"bytes\"}],\"name\":\"getOutputs\",\"outputs\":[{\"components\":[{\"internalType\":\"uint64\",\"name\":\"value\",\"type\":\"uint64\"},{\"internalType\":\"bytes\",\"name\":\"pkScript\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"scriptSize\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"totalSize\",\"type\":\"uint256\"}],\"internalType\":\"struct BtcUtils.TxRawOutput[]\",\"name\":\"\",\"type\":\"tuple[]\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"script\",\"type\":\"bytes\"},{\"internalType\":\"bool\",\"name\":\"mainnet\",\"type\":\"bool\"}],\"name\":\"getP2SHAddressFromScript\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"btcTx\",\"type\":\"bytes\"}],\"name\":\"hashBtcTx\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"pkScript\",\"type\":\"bytes\"}],\"name\":\"isP2PKHOutput\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"pkScript\",\"type\":\"bytes\"}],\"name\":\"isP2SHOutput\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"pkScript\",\"type\":\"bytes\"}],\"name\":\"isP2TROutput\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"pkScript\",\"type\":\"bytes\"}],\"name\":\"isP2WPKHOutput\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"pkScript\",\"type\":\"bytes\"}],\"name\":\"isP2WSHOutput\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"outputScript\",\"type\":\"bytes\"},{\"internalType\":\"bool\",\"name\":\"mainnet\",\"type\":\"bool\"}],\"name\":\"outputScriptToAddress\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"outputScript\",\"type\":\"bytes\"}],\"name\":\"parseNullDataScript\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"outputScript\",\"type\":\"bytes\"},{\"internalType\":\"bool\",\"name\":\"mainnet\",\"type\":\"bool\"}],\"name\":\"parsePayToPubKeyHash\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"outputScript\",\"type\":\"bytes\"},{\"internalType\":\"bool\",\"name\":\"mainnet\",\"type\":\"bool\"}],\"name\":\"parsePayToScriptHash\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"outputScript\",\"type\":\"bytes\"}],\"name\":\"parsePayToTaproot\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"outputScript\",\"type\":\"bytes\"}],\"name\":\"parsePayToWitnessPubKeyHash\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"outputScript\",\"type\":\"bytes\"}],\"name\":\"parsePayToWitnessScriptHash\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"p2sh\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"script\",\"type\":\"bytes\"},{\"internalType\":\"bool\",\"name\":\"mainnet\",\"type\":\"bool\"}],\"name\":\"validateP2SHAdress\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"version\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"getBtcBlockTimestamp(bytes)\":{\"details\":\"Gets the timestamp of a Bitcoin block header\",\"params\":{\"header\":\"The block header\"},\"returns\":{\"_0\":\"The timestamp of the block header\"}},\"getOutputs(bytes)\":{\"params\":{\"rawTx\":\"the raw transaction\"},\"returns\":{\"_0\":\"An array of `TxRawOutput` with the outputs of the transaction\"}},\"getP2SHAddressFromScript(bytes,bool)\":{\"params\":{\"mainnet\":\"flag to specify if the output should be a mainnet address\",\"script\":\"the script to generate the address from\"},\"returns\":{\"_0\":\"The address generate from the script\"}},\"hashBtcTx(bytes)\":{\"params\":{\"btcTx\":\"the transaction to hash\"},\"returns\":{\"_0\":\"The transaction id \"}},\"isP2PKHOutput(bytes)\":{\"params\":{\"pkScript\":\"the fragment of the raw transaction containing the raw output script\"},\"returns\":{\"_0\":\"Whether the script has a pay-to-public-key-hash output structure or not\"}},\"isP2SHOutput(bytes)\":{\"params\":{\"pkScript\":\"the fragment of the raw transaction containing the raw output script\"},\"returns\":{\"_0\":\"Whether the script has a pay-to-script-hash output structure or not\"}},\"isP2TROutput(bytes)\":{\"params\":{\"pkScript\":\"the fragment of the raw transaction containing the raw output script\"},\"returns\":{\"_0\":\"Whether the script has a pay-to-taproot output structure or not\"}},\"isP2WPKHOutput(bytes)\":{\"params\":{\"pkScript\":\"the fragment of the raw transaction containing the raw output script\"},\"returns\":{\"_0\":\"Whether the script has a pay-to-witness-pubkey-hash output structure or not\"}},\"isP2WSHOutput(bytes)\":{\"params\":{\"pkScript\":\"the fragment of the raw transaction containing the raw output script\"},\"returns\":{\"_0\":\"Whether the script has a pay-to-witness-script-hash output structure or not\"}},\"outputScriptToAddress(bytes,bool)\":{\"params\":{\"mainnet\":\"if the address to generate is from mainnet or testnet\",\"outputScript\":\"the fragment of the raw transaction containing the raw output script\"},\"returns\":{\"_0\":\"The address bytes regarless of the output script type\"}},\"parseNullDataScript(bytes)\":{\"params\":{\"outputScript\":\"the fragment of the raw transaction containing the raw output script \"},\"returns\":{\"_0\":\"The content embedded inside the script\"}},\"parsePayToPubKeyHash(bytes,bool)\":{\"params\":{\"mainnet\":\"if the address to generate is from mainnet or testnet \",\"outputScript\":\"the fragment of the raw transaction containing the raw output script\"},\"returns\":{\"_0\":\"The address generated using the receiver's public key hash\"}},\"parsePayToScriptHash(bytes,bool)\":{\"params\":{\"mainnet\":\"if the address to generate is from mainnet or testnet\",\"outputScript\":\"the fragment of the raw transaction containing the raw output script\"},\"returns\":{\"_0\":\"The address generated using the script hash\"}},\"parsePayToTaproot(bytes)\":{\"params\":{\"outputScript\":\"the fragment of the raw transaction containing the raw output script\"},\"returns\":{\"_0\":\"The address bech32m words generated using the taproot pubkey hash\"}},\"parsePayToWitnessPubKeyHash(bytes)\":{\"params\":{\"outputScript\":\"the fragment of the raw transaction containing the raw output script\"},\"returns\":{\"_0\":\"The address bech32 words generated using the pubkey hash\"}},\"parsePayToWitnessScriptHash(bytes)\":{\"params\":{\"outputScript\":\"the fragment of the raw transaction containing the raw output script\"},\"returns\":{\"_0\":\"The address bech32 words generated using the script hash\"}},\"validateP2SHAdress(bytes,bytes,bool)\":{\"params\":{\"mainnet\":\"flag to specify if its a mainnet address\",\"p2sh\":\"the pay-to-script-hash address\",\"script\":\"the script to check\"},\"returns\":{\"_0\":\"Whether the address belongs to the script or not\"}}},\"title\":\"BtcUtils\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"getOutputs(bytes)\":{\"notice\":\"Parse a raw transaction to get an array of its outputs in a structured representation\"},\"getP2SHAddressFromScript(bytes,bool)\":{\"notice\":\"Generate a pay-to-script-hash address from a script, the resulting byte array already contains the 4 checksum bytes at the end of it\"},\"hashBtcTx(bytes)\":{\"notice\":\"Hash a bitcoin raw transaction to get its id (reversed double sha256)\"},\"isP2PKHOutput(bytes)\":{\"notice\":\"Check if a raw output script is a pay-to-public-key-hash output\"},\"isP2SHOutput(bytes)\":{\"notice\":\"Check if a raw output script is a pay-to-script-hash output\"},\"isP2TROutput(bytes)\":{\"notice\":\"Check if a raw output script is a pay-to-taproot outputReference for implementation: https://github.com/bitcoin/bips/blob/master/bip-0341.mediawiki \"},\"isP2WPKHOutput(bytes)\":{\"notice\":\"Check if a raw output script is a pay-to-witness-pubkey-hash output\"},\"isP2WSHOutput(bytes)\":{\"notice\":\"Check if a raw output script is a pay-to-witness-script-hash output\"},\"outputScriptToAddress(bytes,bool)\":{\"notice\":\"Parse a raw output script whose type is not known by the consumer. The function will return the corresponding address if the type of the script is supported or an error if not. For the addresses that are encoded with base58check the checksum bytes are not included in the resulting byte array\"},\"parseNullDataScript(bytes)\":{\"notice\":\"Parse a raw null-data output script to get its content\"},\"parsePayToPubKeyHash(bytes,bool)\":{\"notice\":\"Parse a raw pay-to-public-key-hash output script to get the corresponding address, the resulting byte array doesn't include the checksum bytes of the base58check encoding at the end\"},\"parsePayToScriptHash(bytes,bool)\":{\"notice\":\"Parse a raw pay-to-script-hash output script to get the corresponding address, the resulting byte array doesn't include the checksum bytes of the base58check encoding at the end\"},\"parsePayToTaproot(bytes)\":{\"notice\":\"Parse a raw pay-to-taproot output script to get the corresponding address words, the resulting words are only the data part of the bech32m encoding and doesn't include the HRP\"},\"parsePayToWitnessPubKeyHash(bytes)\":{\"notice\":\"Parse a raw pay-to-witness-pubkey-hash output script to get the corresponding address words, the resulting words are only the data part of the bech32 encoding and doesn't include the HRP\"},\"parsePayToWitnessScriptHash(bytes)\":{\"notice\":\"Parse a raw pay-to-witness-script-hash output script to get the corresponding address words, the resulting words are only the data part of the bech32 encoding and doesn't include the HRP\"},\"validateP2SHAdress(bytes,bytes,bool)\":{\"notice\":\"Check if a pay-to-script-hash address belogs to a specific script, expects the address bytes to include the 4 checksum bytes at the end\"}},\"notice\":\"This library contains functionality to make easier to work with Bitcoin transactions in Solidity.This library is based in this document: https://developer.bitcoin.org/reference/transactions.html#raw-transaction-format\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"@rsksmart/btc-transaction-solidity-helper/contracts/BtcUtils.sol\":\"BtcUtils\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":1},\"remappings\":[]},\"sources\":{\"@rsksmart/btc-transaction-solidity-helper/contracts/BtcUtils.sol\":{\"keccak256\":\"0x7237a22e0d518b3499d81ca4918c038a168882e57a35af17d57afd61234c8512\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8df4acd5a0609e279ddad58d0532a77fdc959688144e5bb7ccfc782db9236251\",\"dweb:/ipfs/QmbjJFBRm6JFPx9Jh34hX8N5rkgBxJ5kbdZsoJ3Tb4UyCa\"]},\"@rsksmart/btc-transaction-solidity-helper/contracts/OpCodes.sol\":{\"keccak256\":\"0x5996186b53b109f592341cfe164c6673346eafda66a2a496e6d5fcec5c74de5a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8d3073328ce73163fe8088b14bf39ba03f5f233604a0eb329bb64f2be73ff411\",\"dweb:/ipfs/QmScVLft2AL48D1Z93e3TDQbfZNh7sxJaeS23U4KPGsjTY\"]}},\"version\":1}", - "bytecode": "0x61244c61003a600b82828239805160001a60731461002d57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600436106100ef5760003560e01c8062f5b491146100f457806306ac41001461011d5780632d56f3231461013d5780634c03fe591461015057806354fd4d50146101635780636bdd7563146101845780637ddac3b21461019757806396743c31146101aa5780639b02794b146101bd578063a0cd70fc146101e0578063b0d6b1cb14610201578063b36b029414610214578063b42da4a214610227578063c3d9cc751461023a578063c7ce85ac1461024d578063ed0b4ba014610260578063facde65614610273578063fea8ba6314610286575b600080fd5b610107610102366004611da1565b610299565b6040516101149190611e32565b60405180910390f35b61013061012b366004611edd565b61057f565b6040516101149190611f30565b61013061014b366004611da1565b61070e565b61013061015e366004611edd565b6107ff565b604080518082019091526005815264302e322e3160d81b6020820152610130565b610130610192366004611da1565b610960565b6101306101a5366004611da1565b610b12565b6101306101b8366004611da1565b610c7f565b6101d06101cb366004611f43565b610dec565b6040519015158152602001610114565b6101f36101ee366004611fd9565b610e2f565b604051908152602001610114565b61013061020f366004611edd565b610e91565b6101d0610222366004611fd9565b611082565b6101d0610235366004611fd9565b6110eb565b6101d0610248366004611fd9565b61118b565b61013061025b366004611edd565b6111bc565b6101d061026e366004611fd9565b61138f565b6101d0610281366004611fd9565b6113e9565b6101f3610294366004611da1565b6114d9565b606060048383828181106102af576102af612089565b909101356001600160f81b03191615905080156102f55750838360058181106102da576102da612089565b9050013560f81c60f81b6001600160f81b031916600160f81b145b156102fe575060065b6000806103418387878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061169292505050565b909250905061035461ffff8216846120b5565b925060008060005b846001600160401b0316816001600160401b03161015610408576103816024876120b5565b95506103c3868a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061169292505050565b90935091506103d661ffff8316846120c8565b6103e19060046120c8565b6103f4906001600160401b0316876120b5565b955080610400816120ef565b91505061035c565b5060008061044c878b8b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061169292505050565b909250905061045f61ffff8216886120b5565b96506000826001600160401b03166001600160401b0381111561048457610484611fc3565b6040519080825280602002602001820160405280156104bd57816020015b6104aa611d2f565b8152602001906001900390816104a25790505b50905060005b836001600160401b031681101561056e57610514898d8d8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506117f792505050565b82828151811061052657610526612089565b602002602001018190525081818151811061054357610543612089565b6020026020010151606001518961055a91906120b5565b9850806105668161211d565b9150506104c3565b509750505050505050505b92915050565b60606105c084848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506110eb92505050565b6105e55760405162461bcd60e51b81526004016105dc90612136565b60405180910390fd5b60006105f3601460016120b5565b6001600160401b0381111561060a5761060a611fc3565b6040519080825280601f01601f191660200182016040528015610634576020820181803683370190505b50905060025b610646600260146120b5565b8160ff1610156106c45785858260ff1681811061066557610665612089565b9050013560f81c60f81b8260028361067d919061217a565b610688906001612193565b60ff168151811061069b5761069b612089565b60200101906001600160f81b031916908160001a905350806106bc816121ac565b91505061063a565b50826106d457603160fa1b6106da565b600560f81b5b816000815181106106ed576106ed612089565b60200101906001600160f81b031916908160001a90535090505b9392505050565b60606001821161074f5760405162461bcd60e51b815260206004820152600c60248201526b496e76616c69642073697a6560a01b60448201526064016105dc565b603560f91b838360008161076557610765612089565b9050013560f81c60f81b6001600160f81b031916146107b65760405162461bcd60e51b815260206004820152600d60248201526c2737ba1027a82fa922aa2aa92760991b60448201526064016105dc565b6107c382600181866121cb565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929695505050505050565b606061084084848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506113e992505050565b61085c5760405162461bcd60e51b81526004016105dc90612136565b600061086a601460016120b5565b6001600160401b0381111561088157610881611fc3565b6040519080825280601f01601f1916602001820160405280156108ab576020820181803683370190505b50905060035b6108bd600360146120b5565b8160ff16101561093b5785858260ff168181106108dc576108dc612089565b9050013560f81c60f81b826003836108f4919061217a565b6108ff906001612193565b60ff168151811061091257610912612089565b60200101906001600160f81b031916908160001a90535080610933816121ac565b9150506108b1565b508261094b57606f60f81b6106da565b6000816000815181106106ed576106ed612089565b60606109a183838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061118b92505050565b6109bd5760405162461bcd60e51b81526004016105dc90612136565b60006109c960206119a4565b6109d49060016120b5565b90506000816001600160401b038111156109f0576109f0611fc3565b6040519080825280601f01601f191660200182016040528015610a1a576020820181803683370190505b509050600160f81b81600081518110610a3557610a35612089565b60200101906001600160f81b031916908160001a9053506000610a98610a5e866002818a6121cb565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611a0092505050565b905060015b83811015610b075781610ab16001836121f5565b81518110610ac157610ac1612089565b602001015160f81c60f81b838281518110610ade57610ade612089565b60200101906001600160f81b031916908160001a90535080610aff8161211d565b915050610a9d565b509095945050505050565b6060610b5383838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061138f92505050565b610b6f5760405162461bcd60e51b81526004016105dc90612136565b6000610b7b60146119a4565b610b869060016120b5565b90506000816001600160401b03811115610ba257610ba2611fc3565b6040519080825280601f01601f191660200182016040528015610bcc576020820181803683370190505b509050600060f81b81600081518110610be757610be7612089565b60200101906001600160f81b031916908160001a9053506000610c10610a5e866002818a6121cb565b905060015b83811015610b075781610c296001836121f5565b81518110610c3957610c39612089565b602001015160f81c60f81b838281518110610c5657610c56612089565b60200101906001600160f81b031916908160001a90535080610c778161211d565b915050610c15565b6060610cc083838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061108292505050565b610cdc5760405162461bcd60e51b81526004016105dc90612136565b6000610ce860206119a4565b610cf39060016120b5565b90506000816001600160401b03811115610d0f57610d0f611fc3565b6040519080825280601f01601f191660200182016040528015610d39576020820181803683370190505b509050600060f81b81600081518110610d5457610d54612089565b60200101906001600160f81b031916908160001a9053506000610d7d610a5e866002818a6121cb565b905060015b83811015610b075781610d966001836121f5565b81518110610da657610da6612089565b602001015160f81c60f81b838281518110610dc357610dc3612089565b60200101906001600160f81b031916908160001a90535080610de48161211d565b915050610d82565b6000601985148015610e255750610e04848484610e91565b805190602001208686604051610e1b929190612208565b6040518091039020145b9695505050505050565b60008151605014610e7a5760405162461bcd60e51b8152602060048201526015602482015274092dcecc2d8d2c840d0cac2c8cae440d8cadccee8d605b1b60448201526064016105dc565b610e85826044611b59565b63ffffffff1692915050565b60606000600360028686604051610ea9929190612208565b602060405180830381855afa158015610ec6573d6000803e3d6000fd5b5050506040513d601f19601f82011682018060405250810190610ee99190612218565b604051602001610efb91815260200190565b60408051601f1981840301815290829052610f1591612231565b602060405180830381855afa158015610f32573d6000803e3d6000fd5b5050506040515160601b9050600083610f4f57603160fa1b610f55565b600560f81b5b6040516001600160f81b0319821660208201526001600160601b0319841660218201529091506000906035016040516020818303038152906040529050600060028083604051610fa59190612231565b602060405180830381855afa158015610fc2573d6000803e3d6000fd5b5050506040513d601f19601f82011682018060405250810190610fe59190612218565b604051602001610ff791815260200190565b60408051601f198184030181529082905261101191612231565b602060405180830381855afa15801561102e573d6000803e3d6000fd5b5050506040513d601f19601f820116820180604052508101906110519190612218565b9050818160405160200161106692919061224d565b6040516020818303038152906040529450505050509392505050565b6000611090602060026120b5565b82511480156110c057508151600090839082906110af576110af612089565b01602001516001600160f81b031916145b801561057957506020826001815181106110dc576110dc612089565b016020015160f81c1492915050565b60006110f9601460036120b5565b825114801561112d5750815160a960f81b90839060009061111c5761111c612089565b01602001516001600160f81b031916145b8015611153575060148260018151811061114957611149612089565b016020015160f81c145b801561057957508151608760f81b908390601690811061117557611175612089565b01602001516001600160f81b0319161492915050565b6000611199602060026120b5565b82511480156110c057508151605160f81b9083906000906110af576110af612089565b60606111fd84848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506113e992505050565b156112145761120d8484846107ff565b9050610707565b61125384848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506110eb92505050565b156112635761120d84848461057f565b6112a284848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061138f92505050565b156112b15761120d8484610b12565b6112f084848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061108292505050565b156112ff5761120d8484610c7f565b61133e84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061118b92505050565b1561134d5761120d8484610960565b60405162461bcd60e51b8152602060048201526017602482015276556e737570706f7274656420736372697074207479706560481b60448201526064016105dc565b600061139d601460026120b5565b82511480156113cd57508151600090839082906113bc576113bc612089565b01602001516001600160f81b031916145b801561057957506014826001815181106110dc576110dc612089565b60006113f7601460056120b5565b825114801561142b57508151603b60f91b90839060009061141a5761141a612089565b01602001516001600160f81b031916145b801561145e5750815160a960f81b908390600190811061144d5761144d612089565b01602001516001600160f81b031916145b8015611484575060148260028151811061147a5761147a612089565b016020015160f81c145b80156114b757508151601160fb1b90839060179081106114a6576114a6612089565b01602001516001600160f81b031916145b801561057957508151602b60fa1b908390601890811061117557611175612089565b60008060028085856040516114ef929190612208565b602060405180830381855afa15801561150c573d6000803e3d6000fd5b5050506040513d601f19601f8201168201806040525081019061152f9190612218565b60405160200161154191815260200190565b60408051601f198184030181529082905261155b91612231565b602060405180830381855afa158015611578573d6000803e3d6000fd5b5050506040513d601f19601f8201168201806040525081019061159b9190612218565b6040516020016115ad91815260200190565b60408051601f1981840301815291905290506000805b6010811015611685578281815181106115de576115de612089565b01602001516001600160f81b0319169150826115fb82601f6121f5565b8151811061160b5761160b612089565b602001015160f81c60f81b83828151811061162857611628612089565b60200101906001600160f81b031916908160001a905350818361164c83601f6121f5565b8151811061165c5761165c612089565b60200101906001600160f81b031916908160001a9053508061167d8161211d565b9150506115c3565b5050602001519392505050565b600080838351116116f65760405162461bcd60e51b815260206004820152602860248201527f53697a6520706f736974696f6e2063616e277420626520626967676572207468604482015267616e20617272617960c01b60648201526084016105dc565b600083858151811061170a5761170a612089565b016020015160f81c9050600081900361172b576000600192509250506117f0565b60fc60ff8216116117445760ff169150600190506117f0565b600061175160fc8361217a565b61175c906002612360565b905060088111156117af5760405162461bcd60e51b815260206004820152601f60248201527f756e737570706f7274656420636f6d706163742073697a65206c656e6774680060448201526064016105dc565b60006117da6117bf8860016120b5565b6117c9848a6120b5565b6117d49060016120b5565b88611c51565b9050806117e883600161236f565b945094505050505b9250929050565b6117ff611d2f565b60408051608081018252600080825282516020818101855282825283015291810182905260608101919091526118408461183a6008826120b5565b85611c51565b6001600160401b031681526118566008856120b5565b93506000806118658686611692565b909250905061187861ffff8216876120b5565b95506000826001600160401b03166001600160401b0381111561189d5761189d611fc3565b6040519080825280601f01601f1916602001820160405280156118c7576020820181803683370190505b50905060005b836001600160401b0316816001600160401b0316101561195a57866118fb6001600160401b0383168a6120b5565b8151811061190b5761190b612089565b602001015160f81c60f81b82826001600160401b03168151811061193157611931612089565b60200101906001600160f81b031916908160001a90535080611952816120ef565b9150506118cd565b50602084018190526001600160401b038316604085015261ffff82166119818460086120c8565b61198b91906120c8565b6001600160401b03166060850152509195945050505050565b60008060056119b460088561238a565b6119be91906123b7565b9050600060056119cf60088661238a565b6119d991906123cb565b159050806119e85760016119eb565b60005b6119f89060ff16836120b5565b949350505050565b60606000601f9050600080600080611a1887516119a4565b6001600160401b03811115611a2f57611a2f611fc3565b6040519080825280601f01601f191660200182016040528015611a59576020820181803683370190505b50905060005b8751811015611b0657878181518110611a7a57611a7a612089565b60209101015160f81c600895861b1794611a9490856120b5565b93505b60058410611af657611aaa6005856121f5565b93508560ff168486901c1660f81b828460ff1681518110611acd57611acd612089565b60200101906001600160f81b031916908160001a90535082611aee816121ac565b935050611a97565b611aff8161211d565b9050611a5f565b508215610e255760ff8516611b1c8460056121f5565b85901b1660f81b818360ff1681518110611b3857611b38612089565b60200101906001600160f81b031916908160001a9053509695505050505050565b6000611b668260046120b5565b83511015611bad5760405162461bcd60e51b8152602060048201526014602482015273536c6963696e67206f7574206f662072616e676560601b60448201526064016105dc565b601883611bbb8460036120b5565b81518110611bcb57611bcb612089565b016020015160f81c901b601084611be38560026120b5565b81518110611bf357611bf3612089565b016020015160f81c901b600885611c0b8660016120b5565b81518110611c1b57611c1b612089565b0160200151865160f89190911c90911b90869086908110611c3e57611c3e612089565b016020015160f81c171717905092915050565b6000815184108015611c635750815183105b611caf5760405162461bcd60e51b815260206004820181905260248201527f52616e67652063616e277420626520626967676572207468616e20617272617960448201526064016105dc565b6000845b84811015611d2657611cc586826121f5565b611cd090600861238a565b611cdb9060026123df565b848281518110611ced57611ced612089565b0160200151611cff919060f81c6123eb565b611d12906001600160401b0316836120b5565b915080611d1e8161211d565b915050611cb3565b50949350505050565b604051806080016040528060006001600160401b031681526020016060815260200160008152602001600081525090565b60008083601f840112611d7257600080fd5b5081356001600160401b03811115611d8957600080fd5b6020830191508360208285010111156117f057600080fd5b60008060208385031215611db457600080fd5b82356001600160401b03811115611dca57600080fd5b611dd685828601611d60565b90969095509350505050565b60005b83811015611dfd578181015183820152602001611de5565b50506000910152565b60008151808452611e1e816020860160208601611de2565b601f01601f19169290920160200192915050565b60006020808301818452808551808352604092508286019150828160051b87010184880160005b83811015611eba57888303603f19018552815180516001600160401b0316845287810151608089860181905290611e9282870182611e06565b838a0151878b0152606093840151939096019290925250509386019390860190600101611e59565b509098975050505050505050565b80358015158114611ed857600080fd5b919050565b600080600060408486031215611ef257600080fd5b83356001600160401b03811115611f0857600080fd5b611f1486828701611d60565b9094509250611f27905060208501611ec8565b90509250925092565b6020815260006107076020830184611e06565b600080600080600060608688031215611f5b57600080fd5b85356001600160401b0380821115611f7257600080fd5b611f7e89838a01611d60565b90975095506020880135915080821115611f9757600080fd5b50611fa488828901611d60565b9094509250611fb7905060408701611ec8565b90509295509295909350565b634e487b7160e01b600052604160045260246000fd5b600060208284031215611feb57600080fd5b81356001600160401b038082111561200257600080fd5b818401915084601f83011261201657600080fd5b81358181111561202857612028611fc3565b604051601f8201601f19908116603f0116810190838211818310171561205057612050611fc3565b8160405282815287602084870101111561206957600080fd5b826020860160208301376000928101602001929092525095945050505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b808201808211156105795761057961209f565b6001600160401b038181168382160190808211156120e8576120e861209f565b5092915050565b60006001600160401b038281166002600160401b031981016121135761211361209f565b6001019392505050565b60006001820161212f5761212f61209f565b5060010190565b60208082526024908201527f536372697074206861736e2774207468652072657175697265642073747275636040820152637475726560e01b606082015260800190565b60ff82811682821603908111156105795761057961209f565b60ff81811683821601908111156105795761057961209f565b600060ff821660ff81036121c2576121c261209f565b60010192915050565b600080858511156121db57600080fd5b838611156121e857600080fd5b5050820193919092039150565b818103818111156105795761057961209f565b8183823760009101908152919050565b60006020828403121561222a57600080fd5b5051919050565b60008251612243818460208701611de2565b9190910192915050565b6000835161225f818460208801611de2565b6001600160e01b0319939093169190920190815260040192915050565b600181815b808511156122b757816000190482111561229d5761229d61209f565b808516156122aa57918102915b93841c9390800290612281565b509250929050565b6000826122ce57506001610579565b816122db57506000610579565b81600181146122f157600281146122fb57612317565b6001915050610579565b60ff84111561230c5761230c61209f565b50506001821b610579565b5060208310610133831016604e8410600b841016171561233a575081810a610579565b612344838361227c565b80600019048211156123585761235861209f565b029392505050565b600061070760ff8416836122bf565b61ffff8181168382160190808211156120e8576120e861209f565b80820281158282048414176105795761057961209f565b634e487b7160e01b600052601260045260246000fd5b6000826123c6576123c66123a1565b500490565b6000826123da576123da6123a1565b500690565b600061070783836122bf565b6001600160401b0381811683821602808216919082811461240e5761240e61209f565b50509291505056fea26469706673582212207c217a41888529800be793c549eef013d4d2405f68a570e85371885eaec4fe3064736f6c63430008120033", - "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600436106100ef5760003560e01c8062f5b491146100f457806306ac41001461011d5780632d56f3231461013d5780634c03fe591461015057806354fd4d50146101635780636bdd7563146101845780637ddac3b21461019757806396743c31146101aa5780639b02794b146101bd578063a0cd70fc146101e0578063b0d6b1cb14610201578063b36b029414610214578063b42da4a214610227578063c3d9cc751461023a578063c7ce85ac1461024d578063ed0b4ba014610260578063facde65614610273578063fea8ba6314610286575b600080fd5b610107610102366004611da1565b610299565b6040516101149190611e32565b60405180910390f35b61013061012b366004611edd565b61057f565b6040516101149190611f30565b61013061014b366004611da1565b61070e565b61013061015e366004611edd565b6107ff565b604080518082019091526005815264302e322e3160d81b6020820152610130565b610130610192366004611da1565b610960565b6101306101a5366004611da1565b610b12565b6101306101b8366004611da1565b610c7f565b6101d06101cb366004611f43565b610dec565b6040519015158152602001610114565b6101f36101ee366004611fd9565b610e2f565b604051908152602001610114565b61013061020f366004611edd565b610e91565b6101d0610222366004611fd9565b611082565b6101d0610235366004611fd9565b6110eb565b6101d0610248366004611fd9565b61118b565b61013061025b366004611edd565b6111bc565b6101d061026e366004611fd9565b61138f565b6101d0610281366004611fd9565b6113e9565b6101f3610294366004611da1565b6114d9565b606060048383828181106102af576102af612089565b909101356001600160f81b03191615905080156102f55750838360058181106102da576102da612089565b9050013560f81c60f81b6001600160f81b031916600160f81b145b156102fe575060065b6000806103418387878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061169292505050565b909250905061035461ffff8216846120b5565b925060008060005b846001600160401b0316816001600160401b03161015610408576103816024876120b5565b95506103c3868a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061169292505050565b90935091506103d661ffff8316846120c8565b6103e19060046120c8565b6103f4906001600160401b0316876120b5565b955080610400816120ef565b91505061035c565b5060008061044c878b8b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061169292505050565b909250905061045f61ffff8216886120b5565b96506000826001600160401b03166001600160401b0381111561048457610484611fc3565b6040519080825280602002602001820160405280156104bd57816020015b6104aa611d2f565b8152602001906001900390816104a25790505b50905060005b836001600160401b031681101561056e57610514898d8d8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506117f792505050565b82828151811061052657610526612089565b602002602001018190525081818151811061054357610543612089565b6020026020010151606001518961055a91906120b5565b9850806105668161211d565b9150506104c3565b509750505050505050505b92915050565b60606105c084848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506110eb92505050565b6105e55760405162461bcd60e51b81526004016105dc90612136565b60405180910390fd5b60006105f3601460016120b5565b6001600160401b0381111561060a5761060a611fc3565b6040519080825280601f01601f191660200182016040528015610634576020820181803683370190505b50905060025b610646600260146120b5565b8160ff1610156106c45785858260ff1681811061066557610665612089565b9050013560f81c60f81b8260028361067d919061217a565b610688906001612193565b60ff168151811061069b5761069b612089565b60200101906001600160f81b031916908160001a905350806106bc816121ac565b91505061063a565b50826106d457603160fa1b6106da565b600560f81b5b816000815181106106ed576106ed612089565b60200101906001600160f81b031916908160001a90535090505b9392505050565b60606001821161074f5760405162461bcd60e51b815260206004820152600c60248201526b496e76616c69642073697a6560a01b60448201526064016105dc565b603560f91b838360008161076557610765612089565b9050013560f81c60f81b6001600160f81b031916146107b65760405162461bcd60e51b815260206004820152600d60248201526c2737ba1027a82fa922aa2aa92760991b60448201526064016105dc565b6107c382600181866121cb565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929695505050505050565b606061084084848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506113e992505050565b61085c5760405162461bcd60e51b81526004016105dc90612136565b600061086a601460016120b5565b6001600160401b0381111561088157610881611fc3565b6040519080825280601f01601f1916602001820160405280156108ab576020820181803683370190505b50905060035b6108bd600360146120b5565b8160ff16101561093b5785858260ff168181106108dc576108dc612089565b9050013560f81c60f81b826003836108f4919061217a565b6108ff906001612193565b60ff168151811061091257610912612089565b60200101906001600160f81b031916908160001a90535080610933816121ac565b9150506108b1565b508261094b57606f60f81b6106da565b6000816000815181106106ed576106ed612089565b60606109a183838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061118b92505050565b6109bd5760405162461bcd60e51b81526004016105dc90612136565b60006109c960206119a4565b6109d49060016120b5565b90506000816001600160401b038111156109f0576109f0611fc3565b6040519080825280601f01601f191660200182016040528015610a1a576020820181803683370190505b509050600160f81b81600081518110610a3557610a35612089565b60200101906001600160f81b031916908160001a9053506000610a98610a5e866002818a6121cb565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611a0092505050565b905060015b83811015610b075781610ab16001836121f5565b81518110610ac157610ac1612089565b602001015160f81c60f81b838281518110610ade57610ade612089565b60200101906001600160f81b031916908160001a90535080610aff8161211d565b915050610a9d565b509095945050505050565b6060610b5383838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061138f92505050565b610b6f5760405162461bcd60e51b81526004016105dc90612136565b6000610b7b60146119a4565b610b869060016120b5565b90506000816001600160401b03811115610ba257610ba2611fc3565b6040519080825280601f01601f191660200182016040528015610bcc576020820181803683370190505b509050600060f81b81600081518110610be757610be7612089565b60200101906001600160f81b031916908160001a9053506000610c10610a5e866002818a6121cb565b905060015b83811015610b075781610c296001836121f5565b81518110610c3957610c39612089565b602001015160f81c60f81b838281518110610c5657610c56612089565b60200101906001600160f81b031916908160001a90535080610c778161211d565b915050610c15565b6060610cc083838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061108292505050565b610cdc5760405162461bcd60e51b81526004016105dc90612136565b6000610ce860206119a4565b610cf39060016120b5565b90506000816001600160401b03811115610d0f57610d0f611fc3565b6040519080825280601f01601f191660200182016040528015610d39576020820181803683370190505b509050600060f81b81600081518110610d5457610d54612089565b60200101906001600160f81b031916908160001a9053506000610d7d610a5e866002818a6121cb565b905060015b83811015610b075781610d966001836121f5565b81518110610da657610da6612089565b602001015160f81c60f81b838281518110610dc357610dc3612089565b60200101906001600160f81b031916908160001a90535080610de48161211d565b915050610d82565b6000601985148015610e255750610e04848484610e91565b805190602001208686604051610e1b929190612208565b6040518091039020145b9695505050505050565b60008151605014610e7a5760405162461bcd60e51b8152602060048201526015602482015274092dcecc2d8d2c840d0cac2c8cae440d8cadccee8d605b1b60448201526064016105dc565b610e85826044611b59565b63ffffffff1692915050565b60606000600360028686604051610ea9929190612208565b602060405180830381855afa158015610ec6573d6000803e3d6000fd5b5050506040513d601f19601f82011682018060405250810190610ee99190612218565b604051602001610efb91815260200190565b60408051601f1981840301815290829052610f1591612231565b602060405180830381855afa158015610f32573d6000803e3d6000fd5b5050506040515160601b9050600083610f4f57603160fa1b610f55565b600560f81b5b6040516001600160f81b0319821660208201526001600160601b0319841660218201529091506000906035016040516020818303038152906040529050600060028083604051610fa59190612231565b602060405180830381855afa158015610fc2573d6000803e3d6000fd5b5050506040513d601f19601f82011682018060405250810190610fe59190612218565b604051602001610ff791815260200190565b60408051601f198184030181529082905261101191612231565b602060405180830381855afa15801561102e573d6000803e3d6000fd5b5050506040513d601f19601f820116820180604052508101906110519190612218565b9050818160405160200161106692919061224d565b6040516020818303038152906040529450505050509392505050565b6000611090602060026120b5565b82511480156110c057508151600090839082906110af576110af612089565b01602001516001600160f81b031916145b801561057957506020826001815181106110dc576110dc612089565b016020015160f81c1492915050565b60006110f9601460036120b5565b825114801561112d5750815160a960f81b90839060009061111c5761111c612089565b01602001516001600160f81b031916145b8015611153575060148260018151811061114957611149612089565b016020015160f81c145b801561057957508151608760f81b908390601690811061117557611175612089565b01602001516001600160f81b0319161492915050565b6000611199602060026120b5565b82511480156110c057508151605160f81b9083906000906110af576110af612089565b60606111fd84848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506113e992505050565b156112145761120d8484846107ff565b9050610707565b61125384848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506110eb92505050565b156112635761120d84848461057f565b6112a284848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061138f92505050565b156112b15761120d8484610b12565b6112f084848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061108292505050565b156112ff5761120d8484610c7f565b61133e84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061118b92505050565b1561134d5761120d8484610960565b60405162461bcd60e51b8152602060048201526017602482015276556e737570706f7274656420736372697074207479706560481b60448201526064016105dc565b600061139d601460026120b5565b82511480156113cd57508151600090839082906113bc576113bc612089565b01602001516001600160f81b031916145b801561057957506014826001815181106110dc576110dc612089565b60006113f7601460056120b5565b825114801561142b57508151603b60f91b90839060009061141a5761141a612089565b01602001516001600160f81b031916145b801561145e5750815160a960f81b908390600190811061144d5761144d612089565b01602001516001600160f81b031916145b8015611484575060148260028151811061147a5761147a612089565b016020015160f81c145b80156114b757508151601160fb1b90839060179081106114a6576114a6612089565b01602001516001600160f81b031916145b801561057957508151602b60fa1b908390601890811061117557611175612089565b60008060028085856040516114ef929190612208565b602060405180830381855afa15801561150c573d6000803e3d6000fd5b5050506040513d601f19601f8201168201806040525081019061152f9190612218565b60405160200161154191815260200190565b60408051601f198184030181529082905261155b91612231565b602060405180830381855afa158015611578573d6000803e3d6000fd5b5050506040513d601f19601f8201168201806040525081019061159b9190612218565b6040516020016115ad91815260200190565b60408051601f1981840301815291905290506000805b6010811015611685578281815181106115de576115de612089565b01602001516001600160f81b0319169150826115fb82601f6121f5565b8151811061160b5761160b612089565b602001015160f81c60f81b83828151811061162857611628612089565b60200101906001600160f81b031916908160001a905350818361164c83601f6121f5565b8151811061165c5761165c612089565b60200101906001600160f81b031916908160001a9053508061167d8161211d565b9150506115c3565b5050602001519392505050565b600080838351116116f65760405162461bcd60e51b815260206004820152602860248201527f53697a6520706f736974696f6e2063616e277420626520626967676572207468604482015267616e20617272617960c01b60648201526084016105dc565b600083858151811061170a5761170a612089565b016020015160f81c9050600081900361172b576000600192509250506117f0565b60fc60ff8216116117445760ff169150600190506117f0565b600061175160fc8361217a565b61175c906002612360565b905060088111156117af5760405162461bcd60e51b815260206004820152601f60248201527f756e737570706f7274656420636f6d706163742073697a65206c656e6774680060448201526064016105dc565b60006117da6117bf8860016120b5565b6117c9848a6120b5565b6117d49060016120b5565b88611c51565b9050806117e883600161236f565b945094505050505b9250929050565b6117ff611d2f565b60408051608081018252600080825282516020818101855282825283015291810182905260608101919091526118408461183a6008826120b5565b85611c51565b6001600160401b031681526118566008856120b5565b93506000806118658686611692565b909250905061187861ffff8216876120b5565b95506000826001600160401b03166001600160401b0381111561189d5761189d611fc3565b6040519080825280601f01601f1916602001820160405280156118c7576020820181803683370190505b50905060005b836001600160401b0316816001600160401b0316101561195a57866118fb6001600160401b0383168a6120b5565b8151811061190b5761190b612089565b602001015160f81c60f81b82826001600160401b03168151811061193157611931612089565b60200101906001600160f81b031916908160001a90535080611952816120ef565b9150506118cd565b50602084018190526001600160401b038316604085015261ffff82166119818460086120c8565b61198b91906120c8565b6001600160401b03166060850152509195945050505050565b60008060056119b460088561238a565b6119be91906123b7565b9050600060056119cf60088661238a565b6119d991906123cb565b159050806119e85760016119eb565b60005b6119f89060ff16836120b5565b949350505050565b60606000601f9050600080600080611a1887516119a4565b6001600160401b03811115611a2f57611a2f611fc3565b6040519080825280601f01601f191660200182016040528015611a59576020820181803683370190505b50905060005b8751811015611b0657878181518110611a7a57611a7a612089565b60209101015160f81c600895861b1794611a9490856120b5565b93505b60058410611af657611aaa6005856121f5565b93508560ff168486901c1660f81b828460ff1681518110611acd57611acd612089565b60200101906001600160f81b031916908160001a90535082611aee816121ac565b935050611a97565b611aff8161211d565b9050611a5f565b508215610e255760ff8516611b1c8460056121f5565b85901b1660f81b818360ff1681518110611b3857611b38612089565b60200101906001600160f81b031916908160001a9053509695505050505050565b6000611b668260046120b5565b83511015611bad5760405162461bcd60e51b8152602060048201526014602482015273536c6963696e67206f7574206f662072616e676560601b60448201526064016105dc565b601883611bbb8460036120b5565b81518110611bcb57611bcb612089565b016020015160f81c901b601084611be38560026120b5565b81518110611bf357611bf3612089565b016020015160f81c901b600885611c0b8660016120b5565b81518110611c1b57611c1b612089565b0160200151865160f89190911c90911b90869086908110611c3e57611c3e612089565b016020015160f81c171717905092915050565b6000815184108015611c635750815183105b611caf5760405162461bcd60e51b815260206004820181905260248201527f52616e67652063616e277420626520626967676572207468616e20617272617960448201526064016105dc565b6000845b84811015611d2657611cc586826121f5565b611cd090600861238a565b611cdb9060026123df565b848281518110611ced57611ced612089565b0160200151611cff919060f81c6123eb565b611d12906001600160401b0316836120b5565b915080611d1e8161211d565b915050611cb3565b50949350505050565b604051806080016040528060006001600160401b031681526020016060815260200160008152602001600081525090565b60008083601f840112611d7257600080fd5b5081356001600160401b03811115611d8957600080fd5b6020830191508360208285010111156117f057600080fd5b60008060208385031215611db457600080fd5b82356001600160401b03811115611dca57600080fd5b611dd685828601611d60565b90969095509350505050565b60005b83811015611dfd578181015183820152602001611de5565b50506000910152565b60008151808452611e1e816020860160208601611de2565b601f01601f19169290920160200192915050565b60006020808301818452808551808352604092508286019150828160051b87010184880160005b83811015611eba57888303603f19018552815180516001600160401b0316845287810151608089860181905290611e9282870182611e06565b838a0151878b0152606093840151939096019290925250509386019390860190600101611e59565b509098975050505050505050565b80358015158114611ed857600080fd5b919050565b600080600060408486031215611ef257600080fd5b83356001600160401b03811115611f0857600080fd5b611f1486828701611d60565b9094509250611f27905060208501611ec8565b90509250925092565b6020815260006107076020830184611e06565b600080600080600060608688031215611f5b57600080fd5b85356001600160401b0380821115611f7257600080fd5b611f7e89838a01611d60565b90975095506020880135915080821115611f9757600080fd5b50611fa488828901611d60565b9094509250611fb7905060408701611ec8565b90509295509295909350565b634e487b7160e01b600052604160045260246000fd5b600060208284031215611feb57600080fd5b81356001600160401b038082111561200257600080fd5b818401915084601f83011261201657600080fd5b81358181111561202857612028611fc3565b604051601f8201601f19908116603f0116810190838211818310171561205057612050611fc3565b8160405282815287602084870101111561206957600080fd5b826020860160208301376000928101602001929092525095945050505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b808201808211156105795761057961209f565b6001600160401b038181168382160190808211156120e8576120e861209f565b5092915050565b60006001600160401b038281166002600160401b031981016121135761211361209f565b6001019392505050565b60006001820161212f5761212f61209f565b5060010190565b60208082526024908201527f536372697074206861736e2774207468652072657175697265642073747275636040820152637475726560e01b606082015260800190565b60ff82811682821603908111156105795761057961209f565b60ff81811683821601908111156105795761057961209f565b600060ff821660ff81036121c2576121c261209f565b60010192915050565b600080858511156121db57600080fd5b838611156121e857600080fd5b5050820193919092039150565b818103818111156105795761057961209f565b8183823760009101908152919050565b60006020828403121561222a57600080fd5b5051919050565b60008251612243818460208701611de2565b9190910192915050565b6000835161225f818460208801611de2565b6001600160e01b0319939093169190920190815260040192915050565b600181815b808511156122b757816000190482111561229d5761229d61209f565b808516156122aa57918102915b93841c9390800290612281565b509250929050565b6000826122ce57506001610579565b816122db57506000610579565b81600181146122f157600281146122fb57612317565b6001915050610579565b60ff84111561230c5761230c61209f565b50506001821b610579565b5060208310610133831016604e8410600b841016171561233a575081810a610579565b612344838361227c565b80600019048211156123585761235861209f565b029392505050565b600061070760ff8416836122bf565b61ffff8181168382160190808211156120e8576120e861209f565b80820281158282048414176105795761057961209f565b634e487b7160e01b600052601260045260246000fd5b6000826123c6576123c66123a1565b500490565b6000826123da576123da6123a1565b500690565b600061070783836122bf565b6001600160401b0381811683821602808216919082811461240e5761240e61209f565b50509291505056fea26469706673582212207c217a41888529800be793c549eef013d4d2405f68a570e85371885eaec4fe3064736f6c63430008120033", - "immutableReferences": {}, - "generatedSources": [], - "deployedGeneratedSources": [ - { - "ast": { - "nodeType": "YulBlock", - "src": "0:15429:32", - "statements": [ - { - "nodeType": "YulBlock", - "src": "6:3:32", - "statements": [] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "86:275:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "135:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "144:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "147:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "137:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "137:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "137:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "114:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "122:4:32", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "110:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "110:17:32" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "129:3:32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "106:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "106:27:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "99:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "99:35:32" - }, - "nodeType": "YulIf", - "src": "96:55:32" - }, - { - "nodeType": "YulAssignment", - "src": "160:30:32", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "183:6:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "170:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "170:20:32" - }, - "variableNames": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "160:6:32" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "233:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "242:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "245:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "235:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "235:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "235:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "205:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "221:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "225:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "217:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "217:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "229:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "213:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "213:18:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "202:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "202:30:32" - }, - "nodeType": "YulIf", - "src": "199:50:32" - }, - { - "nodeType": "YulAssignment", - "src": "258:29:32", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "274:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "282:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "270:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "270:17:32" - }, - "variableNames": [ - { - "name": "arrayPos", - "nodeType": "YulIdentifier", - "src": "258:8:32" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "339:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "348:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "351:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "341:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "341:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "341:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "310:6:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "318:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "306:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "306:19:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "327:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "302:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "302:30:32" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "334:3:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "299:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "299:39:32" - }, - "nodeType": "YulIf", - "src": "296:59:32" - } - ] - }, - "name": "abi_decode_bytes_calldata", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "49:6:32", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "57:3:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "arrayPos", - "nodeType": "YulTypedName", - "src": "65:8:32", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "75:6:32", - "type": "" - } - ], - "src": "14:347:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "455:320:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "501:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "510:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "513:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "503:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "503:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "503:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "476:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "485:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "472:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "472:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "497:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "468:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "468:32:32" - }, - "nodeType": "YulIf", - "src": "465:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "526:37:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "553:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "540:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "540:23:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "530:6:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "606:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "615:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "618:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "608:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "608:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "608:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "578:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "594:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "598:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "590:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "590:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "602:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "586:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "586:18:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "575:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "575:30:32" - }, - "nodeType": "YulIf", - "src": "572:50:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "631:84:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "687:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "698:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "683:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "683:22:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "707:7:32" - } - ], - "functionName": { - "name": "abi_decode_bytes_calldata", - "nodeType": "YulIdentifier", - "src": "657:25:32" - }, - "nodeType": "YulFunctionCall", - "src": "657:58:32" - }, - "variables": [ - { - "name": "value0_1", - "nodeType": "YulTypedName", - "src": "635:8:32", - "type": "" - }, - { - "name": "value1_1", - "nodeType": "YulTypedName", - "src": "645:8:32", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "724:18:32", - "value": { - "name": "value0_1", - "nodeType": "YulIdentifier", - "src": "734:8:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "724:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "751:18:32", - "value": { - "name": "value1_1", - "nodeType": "YulIdentifier", - "src": "761:8:32" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "751:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bytes_calldata_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "413:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "424:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "436:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "444:6:32", - "type": "" - } - ], - "src": "366:409:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "846:184:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "856:10:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "865:1:32", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "i", - "nodeType": "YulTypedName", - "src": "860:1:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "925:63:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "950:3:32" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "955:1:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "946:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "946:11:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "969:3:32" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "974:1:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "965:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "965:11:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "959:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "959:18:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "939:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "939:39:32" - }, - "nodeType": "YulExpressionStatement", - "src": "939:39:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "886:1:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "889:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "883:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "883:13:32" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "897:19:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "899:15:32", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "908:1:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "911:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "904:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "904:10:32" - }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "899:1:32" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "879:3:32", - "statements": [] - }, - "src": "875:113:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "1008:3:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "1013:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1004:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1004:16:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1022:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "997:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "997:27:32" - }, - "nodeType": "YulExpressionStatement", - "src": "997:27:32" - } - ] - }, - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "src", - "nodeType": "YulTypedName", - "src": "824:3:32", - "type": "" - }, - { - "name": "dst", - "nodeType": "YulTypedName", - "src": "829:3:32", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "834:6:32", - "type": "" - } - ], - "src": "780:250:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1084:221:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "1094:26:32", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "1114:5:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "1108:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "1108:12:32" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "1098:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "1136:3:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "1141:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1129:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1129:19:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1129:19:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "1196:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1203:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1192:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1192:16:32" - }, - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "1214:3:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1219:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1210:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1210:14:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "1226:6:32" - } - ], - "functionName": { - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulIdentifier", - "src": "1157:34:32" - }, - "nodeType": "YulFunctionCall", - "src": "1157:76:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1157:76:32" - }, - { - "nodeType": "YulAssignment", - "src": "1242:57:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "1257:3:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "1270:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1278:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1266:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1266:15:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1287:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "1283:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1283:7:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "1262:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1262:29:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1253:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1253:39:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1294:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1249:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1249:50:32" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "1242:3:32" - } - ] - } - ] - }, - "name": "abi_encode_bytes", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "1061:5:32", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "1068:3:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "1076:3:32", - "type": "" - } - ], - "src": "1035:270:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1527:1049:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "1537:12:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1547:2:32", - "type": "", - "value": "32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "1541:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1558:32:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1576:9:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1587:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1572:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1572:18:32" - }, - "variables": [ - { - "name": "tail_1", - "nodeType": "YulTypedName", - "src": "1562:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1606:9:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1617:2:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1599:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1599:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1599:21:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1629:17:32", - "value": { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "1640:6:32" - }, - "variables": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "1633:3:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1655:27:32", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "1675:6:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "1669:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "1669:13:32" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "1659:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "1698:6:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "1706:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1691:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1691:22:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1691:22:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1722:12:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1732:2:32", - "type": "", - "value": "64" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "1726:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "1743:25:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1754:9:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "1765:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1750:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1750:18:32" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "1743:3:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1777:53:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1799:9:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1814:1:32", - "type": "", - "value": "5" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "1817:6:32" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "1810:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1810:14:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1795:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1795:30:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "1827:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1791:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1791:39:32" - }, - "variables": [ - { - "name": "tail_2", - "nodeType": "YulTypedName", - "src": "1781:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1839:29:32", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "1857:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1865:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1853:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1853:15:32" - }, - "variables": [ - { - "name": "srcPtr", - "nodeType": "YulTypedName", - "src": "1843:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1877:10:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1886:1:32", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "i", - "nodeType": "YulTypedName", - "src": "1881:1:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1945:602:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "1966:3:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "1979:6:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1987:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "1975:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1975:22:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2003:2:32", - "type": "", - "value": "63" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "1999:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1999:7:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1971:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1971:36:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1959:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1959:49:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1959:49:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2021:23:32", - "value": { - "arguments": [ - { - "name": "srcPtr", - "nodeType": "YulIdentifier", - "src": "2037:6:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "2031:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "2031:13:32" - }, - "variables": [ - { - "name": "_3", - "nodeType": "YulTypedName", - "src": "2025:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2057:14:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2067:4:32", - "type": "", - "value": "0x80" - }, - "variables": [ - { - "name": "_4", - "nodeType": "YulTypedName", - "src": "2061:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "2091:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "2109:2:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "2103:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "2103:9:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2122:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2126:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "2118:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2118:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2130:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "2114:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2114:18:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "2099:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2099:34:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2084:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2084:50:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2084:50:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2147:38:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "2177:2:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "2181:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2173:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2173:11:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "2167:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "2167:18:32" - }, - "variables": [ - { - "name": "memberValue0", - "nodeType": "YulTypedName", - "src": "2151:12:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "2209:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "2217:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2205:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2205:15:32" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "2222:2:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2198:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2198:27:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2198:27:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2238:61:32", - "value": { - "arguments": [ - { - "name": "memberValue0", - "nodeType": "YulIdentifier", - "src": "2269:12:32" - }, - { - "arguments": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "2287:6:32" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "2295:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2283:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2283:15:32" - } - ], - "functionName": { - "name": "abi_encode_bytes", - "nodeType": "YulIdentifier", - "src": "2252:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "2252:47:32" - }, - "variables": [ - { - "name": "tail_3", - "nodeType": "YulTypedName", - "src": "2242:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "2323:6:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "2331:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2319:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2319:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "2346:2:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "2350:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2342:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2342:11:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "2336:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "2336:18:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2312:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2312:43:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2312:43:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2368:14:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2378:4:32", - "type": "", - "value": "0x60" - }, - "variables": [ - { - "name": "_5", - "nodeType": "YulTypedName", - "src": "2372:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "2406:6:32" - }, - { - "name": "_5", - "nodeType": "YulIdentifier", - "src": "2414:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2402:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2402:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "2429:2:32" - }, - { - "name": "_5", - "nodeType": "YulIdentifier", - "src": "2433:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2425:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2425:11:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "2419:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "2419:18:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2395:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2395:43:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2395:43:32" - }, - { - "nodeType": "YulAssignment", - "src": "2451:16:32", - "value": { - "name": "tail_3", - "nodeType": "YulIdentifier", - "src": "2461:6:32" - }, - "variableNames": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "2451:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "2480:25:32", - "value": { - "arguments": [ - { - "name": "srcPtr", - "nodeType": "YulIdentifier", - "src": "2494:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "2502:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2490:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2490:15:32" - }, - "variableNames": [ - { - "name": "srcPtr", - "nodeType": "YulIdentifier", - "src": "2480:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "2518:19:32", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "2529:3:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "2534:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2525:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2525:12:32" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "2518:3:32" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "1907:1:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "1910:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "1904:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "1904:13:32" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "1918:18:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "1920:14:32", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "1929:1:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1932:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1925:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1925:9:32" - }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "1920:1:32" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "1900:3:32", - "statements": [] - }, - "src": "1896:651:32" - }, - { - "nodeType": "YulAssignment", - "src": "2556:14:32", - "value": { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "2564:6:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "2556:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_array$_t_struct$_TxRawOutput_$2307_memory_ptr_$dyn_memory_ptr__to_t_array$_t_struct$_TxRawOutput_$2307_memory_ptr_$dyn_memory_ptr__fromStack_library_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "1496:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "1507:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "1518:4:32", - "type": "" - } - ], - "src": "1310:1266:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2627:114:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "2637:29:32", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "2659:6:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "2646:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "2646:20:32" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2637:5:32" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2719:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2728:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2731:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "2721:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2721:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2721:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2688:5:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2709:5:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "2702:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2702:13:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "2695:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2695:21:32" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "2685:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "2685:32:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "2678:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2678:40:32" - }, - "nodeType": "YulIf", - "src": "2675:60:32" - } - ] - }, - "name": "abi_decode_bool", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "2606:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "2617:5:32", - "type": "" - } - ], - "src": "2581:160:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2849:374:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "2895:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2904:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2907:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "2897:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2897:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2897:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "2870:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2879:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "2866:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2866:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2891:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "2862:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2862:32:32" - }, - "nodeType": "YulIf", - "src": "2859:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2920:37:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2947:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "2934:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "2934:23:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "2924:6:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3000:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3009:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3012:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "3002:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3002:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3002:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "2972:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2988:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2992:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "2984:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2984:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2996:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "2980:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2980:18:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "2969:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "2969:30:32" - }, - "nodeType": "YulIf", - "src": "2966:50:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3025:84:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3081:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "3092:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3077:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3077:22:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "3101:7:32" - } - ], - "functionName": { - "name": "abi_decode_bytes_calldata", - "nodeType": "YulIdentifier", - "src": "3051:25:32" - }, - "nodeType": "YulFunctionCall", - "src": "3051:58:32" - }, - "variables": [ - { - "name": "value0_1", - "nodeType": "YulTypedName", - "src": "3029:8:32", - "type": "" - }, - { - "name": "value1_1", - "nodeType": "YulTypedName", - "src": "3039:8:32", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "3118:18:32", - "value": { - "name": "value0_1", - "nodeType": "YulIdentifier", - "src": "3128:8:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "3118:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "3145:18:32", - "value": { - "name": "value1_1", - "nodeType": "YulIdentifier", - "src": "3155:8:32" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "3145:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "3172:45:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3202:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3213:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3198:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3198:18:32" - } - ], - "functionName": { - "name": "abi_decode_bool", - "nodeType": "YulIdentifier", - "src": "3182:15:32" - }, - "nodeType": "YulFunctionCall", - "src": "3182:35:32" - }, - "variableNames": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "3172:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bytes_calldata_ptrt_bool", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "2799:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "2810:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "2822:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "2830:6:32", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "2838:6:32", - "type": "" - } - ], - "src": "2746:477:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3355:98:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3372:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3383:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3365:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3365:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3365:21:32" - }, - { - "nodeType": "YulAssignment", - "src": "3395:52:32", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "3420:6:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3432:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3443:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3428:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3428:18:32" - } - ], - "functionName": { - "name": "abi_encode_bytes", - "nodeType": "YulIdentifier", - "src": "3403:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "3403:44:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "3395:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_library_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "3324:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "3335:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "3346:4:32", - "type": "" - } - ], - "src": "3228:225:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3587:98:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3604:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3615:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3597:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3597:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3597:21:32" - }, - { - "nodeType": "YulAssignment", - "src": "3627:52:32", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "3652:6:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3664:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3675:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3660:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3660:18:32" - } - ], - "functionName": { - "name": "abi_encode_bytes", - "nodeType": "YulIdentifier", - "src": "3635:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "3635:44:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "3627:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_library_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "3556:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "3567:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "3578:4:32", - "type": "" - } - ], - "src": "3458:227:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3829:646:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "3875:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3884:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3887:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "3877:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3877:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3877:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "3850:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3859:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "3846:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3846:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3871:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "3842:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3842:32:32" - }, - "nodeType": "YulIf", - "src": "3839:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3900:37:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3927:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "3914:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "3914:23:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "3904:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3946:28:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3964:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3968:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "3960:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3960:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3972:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "3956:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3956:18:32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "3950:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4001:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4010:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4013:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "4003:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4003:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4003:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "3989:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "3997:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "3986:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "3986:14:32" - }, - "nodeType": "YulIf", - "src": "3983:34:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "4026:84:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4082:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "4093:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4078:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4078:22:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "4102:7:32" - } - ], - "functionName": { - "name": "abi_decode_bytes_calldata", - "nodeType": "YulIdentifier", - "src": "4052:25:32" - }, - "nodeType": "YulFunctionCall", - "src": "4052:58:32" - }, - "variables": [ - { - "name": "value0_1", - "nodeType": "YulTypedName", - "src": "4030:8:32", - "type": "" - }, - { - "name": "value1_1", - "nodeType": "YulTypedName", - "src": "4040:8:32", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "4119:18:32", - "value": { - "name": "value0_1", - "nodeType": "YulIdentifier", - "src": "4129:8:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "4119:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "4146:18:32", - "value": { - "name": "value1_1", - "nodeType": "YulIdentifier", - "src": "4156:8:32" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "4146:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "4173:48:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4206:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4217:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4202:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4202:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "4189:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "4189:32:32" - }, - "variables": [ - { - "name": "offset_1", - "nodeType": "YulTypedName", - "src": "4177:8:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4250:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4259:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4262:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "4252:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4252:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4252:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "4236:8:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "4246:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "4233:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "4233:16:32" - }, - "nodeType": "YulIf", - "src": "4230:36:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "4275:86:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4331:9:32" - }, - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "4342:8:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4327:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4327:24:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "4353:7:32" - } - ], - "functionName": { - "name": "abi_decode_bytes_calldata", - "nodeType": "YulIdentifier", - "src": "4301:25:32" - }, - "nodeType": "YulFunctionCall", - "src": "4301:60:32" - }, - "variables": [ - { - "name": "value2_1", - "nodeType": "YulTypedName", - "src": "4279:8:32", - "type": "" - }, - { - "name": "value3_1", - "nodeType": "YulTypedName", - "src": "4289:8:32", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "4370:18:32", - "value": { - "name": "value2_1", - "nodeType": "YulIdentifier", - "src": "4380:8:32" - }, - "variableNames": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "4370:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "4397:18:32", - "value": { - "name": "value3_1", - "nodeType": "YulIdentifier", - "src": "4407:8:32" - }, - "variableNames": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "4397:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "4424:45:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4454:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4465:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4450:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4450:18:32" - } - ], - "functionName": { - "name": "abi_decode_bool", - "nodeType": "YulIdentifier", - "src": "4434:15:32" - }, - "nodeType": "YulFunctionCall", - "src": "4434:35:32" - }, - "variableNames": [ - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "4424:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bytes_calldata_ptrt_bytes_calldata_ptrt_bool", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "3763:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "3774:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "3786:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "3794:6:32", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "3802:6:32", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "3810:6:32", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "3818:6:32", - "type": "" - } - ], - "src": "3690:785:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4583:92:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "4593:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4605:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4616:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4601:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4601:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "4593:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4635:9:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "4660:6:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "4653:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4653:14:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "4646:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4646:22:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4628:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4628:41:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4628:41:32" - } - ] - }, - "name": "abi_encode_tuple_t_bool__to_t_bool__fromStack_library_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "4552:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "4563:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "4574:4:32", - "type": "" - } - ], - "src": "4480:195:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4712:95:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4729:1:32", - "type": "", - "value": "0" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4736:3:32", - "type": "", - "value": "224" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4741:10:32", - "type": "", - "value": "0x4e487b71" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "4732:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4732:20:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4722:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4722:31:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4722:31:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4769:1:32", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4772:4:32", - "type": "", - "value": "0x41" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4762:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4762:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4762:15:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4793:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4796:4:32", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "4786:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4786:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4786:15:32" - } - ] - }, - "name": "panic_error_0x41", - "nodeType": "YulFunctionDefinition", - "src": "4680:127:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4891:842:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "4937:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4946:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4949:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "4939:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4939:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4939:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "4912:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4921:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "4908:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4908:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4933:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "4904:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4904:32:32" - }, - "nodeType": "YulIf", - "src": "4901:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "4962:37:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4989:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "4976:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "4976:23:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "4966:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "5008:28:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5026:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5030:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "5022:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5022:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5034:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "5018:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5018:18:32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "5012:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5063:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5072:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5075:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "5065:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "5065:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "5065:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "5051:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "5059:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "5048:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "5048:14:32" - }, - "nodeType": "YulIf", - "src": "5045:34:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "5088:32:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5102:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "5113:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5098:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5098:22:32" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "5092:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5168:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5177:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5180:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "5170:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "5170:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "5170:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "5147:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5151:4:32", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5143:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5143:13:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "5158:7:32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "5139:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5139:27:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "5132:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "5132:35:32" - }, - "nodeType": "YulIf", - "src": "5129:55:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "5193:26:32", - "value": { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "5216:2:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "5203:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "5203:16:32" - }, - "variables": [ - { - "name": "_3", - "nodeType": "YulTypedName", - "src": "5197:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5242:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "5244:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "5244:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "5244:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "5234:2:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "5238:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "5231:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "5231:10:32" - }, - "nodeType": "YulIf", - "src": "5228:36:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "5273:17:32", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5287:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "5283:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5283:7:32" - }, - "variables": [ - { - "name": "_4", - "nodeType": "YulTypedName", - "src": "5277:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "5299:23:32", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5319:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "5313:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "5313:9:32" - }, - "variables": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "5303:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "5331:71:32", - "value": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "5353:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "5377:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5381:4:32", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5373:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5373:13:32" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "5388:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "5369:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5369:22:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5393:2:32", - "type": "", - "value": "63" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5365:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5365:31:32" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "5398:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "5361:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5361:40:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5349:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5349:53:32" - }, - "variables": [ - { - "name": "newFreePtr", - "nodeType": "YulTypedName", - "src": "5335:10:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5461:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "5463:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "5463:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "5463:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "5420:10:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "5432:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "5417:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "5417:18:32" - }, - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "5440:10:32" - }, - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "5452:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "5437:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "5437:22:32" - } - ], - "functionName": { - "name": "or", - "nodeType": "YulIdentifier", - "src": "5414:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "5414:46:32" - }, - "nodeType": "YulIf", - "src": "5411:72:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5499:2:32", - "type": "", - "value": "64" - }, - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "5503:10:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5492:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "5492:22:32" - }, - "nodeType": "YulExpressionStatement", - "src": "5492:22:32" - }, - { - "expression": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "5530:6:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "5538:2:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5523:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "5523:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "5523:18:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5587:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5596:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5599:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "5589:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "5589:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "5589:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "5564:2:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "5568:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5560:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5560:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5573:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5556:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5556:20:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "5578:7:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "5553:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "5553:33:32" - }, - "nodeType": "YulIf", - "src": "5550:53:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "5629:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5637:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5625:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5625:15:32" - }, - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "5646:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5650:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5642:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5642:11:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "5655:2:32" - } - ], - "functionName": { - "name": "calldatacopy", - "nodeType": "YulIdentifier", - "src": "5612:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "5612:46:32" - }, - "nodeType": "YulExpressionStatement", - "src": "5612:46:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "5682:6:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "5690:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5678:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5678:15:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5695:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5674:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5674:24:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5700:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5667:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "5667:35:32" - }, - "nodeType": "YulExpressionStatement", - "src": "5667:35:32" - }, - { - "nodeType": "YulAssignment", - "src": "5711:16:32", - "value": { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "5721:6:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "5711:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bytes_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "4857:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "4868:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "4880:6:32", - "type": "" - } - ], - "src": "4812:921:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5847:76:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "5857:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5869:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5880:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5865:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5865:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "5857:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5899:9:32" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "5910:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5892:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "5892:25:32" - }, - "nodeType": "YulExpressionStatement", - "src": "5892:25:32" - } - ] - }, - "name": "abi_encode_tuple_t_uint256__to_t_uint256__fromStack_library_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "5816:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "5827:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "5838:4:32", - "type": "" - } - ], - "src": "5738:185:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6037:76:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "6047:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6059:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6070:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6055:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6055:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "6047:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6089:9:32" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "6100:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "6082:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "6082:25:32" - }, - "nodeType": "YulExpressionStatement", - "src": "6082:25:32" - } - ] - }, - "name": "abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_library_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "6006:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "6017:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "6028:4:32", - "type": "" - } - ], - "src": "5928:185:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6150:95:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6167:1:32", - "type": "", - "value": "0" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6174:3:32", - "type": "", - "value": "224" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6179:10:32", - "type": "", - "value": "0x4e487b71" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "6170:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6170:20:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "6160:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "6160:31:32" - }, - "nodeType": "YulExpressionStatement", - "src": "6160:31:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6207:1:32", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6210:4:32", - "type": "", - "value": "0x32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "6200:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "6200:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "6200:15:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6231:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6234:4:32", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "6224:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "6224:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "6224:15:32" - } - ] - }, - "name": "panic_error_0x32", - "nodeType": "YulFunctionDefinition", - "src": "6118:127:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6282:95:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6299:1:32", - "type": "", - "value": "0" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6306:3:32", - "type": "", - "value": "224" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6311:10:32", - "type": "", - "value": "0x4e487b71" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "6302:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6302:20:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "6292:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "6292:31:32" - }, - "nodeType": "YulExpressionStatement", - "src": "6292:31:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6339:1:32", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6342:4:32", - "type": "", - "value": "0x11" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "6332:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "6332:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "6332:15:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6363:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6366:4:32", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "6356:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "6356:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "6356:15:32" - } - ] - }, - "name": "panic_error_0x11", - "nodeType": "YulFunctionDefinition", - "src": "6250:127:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6430:77:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "6440:16:32", - "value": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "6451:1:32" - }, - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "6454:1:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6447:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6447:9:32" - }, - "variableNames": [ - { - "name": "sum", - "nodeType": "YulIdentifier", - "src": "6440:3:32" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6479:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x11", - "nodeType": "YulIdentifier", - "src": "6481:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "6481:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "6481:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "6471:1:32" - }, - { - "name": "sum", - "nodeType": "YulIdentifier", - "src": "6474:3:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "6468:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "6468:10:32" - }, - "nodeType": "YulIf", - "src": "6465:36:32" - } - ] - }, - "name": "checked_add_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "x", - "nodeType": "YulTypedName", - "src": "6413:1:32", - "type": "" - }, - { - "name": "y", - "nodeType": "YulTypedName", - "src": "6416:1:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "sum", - "nodeType": "YulTypedName", - "src": "6422:3:32", - "type": "" - } - ], - "src": "6382:125:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6559:133:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "6569:28:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6587:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6591:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "6583:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6583:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6595:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "6579:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6579:18:32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "6573:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "6606:34:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "6621:1:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "6624:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "6617:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6617:10:32" - }, - { - "arguments": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "6633:1:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "6636:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "6629:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6629:10:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6613:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6613:27:32" - }, - "variableNames": [ - { - "name": "sum", - "nodeType": "YulIdentifier", - "src": "6606:3:32" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6664:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x11", - "nodeType": "YulIdentifier", - "src": "6666:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "6666:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "6666:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "sum", - "nodeType": "YulIdentifier", - "src": "6655:3:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "6660:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "6652:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "6652:11:32" - }, - "nodeType": "YulIf", - "src": "6649:37:32" - } - ] - }, - "name": "checked_add_t_uint64", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "x", - "nodeType": "YulTypedName", - "src": "6542:1:32", - "type": "" - }, - { - "name": "y", - "nodeType": "YulTypedName", - "src": "6545:1:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "sum", - "nodeType": "YulTypedName", - "src": "6551:3:32", - "type": "" - } - ], - "src": "6512:180:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6743:163:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "6753:28:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6771:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6775:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "6767:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6767:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6779:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "6763:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6763:18:32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "6757:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "6790:29:32", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "6809:5:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "6816:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "6805:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6805:14:32" - }, - "variables": [ - { - "name": "value_1", - "nodeType": "YulTypedName", - "src": "6794:7:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6847:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x11", - "nodeType": "YulIdentifier", - "src": "6849:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "6849:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "6849:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "value_1", - "nodeType": "YulIdentifier", - "src": "6834:7:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "6843:2:32" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "6831:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "6831:15:32" - }, - "nodeType": "YulIf", - "src": "6828:41:32" - }, - { - "nodeType": "YulAssignment", - "src": "6878:22:32", - "value": { - "arguments": [ - { - "name": "value_1", - "nodeType": "YulIdentifier", - "src": "6889:7:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6898:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6885:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6885:15:32" - }, - "variableNames": [ - { - "name": "ret", - "nodeType": "YulIdentifier", - "src": "6878:3:32" - } - ] - } - ] - }, - "name": "increment_t_uint64", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "6725:5:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "ret", - "nodeType": "YulTypedName", - "src": "6735:3:32", - "type": "" - } - ], - "src": "6697:209:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6958:88:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "6989:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x11", - "nodeType": "YulIdentifier", - "src": "6991:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "6991:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "6991:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "6974:5:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6985:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "6981:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6981:6:32" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "6971:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "6971:17:32" - }, - "nodeType": "YulIf", - "src": "6968:43:32" - }, - { - "nodeType": "YulAssignment", - "src": "7020:20:32", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "7031:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7038:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7027:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7027:13:32" - }, - "variableNames": [ - { - "name": "ret", - "nodeType": "YulIdentifier", - "src": "7020:3:32" - } - ] - } - ] - }, - "name": "increment_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "6940:5:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "ret", - "nodeType": "YulTypedName", - "src": "6950:3:32", - "type": "" - } - ], - "src": "6911:135:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7225:226:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7242:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7253:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "7235:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "7235:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "7235:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7276:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7287:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7272:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7272:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7292:2:32", - "type": "", - "value": "36" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "7265:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "7265:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "7265:30:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7315:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7326:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7311:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7311:18:32" - }, - { - "hexValue": "536372697074206861736e277420746865207265717569726564207374727563", - "kind": "string", - "nodeType": "YulLiteral", - "src": "7331:34:32", - "type": "", - "value": "Script hasn't the required struc" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "7304:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "7304:62:32" - }, - "nodeType": "YulExpressionStatement", - "src": "7304:62:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7386:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7397:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7382:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7382:18:32" - }, - { - "hexValue": "74757265", - "kind": "string", - "nodeType": "YulLiteral", - "src": "7402:6:32", - "type": "", - "value": "ture" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "7375:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "7375:34:32" - }, - "nodeType": "YulExpressionStatement", - "src": "7375:34:32" - }, - { - "nodeType": "YulAssignment", - "src": "7418:27:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7430:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7441:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7426:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7426:19:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "7418:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_5c42cb24ade4c938d2af09aa1cf0c55f1ebed622636f7647d2e3fc9fd6191142__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "7202:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "7216:4:32", - "type": "" - } - ], - "src": "7051:400:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7503:104:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "7513:39:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "7529:1:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7532:4:32", - "type": "", - "value": "0xff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "7525:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7525:12:32" - }, - { - "arguments": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "7543:1:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7546:4:32", - "type": "", - "value": "0xff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "7539:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7539:12:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "7521:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7521:31:32" - }, - "variableNames": [ - { - "name": "diff", - "nodeType": "YulIdentifier", - "src": "7513:4:32" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7579:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x11", - "nodeType": "YulIdentifier", - "src": "7581:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "7581:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "7581:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "diff", - "nodeType": "YulIdentifier", - "src": "7567:4:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7573:4:32", - "type": "", - "value": "0xff" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "7564:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "7564:14:32" - }, - "nodeType": "YulIf", - "src": "7561:40:32" - } - ] - }, - "name": "checked_sub_t_uint8", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "x", - "nodeType": "YulTypedName", - "src": "7485:1:32", - "type": "" - }, - { - "name": "y", - "nodeType": "YulTypedName", - "src": "7488:1:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "diff", - "nodeType": "YulTypedName", - "src": "7494:4:32", - "type": "" - } - ], - "src": "7456:151:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7658:102:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "7668:38:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "7683:1:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7686:4:32", - "type": "", - "value": "0xff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "7679:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7679:12:32" - }, - { - "arguments": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "7697:1:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7700:4:32", - "type": "", - "value": "0xff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "7693:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7693:12:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7675:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7675:31:32" - }, - "variableNames": [ - { - "name": "sum", - "nodeType": "YulIdentifier", - "src": "7668:3:32" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7732:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x11", - "nodeType": "YulIdentifier", - "src": "7734:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "7734:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "7734:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "sum", - "nodeType": "YulIdentifier", - "src": "7721:3:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7726:4:32", - "type": "", - "value": "0xff" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "7718:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "7718:13:32" - }, - "nodeType": "YulIf", - "src": "7715:39:32" - } - ] - }, - "name": "checked_add_t_uint8", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "x", - "nodeType": "YulTypedName", - "src": "7641:1:32", - "type": "" - }, - { - "name": "y", - "nodeType": "YulTypedName", - "src": "7644:1:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "sum", - "nodeType": "YulTypedName", - "src": "7650:3:32", - "type": "" - } - ], - "src": "7612:148:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7810:130:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "7820:31:32", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "7839:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7846:4:32", - "type": "", - "value": "0xff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "7835:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7835:16:32" - }, - "variables": [ - { - "name": "value_1", - "nodeType": "YulTypedName", - "src": "7824:7:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7881:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x11", - "nodeType": "YulIdentifier", - "src": "7883:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "7883:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "7883:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "value_1", - "nodeType": "YulIdentifier", - "src": "7866:7:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7875:4:32", - "type": "", - "value": "0xff" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "7863:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "7863:17:32" - }, - "nodeType": "YulIf", - "src": "7860:43:32" - }, - { - "nodeType": "YulAssignment", - "src": "7912:22:32", - "value": { - "arguments": [ - { - "name": "value_1", - "nodeType": "YulIdentifier", - "src": "7923:7:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7932:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7919:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7919:15:32" - }, - "variableNames": [ - { - "name": "ret", - "nodeType": "YulIdentifier", - "src": "7912:3:32" - } - ] - } - ] - }, - "name": "increment_t_uint8", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "7792:5:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "ret", - "nodeType": "YulTypedName", - "src": "7802:3:32", - "type": "" - } - ], - "src": "7765:175:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8119:162:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8136:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8147:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "8129:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "8129:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "8129:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8170:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8181:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8166:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8166:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8186:2:32", - "type": "", - "value": "12" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "8159:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "8159:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "8159:30:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8209:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8220:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8205:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8205:18:32" - }, - { - "hexValue": "496e76616c69642073697a65", - "kind": "string", - "nodeType": "YulLiteral", - "src": "8225:14:32", - "type": "", - "value": "Invalid size" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "8198:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "8198:42:32" - }, - "nodeType": "YulExpressionStatement", - "src": "8198:42:32" - }, - { - "nodeType": "YulAssignment", - "src": "8249:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8261:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8272:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8257:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8257:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "8249:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_151b9b932514cffea6d6fb8ef0dc06f3ba8d7fdd73eacee7d06d663fcfd3d8d0__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "8096:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "8110:4:32", - "type": "" - } - ], - "src": "7945:336:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8460:163:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8477:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8488:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "8470:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "8470:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "8470:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8511:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8522:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8507:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8507:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8527:2:32", - "type": "", - "value": "13" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "8500:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "8500:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "8500:30:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8550:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8561:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8546:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8546:18:32" - }, - { - "hexValue": "4e6f74204f505f52455455524e", - "kind": "string", - "nodeType": "YulLiteral", - "src": "8566:15:32", - "type": "", - "value": "Not OP_RETURN" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "8539:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "8539:43:32" - }, - "nodeType": "YulExpressionStatement", - "src": "8539:43:32" - }, - { - "nodeType": "YulAssignment", - "src": "8591:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8603:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8614:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8599:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8599:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "8591:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_91402c28d33a78ed08b610916663678b602b8439e472ae56e5b350939be81082__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "8437:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "8451:4:32", - "type": "" - } - ], - "src": "8286:337:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8758:201:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "8796:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8805:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8808:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "8798:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "8798:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "8798:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "startIndex", - "nodeType": "YulIdentifier", - "src": "8774:10:32" - }, - { - "name": "endIndex", - "nodeType": "YulIdentifier", - "src": "8786:8:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "8771:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "8771:24:32" - }, - "nodeType": "YulIf", - "src": "8768:44:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8845:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8854:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8857:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "8847:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "8847:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "8847:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "endIndex", - "nodeType": "YulIdentifier", - "src": "8827:8:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "8837:6:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "8824:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "8824:20:32" - }, - "nodeType": "YulIf", - "src": "8821:40:32" - }, - { - "nodeType": "YulAssignment", - "src": "8870:36:32", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "8887:6:32" - }, - { - "name": "startIndex", - "nodeType": "YulIdentifier", - "src": "8895:10:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8883:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8883:23:32" - }, - "variableNames": [ - { - "name": "offsetOut", - "nodeType": "YulIdentifier", - "src": "8870:9:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "8915:38:32", - "value": { - "arguments": [ - { - "name": "endIndex", - "nodeType": "YulIdentifier", - "src": "8932:8:32" - }, - { - "name": "startIndex", - "nodeType": "YulIdentifier", - "src": "8942:10:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "8928:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8928:25:32" - }, - "variableNames": [ - { - "name": "lengthOut", - "nodeType": "YulIdentifier", - "src": "8915:9:32" - } - ] - } - ] - }, - "name": "calldata_array_index_range_access_t_bytes_calldata_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "8692:6:32", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "8700:6:32", - "type": "" - }, - { - "name": "startIndex", - "nodeType": "YulTypedName", - "src": "8708:10:32", - "type": "" - }, - { - "name": "endIndex", - "nodeType": "YulTypedName", - "src": "8720:8:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "offsetOut", - "nodeType": "YulTypedName", - "src": "8733:9:32", - "type": "" - }, - { - "name": "lengthOut", - "nodeType": "YulTypedName", - "src": "8744:9:32", - "type": "" - } - ], - "src": "8628:331:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9013:79:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "9023:17:32", - "value": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "9035:1:32" - }, - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "9038:1:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "9031:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9031:9:32" - }, - "variableNames": [ - { - "name": "diff", - "nodeType": "YulIdentifier", - "src": "9023:4:32" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9064:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x11", - "nodeType": "YulIdentifier", - "src": "9066:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "9066:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "9066:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "diff", - "nodeType": "YulIdentifier", - "src": "9055:4:32" - }, - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "9061:1:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "9052:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "9052:11:32" - }, - "nodeType": "YulIf", - "src": "9049:37:32" - } - ] - }, - "name": "checked_sub_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "x", - "nodeType": "YulTypedName", - "src": "8995:1:32", - "type": "" - }, - { - "name": "y", - "nodeType": "YulTypedName", - "src": "8998:1:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "diff", - "nodeType": "YulTypedName", - "src": "9004:4:32", - "type": "" - } - ], - "src": "8964:128:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9244:124:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "9267:3:32" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "9272:6:32" - }, - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "9280:6:32" - } - ], - "functionName": { - "name": "calldatacopy", - "nodeType": "YulIdentifier", - "src": "9254:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "9254:33:32" - }, - "nodeType": "YulExpressionStatement", - "src": "9254:33:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "9296:26:32", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "9310:3:32" - }, - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "9315:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9306:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9306:16:32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "9300:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "9338:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9342:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "9331:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "9331:13:32" - }, - "nodeType": "YulExpressionStatement", - "src": "9331:13:32" - }, - { - "nodeType": "YulAssignment", - "src": "9353:9:32", - "value": { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "9360:2:32" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "9353:3:32" - } - ] - } - ] - }, - "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": "9212:3:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "9217:6:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "9225:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "9236:3:32", - "type": "" - } - ], - "src": "9097:271:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9547:171:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9564:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9575:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "9557:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "9557:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "9557:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9598:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9609:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9594:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9594:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9614:2:32", - "type": "", - "value": "21" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "9587:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "9587:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "9587:30:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9637:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9648:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9633:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9633:18:32" - }, - { - "hexValue": "496e76616c696420686561646572206c656e677468", - "kind": "string", - "nodeType": "YulLiteral", - "src": "9653:23:32", - "type": "", - "value": "Invalid header length" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "9626:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "9626:51:32" - }, - "nodeType": "YulExpressionStatement", - "src": "9626:51:32" - }, - { - "nodeType": "YulAssignment", - "src": "9686:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9698:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9709:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9694:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9694:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "9686:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_62784c5b4854856e20fdf3da2ed017d8d7ad91e96ee28ef17acb0683953b91b7__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "9524:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "9538:4:32", - "type": "" - } - ], - "src": "9373:345:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9804:103:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "9850:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9859:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9862:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "9852:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "9852:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "9852:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "9825:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9834:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "9821:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9821:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9846:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "9817:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9817:32:32" - }, - "nodeType": "YulIf", - "src": "9814:52:32" - }, - { - "nodeType": "YulAssignment", - "src": "9875:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9891:9:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "9885:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "9885:16:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "9875:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bytes32_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "9770:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "9781:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "9793:6:32", - "type": "" - } - ], - "src": "9723:184:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10031:63:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "10048:3:32" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "10053:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "10041:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "10041:19:32" - }, - "nodeType": "YulExpressionStatement", - "src": "10041:19:32" - }, - { - "nodeType": "YulAssignment", - "src": "10069:19:32", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "10080:3:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10085:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10076:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10076:12:32" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "10069:3:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_packed_t_bytes32__to_t_bytes32__nonPadded_inplace_fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "10007:3:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "10012:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "10023:3:32", - "type": "" - } - ], - "src": "9912:182:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10236:150:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "10246:27:32", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "10266:6:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "10260:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "10260:13:32" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "10250:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "10321:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10329:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10317:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10317:17:32" - }, - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "10336:3:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "10341:6:32" - } - ], - "functionName": { - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulIdentifier", - "src": "10282:34:32" - }, - "nodeType": "YulFunctionCall", - "src": "10282:66:32" - }, - "nodeType": "YulExpressionStatement", - "src": "10282:66:32" - }, - { - "nodeType": "YulAssignment", - "src": "10357:23:32", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "10368:3:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "10373:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10364:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10364:16:32" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "10357:3:32" - } - ] - } - ] - }, - "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": "10212:3:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "10217:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "10228:3:32", - "type": "" - } - ], - "src": "10099:287:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10536:149:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "10553:3:32" - }, - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "10562:6:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10574:3:32", - "type": "", - "value": "248" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10579:3:32", - "type": "", - "value": "255" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "10570:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10570:13:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "10558:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10558:26:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "10546:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "10546:39:32" - }, - "nodeType": "YulExpressionStatement", - "src": "10546:39:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "10605:3:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10610:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10601:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10601:11:32" - }, - { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "10618:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10638:2:32", - "type": "", - "value": "96" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10642:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "10634:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10634:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10646:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "10630:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10630:18:32" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "10626:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10626:23:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "10614:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10614:36:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "10594:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "10594:57:32" - }, - "nodeType": "YulExpressionStatement", - "src": "10594:57:32" - }, - { - "nodeType": "YulAssignment", - "src": "10660:19:32", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "10671:3:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10676:2:32", - "type": "", - "value": "21" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10667:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10667:12:32" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "10660:3:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_packed_t_bytes1_t_bytes20__to_t_bytes1_t_bytes20__nonPadded_inplace_fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "10504:3:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "10509:6:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "10517:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "10528:3:32", - "type": "" - } - ], - "src": "10391:294:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10853:242:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "10863:27:32", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "10883:6:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "10877:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "10877:13:32" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "10867:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "10938:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10946:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10934:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10934:17:32" - }, - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "10953:3:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "10958:6:32" - } - ], - "functionName": { - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulIdentifier", - "src": "10899:34:32" - }, - "nodeType": "YulFunctionCall", - "src": "10899:66:32" - }, - "nodeType": "YulExpressionStatement", - "src": "10899:66:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "10974:29:32", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "10991:3:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "10996:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10987:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10987:16:32" - }, - "variables": [ - { - "name": "end_1", - "nodeType": "YulTypedName", - "src": "10978:5:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "end_1", - "nodeType": "YulIdentifier", - "src": "11019:5:32" - }, - { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "11030:6:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11042:3:32", - "type": "", - "value": "224" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11047:10:32", - "type": "", - "value": "0xffffffff" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "11038:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11038:20:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "11026:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11026:33:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "11012:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "11012:48:32" - }, - "nodeType": "YulExpressionStatement", - "src": "11012:48:32" - }, - { - "nodeType": "YulAssignment", - "src": "11069:20:32", - "value": { - "arguments": [ - { - "name": "end_1", - "nodeType": "YulIdentifier", - "src": "11080:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11087:1:32", - "type": "", - "value": "4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11076:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11076:13:32" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "11069:3:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_packed_t_bytes_memory_ptr_t_bytes4__to_t_bytes_memory_ptr_t_bytes4__nonPadded_inplace_fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "10821:3:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "10826:6:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "10834:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "10845:3:32", - "type": "" - } - ], - "src": "10690:405:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "11274:173:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11291:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11302:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "11284:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "11284:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "11284:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11325:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11336:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11321:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11321:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11341:2:32", - "type": "", - "value": "23" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "11314:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "11314:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "11314:30:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11364:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11375:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11360:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11360:18:32" - }, - { - "hexValue": "556e737570706f72746564207363726970742074797065", - "kind": "string", - "nodeType": "YulLiteral", - "src": "11380:25:32", - "type": "", - "value": "Unsupported script type" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "11353:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "11353:53:32" - }, - "nodeType": "YulExpressionStatement", - "src": "11353:53:32" - }, - { - "nodeType": "YulAssignment", - "src": "11415:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11427:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11438:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11423:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11423:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "11415:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_82bc120954d4025ad83f4cfd56c5f75d5f05a659cc4489ef281377ffa1d8ef8b__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "11251:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "11265:4:32", - "type": "" - } - ], - "src": "11100:347:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "11626:230:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11643:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11654:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "11636:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "11636:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "11636:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11677:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11688:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11673:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11673:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11693:2:32", - "type": "", - "value": "40" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "11666:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "11666:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "11666:30:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11716:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11727:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11712:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11712:18:32" - }, - { - "hexValue": "53697a6520706f736974696f6e2063616e277420626520626967676572207468", - "kind": "string", - "nodeType": "YulLiteral", - "src": "11732:34:32", - "type": "", - "value": "Size position can't be bigger th" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "11705:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "11705:62:32" - }, - "nodeType": "YulExpressionStatement", - "src": "11705:62:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11787:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11798:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11783:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11783:18:32" - }, - { - "hexValue": "616e206172726179", - "kind": "string", - "nodeType": "YulLiteral", - "src": "11803:10:32", - "type": "", - "value": "an array" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "11776:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "11776:38:32" - }, - "nodeType": "YulExpressionStatement", - "src": "11776:38:32" - }, - { - "nodeType": "YulAssignment", - "src": "11823:27:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11835:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11846:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11831:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11831:19:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "11823:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_33c6dd8650ffbd109c11f2a50d2c26a90aa65e9c0c8ae6a11ce0114fae017f47__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "11603:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "11617:4:32", - "type": "" - } - ], - "src": "11452:404:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "11925:358:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "11935:16:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11950:1:32", - "type": "", - "value": "1" - }, - "variables": [ - { - "name": "power_1", - "nodeType": "YulTypedName", - "src": "11939:7:32", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "11960:16:32", - "value": { - "name": "power_1", - "nodeType": "YulIdentifier", - "src": "11969:7:32" - }, - "variableNames": [ - { - "name": "power", - "nodeType": "YulIdentifier", - "src": "11960:5:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "11985:13:32", - "value": { - "name": "_base", - "nodeType": "YulIdentifier", - "src": "11993:5:32" - }, - "variableNames": [ - { - "name": "base", - "nodeType": "YulIdentifier", - "src": "11985:4:32" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12049:228:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "12094:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x11", - "nodeType": "YulIdentifier", - "src": "12096:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "12096:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "12096:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "base", - "nodeType": "YulIdentifier", - "src": "12069:4:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12083:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "12079:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12079:6:32" - }, - { - "name": "base", - "nodeType": "YulIdentifier", - "src": "12087:4:32" - } - ], - "functionName": { - "name": "div", - "nodeType": "YulIdentifier", - "src": "12075:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12075:17:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "12066:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "12066:27:32" - }, - "nodeType": "YulIf", - "src": "12063:53:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12155:29:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "12157:25:32", - "value": { - "arguments": [ - { - "name": "power", - "nodeType": "YulIdentifier", - "src": "12170:5:32" - }, - { - "name": "base", - "nodeType": "YulIdentifier", - "src": "12177:4:32" - } - ], - "functionName": { - "name": "mul", - "nodeType": "YulIdentifier", - "src": "12166:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12166:16:32" - }, - "variableNames": [ - { - "name": "power", - "nodeType": "YulIdentifier", - "src": "12157:5:32" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "exponent", - "nodeType": "YulIdentifier", - "src": "12136:8:32" - }, - { - "name": "power_1", - "nodeType": "YulIdentifier", - "src": "12146:7:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "12132:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12132:22:32" - }, - "nodeType": "YulIf", - "src": "12129:55:32" - }, - { - "nodeType": "YulAssignment", - "src": "12197:23:32", - "value": { - "arguments": [ - { - "name": "base", - "nodeType": "YulIdentifier", - "src": "12209:4:32" - }, - { - "name": "base", - "nodeType": "YulIdentifier", - "src": "12215:4:32" - } - ], - "functionName": { - "name": "mul", - "nodeType": "YulIdentifier", - "src": "12205:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12205:15:32" - }, - "variableNames": [ - { - "name": "base", - "nodeType": "YulIdentifier", - "src": "12197:4:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "12233:34:32", - "value": { - "arguments": [ - { - "name": "power_1", - "nodeType": "YulIdentifier", - "src": "12249:7:32" - }, - { - "name": "exponent", - "nodeType": "YulIdentifier", - "src": "12258:8:32" - } - ], - "functionName": { - "name": "shr", - "nodeType": "YulIdentifier", - "src": "12245:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12245:22:32" - }, - "variableNames": [ - { - "name": "exponent", - "nodeType": "YulIdentifier", - "src": "12233:8:32" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "exponent", - "nodeType": "YulIdentifier", - "src": "12018:8:32" - }, - { - "name": "power_1", - "nodeType": "YulIdentifier", - "src": "12028:7:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "12015:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "12015:21:32" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "12037:3:32", - "statements": [] - }, - "pre": { - "nodeType": "YulBlock", - "src": "12011:3:32", - "statements": [] - }, - "src": "12007:270:32" - } - ] - }, - "name": "checked_exp_helper", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "_base", - "nodeType": "YulTypedName", - "src": "11889:5:32", - "type": "" - }, - { - "name": "exponent", - "nodeType": "YulTypedName", - "src": "11896:8:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "power", - "nodeType": "YulTypedName", - "src": "11909:5:32", - "type": "" - }, - { - "name": "base", - "nodeType": "YulTypedName", - "src": "11916:4:32", - "type": "" - } - ], - "src": "11861:422:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12347:747:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "12385:52:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "12399:10:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12408:1:32", - "type": "", - "value": "1" - }, - "variableNames": [ - { - "name": "power", - "nodeType": "YulIdentifier", - "src": "12399:5:32" - } - ] - }, - { - "nodeType": "YulLeave", - "src": "12422:5:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "exponent", - "nodeType": "YulIdentifier", - "src": "12367:8:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "12360:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "12360:16:32" - }, - "nodeType": "YulIf", - "src": "12357:80:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12470:52:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "12484:10:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12493:1:32", - "type": "", - "value": "0" - }, - "variableNames": [ - { - "name": "power", - "nodeType": "YulIdentifier", - "src": "12484:5:32" - } - ] - }, - { - "nodeType": "YulLeave", - "src": "12507:5:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "base", - "nodeType": "YulIdentifier", - "src": "12456:4:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "12449:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "12449:12:32" - }, - "nodeType": "YulIf", - "src": "12446:76:32" - }, - { - "cases": [ - { - "body": { - "nodeType": "YulBlock", - "src": "12558:52:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "12572:10:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12581:1:32", - "type": "", - "value": "1" - }, - "variableNames": [ - { - "name": "power", - "nodeType": "YulIdentifier", - "src": "12572:5:32" - } - ] - }, - { - "nodeType": "YulLeave", - "src": "12595:5:32" - } - ] - }, - "nodeType": "YulCase", - "src": "12551:59:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12556:1:32", - "type": "", - "value": "1" - } - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12626:123:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "12661:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x11", - "nodeType": "YulIdentifier", - "src": "12663:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "12663:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "12663:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "exponent", - "nodeType": "YulIdentifier", - "src": "12646:8:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12656:3:32", - "type": "", - "value": "255" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "12643:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "12643:17:32" - }, - "nodeType": "YulIf", - "src": "12640:43:32" - }, - { - "nodeType": "YulAssignment", - "src": "12696:25:32", - "value": { - "arguments": [ - { - "name": "exponent", - "nodeType": "YulIdentifier", - "src": "12709:8:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12719:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "12705:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12705:16:32" - }, - "variableNames": [ - { - "name": "power", - "nodeType": "YulIdentifier", - "src": "12696:5:32" - } - ] - }, - { - "nodeType": "YulLeave", - "src": "12734:5:32" - } - ] - }, - "nodeType": "YulCase", - "src": "12619:130:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12624:1:32", - "type": "", - "value": "2" - } - } - ], - "expression": { - "name": "base", - "nodeType": "YulIdentifier", - "src": "12538:4:32" - }, - "nodeType": "YulSwitch", - "src": "12531:218:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12847:70:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "12861:28:32", - "value": { - "arguments": [ - { - "name": "base", - "nodeType": "YulIdentifier", - "src": "12874:4:32" - }, - { - "name": "exponent", - "nodeType": "YulIdentifier", - "src": "12880:8:32" - } - ], - "functionName": { - "name": "exp", - "nodeType": "YulIdentifier", - "src": "12870:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12870:19:32" - }, - "variableNames": [ - { - "name": "power", - "nodeType": "YulIdentifier", - "src": "12861:5:32" - } - ] - }, - { - "nodeType": "YulLeave", - "src": "12902:5:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "base", - "nodeType": "YulIdentifier", - "src": "12771:4:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12777:2:32", - "type": "", - "value": "11" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "12768:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "12768:12:32" - }, - { - "arguments": [ - { - "name": "exponent", - "nodeType": "YulIdentifier", - "src": "12785:8:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12795:2:32", - "type": "", - "value": "78" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "12782:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "12782:16:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "12764:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12764:35:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "base", - "nodeType": "YulIdentifier", - "src": "12808:4:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12814:3:32", - "type": "", - "value": "307" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "12805:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "12805:13:32" - }, - { - "arguments": [ - { - "name": "exponent", - "nodeType": "YulIdentifier", - "src": "12823:8:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12833:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "12820:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "12820:16:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "12801:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12801:36:32" - } - ], - "functionName": { - "name": "or", - "nodeType": "YulIdentifier", - "src": "12761:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "12761:77:32" - }, - "nodeType": "YulIf", - "src": "12758:159:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "12926:57:32", - "value": { - "arguments": [ - { - "name": "base", - "nodeType": "YulIdentifier", - "src": "12968:4:32" - }, - { - "name": "exponent", - "nodeType": "YulIdentifier", - "src": "12974:8:32" - } - ], - "functionName": { - "name": "checked_exp_helper", - "nodeType": "YulIdentifier", - "src": "12949:18:32" - }, - "nodeType": "YulFunctionCall", - "src": "12949:34:32" - }, - "variables": [ - { - "name": "power_1", - "nodeType": "YulTypedName", - "src": "12930:7:32", - "type": "" - }, - { - "name": "base_1", - "nodeType": "YulTypedName", - "src": "12939:6:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "13028:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x11", - "nodeType": "YulIdentifier", - "src": "13030:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "13030:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "13030:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "power_1", - "nodeType": "YulIdentifier", - "src": "12998:7:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13015:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "13011:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13011:6:32" - }, - { - "name": "base_1", - "nodeType": "YulIdentifier", - "src": "13019:6:32" - } - ], - "functionName": { - "name": "div", - "nodeType": "YulIdentifier", - "src": "13007:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13007:19:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "12995:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "12995:32:32" - }, - "nodeType": "YulIf", - "src": "12992:58:32" - }, - { - "nodeType": "YulAssignment", - "src": "13059:29:32", - "value": { - "arguments": [ - { - "name": "power_1", - "nodeType": "YulIdentifier", - "src": "13072:7:32" - }, - { - "name": "base_1", - "nodeType": "YulIdentifier", - "src": "13081:6:32" - } - ], - "functionName": { - "name": "mul", - "nodeType": "YulIdentifier", - "src": "13068:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13068:20:32" - }, - "variableNames": [ - { - "name": "power", - "nodeType": "YulIdentifier", - "src": "13059:5:32" - } - ] - } - ] - }, - "name": "checked_exp_unsigned", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "base", - "nodeType": "YulTypedName", - "src": "12318:4:32", - "type": "" - }, - { - "name": "exponent", - "nodeType": "YulTypedName", - "src": "12324:8:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "power", - "nodeType": "YulTypedName", - "src": "12337:5:32", - "type": "" - } - ], - "src": "12288:806:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "13167:72:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "13177:56:32", - "value": { - "arguments": [ - { - "name": "base", - "nodeType": "YulIdentifier", - "src": "13207:4:32" - }, - { - "arguments": [ - { - "name": "exponent", - "nodeType": "YulIdentifier", - "src": "13217:8:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13227:4:32", - "type": "", - "value": "0xff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "13213:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13213:19:32" - } - ], - "functionName": { - "name": "checked_exp_unsigned", - "nodeType": "YulIdentifier", - "src": "13186:20:32" - }, - "nodeType": "YulFunctionCall", - "src": "13186:47:32" - }, - "variableNames": [ - { - "name": "power", - "nodeType": "YulIdentifier", - "src": "13177:5:32" - } - ] - } - ] - }, - "name": "checked_exp_t_uint256_t_uint8", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "base", - "nodeType": "YulTypedName", - "src": "13138:4:32", - "type": "" - }, - { - "name": "exponent", - "nodeType": "YulTypedName", - "src": "13144:8:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "power", - "nodeType": "YulTypedName", - "src": "13157:5:32", - "type": "" - } - ], - "src": "13099:140:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "13418:181:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "13435:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13446:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13428:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "13428:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "13428:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "13469:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13480:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13465:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13465:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13485:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13458:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "13458:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "13458:30:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "13508:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13519:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13504:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13504:18:32" - }, - { - "hexValue": "756e737570706f7274656420636f6d706163742073697a65206c656e677468", - "kind": "string", - "nodeType": "YulLiteral", - "src": "13524:33:32", - "type": "", - "value": "unsupported compact size length" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13497:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "13497:61:32" - }, - "nodeType": "YulExpressionStatement", - "src": "13497:61:32" - }, - { - "nodeType": "YulAssignment", - "src": "13567:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "13579:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13590:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13575:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13575:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "13567:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_173d55eda06bf2b35eca6401b7d16b17b1fc97b7601de25f26189f5300bf3cb3__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "13395:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "13409:4:32", - "type": "" - } - ], - "src": "13244:355:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "13651:121:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "13661:16:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13671:6:32", - "type": "", - "value": "0xffff" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "13665:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "13686:34:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "13701:1:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "13704:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "13697:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13697:10:32" - }, - { - "arguments": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "13713:1:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "13716:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "13709:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13709:10:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13693:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13693:27:32" - }, - "variableNames": [ - { - "name": "sum", - "nodeType": "YulIdentifier", - "src": "13686:3:32" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "13744:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x11", - "nodeType": "YulIdentifier", - "src": "13746:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "13746:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "13746:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "sum", - "nodeType": "YulIdentifier", - "src": "13735:3:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "13740:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "13732:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "13732:11:32" - }, - "nodeType": "YulIf", - "src": "13729:37:32" - } - ] - }, - "name": "checked_add_t_uint16", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "x", - "nodeType": "YulTypedName", - "src": "13634:1:32", - "type": "" - }, - { - "name": "y", - "nodeType": "YulTypedName", - "src": "13637:1:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "sum", - "nodeType": "YulTypedName", - "src": "13643:3:32", - "type": "" - } - ], - "src": "13604:168:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "13829:116:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "13839:20:32", - "value": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "13854:1:32" - }, - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "13857:1:32" - } - ], - "functionName": { - "name": "mul", - "nodeType": "YulIdentifier", - "src": "13850:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13850:9:32" - }, - "variableNames": [ - { - "name": "product", - "nodeType": "YulIdentifier", - "src": "13839:7:32" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "13917:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x11", - "nodeType": "YulIdentifier", - "src": "13919:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "13919:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "13919:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "13888:1:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "13881:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "13881:9:32" - }, - { - "arguments": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "13895:1:32" - }, - { - "arguments": [ - { - "name": "product", - "nodeType": "YulIdentifier", - "src": "13902:7:32" - }, - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "13911:1:32" - } - ], - "functionName": { - "name": "div", - "nodeType": "YulIdentifier", - "src": "13898:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13898:15:32" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "13892:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "13892:22:32" - } - ], - "functionName": { - "name": "or", - "nodeType": "YulIdentifier", - "src": "13878:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "13878:37:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "13871:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "13871:45:32" - }, - "nodeType": "YulIf", - "src": "13868:71:32" - } - ] - }, - "name": "checked_mul_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "x", - "nodeType": "YulTypedName", - "src": "13808:1:32", - "type": "" - }, - { - "name": "y", - "nodeType": "YulTypedName", - "src": "13811:1:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "product", - "nodeType": "YulTypedName", - "src": "13817:7:32", - "type": "" - } - ], - "src": "13777:168:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "13982:95:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13999:1:32", - "type": "", - "value": "0" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14006:3:32", - "type": "", - "value": "224" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14011:10:32", - "type": "", - "value": "0x4e487b71" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "14002:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14002:20:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13992:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "13992:31:32" - }, - "nodeType": "YulExpressionStatement", - "src": "13992:31:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14039:1:32", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14042:4:32", - "type": "", - "value": "0x12" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "14032:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "14032:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "14032:15:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14063:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14066:4:32", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "14056:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "14056:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "14056:15:32" - } - ] - }, - "name": "panic_error_0x12", - "nodeType": "YulFunctionDefinition", - "src": "13950:127:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "14128:74:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "14151:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x12", - "nodeType": "YulIdentifier", - "src": "14153:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "14153:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "14153:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "14148:1:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "14141:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "14141:9:32" - }, - "nodeType": "YulIf", - "src": "14138:35:32" - }, - { - "nodeType": "YulAssignment", - "src": "14182:14:32", - "value": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "14191:1:32" - }, - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "14194:1:32" - } - ], - "functionName": { - "name": "div", - "nodeType": "YulIdentifier", - "src": "14187:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14187:9:32" - }, - "variableNames": [ - { - "name": "r", - "nodeType": "YulIdentifier", - "src": "14182:1:32" - } - ] - } - ] - }, - "name": "checked_div_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "x", - "nodeType": "YulTypedName", - "src": "14113:1:32", - "type": "" - }, - { - "name": "y", - "nodeType": "YulTypedName", - "src": "14116:1:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "r", - "nodeType": "YulTypedName", - "src": "14122:1:32", - "type": "" - } - ], - "src": "14082:120:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "14245:74:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "14268:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x12", - "nodeType": "YulIdentifier", - "src": "14270:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "14270:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "14270:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "14265:1:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "14258:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "14258:9:32" - }, - "nodeType": "YulIf", - "src": "14255:35:32" - }, - { - "nodeType": "YulAssignment", - "src": "14299:14:32", - "value": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "14308:1:32" - }, - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "14311:1:32" - } - ], - "functionName": { - "name": "mod", - "nodeType": "YulIdentifier", - "src": "14304:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14304:9:32" - }, - "variableNames": [ - { - "name": "r", - "nodeType": "YulIdentifier", - "src": "14299:1:32" - } - ] - } - ] - }, - "name": "mod_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "x", - "nodeType": "YulTypedName", - "src": "14230:1:32", - "type": "" - }, - { - "name": "y", - "nodeType": "YulTypedName", - "src": "14233:1:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "r", - "nodeType": "YulTypedName", - "src": "14239:1:32", - "type": "" - } - ], - "src": "14207:112:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "14498:170:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "14515:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14526:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "14508:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "14508:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "14508:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "14549:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14560:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14545:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14545:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14565:2:32", - "type": "", - "value": "20" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "14538:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "14538:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "14538:30:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "14588:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14599:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14584:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14584:18:32" - }, - { - "hexValue": "536c6963696e67206f7574206f662072616e6765", - "kind": "string", - "nodeType": "YulLiteral", - "src": "14604:22:32", - "type": "", - "value": "Slicing out of range" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "14577:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "14577:50:32" - }, - "nodeType": "YulExpressionStatement", - "src": "14577:50:32" - }, - { - "nodeType": "YulAssignment", - "src": "14636:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "14648:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14659:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14644:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14644:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "14636:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_0ad8ca266b3c2b0d5c0f93daeb15638ddfa510fccabc652325dc97cf893869fd__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "14475:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "14489:4:32", - "type": "" - } - ], - "src": "14324:344:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "14847:182:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "14864:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14875:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "14857:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "14857:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "14857:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "14898:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14909:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14894:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14894:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14914:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "14887:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "14887:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "14887:30:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "14937:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14948:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14933:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14933:18:32" - }, - { - "hexValue": "52616e67652063616e277420626520626967676572207468616e206172726179", - "kind": "string", - "nodeType": "YulLiteral", - "src": "14953:34:32", - "type": "", - "value": "Range can't be bigger than array" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "14926:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "14926:62:32" - }, - "nodeType": "YulExpressionStatement", - "src": "14926:62:32" - }, - { - "nodeType": "YulAssignment", - "src": "14997:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "15009:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15020:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15005:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15005:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "14997:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_b880bf2732d5dc41106d7c9b4d33a7d7359e73ab841c93dd915612cdef84660a__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "14824:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "14838:4:32", - "type": "" - } - ], - "src": "14673:356:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "15104:61:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "15114:45:32", - "value": { - "arguments": [ - { - "name": "base", - "nodeType": "YulIdentifier", - "src": "15144:4:32" - }, - { - "name": "exponent", - "nodeType": "YulIdentifier", - "src": "15150:8:32" - } - ], - "functionName": { - "name": "checked_exp_unsigned", - "nodeType": "YulIdentifier", - "src": "15123:20:32" - }, - "nodeType": "YulFunctionCall", - "src": "15123:36:32" - }, - "variableNames": [ - { - "name": "power", - "nodeType": "YulIdentifier", - "src": "15114:5:32" - } - ] - } - ] - }, - "name": "checked_exp_t_uint256_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "base", - "nodeType": "YulTypedName", - "src": "15075:4:32", - "type": "" - }, - { - "name": "exponent", - "nodeType": "YulTypedName", - "src": "15081:8:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "power", - "nodeType": "YulTypedName", - "src": "15094:5:32", - "type": "" - } - ], - "src": "15034:131:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "15221:206:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "15231:28:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15249:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15253:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "15245:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15245:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15257:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "15241:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15241:18:32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "15235:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "15268:46:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "15295:1:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "15298:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "15291:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15291:10:32" - }, - { - "arguments": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "15307:1:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "15310:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "15303:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15303:10:32" - } - ], - "functionName": { - "name": "mul", - "nodeType": "YulIdentifier", - "src": "15287:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15287:27:32" - }, - "variables": [ - { - "name": "product_raw", - "nodeType": "YulTypedName", - "src": "15272:11:32", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "15323:31:32", - "value": { - "arguments": [ - { - "name": "product_raw", - "nodeType": "YulIdentifier", - "src": "15338:11:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "15351:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "15334:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15334:20:32" - }, - "variableNames": [ - { - "name": "product", - "nodeType": "YulIdentifier", - "src": "15323:7:32" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "15399:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x11", - "nodeType": "YulIdentifier", - "src": "15401:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "15401:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "15401:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "product", - "nodeType": "YulIdentifier", - "src": "15376:7:32" - }, - { - "name": "product_raw", - "nodeType": "YulIdentifier", - "src": "15385:11:32" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "15373:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "15373:24:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "15366:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "15366:32:32" - }, - "nodeType": "YulIf", - "src": "15363:58:32" - } - ] - }, - "name": "checked_mul_t_uint64", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "x", - "nodeType": "YulTypedName", - "src": "15200:1:32", - "type": "" - }, - { - "name": "y", - "nodeType": "YulTypedName", - "src": "15203:1:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "product", - "nodeType": "YulTypedName", - "src": "15209:7:32", - "type": "" - } - ], - "src": "15170:257:32" - } - ] - }, - "contents": "{\n { }\n function abi_decode_bytes_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, sub(shl(64, 1), 1)) { 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_bytes_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, sub(shl(64, 1), 1)) { revert(0, 0) }\n let value0_1, value1_1 := abi_decode_bytes_calldata(add(headStart, offset), dataEnd)\n value0 := value0_1\n value1 := value1_1\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_bytes(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), not(31))), 0x20)\n }\n function abi_encode_tuple_t_array$_t_struct$_TxRawOutput_$2307_memory_ptr_$dyn_memory_ptr__to_t_array$_t_struct$_TxRawOutput_$2307_memory_ptr_$dyn_memory_ptr__fromStack_library_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), not(63)))\n let _3 := mload(srcPtr)\n let _4 := 0x80\n mstore(tail_2, and(mload(_3), sub(shl(64, 1), 1)))\n let memberValue0 := mload(add(_3, _1))\n mstore(add(tail_2, _1), _4)\n let tail_3 := abi_encode_bytes(memberValue0, add(tail_2, _4))\n mstore(add(tail_2, _2), mload(add(_3, _2)))\n let _5 := 0x60\n mstore(add(tail_2, _5), mload(add(_3, _5)))\n tail_2 := tail_3\n srcPtr := add(srcPtr, _1)\n pos := add(pos, _1)\n }\n tail := tail_2\n }\n function abi_decode_bool(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, iszero(iszero(value)))) { revert(0, 0) }\n }\n function abi_decode_tuple_t_bytes_calldata_ptrt_bool(headStart, dataEnd) -> value0, value1, value2\n {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n let offset := calldataload(headStart)\n if gt(offset, sub(shl(64, 1), 1)) { revert(0, 0) }\n let value0_1, value1_1 := abi_decode_bytes_calldata(add(headStart, offset), dataEnd)\n value0 := value0_1\n value1 := value1_1\n value2 := abi_decode_bool(add(headStart, 32))\n }\n function abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_library_reversed(headStart, value0) -> tail\n {\n mstore(headStart, 32)\n tail := abi_encode_bytes(value0, add(headStart, 32))\n }\n function abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_library_reversed(headStart, value0) -> tail\n {\n mstore(headStart, 32)\n tail := abi_encode_bytes(value0, add(headStart, 32))\n }\n function abi_decode_tuple_t_bytes_calldata_ptrt_bytes_calldata_ptrt_bool(headStart, dataEnd) -> value0, value1, value2, value3, value4\n {\n if slt(sub(dataEnd, headStart), 96) { revert(0, 0) }\n let offset := calldataload(headStart)\n let _1 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n let value0_1, value1_1 := abi_decode_bytes_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_bytes_calldata(add(headStart, offset_1), dataEnd)\n value2 := value2_1\n value3 := value3_1\n value4 := abi_decode_bool(add(headStart, 64))\n }\n function abi_encode_tuple_t_bool__to_t_bool__fromStack_library_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, iszero(iszero(value0)))\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_bytes_memory_ptr(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let offset := calldataload(headStart)\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 := calldataload(_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 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_uint256__to_t_uint256__fromStack_library_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, value0)\n }\n function abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_library_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, value0)\n }\n function panic_error_0x32()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x32)\n revert(0, 0x24)\n }\n function panic_error_0x11()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x11)\n revert(0, 0x24)\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 checked_add_t_uint64(x, y) -> sum\n {\n let _1 := sub(shl(64, 1), 1)\n sum := add(and(x, _1), and(y, _1))\n if gt(sum, _1) { panic_error_0x11() }\n }\n function increment_t_uint64(value) -> ret\n {\n let _1 := sub(shl(64, 1), 1)\n let value_1 := and(value, _1)\n if eq(value_1, _1) { panic_error_0x11() }\n ret := add(value_1, 1)\n }\n function increment_t_uint256(value) -> ret\n {\n if eq(value, not(0)) { panic_error_0x11() }\n ret := add(value, 1)\n }\n function abi_encode_tuple_t_stringliteral_5c42cb24ade4c938d2af09aa1cf0c55f1ebed622636f7647d2e3fc9fd6191142__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 36)\n mstore(add(headStart, 64), \"Script hasn't the required struc\")\n mstore(add(headStart, 96), \"ture\")\n tail := add(headStart, 128)\n }\n function checked_sub_t_uint8(x, y) -> diff\n {\n diff := sub(and(x, 0xff), and(y, 0xff))\n if gt(diff, 0xff) { panic_error_0x11() }\n }\n function checked_add_t_uint8(x, y) -> sum\n {\n sum := add(and(x, 0xff), and(y, 0xff))\n if gt(sum, 0xff) { panic_error_0x11() }\n }\n function increment_t_uint8(value) -> ret\n {\n let value_1 := and(value, 0xff)\n if eq(value_1, 0xff) { panic_error_0x11() }\n ret := add(value_1, 1)\n }\n function abi_encode_tuple_t_stringliteral_151b9b932514cffea6d6fb8ef0dc06f3ba8d7fdd73eacee7d06d663fcfd3d8d0__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 12)\n mstore(add(headStart, 64), \"Invalid size\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_91402c28d33a78ed08b610916663678b602b8439e472ae56e5b350939be81082__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 13)\n mstore(add(headStart, 64), \"Not OP_RETURN\")\n tail := add(headStart, 96)\n }\n function calldata_array_index_range_access_t_bytes_calldata_ptr(offset, length, startIndex, endIndex) -> offsetOut, lengthOut\n {\n if gt(startIndex, endIndex) { revert(0, 0) }\n if gt(endIndex, length) { revert(0, 0) }\n offsetOut := add(offset, startIndex)\n lengthOut := sub(endIndex, startIndex)\n }\n function checked_sub_t_uint256(x, y) -> diff\n {\n diff := sub(x, y)\n if gt(diff, x) { panic_error_0x11() }\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_tuple_t_stringliteral_62784c5b4854856e20fdf3da2ed017d8d7ad91e96ee28ef17acb0683953b91b7__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 21)\n mstore(add(headStart, 64), \"Invalid header length\")\n tail := add(headStart, 96)\n }\n function abi_decode_tuple_t_bytes32_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := mload(headStart)\n }\n function abi_encode_tuple_packed_t_bytes32__to_t_bytes32__nonPadded_inplace_fromStack_reversed(pos, value0) -> end\n {\n mstore(pos, value0)\n end := add(pos, 32)\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_packed_t_bytes1_t_bytes20__to_t_bytes1_t_bytes20__nonPadded_inplace_fromStack_reversed(pos, value1, value0) -> end\n {\n mstore(pos, and(value0, shl(248, 255)))\n mstore(add(pos, 1), and(value1, not(sub(shl(96, 1), 1))))\n end := add(pos, 21)\n }\n function abi_encode_tuple_packed_t_bytes_memory_ptr_t_bytes4__to_t_bytes_memory_ptr_t_bytes4__nonPadded_inplace_fromStack_reversed(pos, value1, value0) -> end\n {\n let length := mload(value0)\n copy_memory_to_memory_with_cleanup(add(value0, 0x20), pos, length)\n let end_1 := add(pos, length)\n mstore(end_1, and(value1, shl(224, 0xffffffff)))\n end := add(end_1, 4)\n }\n function abi_encode_tuple_t_stringliteral_82bc120954d4025ad83f4cfd56c5f75d5f05a659cc4489ef281377ffa1d8ef8b__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 23)\n mstore(add(headStart, 64), \"Unsupported script type\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_33c6dd8650ffbd109c11f2a50d2c26a90aa65e9c0c8ae6a11ce0114fae017f47__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 40)\n mstore(add(headStart, 64), \"Size position can't be bigger th\")\n mstore(add(headStart, 96), \"an array\")\n tail := add(headStart, 128)\n }\n function checked_exp_helper(_base, exponent) -> power, base\n {\n let power_1 := 1\n power := power_1\n base := _base\n for { } gt(exponent, power_1) { }\n {\n if gt(base, div(not(0), base)) { panic_error_0x11() }\n if and(exponent, power_1) { power := mul(power, base) }\n base := mul(base, base)\n exponent := shr(power_1, exponent)\n }\n }\n function checked_exp_unsigned(base, exponent) -> power\n {\n if iszero(exponent)\n {\n power := 1\n leave\n }\n if iszero(base)\n {\n power := 0\n leave\n }\n switch base\n case 1 {\n power := 1\n leave\n }\n case 2 {\n if gt(exponent, 255) { panic_error_0x11() }\n power := shl(exponent, 1)\n leave\n }\n if or(and(lt(base, 11), lt(exponent, 78)), and(lt(base, 307), lt(exponent, 32)))\n {\n power := exp(base, exponent)\n leave\n }\n let power_1, base_1 := checked_exp_helper(base, exponent)\n if gt(power_1, div(not(0), base_1)) { panic_error_0x11() }\n power := mul(power_1, base_1)\n }\n function checked_exp_t_uint256_t_uint8(base, exponent) -> power\n {\n power := checked_exp_unsigned(base, and(exponent, 0xff))\n }\n function abi_encode_tuple_t_stringliteral_173d55eda06bf2b35eca6401b7d16b17b1fc97b7601de25f26189f5300bf3cb3__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 31)\n mstore(add(headStart, 64), \"unsupported compact size length\")\n tail := add(headStart, 96)\n }\n function checked_add_t_uint16(x, y) -> sum\n {\n let _1 := 0xffff\n sum := add(and(x, _1), and(y, _1))\n if gt(sum, _1) { panic_error_0x11() }\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 panic_error_0x12()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x12)\n revert(0, 0x24)\n }\n function checked_div_t_uint256(x, y) -> r\n {\n if iszero(y) { panic_error_0x12() }\n r := div(x, y)\n }\n function mod_t_uint256(x, y) -> r\n {\n if iszero(y) { panic_error_0x12() }\n r := mod(x, y)\n }\n function abi_encode_tuple_t_stringliteral_0ad8ca266b3c2b0d5c0f93daeb15638ddfa510fccabc652325dc97cf893869fd__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), \"Slicing out of range\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_b880bf2732d5dc41106d7c9b4d33a7d7359e73ab841c93dd915612cdef84660a__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 32)\n mstore(add(headStart, 64), \"Range can't be bigger than array\")\n tail := add(headStart, 96)\n }\n function checked_exp_t_uint256_t_uint256(base, exponent) -> power\n {\n power := checked_exp_unsigned(base, exponent)\n }\n function checked_mul_t_uint64(x, y) -> product\n {\n let _1 := sub(shl(64, 1), 1)\n let product_raw := mul(and(x, _1), and(y, _1))\n product := and(product_raw, _1)\n if iszero(eq(product, product_raw)) { panic_error_0x11() }\n }\n}", - "id": 32, - "language": "Yul", - "name": "#utility.yul" - } - ], - "sourceMap": "356:18659:17:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;356:18659:17;;;;;;;;;;;;;;;;;", - "deployedSourceMap": "356:18659:17:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1914:1150;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9462:575;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;12962:262::-;;;;;;:::i;:::-;;:::i;8436:576::-;;;;;;:::i;:::-;;:::i;1599:88::-;1666:14;;;;;;;;;;;;-1:-1:-1;;;1666:14:17;;;;1599:88;;12223:509;;;;;;:::i;:::-;;:::i;10424:515::-;;;;;;:::i;:::-;;:::i;11326:512::-;;;;;;:::i;:::-;;:::i;15159:230::-;;;;;;:::i;:::-;;:::i;:::-;;;4653:14:32;;4646:22;4628:41;;4616:2;4601:18;15159:230:17;4480:195:32;14048:303:17;;;;;;:::i;:::-;;:::i;:::-;;;5892:25:32;;;5880:2;5865:18;14048:303:17;5738:185:32;15748:495:17;;;;;;:::i;:::-;;:::i;7144:223::-;;;;;;:::i;:::-;;:::i;6090:278::-;;;;;;:::i;:::-;;:::i;7728:238::-;;;;;;:::i;:::-;;:::i;4455:727::-;;;;;;:::i;:::-;;:::i;6643:226::-;;;;;;:::i;:::-;;:::i;5449:382::-;;;;;;:::i;:::-;;:::i;13397:498::-;;;;;;:::i;:::-;;:::i;1914:1150::-;1977:20;2032:1;2048:5;;2032:1;2048:8;;;;;;;:::i;:::-;;;;;-1:-1:-1;;;;;;2048:8:17;:16;;-1:-1:-1;2048:36:17;;;;;2068:5;;2074:1;2068:8;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;;;;;2068:16:17;;2080:4;2068:16;;;2048:36;2044:125;;;-1:-1:-1;2157:1:17;2044:125;2188:17;2207:21;2232:43;2252:15;2269:5;;2232:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;2232:19:17;;-1:-1:-1;;;2232:43:17:i;:::-;2187:88;;-1:-1:-1;2187:88:17;-1:-1:-1;2285:33:17;;;;;;:::i;:::-;;;2329:18;2357:22;2394:8;2389:253;2412:10;-1:-1:-1;;;;;2408:14:17;:1;-1:-1:-1;;;;;2408:14:17;;2389:253;;;2443:32;683:2;2443:32;;:::i;:::-;;;2522:43;2542:15;2559:5;;2522:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;2522:19:17;;-1:-1:-1;;;2522:43:17:i;:::-;2489:76;;-1:-1:-1;2489:76:17;-1:-1:-1;2598:29:17;;;;2489:76;2598:29;:::i;:::-;:33;;2630:1;2598:33;:::i;:::-;2579:52;;-1:-1:-1;;;;;2579:52:17;;;:::i;:::-;;-1:-1:-1;2424:3:17;;;;:::i;:::-;;;;2389:253;;;;2653:18;2673:22;2699:43;2719:15;2736:5;;2699:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;2699:19:17;;-1:-1:-1;;;2699:43:17:i;:::-;2652:90;;-1:-1:-1;2652:90:17;-1:-1:-1;2752:34:17;;;;;;:::i;:::-;;;2797:27;2845:11;-1:-1:-1;;;;;2827:30:17;-1:-1:-1;;;;;2827:30:17;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;2797:60;;2872:6;2867:168;2888:11;-1:-1:-1;;;;;2884:15:17;:1;:15;2867:168;;;2932:40;2949:15;2966:5;;2932:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;2932:16:17;;-1:-1:-1;;;2932:40:17:i;:::-;2920:6;2927:1;2920:9;;;;;;;;:::i;:::-;;;;;;:52;;;;3005:6;3012:1;3005:9;;;;;;;;:::i;:::-;;;;;;;:19;;;2986:38;;;;;:::i;:::-;;-1:-1:-1;2901:3:17;;;;:::i;:::-;;;;2867:168;;;-1:-1:-1;3051:6:17;-1:-1:-1;;;;;;;;1914:1150:17;;;;;:::o;9462:575::-;9556:12;9588:26;9601:12;;9588:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;9588:12:17;;-1:-1:-1;;;9588:26:17:i;:::-;9580:75;;;;-1:-1:-1;;;9580:75:17;;;;;;;:::i;:::-;;;;;;;;;9666:31;9710:16;539:2;9725:1;9710:16;:::i;:::-;-1:-1:-1;;;;;9700:27:17;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;9700:27:17;-1:-1:-1;9666:61:17;-1:-1:-1;958:1:17;9737:164;9774:32;958:1;539:2;9774:32;:::i;:::-;9770:1;:36;;;9737:164;;;9875:12;;9888:1;9875:15;;;;;;;;;:::i;:::-;;;;;;;;;9827:18;958:1;9846;:21;;;;:::i;:::-;:25;;9870:1;9846:25;:::i;:::-;9827:45;;;;;;;;;;:::i;:::-;;;;:63;-1:-1:-1;;;;;9827:63:17;;;;;;;;-1:-1:-1;9808:3:17;;;;:::i;:::-;;;;9737:164;;;;9935:7;:60;;-1:-1:-1;;;9935:60:17;;;-1:-1:-1;;;9935:60:17;9911:18;9930:1;9911:21;;;;;;;;:::i;:::-;;;;:84;-1:-1:-1;;;;;9911:84:17;;;;;;;;-1:-1:-1;10012:18:17;-1:-1:-1;9462:575:17;;;;;;:::o;12962:262::-;13041:12;13095:1;13073:23;;13065:47;;;;-1:-1:-1;;;13065:47:17;;8147:2:32;13065:47:17;;;8129:21:32;8186:2;8166:18;;;8159:30;-1:-1:-1;;;8205:18:32;;;8198:42;8257:18;;13065:47:17;7945:336:32;13065:47:17;-1:-1:-1;;;13130:12:17;;13143:1;13130:15;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;;;;;13130:36:17;;;13122:62;;;;-1:-1:-1;;;13122:62:17;;8488:2:32;13122:62:17;;;8470:21:32;8527:2;8507:18;;;8500:30;-1:-1:-1;;;8546:18:32;;;8539:43;8599:18;;13122:62:17;8286:337:32;13122:62:17;13201:16;:12;13214:1;13201:12;;:16;:::i;:::-;13194:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;13194:23:17;;12962:262;-1:-1:-1;;;;;;12962:262:17:o;8436:576::-;8530:12;8562:27;8576:12;;8562:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;8562:13:17;;-1:-1:-1;;;8562:27:17:i;:::-;8554:76;;;;-1:-1:-1;;;8554:76:17;;;;;;;:::i;:::-;8641:31;8685:16;539:2;8700:1;8685:16;:::i;:::-;-1:-1:-1;;;;;8675:27:17;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;8675:27:17;-1:-1:-1;8641:61:17;-1:-1:-1;785:1:17;8712:164;8749:32;785:1;539:2;8749:32;:::i;:::-;8745:1;:36;;;8712:164;;;8850:12;;8863:1;8850:15;;;;;;;;;:::i;:::-;;;;;;;;;8802:18;785:1;8821;:21;;;;:::i;:::-;:25;;8845:1;8821:25;:::i;:::-;8802:45;;;;;;;;;;:::i;:::-;;;;:63;-1:-1:-1;;;;;8802:63:17;;;;;;;;-1:-1:-1;8783:3:17;;;;:::i;:::-;;;;8712:164;;;;8910:7;:60;;-1:-1:-1;;;8910:60:17;;;843:4;8886:18;8905:1;8886:21;;;;;;;;:::i;12223:509::-;12300:12;12332:26;12345:12;;12332:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;12332:12:17;;-1:-1:-1;;;12332:26:17:i;:::-;12324:75;;;;-1:-1:-1;;;12324:75:17;;;;;;;:::i;:::-;12409:11;12427:35;635:2;12427:14;:35::i;:::-;12423:39;;:1;:39;:::i;:::-;12409:53;;12472:19;12504:6;-1:-1:-1;;;;;12494:17:17;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;12494:17:17;;12472:39;;1276:4;12533:17;;12521:6;12528:1;12521:9;;;;;;;;:::i;:::-;;;;:29;-1:-1:-1;;;;;12521:29:17;;;;;;;;-1:-1:-1;12560:18:17;12581:29;12593:16;:12;12606:1;12593:12;;:16;:::i;:::-;12581:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;12581:11:17;;-1:-1:-1;;;12581:29:17:i;:::-;12560:50;-1:-1:-1;12634:1:17;12620:83;12641:6;12637:1;:10;12620:83;;;12680:5;12686;12690:1;12686;:5;:::i;:::-;12680:12;;;;;;;;:::i;:::-;;;;;;;;;12668:6;12675:1;12668:9;;;;;;;;:::i;:::-;;;;:24;-1:-1:-1;;;;;12668:24:17;;;;;;;;-1:-1:-1;12649:3:17;;;;:::i;:::-;;;;12620:83;;;-1:-1:-1;12719:6:17;;12223:509;-1:-1:-1;;;;;12223:509:17:o;10424:515::-;10511:12;10543:28;10558:12;;10543:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;10543:14:17;;-1:-1:-1;;;10543:28:17:i;:::-;10535:77;;;;-1:-1:-1;;;10535:77:17;;;;;;;:::i;:::-;10623:11;10641:28;539:2;10641:14;:28::i;:::-;10637:32;;:1;:32;:::i;:::-;10623:46;;10679:19;10711:6;-1:-1:-1;;;;;10701:17:17;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;10701:17:17;;10679:39;;1222:4;10740:17;;10728:6;10735:1;10728:9;;;;;;;;:::i;:::-;;;;:29;-1:-1:-1;;;;;10728:29:17;;;;;;;;-1:-1:-1;10767:18:17;10788:29;10800:16;:12;10813:1;10800:12;;:16;:::i;10788:29::-;10767:50;-1:-1:-1;10841:1:17;10827:83;10848:6;10844:1;:10;10827:83;;;10887:5;10893;10897:1;10893;:5;:::i;:::-;10887:12;;;;;;;;:::i;:::-;;;;;;;;;10875:6;10882:1;10875:9;;;;;;;;:::i;:::-;;;;:24;-1:-1:-1;;;;;10875:24:17;;;;;;;;-1:-1:-1;10856:3:17;;;;:::i;:::-;;;;10827:83;;11326:512;11413:12;11445:27;11459:12;;11445:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;11445:13:17;;-1:-1:-1;;;11445:27:17:i;:::-;11437:76;;;;-1:-1:-1;;;11437:76:17;;;;;;;:::i;:::-;11523:11;11541:27;583:2;11541:14;:27::i;:::-;11537:31;;:1;:31;:::i;:::-;11523:45;;11578:19;11610:6;-1:-1:-1;;;;;11600:17:17;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;11600:17:17;;11578:39;;1222:4;11639:17;;11627:6;11634:1;11627:9;;;;;;;;:::i;:::-;;;;:29;-1:-1:-1;;;;;11627:29:17;;;;;;;;-1:-1:-1;11666:18:17;11687:29;11699:16;:12;11712:1;11699:12;;:16;:::i;11687:29::-;11666:50;-1:-1:-1;11740:1:17;11726:83;11747:6;11743:1;:10;11726:83;;;11786:5;11792;11796:1;11792;:5;:::i;:::-;11786:12;;;;;;;;:::i;:::-;;;;;;;;;11774:6;11781:1;11774:9;;;;;;;;:::i;:::-;;;;:24;-1:-1:-1;;;;;11774:24:17;;;;;;;;-1:-1:-1;11755:3:17;;;;:::i;:::-;;;;11726:83;;15159:230;15266:4;15304:2;15289:17;;:93;;;;;15340:41;15365:6;;15373:7;15340:24;:41::i;:::-;15330:52;;;;;;15320:4;;15310:15;;;;;;;:::i;:::-;;;;;;;;:72;15289:93;15282:100;15159:230;-1:-1:-1;;;;;;15159:230:17:o;14048:303::-;14120:7;14251:6;:13;14268:2;14251:19;14243:53;;;;-1:-1:-1;;;14243:53:17;;9575:2:32;14243:53:17;;;9557:21:32;9614:2;9594:18;;;9587:30;-1:-1:-1;;;9633:18:32;;;9626:51;9694:18;;14243:53:17;9373:345:32;14243:53:17;14314:30;14333:6;14341:2;14314:18;:30::i;:::-;14307:37;;;14048:303;-1:-1:-1;;14048:303:17:o;15748:495::-;15840:12;15864:18;15885:43;15912:14;15919:6;;15912:14;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;15895:32;;;;;;10041:19:32;;10085:2;10076:12;;9912:182;15895:32:17;;;;-1:-1:-1;;15895:32:17;;;;;;;;;;15885:43;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15864:64;;15938:18;15959:7;:61;;-1:-1:-1;;;15959:61:17;;;-1:-1:-1;;;15959:61:17;16060:37;;-1:-1:-1;;;;;;10558:26:32;;16060:37:17;;;10546:39:32;-1:-1:-1;;;;;;10614:36:32;;10601:11;;;10594:57;15938:82:17;;-1:-1:-1;16030:27:17;;10667:12:32;;16060:37:17;;;;;;;;;;;;16030:67;;16107:15;16132:48;16156:22;16163:14;16156:22;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16139:40;;;;;;10041:19:32;;10085:2;10076:12;;9912:182;16139:40:17;;;;-1:-1:-1;;16139:40:17;;;;;;;;;;16132:48;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16107:74;;16211:14;16227:8;16198:38;;;;;;;;;:::i;:::-;;;;;;;;;;;;;16191:45;;;;;;15748:495;;;;;:::o;7144:223::-;7211:4;7253:15;583:2;7253:1;:15;:::i;:::-;7234:8;:15;:34;:77;;;;-1:-1:-1;7284:11:17;;386:4:18;;7284:8:17;;386:4:18;;7284:11:17;;;;:::i;:::-;;;;;-1:-1:-1;;;;;;7284:11:17;:27;7234:77;:126;;;;;583:2;7333:8;7342:1;7333:11;;;;;;;;:::i;:::-;;;;;;;7327:33;7227:133;7144:223;-1:-1:-1;;7144:223:17:o;6090:278::-;6156:4;6198:16;539:2;6198:1;:16;:::i;:::-;6179:8;:15;:35;:84;;;;-1:-1:-1;6230:11:17;;-1:-1:-1;;;6245:18:17;6230:8;;6239:1;;6230:11;;;;:::i;:::-;;;;;-1:-1:-1;;;;;;6230:11:17;:33;6179:84;:134;;;;;539:2;6285:8;6294:1;6285:11;;;;;;;;:::i;:::-;;;;;;;6279:34;6179:134;:182;;;;-1:-1:-1;6329:12:17;;-1:-1:-1;;;6345:16:17;6329:8;;6338:2;;6329:12;;;;;;:::i;:::-;;;;;-1:-1:-1;;;;;;6329:12:17;:32;6172:189;6090:278;-1:-1:-1;;6090:278:17:o;7728:238::-;7794:4;7836:23;635:2;7836:1;:23;:::i;:::-;7817:8;:15;:42;:85;;;;-1:-1:-1;7875:11:17;;-1:-1:-1;;;7890:12:17;7875:8;;7884:1;;7875:11;;;;:::i;4455:727::-;4550:12;4578:27;4592:12;;4578:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;4578:13:17;;-1:-1:-1;;;4578:27:17:i;:::-;4574:108;;;4628:43;4649:12;;4663:7;4628:20;:43::i;:::-;4621:50;;;;4574:108;4695:26;4708:12;;4695:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;4695:12:17;;-1:-1:-1;;;4695:26:17:i;:::-;4691:107;;;4744:43;4765:12;;4779:7;4744:20;:43::i;4691:107::-;4811:28;4826:12;;4811:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;4811:14:17;;-1:-1:-1;;;4811:28:17:i;:::-;4807:107;;;4862:41;4890:12;;4862:27;:41::i;4807:107::-;4927:27;4941:12;;4927:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;4927:13:17;;-1:-1:-1;;;4927:27:17:i;:::-;4923:106;;;4977:41;5005:12;;4977:27;:41::i;4923:106::-;5042:26;5055:12;;5042:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;5042:12:17;;-1:-1:-1;;;5042:26:17:i;:::-;5038:95;;;5091:31;5109:12;;5091:17;:31::i;5038:95::-;5142:33;;-1:-1:-1;;;5142:33:17;;11302:2:32;5142:33:17;;;11284:21:32;11341:2;11321:18;;;11314:30;-1:-1:-1;;;11360:18:32;;;11353:53;11423:18;;5142:33:17;11100:347:32;6643:226:17;6711:4;6753:16;539:2;6753:1;:16;:::i;:::-;6734:8;:15;:35;:78;;;;-1:-1:-1;6785:11:17;;386:4:18;;6785:8:17;;386:4:18;;6785:11:17;;;;:::i;:::-;;;;;-1:-1:-1;;;;;;6785:11:17;:27;6734:78;:128;;;;;539:2;6834:8;6843:1;6834:11;;;;;;;;:::i;5449:382::-;5516:4;5558:16;539:2;5558:1;:16;:::i;:::-;5539:8;:15;:35;:80;;;;-1:-1:-1;5590:11:17;;-1:-1:-1;;;5605:14:17;5590:8;;5599:1;;5590:11;;;;:::i;:::-;;;;;-1:-1:-1;;;;;;5590:11:17;:29;5539:80;:129;;;;-1:-1:-1;5635:11:17;;-1:-1:-1;;;5650:18:17;5635:8;;5644:1;;5635:11;;;;;;:::i;:::-;;;;;-1:-1:-1;;;;;;5635:11:17;:33;5539:129;:179;;;;;539:2;5690:8;5699:1;5690:11;;;;;;;;:::i;:::-;;;;;;;5684:34;5539:179;:233;;;;-1:-1:-1;5734:12:17;;-1:-1:-1;;;5750:22:17;5734:8;;5743:2;;5734:12;;;;;;:::i;:::-;;;;;-1:-1:-1;;;;;;5734:12:17;:38;5539:233;:285;;;;-1:-1:-1;5788:12:17;;-1:-1:-1;;;5805:19:17;5788:8;;5797:2;;5788:12;;;;;;:::i;13397:498::-;13459:7;13478:25;13523:39;13547:13;13554:5;;13547:13;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13530:31;;;;;;10041:19:32;;10085:2;10076:12;;9912:182;13530:31:17;;;;-1:-1:-1;;13530:31:17;;;;;;;;;;13523:39;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13506:57;;;;;;10041:19:32;;10085:2;10076:12;;9912:182;13506:57:17;;;;-1:-1:-1;;13506:57:17;;;;;;;;;;-1:-1:-1;13573:10:17;;13593:168;13614:2;13610:1;:6;13593:168;;;13643:12;13656:1;13643:15;;;;;;;;:::i;:::-;;;;;-1:-1:-1;;;;;;13643:15:17;;-1:-1:-1;13690:12:17;13703:6;13708:1;13703:2;:6;:::i;:::-;13690:20;;;;;;;;:::i;:::-;;;;;;;;;13672:12;13685:1;13672:15;;;;;;;;:::i;:::-;;;;:38;-1:-1:-1;;;;;13672:38:17;;;;;;;;-1:-1:-1;13747:3:17;13724:12;13737:6;13742:1;13737:2;:6;:::i;:::-;13724:20;;;;;;;;:::i;:::-;;;;:26;-1:-1:-1;;;;;13724:26:17;;;;;;;;-1:-1:-1;13618:3:17;;;;:::i;:::-;;;;13593:168;;;-1:-1:-1;;13852:2:17;13834:21;13828:28;;13397:498;-1:-1:-1;;;13397:498:17:o;16249:914::-;16338:6;16346;16387:12;16372:5;:12;:27;16364:80;;;;-1:-1:-1;;;16364:80:17;;11654:2:32;16364:80:17;;;11636:21:32;11693:2;11673:18;;;11666:30;11732:34;11712:18;;;11705:62;-1:-1:-1;;;11783:18:32;;;11776:38;11831:19;;16364:80:17;11452:404:32;16364:80:17;16454:13;16476:5;16482:12;16476:19;;;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;16521:1:17;16510:12;;;16506:146;;16546:1;16549;16538:13;;;;;;;16506:146;428:3;16572:34;;;;16568:84;;16622:19;;;-1:-1:-1;16639:1:17;;-1:-1:-1;16622:19:17;;16568:84;16670:21;16700:33;428:3;16700:7;:33;:::i;:::-;16694:40;;:1;:40;:::i;:::-;16670:64;-1:-1:-1;494:1:17;16752:51;;;16744:95;;;;-1:-1:-1;;;16744:95:17;;13446:2:32;16744:95:17;;;13428:21:32;13485:2;13465:18;;;13458:30;13524:33;13504:18;;;13497:61;13575:18;;16744:95:17;13244:355:32;16744:95:17;16964:13;17000:91;17030:16;:12;17045:1;17030:16;:::i;:::-;17048:31;17063:16;17048:12;:31;:::i;:::-;:35;;17082:1;17048:35;:::i;:::-;17085:5;17000:29;:91::i;:::-;16964:137;-1:-1:-1;16964:137:17;17127:28;17134:16;17154:1;17127:28;:::i;:::-;17111:45;;;;;;;16249:914;;;;;;:::o;3070:802::-;3153:18;;:::i;:::-;3211:24;;;;;;;;3183:25;3211:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3267:76;3297:8;3307:28;734:1;3297:8;3307:28;:::i;:::-;3337:5;3267:29;:76::i;:::-;-1:-1:-1;;;;;3245:99:17;;;3354:29;734:1;3354:29;;:::i;:::-;;;3395:19;3416:23;3443:36;3463:8;3473:5;3443:19;:36::i;:::-;3394:85;;-1:-1:-1;3394:85:17;-1:-1:-1;3489:28:17;;;;;;:::i;:::-;;;3528:21;3562:12;-1:-1:-1;;;;;3552:23:17;-1:-1:-1;;;;;3552:23:17;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3552:23:17;;3528:47;;3590:8;3585:100;3608:12;-1:-1:-1;;;;;3604:16:17;:1;-1:-1:-1;;;;;3604:16:17;;3585:100;;;3655:5;3661:12;-1:-1:-1;;;;;3661:12:17;;:8;:12;:::i;:::-;3655:19;;;;;;;;:::i;:::-;;;;;;;;;3641:8;3650:1;-1:-1:-1;;;;;3641:11:17;;;;;;;;;:::i;:::-;;;;:33;-1:-1:-1;;;;;3641:33:17;;;;;;;;-1:-1:-1;3622:3:17;;;;:::i;:::-;;;;3585:100;;;-1:-1:-1;3694:15:17;;;:26;;;-1:-1:-1;;;;;3730:32:17;;:17;;;:32;3791:51;;;:32;3750:12;734:1;3791:32;:::i;:::-;:51;;;;:::i;:::-;-1:-1:-1;;;;;3772:70:17;:16;;;:70;-1:-1:-1;3772:16:17;;3070:802;-1:-1:-1;;;;;3070:802:17:o;18745:268::-;18810:4;;1129:1;18840:25;1170:1;18840:13;:25;:::i;:::-;18839:46;;;;:::i;:::-;18826:59;-1:-1:-1;18895:14:17;1129:1;18913:25;1170:1;18913:13;:25;:::i;:::-;18912:46;;;;:::i;:::-;:51;;-1:-1:-1;18912:51:17;18989:16;;19004:1;18989:16;;;19000:1;18989:16;18980:26;;;;:5;:26;:::i;:::-;18973:33;18745:268;-1:-1:-1;;;;18745:268:17:o;17795:944::-;17861:12;17885:15;17903:2;17885:20;;17916:17;17947:13;17974:17;18005:19;18037:32;18052:9;:16;18037:14;:32::i;:::-;-1:-1:-1;;;;;18027:43:17;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;18027:43:17;;18005:65;;18086:6;18081:480;18102:9;:16;18098:1;:20;18081:480;;;18190:9;18200:1;18190:12;;;;;;;;:::i;:::-;;;;;;;;1170:1;18155:25;;;18154:49;;18217:21;;;;:::i;:::-;;;18252:299;1129:1;18259:8;:28;18252:299;;18307:28;1129:1;18307:28;;:::i;:::-;;;18494:9;18465:38;;18482:8;18466:12;:24;;18465:38;18452:53;;18430:6;18437:11;18430:19;;;;;;;;;;:::i;:::-;;;;:75;-1:-1:-1;;;;;18430:75:17;;;;;;;;-1:-1:-1;18523:13:17;;;;:::i;:::-;;;;18252:299;;;18120:3;;;:::i;:::-;;;18081:480;;;-1:-1:-1;18575:12:17;;18571:139;;18638:59;;;18656:27;18675:8;1129:1;18656:27;:::i;:::-;18639:12;:45;;18638:59;18625:74;;18603:6;18610:11;18603:19;;;;;;;;;;:::i;:::-;;;;:96;-1:-1:-1;;;;;18603:96:17;;;;;;;;;18726:6;17795:944;-1:-1:-1;;;;;;17795:944:17:o;14416:355::-;14496:6;14535:10;:6;14544:1;14535:10;:::i;:::-;14522:2;:9;:23;;14514:56;;;;-1:-1:-1;;;14514:56:17;;14526:2:32;14514:56:17;;;14508:21:32;14565:2;14545:18;;;14538:30;-1:-1:-1;;;14584:18:32;;;14577:50;14644:18;;14514:56:17;14324:344:32;14514:56:17;14761:2;14741;14744:10;:6;14753:1;14744:10;:::i;:::-;14741:14;;;;;;;;:::i;:::-;;;;;;;14728:35;;14713:2;14693;14696:10;:6;14705:1;14696:10;:::i;:::-;14693:14;;;;;;;;:::i;:::-;;;;;;;14680:35;;14666:1;14646:2;14649:10;:6;14658:1;14649:10;:::i;:::-;14646:14;;;;;;;;:::i;:::-;;;;;14609:10;;14646:14;;;;;14633:34;;;;14609:2;;14612:6;;14609:10;;;;;;:::i;:::-;;;;;;;14596:72;:120;:168;;-1:-1:-1;14416:355:17;;;;:::o;17169:512::-;17318:4;17371:5;:12;17355:13;:28;:58;;;;;17401:5;:12;17387:11;:26;17355:58;17334:138;;;;-1:-1:-1;;;17334:138:17;;14875:2:32;17334:138:17;;;14857:21:32;;;14894:18;;;14887:30;14953:34;14933:18;;;14926:62;15005:18;;17334:138:17;14673:356:32;17334:138:17;17482:11;17521:13;17507:145;17540:11;17536:1;:15;17507:145;;;17619:19;17624:13;17619:1;:19;:::i;:::-;17614:25;;:1;:25;:::i;:::-;17608:32;;:1;:32;:::i;:::-;17588:5;17594:1;17588:8;;;;;;;;:::i;:::-;;;;;17582:59;;;17588:8;;17582:59;:::i;:::-;17572:69;;-1:-1:-1;;;;;17572:69:17;;;:::i;:::-;;-1:-1:-1;17553:3:17;;;;:::i;:::-;;;;17507:145;;;-1:-1:-1;17668:6:17;17169:512;-1:-1:-1;;;;17169:512:17:o;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;14:347:32:-;65:8;75:6;129:3;122:4;114:6;110:17;106:27;96:55;;147:1;144;137:12;96:55;-1:-1:-1;170:20:32;;-1:-1:-1;;;;;202:30:32;;199:50;;;245:1;242;235:12;199:50;282:4;274:6;270:17;258:29;;334:3;327:4;318:6;310;306:19;302:30;299:39;296:59;;;351:1;348;341:12;366:409;436:6;444;497:2;485:9;476:7;472:23;468:32;465:52;;;513:1;510;503:12;465:52;540:23;;-1:-1:-1;;;;;575:30:32;;572:50;;;618:1;615;608:12;572:50;657:58;707:7;698:6;687:9;683:22;657:58;:::i;:::-;734:8;;631:84;;-1:-1:-1;366:409:32;-1:-1:-1;;;;366:409:32:o;780:250::-;865:1;875:113;889:6;886:1;883:13;875:113;;;965:11;;;959:18;946:11;;;939:39;911:2;904:10;875:113;;;-1:-1:-1;;1022:1:32;1004:16;;997:27;780:250::o;1035:270::-;1076:3;1114:5;1108:12;1141:6;1136:3;1129:19;1157:76;1226:6;1219:4;1214:3;1210:14;1203:4;1196:5;1192:16;1157:76;:::i;:::-;1287:2;1266:15;-1:-1:-1;;1262:29:32;1253:39;;;;1294:4;1249:50;;1035:270;-1:-1:-1;;1035:270:32:o;1310:1266::-;1518:4;1547:2;1587;1576:9;1572:18;1617:2;1606:9;1599:21;1640:6;1675;1669:13;1706:6;1698;1691:22;1732:2;1722:12;;1765:2;1754:9;1750:18;1743:25;;1827:2;1817:6;1814:1;1810:14;1799:9;1795:30;1791:39;1865:2;1857:6;1853:15;1886:1;1896:651;1910:6;1907:1;1904:13;1896:651;;;1975:22;;;-1:-1:-1;;1971:36:32;1959:49;;2031:13;;2103:9;;-1:-1:-1;;;;;2099:34:32;2084:50;;2173:11;;;2167:18;2067:4;2205:15;;;2198:27;;;2067:4;2252:47;2283:15;;;2167:18;2252:47;:::i;:::-;2342:11;;;2336:18;2319:15;;;2312:43;2378:4;2425:11;;;2419:18;2402:15;;;;2395:43;;;;-1:-1:-1;;2525:12:32;;;;2490:15;;;;1932:1;1925:9;1896:651;;;-1:-1:-1;2564:6:32;;1310:1266;-1:-1:-1;;;;;;;;1310:1266:32:o;2581:160::-;2646:20;;2702:13;;2695:21;2685:32;;2675:60;;2731:1;2728;2721:12;2675:60;2581:160;;;:::o;2746:477::-;2822:6;2830;2838;2891:2;2879:9;2870:7;2866:23;2862:32;2859:52;;;2907:1;2904;2897:12;2859:52;2934:23;;-1:-1:-1;;;;;2969:30:32;;2966:50;;;3012:1;3009;3002:12;2966:50;3051:58;3101:7;3092:6;3081:9;3077:22;3051:58;:::i;:::-;3128:8;;-1:-1:-1;3025:84:32;-1:-1:-1;3182:35:32;;-1:-1:-1;3213:2:32;3198:18;;3182:35;:::i;:::-;3172:45;;2746:477;;;;;:::o;3228:225::-;3383:2;3372:9;3365:21;3346:4;3403:44;3443:2;3432:9;3428:18;3420:6;3403:44;:::i;3690:785::-;3786:6;3794;3802;3810;3818;3871:2;3859:9;3850:7;3846:23;3842:32;3839:52;;;3887:1;3884;3877:12;3839:52;3914:23;;-1:-1:-1;;;;;3986:14:32;;;3983:34;;;4013:1;4010;4003:12;3983:34;4052:58;4102:7;4093:6;4082:9;4078:22;4052:58;:::i;:::-;4129:8;;-1:-1:-1;4026:84:32;-1:-1:-1;4217:2:32;4202:18;;4189:32;;-1:-1:-1;4233:16:32;;;4230:36;;;4262:1;4259;4252:12;4230:36;;4301:60;4353:7;4342:8;4331:9;4327:24;4301:60;:::i;:::-;4380:8;;-1:-1:-1;4275:86:32;-1:-1:-1;4434:35:32;;-1:-1:-1;4465:2:32;4450:18;;4434:35;:::i;:::-;4424:45;;3690:785;;;;;;;;:::o;4680:127::-;4741:10;4736:3;4732:20;4729:1;4722:31;4772:4;4769:1;4762:15;4796:4;4793:1;4786:15;4812:921;4880:6;4933:2;4921:9;4912:7;4908:23;4904:32;4901:52;;;4949:1;4946;4939:12;4901:52;4976:23;;-1:-1:-1;;;;;5048:14:32;;;5045:34;;;5075:1;5072;5065:12;5045:34;5113:6;5102:9;5098:22;5088:32;;5158:7;5151:4;5147:2;5143:13;5139:27;5129:55;;5180:1;5177;5170:12;5129:55;5216:2;5203:16;5238:2;5234;5231:10;5228:36;;;5244:18;;:::i;:::-;5319:2;5313:9;5287:2;5373:13;;-1:-1:-1;;5369:22:32;;;5393:2;5365:31;5361:40;5349:53;;;5417:18;;;5437:22;;;5414:46;5411:72;;;5463:18;;:::i;:::-;5503:10;5499:2;5492:22;5538:2;5530:6;5523:18;5578:7;5573:2;5568;5564;5560:11;5556:20;5553:33;5550:53;;;5599:1;5596;5589:12;5550:53;5655:2;5650;5646;5642:11;5637:2;5629:6;5625:15;5612:46;5700:1;5678:15;;;5695:2;5674:24;5667:35;;;;-1:-1:-1;5682:6:32;4812:921;-1:-1:-1;;;;;4812:921:32:o;6118:127::-;6179:10;6174:3;6170:20;6167:1;6160:31;6210:4;6207:1;6200:15;6234:4;6231:1;6224:15;6250:127;6311:10;6306:3;6302:20;6299:1;6292:31;6342:4;6339:1;6332:15;6366:4;6363:1;6356:15;6382:125;6447:9;;;6468:10;;;6465:36;;;6481:18;;:::i;6512:180::-;-1:-1:-1;;;;;6617:10:32;;;6629;;;6613:27;;6652:11;;;6649:37;;;6666:18;;:::i;:::-;6649:37;6512:180;;;;:::o;6697:209::-;6735:3;-1:-1:-1;;;;;6805:14:32;;;-1:-1:-1;;;;;;6831:15:32;;6828:41;;6849:18;;:::i;:::-;6898:1;6885:15;;6697:209;-1:-1:-1;;;6697:209:32:o;6911:135::-;6950:3;6971:17;;;6968:43;;6991:18;;:::i;:::-;-1:-1:-1;7038:1:32;7027:13;;6911:135::o;7051:400::-;7253:2;7235:21;;;7292:2;7272:18;;;7265:30;7331:34;7326:2;7311:18;;7304:62;-1:-1:-1;;;7397:2:32;7382:18;;7375:34;7441:3;7426:19;;7051:400::o;7456:151::-;7546:4;7539:12;;;7525;;;7521:31;;7564:14;;7561:40;;;7581:18;;:::i;7612:148::-;7700:4;7679:12;;;7693;;;7675:31;;7718:13;;7715:39;;;7734:18;;:::i;7765:175::-;7802:3;7846:4;7839:5;7835:16;7875:4;7866:7;7863:17;7860:43;;7883:18;;:::i;:::-;7932:1;7919:15;;7765:175;-1:-1:-1;;7765:175:32:o;8628:331::-;8733:9;8744;8786:8;8774:10;8771:24;8768:44;;;8808:1;8805;8798:12;8768:44;8837:6;8827:8;8824:20;8821:40;;;8857:1;8854;8847:12;8821:40;-1:-1:-1;;8883:23:32;;;8928:25;;;;;-1:-1:-1;8628:331:32:o;8964:128::-;9031:9;;;9052:11;;;9049:37;;;9066:18;;:::i;9097:271::-;9280:6;9272;9267:3;9254:33;9236:3;9306:16;;9331:13;;;9306:16;9097:271;-1:-1:-1;9097:271:32:o;9723:184::-;9793:6;9846:2;9834:9;9825:7;9821:23;9817:32;9814:52;;;9862:1;9859;9852:12;9814:52;-1:-1:-1;9885:16:32;;9723:184;-1:-1:-1;9723:184:32:o;10099:287::-;10228:3;10266:6;10260:13;10282:66;10341:6;10336:3;10329:4;10321:6;10317:17;10282:66;:::i;:::-;10364:16;;;;;10099:287;-1:-1:-1;;10099:287:32:o;10690:405::-;10845:3;10883:6;10877:13;10899:66;10958:6;10953:3;10946:4;10938:6;10934:17;10899:66;:::i;:::-;-1:-1:-1;;;;;;11026:33:32;;;;10987:16;;;;11012:48;;;11087:1;11076:13;;10690:405;-1:-1:-1;;10690:405:32:o;11861:422::-;11950:1;11993:5;11950:1;12007:270;12028:7;12018:8;12015:21;12007:270;;;12087:4;12083:1;12079:6;12075:17;12069:4;12066:27;12063:53;;;12096:18;;:::i;:::-;12146:7;12136:8;12132:22;12129:55;;;12166:16;;;;12129:55;12245:22;;;;12205:15;;;;12007:270;;;12011:3;11861:422;;;;;:::o;12288:806::-;12337:5;12367:8;12357:80;;-1:-1:-1;12408:1:32;12422:5;;12357:80;12456:4;12446:76;;-1:-1:-1;12493:1:32;12507:5;;12446:76;12538:4;12556:1;12551:59;;;;12624:1;12619:130;;;;12531:218;;12551:59;12581:1;12572:10;;12595:5;;;12619:130;12656:3;12646:8;12643:17;12640:43;;;12663:18;;:::i;:::-;-1:-1:-1;;12719:1:32;12705:16;;12734:5;;12531:218;;12833:2;12823:8;12820:16;12814:3;12808:4;12805:13;12801:36;12795:2;12785:8;12782:16;12777:2;12771:4;12768:12;12764:35;12761:77;12758:159;;;-1:-1:-1;12870:19:32;;;12902:5;;12758:159;12949:34;12974:8;12968:4;12949:34;:::i;:::-;13019:6;13015:1;13011:6;13007:19;12998:7;12995:32;12992:58;;;13030:18;;:::i;:::-;13068:20;;12288:806;-1:-1:-1;;;12288:806:32:o;13099:140::-;13157:5;13186:47;13227:4;13217:8;13213:19;13207:4;13186:47;:::i;13604:168::-;13671:6;13697:10;;;13709;;;13693:27;;13732:11;;;13729:37;;;13746:18;;:::i;13777:168::-;13850:9;;;13881;;13898:15;;;13892:22;;13878:37;13868:71;;13919:18;;:::i;13950:127::-;14011:10;14006:3;14002:20;13999:1;13992:31;14042:4;14039:1;14032:15;14066:4;14063:1;14056:15;14082:120;14122:1;14148;14138:35;;14153:18;;:::i;:::-;-1:-1:-1;14187:9:32;;14082:120::o;14207:112::-;14239:1;14265;14255:35;;14270:18;;:::i;:::-;-1:-1:-1;14304:9:32;;14207:112::o;15034:131::-;15094:5;15123:36;15150:8;15144:4;15123:36;:::i;15170:257::-;-1:-1:-1;;;;;15291:10:32;;;15303;;;15287:27;15334:20;;;;15241:18;15373:24;;;15363:58;;15401:18;;:::i;:::-;15363:58;;15170:257;;;;:::o", - "source": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.18;\n\nimport \"./OpCodes.sol\";\n\n/**\n * @title BtcUtils\n * @notice This library contains functionality to make easier to work with Bitcoin transactions in Solidity.\n * @notice This library is based in this document:\n * https://developer.bitcoin.org/reference/transactions.html#raw-transaction-format\n */\nlibrary BtcUtils {\n uint8 private constant MAX_COMPACT_SIZE_LENGTH = 252;\n uint8 private constant MAX_BYTES_USED_FOR_COMPACT_SIZE = 8;\n\n uint private constant HASH160_SIZE = 20;\n uint private constant SHA256_SIZE = 32;\n uint private constant TAPROOT_PUBKEY_SIZE = 32;\n\n uint8 private constant OUTPOINT_SIZE = 36;\n uint8 private constant OUTPUT_VALUE_SIZE = 8;\n\n uint8 private constant PUBKEY_HASH_START = 3;\n bytes1 private constant PUBKEY_HASH_MAINNET_BYTE = 0x00;\n bytes1 private constant PUBKEY_HASH_TESTNET_BYTE = 0x6f;\n\n uint8 private constant SCRIPT_HASH_START = 2;\n bytes1 private constant SCRIPT_HASH_MAINNET_BYTE = 0x05;\n bytes1 private constant SCRIPT_HASH_TESTNET_BYTE = 0xc4;\n\n uint private constant BECH32_WORD_SIZE = 5;\n uint private constant BYTE_SIZE = 8;\n\n bytes1 private constant WITNESS_VERSION_0 = 0x00;\n bytes1 private constant WITNESS_VERSION_1 = 0x01;\n\n\n /**\n * @notice This struct contains the information of a tx output separated by fields\n * @notice Its just to have a structured representation of the output\n **/\n struct TxRawOutput {\n uint64 value;\n bytes pkScript;\n uint256 scriptSize;\n uint256 totalSize;\n }\n\n function version() external pure returns (string memory) {\n return \"0.2.1\";\n }\n\n /// @notice Parse a raw transaction to get an array of its outputs in a structured representation\n /// @param rawTx the raw transaction\n /// @return An array of `TxRawOutput` with the outputs of the transaction\n function getOutputs(bytes calldata rawTx) public pure returns (TxRawOutput[] memory) {\n uint currentPosition = 4;\n\n if (rawTx[4] == 0x00 && rawTx[5] == 0x01) { // if its segwit, skip marker and flag\n currentPosition = 6;\n }\n \n (uint64 inputCount, uint16 inputCountSize) = parseCompactSizeInt(currentPosition, rawTx);\n currentPosition += inputCountSize;\n\n uint64 scriptLarge;\n uint16 scriptLargeSize;\n for (uint64 i = 0; i < inputCount; i++) {\n currentPosition += OUTPOINT_SIZE;\n (scriptLarge, scriptLargeSize) = parseCompactSizeInt(currentPosition, rawTx);\n currentPosition += scriptLarge + scriptLargeSize + 4;\n }\n\n (uint64 outputCount, uint16 outputCountSize) = parseCompactSizeInt(currentPosition, rawTx);\n currentPosition += outputCountSize;\n\n TxRawOutput[] memory result = new TxRawOutput[](outputCount);\n for (uint i = 0; i < outputCount; i++) {\n result[i] = extractRawOutput(currentPosition, rawTx);\n currentPosition += result[i].totalSize;\n }\n return result;\n }\n\n function extractRawOutput(uint position, bytes memory rawTx) private pure returns (TxRawOutput memory) {\n TxRawOutput memory result = TxRawOutput(0, \"\", 0, 0);\n result.value = uint64(calculateLittleEndianFragment(position, position + OUTPUT_VALUE_SIZE, rawTx));\n position += OUTPUT_VALUE_SIZE;\n\n (uint64 scriptLength, uint16 scriptLengthSize) = parseCompactSizeInt(position, rawTx);\n position += scriptLengthSize;\n\n bytes memory pkScript = new bytes(scriptLength);\n for (uint64 i = 0; i < scriptLength; i++) {\n pkScript[i] = rawTx[position + i];\n }\n result.pkScript = pkScript;\n result.scriptSize = scriptLength;\n result.totalSize = OUTPUT_VALUE_SIZE + scriptLength + scriptLengthSize;\n return result;\n }\n\n /// @notice Parse a raw output script whose type is not known by the consumer. The function will\n /// return the corresponding address if the type of the script is supported or an error if not.\n /// For the addresses that are encoded with base58check the checksum bytes are not included in\n /// the resulting byte array\n /// @param outputScript the fragment of the raw transaction containing the raw output script\n /// @param mainnet if the address to generate is from mainnet or testnet\n /// @return The address bytes regarless of the output script type\n function outputScriptToAddress(bytes calldata outputScript, bool mainnet) public pure returns (bytes memory) {\n if (isP2PKHOutput(outputScript)) {\n return parsePayToPubKeyHash(outputScript, mainnet);\n }\n if (isP2SHOutput(outputScript)) {\n return parsePayToScriptHash(outputScript, mainnet);\n }\n if (isP2WPKHOutput(outputScript)) {\n return parsePayToWitnessPubKeyHash(outputScript);\n }\n if (isP2WSHOutput(outputScript)) {\n return parsePayToWitnessScriptHash(outputScript);\n }\n if (isP2TROutput(outputScript)) {\n return parsePayToTaproot(outputScript);\n }\n revert(\"Unsupported script type\");\n }\n\n /// @notice Check if a raw output script is a pay-to-public-key-hash output\n /// @param pkScript the fragment of the raw transaction containing the raw output script\n /// @return Whether the script has a pay-to-public-key-hash output structure or not\n function isP2PKHOutput(bytes memory pkScript) public pure returns (bool) {\n return pkScript.length == 5 + HASH160_SIZE &&\n pkScript[0] == OpCodes.OP_DUP &&\n pkScript[1] == OpCodes.OP_HASH160 &&\n uint8(pkScript[2]) == HASH160_SIZE &&\n pkScript[23] == OpCodes.OP_EQUALVERIFY &&\n pkScript[24] == OpCodes.OP_CHECKSIG;\n }\n\n /// @notice Check if a raw output script is a pay-to-script-hash output\n /// @param pkScript the fragment of the raw transaction containing the raw output script\n /// @return Whether the script has a pay-to-script-hash output structure or not\n function isP2SHOutput(bytes memory pkScript) public pure returns (bool) {\n return pkScript.length == 3 + HASH160_SIZE &&\n pkScript[0] == OpCodes.OP_HASH160 &&\n uint8(pkScript[1]) == HASH160_SIZE &&\n pkScript[22] == OpCodes.OP_EQUAL;\n }\n\n /// @notice Check if a raw output script is a pay-to-witness-pubkey-hash output\n /// @param pkScript the fragment of the raw transaction containing the raw output script\n /// @return Whether the script has a pay-to-witness-pubkey-hash output structure or not\n function isP2WPKHOutput(bytes memory pkScript) public pure returns (bool) {\n return pkScript.length == 2 + HASH160_SIZE &&\n pkScript[0] == OpCodes.OP_0 &&\n uint8(pkScript[1]) == HASH160_SIZE;\n }\n\n /// @notice Check if a raw output script is a pay-to-witness-script-hash output\n /// @param pkScript the fragment of the raw transaction containing the raw output script\n /// @return Whether the script has a pay-to-witness-script-hash output structure or not\n function isP2WSHOutput(bytes memory pkScript) public pure returns (bool) {\n return pkScript.length == 2 + SHA256_SIZE &&\n pkScript[0] == OpCodes.OP_0 &&\n uint8(pkScript[1]) == SHA256_SIZE;\n }\n\n /// @notice Check if a raw output script is a pay-to-taproot output\n /// @notice Reference for implementation: https://github.com/bitcoin/bips/blob/master/bip-0341.mediawiki \n /// @param pkScript the fragment of the raw transaction containing the raw output script\n /// @return Whether the script has a pay-to-taproot output structure or not\n function isP2TROutput(bytes memory pkScript) public pure returns (bool) {\n return pkScript.length == 2 + TAPROOT_PUBKEY_SIZE &&\n pkScript[0] == OpCodes.OP_1 &&\n uint8(pkScript[1]) == TAPROOT_PUBKEY_SIZE;\n }\n\n /// @notice Parse a raw pay-to-public-key-hash output script to get the corresponding address,\n /// the resulting byte array doesn't include the checksum bytes of the base58check encoding at\n /// the end\n /// @param outputScript the fragment of the raw transaction containing the raw output script\n /// @param mainnet if the address to generate is from mainnet or testnet \n /// @return The address generated using the receiver's public key hash\n function parsePayToPubKeyHash(bytes calldata outputScript, bool mainnet) public pure returns (bytes memory) {\n require(isP2PKHOutput(outputScript), \"Script hasn't the required structure\");\n\n bytes memory destinationAddress = new bytes(HASH160_SIZE + 1);\n for(uint8 i = PUBKEY_HASH_START; i < HASH160_SIZE + PUBKEY_HASH_START; i++) {\n destinationAddress[i - PUBKEY_HASH_START + 1] = outputScript[i];\n }\n\n destinationAddress[0] = mainnet? PUBKEY_HASH_MAINNET_BYTE : PUBKEY_HASH_TESTNET_BYTE;\n return destinationAddress;\n }\n\n /// @notice Parse a raw pay-to-script-hash output script to get the corresponding address,\n /// the resulting byte array doesn't include the checksum bytes of the base58check encoding at\n /// the end\n /// @param outputScript the fragment of the raw transaction containing the raw output script\n /// @param mainnet if the address to generate is from mainnet or testnet\n /// @return The address generated using the script hash\n function parsePayToScriptHash(bytes calldata outputScript, bool mainnet) public pure returns (bytes memory) {\n require(isP2SHOutput(outputScript), \"Script hasn't the required structure\");\n\n bytes memory destinationAddress = new bytes(HASH160_SIZE + 1);\n for(uint8 i = SCRIPT_HASH_START; i < HASH160_SIZE + SCRIPT_HASH_START; i++) {\n destinationAddress[i - SCRIPT_HASH_START + 1] = outputScript[i];\n }\n\n destinationAddress[0] = mainnet? SCRIPT_HASH_MAINNET_BYTE : SCRIPT_HASH_TESTNET_BYTE;\n return destinationAddress;\n }\n\n /// @notice Parse a raw pay-to-witness-pubkey-hash output script to get the corresponding address words,\n /// the resulting words are only the data part of the bech32 encoding and doesn't include the HRP\n /// @param outputScript the fragment of the raw transaction containing the raw output script\n /// @return The address bech32 words generated using the pubkey hash\n function parsePayToWitnessPubKeyHash(bytes calldata outputScript) public pure returns (bytes memory) {\n require(isP2WPKHOutput(outputScript), \"Script hasn't the required structure\"); \n uint length = 1 + total5BitWords(HASH160_SIZE);\n bytes memory result = new bytes(length);\n result[0] = WITNESS_VERSION_0;\n bytes memory words = to5BitWords(outputScript[2:]);\n for (uint i = 1; i < length; i++) {\n result[i] = words[i - 1];\n }\n return result;\n }\n\n /// @notice Parse a raw pay-to-witness-script-hash output script to get the corresponding address words,\n /// the resulting words are only the data part of the bech32 encoding and doesn't include the HRP\n /// @param outputScript the fragment of the raw transaction containing the raw output script\n /// @return The address bech32 words generated using the script hash\n function parsePayToWitnessScriptHash(bytes calldata outputScript) public pure returns (bytes memory) {\n require(isP2WSHOutput(outputScript), \"Script hasn't the required structure\");\n uint length = 1 + total5BitWords(SHA256_SIZE);\n bytes memory result = new bytes(length);\n result[0] = WITNESS_VERSION_0;\n bytes memory words = to5BitWords(outputScript[2:]);\n for (uint i = 1; i < length; i++) {\n result[i] = words[i - 1];\n }\n return result;\n }\n\n /// @notice Parse a raw pay-to-taproot output script to get the corresponding address words,\n /// the resulting words are only the data part of the bech32m encoding and doesn't include the HRP\n /// @param outputScript the fragment of the raw transaction containing the raw output script\n /// @return The address bech32m words generated using the taproot pubkey hash\n function parsePayToTaproot(bytes calldata outputScript) public pure returns (bytes memory) {\n require(isP2TROutput(outputScript), \"Script hasn't the required structure\");\n uint length = 1 + total5BitWords(TAPROOT_PUBKEY_SIZE);\n bytes memory result = new bytes(length);\n result[0] = WITNESS_VERSION_1;\n bytes memory words = to5BitWords(outputScript[2:]);\n for (uint i = 1; i < length; i++) {\n result[i] = words[i - 1];\n }\n return result;\n }\n\n /// @notice Parse a raw null-data output script to get its content\n /// @param outputScript the fragment of the raw transaction containing the raw output script \n /// @return The content embedded inside the script\n function parseNullDataScript(bytes calldata outputScript) public pure returns (bytes memory) {\n require(outputScript.length > 1,\"Invalid size\");\n require(outputScript[0] == OpCodes.OP_RETURN, \"Not OP_RETURN\");\n return outputScript[1:];\n }\n\n /// @notice Hash a bitcoin raw transaction to get its id (reversed double sha256)\n /// @param btcTx the transaction to hash\n /// @return The transaction id \n function hashBtcTx(bytes calldata btcTx) public pure returns (bytes32) {\n bytes memory doubleSha256 = abi.encodePacked(sha256(abi.encodePacked(sha256(btcTx))));\n bytes1 aux;\n for (uint i = 0; i < 16; i++) {\n aux = doubleSha256[i];\n doubleSha256[i] = doubleSha256[31 - i];\n doubleSha256[31 - i] = aux;\n }\n\n bytes32 result;\n assembly {\n result := mload(add(doubleSha256, 32))\n }\n return result;\n }\n\n /// @dev Gets the timestamp of a Bitcoin block header\n /// @param header The block header\n /// @return The timestamp of the block header\n function getBtcBlockTimestamp(bytes memory header) public pure returns (uint256) {\n // bitcoin header is 80 bytes and timestamp is 4 bytes from byte 68 to byte 71 (both inclusive)\n require(header.length == 80, \"Invalid header length\");\n\n return sliceUint32FromLSB(header, 68);\n }\n\n // bytes must have at least 28 bytes before the uint32\n function sliceUint32FromLSB(bytes memory bs, uint offset) private pure returns (uint32) {\n require(bs.length >= offset + 4, \"Slicing out of range\");\n\n return\n uint32(uint8(bs[offset])) |\n (uint32(uint8(bs[offset + 1])) << 8) |\n (uint32(uint8(bs[offset + 2])) << 16) |\n (uint32(uint8(bs[offset + 3])) << 24);\n }\n\n /// @notice Check if a pay-to-script-hash address belogs to a specific script, expects the address\n /// bytes to include the 4 checksum bytes at the end\n /// @param p2sh the pay-to-script-hash address\n /// @param script the script to check\n /// @param mainnet flag to specify if its a mainnet address\n /// @return Whether the address belongs to the script or not\n function validateP2SHAdress(bytes calldata p2sh, bytes calldata script, bool mainnet) public pure returns (bool) {\n return p2sh.length == 25 && keccak256(p2sh) == keccak256(getP2SHAddressFromScript(script, mainnet));\n }\n\n /// @notice Generate a pay-to-script-hash address from a script, the resulting byte array already contains\n /// the 4 checksum bytes at the end of it\n /// @param script the script to generate the address from\n /// @param mainnet flag to specify if the output should be a mainnet address\n /// @return The address generate from the script\n function getP2SHAddressFromScript(bytes calldata script, bool mainnet) public pure returns (bytes memory) {\n bytes20 scriptHash = ripemd160(abi.encodePacked(sha256(script)));\n bytes1 versionByte = mainnet ? SCRIPT_HASH_MAINNET_BYTE : SCRIPT_HASH_TESTNET_BYTE;\n bytes memory versionAndHash = bytes.concat(versionByte, scriptHash);\n bytes4 checksum = bytes4(sha256(abi.encodePacked(sha256(versionAndHash))));\n return bytes.concat(versionAndHash, checksum);\n }\n\n function parseCompactSizeInt(uint sizePosition, bytes memory array) private pure returns(uint64, uint16) {\n require(array.length > sizePosition, \"Size position can't be bigger than array\");\n uint8 maxSize = uint8(array[sizePosition]);\n if (maxSize == 0) {\n return (0, 1);\n } else if (maxSize <= MAX_COMPACT_SIZE_LENGTH) {\n return (maxSize, 1);\n }\n \n uint compactSizeBytes = 2 ** (maxSize - MAX_COMPACT_SIZE_LENGTH);\n require(compactSizeBytes <= MAX_BYTES_USED_FOR_COMPACT_SIZE, \"unsupported compact size length\");\n\n // the adition of 1 is because the first byte is the indicator of the size and its not part of the number\n uint64 result = uint64(\n calculateLittleEndianFragment(sizePosition + 1, sizePosition + compactSizeBytes + 1, array)\n );\n return (result, uint16(compactSizeBytes) + 1);\n }\n\n function calculateLittleEndianFragment(\n uint fragmentStart,\n uint fragmentEnd,\n bytes memory array\n ) private pure returns (uint) {\n require(\n fragmentStart < array.length && fragmentEnd < array.length, \n \"Range can't be bigger than array\"\n );\n uint result = 0;\n for (uint i = fragmentStart; i < fragmentEnd; i++) {\n result += uint8(array[i]) * uint64(2 ** (8 * (i - (fragmentStart))));\n }\n return result;\n }\n\n /// @notice Referece for implementation: https://github.com/bitcoin/bips/blob/master/bip-0173.mediawiki\n function to5BitWords(bytes memory byteArray) private pure returns(bytes memory) {\n uint8 MAX_VALUE = 31;\n\n uint currentValue = 0;\n uint bitCount = 0;\n uint8 resultIndex = 0;\n bytes memory result = new bytes(total5BitWords(byteArray.length));\n\n for (uint i = 0; i < byteArray.length; ++i) {\n currentValue = (currentValue << BYTE_SIZE) | uint8(byteArray[i]);\n bitCount += BYTE_SIZE;\n while (bitCount >= BECH32_WORD_SIZE) {\n bitCount -= BECH32_WORD_SIZE;\n // this mask ensures that the result will always have 5 bits\n result[resultIndex] = bytes1(uint8((currentValue >> bitCount) & MAX_VALUE));\n resultIndex++;\n }\n }\n\n if (bitCount > 0) {\n result[resultIndex] = bytes1(uint8((currentValue << (BECH32_WORD_SIZE - bitCount)) & MAX_VALUE));\n }\n return result;\n }\n\n function total5BitWords(uint numberOfBytes) private pure returns(uint) {\n uint total = (numberOfBytes * BYTE_SIZE) / BECH32_WORD_SIZE;\n bool extraWord = (numberOfBytes * BYTE_SIZE) % BECH32_WORD_SIZE == 0;\n return total + (extraWord? 0 : 1);\n }\n}", - "sourcePath": "@rsksmart/btc-transaction-solidity-helper/contracts/BtcUtils.sol", - "ast": { - "absolutePath": "@rsksmart/btc-transaction-solidity-helper/contracts/BtcUtils.sol", - "exportedSymbols": { - "BtcUtils": [ - 3743 - ], - "OpCodes": [ - 3770 - ] - }, - "id": 3744, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 2245, - "literals": [ - "solidity", - "^", - "0.8", - ".18" - ], - "nodeType": "PragmaDirective", - "src": "32:24:17" - }, - { - "absolutePath": "@rsksmart/btc-transaction-solidity-helper/contracts/OpCodes.sol", - "file": "./OpCodes.sol", - "id": 2246, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 3744, - "sourceUnit": 3771, - "src": "58:23:17", - "symbolAliases": [], - "unitAlias": "" - }, - { - "abstract": false, - "baseContracts": [], - "canonicalName": "BtcUtils", - "contractDependencies": [], - "contractKind": "library", - "documentation": { - "id": 2247, - "nodeType": "StructuredDocumentation", - "src": "83:272:17", - "text": " @title BtcUtils\n @notice This library contains functionality to make easier to work with Bitcoin transactions in Solidity.\n @notice This library is based in this document:\n https://developer.bitcoin.org/reference/transactions.html#raw-transaction-format" - }, - "fullyImplemented": true, - "id": 3743, - "linearizedBaseContracts": [ - 3743 - ], - "name": "BtcUtils", - "nameLocation": "364:8:17", - "nodeType": "ContractDefinition", - "nodes": [ - { - "constant": true, - "id": 2250, - "mutability": "constant", - "name": "MAX_COMPACT_SIZE_LENGTH", - "nameLocation": "402:23:17", - "nodeType": "VariableDeclaration", - "scope": 3743, - "src": "379:52:17", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "typeName": { - "id": 2248, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "379:5:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "value": { - "hexValue": "323532", - "id": 2249, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "428:3:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_252_by_1", - "typeString": "int_const 252" - }, - "value": "252" - }, - "visibility": "private" - }, - { - "constant": true, - "id": 2253, - "mutability": "constant", - "name": "MAX_BYTES_USED_FOR_COMPACT_SIZE", - "nameLocation": "460:31:17", - "nodeType": "VariableDeclaration", - "scope": 3743, - "src": "437:58:17", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "typeName": { - "id": 2251, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "437:5:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "value": { - "hexValue": "38", - "id": 2252, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "494:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_8_by_1", - "typeString": "int_const 8" - }, - "value": "8" - }, - "visibility": "private" - }, - { - "constant": true, - "id": 2256, - "mutability": "constant", - "name": "HASH160_SIZE", - "nameLocation": "524:12:17", - "nodeType": "VariableDeclaration", - "scope": 3743, - "src": "502:39:17", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2254, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "502:4:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": { - "hexValue": "3230", - "id": 2255, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "539:2:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_20_by_1", - "typeString": "int_const 20" - }, - "value": "20" - }, - "visibility": "private" - }, - { - "constant": true, - "id": 2259, - "mutability": "constant", - "name": "SHA256_SIZE", - "nameLocation": "569:11:17", - "nodeType": "VariableDeclaration", - "scope": 3743, - "src": "547:38:17", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2257, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "547:4:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": { - "hexValue": "3332", - "id": 2258, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "583:2:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_32_by_1", - "typeString": "int_const 32" - }, - "value": "32" - }, - "visibility": "private" - }, - { - "constant": true, - "id": 2262, - "mutability": "constant", - "name": "TAPROOT_PUBKEY_SIZE", - "nameLocation": "613:19:17", - "nodeType": "VariableDeclaration", - "scope": 3743, - "src": "591:46:17", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2260, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "591:4:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": { - "hexValue": "3332", - "id": 2261, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "635:2:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_32_by_1", - "typeString": "int_const 32" - }, - "value": "32" - }, - "visibility": "private" - }, - { - "constant": true, - "id": 2265, - "mutability": "constant", - "name": "OUTPOINT_SIZE", - "nameLocation": "667:13:17", - "nodeType": "VariableDeclaration", - "scope": 3743, - "src": "644:41:17", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "typeName": { - "id": 2263, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "644:5:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "value": { - "hexValue": "3336", - "id": 2264, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "683:2:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_36_by_1", - "typeString": "int_const 36" - }, - "value": "36" - }, - "visibility": "private" - }, - { - "constant": true, - "id": 2268, - "mutability": "constant", - "name": "OUTPUT_VALUE_SIZE", - "nameLocation": "714:17:17", - "nodeType": "VariableDeclaration", - "scope": 3743, - "src": "691:44:17", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "typeName": { - "id": 2266, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "691:5:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "value": { - "hexValue": "38", - "id": 2267, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "734:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_8_by_1", - "typeString": "int_const 8" - }, - "value": "8" - }, - "visibility": "private" - }, - { - "constant": true, - "id": 2271, - "mutability": "constant", - "name": "PUBKEY_HASH_START", - "nameLocation": "765:17:17", - "nodeType": "VariableDeclaration", - "scope": 3743, - "src": "742:44:17", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "typeName": { - "id": 2269, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "742:5:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "value": { - "hexValue": "33", - "id": 2270, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "785:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_3_by_1", - "typeString": "int_const 3" - }, - "value": "3" - }, - "visibility": "private" - }, - { - "constant": true, - "id": 2274, - "mutability": "constant", - "name": "PUBKEY_HASH_MAINNET_BYTE", - "nameLocation": "816:24:17", - "nodeType": "VariableDeclaration", - "scope": 3743, - "src": "792:55:17", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - }, - "typeName": { - "id": 2272, - "name": "bytes1", - "nodeType": "ElementaryTypeName", - "src": "792:6:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "value": { - "hexValue": "30783030", - "id": 2273, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "843:4:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0x00" - }, - "visibility": "private" - }, - { - "constant": true, - "id": 2277, - "mutability": "constant", - "name": "PUBKEY_HASH_TESTNET_BYTE", - "nameLocation": "877:24:17", - "nodeType": "VariableDeclaration", - "scope": 3743, - "src": "853:55:17", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - }, - "typeName": { - "id": 2275, - "name": "bytes1", - "nodeType": "ElementaryTypeName", - "src": "853:6:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "value": { - "hexValue": "30783666", - "id": 2276, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "904:4:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_111_by_1", - "typeString": "int_const 111" - }, - "value": "0x6f" - }, - "visibility": "private" - }, - { - "constant": true, - "id": 2280, - "mutability": "constant", - "name": "SCRIPT_HASH_START", - "nameLocation": "938:17:17", - "nodeType": "VariableDeclaration", - "scope": 3743, - "src": "915:44:17", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "typeName": { - "id": 2278, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "915:5:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "value": { - "hexValue": "32", - "id": 2279, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "958:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_2_by_1", - "typeString": "int_const 2" - }, - "value": "2" - }, - "visibility": "private" - }, - { - "constant": true, - "id": 2283, - "mutability": "constant", - "name": "SCRIPT_HASH_MAINNET_BYTE", - "nameLocation": "989:24:17", - "nodeType": "VariableDeclaration", - "scope": 3743, - "src": "965:55:17", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - }, - "typeName": { - "id": 2281, - "name": "bytes1", - "nodeType": "ElementaryTypeName", - "src": "965:6:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "value": { - "hexValue": "30783035", - "id": 2282, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1016:4:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_5_by_1", - "typeString": "int_const 5" - }, - "value": "0x05" - }, - "visibility": "private" - }, - { - "constant": true, - "id": 2286, - "mutability": "constant", - "name": "SCRIPT_HASH_TESTNET_BYTE", - "nameLocation": "1050:24:17", - "nodeType": "VariableDeclaration", - "scope": 3743, - "src": "1026:55:17", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - }, - "typeName": { - "id": 2284, - "name": "bytes1", - "nodeType": "ElementaryTypeName", - "src": "1026:6:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "value": { - "hexValue": "30786334", - "id": 2285, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1077:4:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_196_by_1", - "typeString": "int_const 196" - }, - "value": "0xc4" - }, - "visibility": "private" - }, - { - "constant": true, - "id": 2289, - "mutability": "constant", - "name": "BECH32_WORD_SIZE", - "nameLocation": "1110:16:17", - "nodeType": "VariableDeclaration", - "scope": 3743, - "src": "1088:42:17", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2287, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "1088:4:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": { - "hexValue": "35", - "id": 2288, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1129:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_5_by_1", - "typeString": "int_const 5" - }, - "value": "5" - }, - "visibility": "private" - }, - { - "constant": true, - "id": 2292, - "mutability": "constant", - "name": "BYTE_SIZE", - "nameLocation": "1158:9:17", - "nodeType": "VariableDeclaration", - "scope": 3743, - "src": "1136:35:17", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2290, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "1136:4:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": { - "hexValue": "38", - "id": 2291, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1170:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_8_by_1", - "typeString": "int_const 8" - }, - "value": "8" - }, - "visibility": "private" - }, - { - "constant": true, - "id": 2295, - "mutability": "constant", - "name": "WITNESS_VERSION_0", - "nameLocation": "1202:17:17", - "nodeType": "VariableDeclaration", - "scope": 3743, - "src": "1178:48:17", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - }, - "typeName": { - "id": 2293, - "name": "bytes1", - "nodeType": "ElementaryTypeName", - "src": "1178:6:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "value": { - "hexValue": "30783030", - "id": 2294, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1222:4:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0x00" - }, - "visibility": "private" - }, - { - "constant": true, - "id": 2298, - "mutability": "constant", - "name": "WITNESS_VERSION_1", - "nameLocation": "1256:17:17", - "nodeType": "VariableDeclaration", - "scope": 3743, - "src": "1232:48:17", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - }, - "typeName": { - "id": 2296, - "name": "bytes1", - "nodeType": "ElementaryTypeName", - "src": "1232:6:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "value": { - "hexValue": "30783031", - "id": 2297, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1276:4:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "0x01" - }, - "visibility": "private" - }, - { - "canonicalName": "BtcUtils.TxRawOutput", - "id": 2307, - "members": [ - { - "constant": false, - "id": 2300, - "mutability": "mutable", - "name": "value", - "nameLocation": "1502:5:17", - "nodeType": "VariableDeclaration", - "scope": 2307, - "src": "1495:12:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 2299, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "1495:6:17", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2302, - "mutability": "mutable", - "name": "pkScript", - "nameLocation": "1523:8:17", - "nodeType": "VariableDeclaration", - "scope": 2307, - "src": "1517:14:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2301, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1517:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2304, - "mutability": "mutable", - "name": "scriptSize", - "nameLocation": "1549:10:17", - "nodeType": "VariableDeclaration", - "scope": 2307, - "src": "1541:18:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2303, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1541:7:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2306, - "mutability": "mutable", - "name": "totalSize", - "nameLocation": "1577:9:17", - "nodeType": "VariableDeclaration", - "scope": 2307, - "src": "1569:17:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2305, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1569:7:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "name": "TxRawOutput", - "nameLocation": "1473:11:17", - "nodeType": "StructDefinition", - "scope": 3743, - "src": "1466:127:17", - "visibility": "public" - }, - { - "body": { - "id": 2314, - "nodeType": "Block", - "src": "1656:31:17", - "statements": [ - { - "expression": { - "hexValue": "302e322e31", - "id": 2312, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1673:7:17", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_5709a9427ab590b580a826677786fd6b206c47e15c9470295fe07eeb734e6893", - "typeString": "literal_string \"0.2.1\"" - }, - "value": "0.2.1" - }, - "functionReturnParameters": 2311, - "id": 2313, - "nodeType": "Return", - "src": "1666:14:17" - } - ] - }, - "functionSelector": "54fd4d50", - "id": 2315, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "version", - "nameLocation": "1608:7:17", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2308, - "nodeType": "ParameterList", - "parameters": [], - "src": "1615:2:17" - }, - "returnParameters": { - "id": 2311, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2310, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2315, - "src": "1641:13:17", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2309, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1641:6:17", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "1640:15:17" - }, - "scope": 3743, - "src": "1599:88:17", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 2453, - "nodeType": "Block", - "src": "1999:1065:17", - "statements": [ - { - "assignments": [ - 2326 - ], - "declarations": [ - { - "constant": false, - "id": 2326, - "mutability": "mutable", - "name": "currentPosition", - "nameLocation": "2014:15:17", - "nodeType": "VariableDeclaration", - "scope": 2453, - "src": "2009:20:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2325, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "2009:4:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 2328, - "initialValue": { - "hexValue": "34", - "id": 2327, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2032:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_4_by_1", - "typeString": "int_const 4" - }, - "value": "4" - }, - "nodeType": "VariableDeclarationStatement", - "src": "2009:24:17" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 2339, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - }, - "id": 2333, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "id": 2329, - "name": "rawTx", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2318, - "src": "2048:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "id": 2331, - "indexExpression": { - "hexValue": "34", - "id": 2330, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2054:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_4_by_1", - "typeString": "int_const 4" - }, - "value": "4" - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2048:8:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30783030", - "id": 2332, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2060:4:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0x00" - }, - "src": "2048:16:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - }, - "id": 2338, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "id": 2334, - "name": "rawTx", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2318, - "src": "2068:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "id": 2336, - "indexExpression": { - "hexValue": "35", - "id": 2335, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2074:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_5_by_1", - "typeString": "int_const 5" - }, - "value": "5" - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2068:8:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30783031", - "id": 2337, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2080:4:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "0x01" - }, - "src": "2068:16:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "2048:36:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 2345, - "nodeType": "IfStatement", - "src": "2044:125:17", - "trueBody": { - "id": 2344, - "nodeType": "Block", - "src": "2086:83:17", - "statements": [ - { - "expression": { - "id": 2342, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 2340, - "name": "currentPosition", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2326, - "src": "2139:15:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "hexValue": "36", - "id": 2341, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2157:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_6_by_1", - "typeString": "int_const 6" - }, - "value": "6" - }, - "src": "2139:19:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 2343, - "nodeType": "ExpressionStatement", - "src": "2139:19:17" - } - ] - } - }, - { - "assignments": [ - 2347, - 2349 - ], - "declarations": [ - { - "constant": false, - "id": 2347, - "mutability": "mutable", - "name": "inputCount", - "nameLocation": "2195:10:17", - "nodeType": "VariableDeclaration", - "scope": 2453, - "src": "2188:17:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 2346, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "2188:6:17", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2349, - "mutability": "mutable", - "name": "inputCountSize", - "nameLocation": "2214:14:17", - "nodeType": "VariableDeclaration", - "scope": 2453, - "src": "2207:21:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - }, - "typeName": { - "id": 2348, - "name": "uint16", - "nodeType": "ElementaryTypeName", - "src": "2207:6:17", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - "visibility": "internal" - } - ], - "id": 2354, - "initialValue": { - "arguments": [ - { - "id": 2351, - "name": "currentPosition", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2326, - "src": "2252:15:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 2352, - "name": "rawTx", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2318, - "src": "2269:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - ], - "id": 2350, - "name": "parseCompactSizeInt", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3518, - "src": "2232:19:17", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_uint64_$_t_uint16_$", - "typeString": "function (uint256,bytes memory) pure returns (uint64,uint16)" - } - }, - "id": 2353, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2232:43:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_uint64_$_t_uint16_$", - "typeString": "tuple(uint64,uint16)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "2187:88:17" - }, - { - "expression": { - "id": 2357, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 2355, - "name": "currentPosition", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2326, - "src": "2285:15:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "+=", - "rightHandSide": { - "id": 2356, - "name": "inputCountSize", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2349, - "src": "2304:14:17", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - "src": "2285:33:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 2358, - "nodeType": "ExpressionStatement", - "src": "2285:33:17" - }, - { - "assignments": [ - 2360 - ], - "declarations": [ - { - "constant": false, - "id": 2360, - "mutability": "mutable", - "name": "scriptLarge", - "nameLocation": "2336:11:17", - "nodeType": "VariableDeclaration", - "scope": 2453, - "src": "2329:18:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 2359, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "2329:6:17", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - } - ], - "id": 2361, - "nodeType": "VariableDeclarationStatement", - "src": "2329:18:17" - }, - { - "assignments": [ - 2363 - ], - "declarations": [ - { - "constant": false, - "id": 2363, - "mutability": "mutable", - "name": "scriptLargeSize", - "nameLocation": "2364:15:17", - "nodeType": "VariableDeclaration", - "scope": 2453, - "src": "2357:22:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - }, - "typeName": { - "id": 2362, - "name": "uint16", - "nodeType": "ElementaryTypeName", - "src": "2357:6:17", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - "visibility": "internal" - } - ], - "id": 2364, - "nodeType": "VariableDeclarationStatement", - "src": "2357:22:17" - }, - { - "body": { - "id": 2396, - "nodeType": "Block", - "src": "2429:213:17", - "statements": [ - { - "expression": { - "id": 2377, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 2375, - "name": "currentPosition", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2326, - "src": "2443:15:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "+=", - "rightHandSide": { - "id": 2376, - "name": "OUTPOINT_SIZE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2265, - "src": "2462:13:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "src": "2443:32:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 2378, - "nodeType": "ExpressionStatement", - "src": "2443:32:17" - }, - { - "expression": { - "id": 2386, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "components": [ - { - "id": 2379, - "name": "scriptLarge", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2360, - "src": "2490:11:17", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - { - "id": 2380, - "name": "scriptLargeSize", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2363, - "src": "2503:15:17", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - } - ], - "id": 2381, - "isConstant": false, - "isInlineArray": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "TupleExpression", - "src": "2489:30:17", - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_uint64_$_t_uint16_$", - "typeString": "tuple(uint64,uint16)" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 2383, - "name": "currentPosition", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2326, - "src": "2542:15:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 2384, - "name": "rawTx", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2318, - "src": "2559:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - ], - "id": 2382, - "name": "parseCompactSizeInt", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3518, - "src": "2522:19:17", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_uint64_$_t_uint16_$", - "typeString": "function (uint256,bytes memory) pure returns (uint64,uint16)" - } - }, - "id": 2385, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2522:43:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_uint64_$_t_uint16_$", - "typeString": "tuple(uint64,uint16)" - } - }, - "src": "2489:76:17", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2387, - "nodeType": "ExpressionStatement", - "src": "2489:76:17" - }, - { - "expression": { - "id": 2394, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 2388, - "name": "currentPosition", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2326, - "src": "2579:15:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "+=", - "rightHandSide": { - "commonType": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "id": 2393, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "id": 2391, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 2389, - "name": "scriptLarge", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2360, - "src": "2598:11:17", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "id": 2390, - "name": "scriptLargeSize", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2363, - "src": "2612:15:17", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - "src": "2598:29:17", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "hexValue": "34", - "id": 2392, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2630:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_4_by_1", - "typeString": "int_const 4" - }, - "value": "4" - }, - "src": "2598:33:17", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "2579:52:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 2395, - "nodeType": "ExpressionStatement", - "src": "2579:52:17" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "id": 2371, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 2369, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2366, - "src": "2408:1:17", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "id": 2370, - "name": "inputCount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2347, - "src": "2412:10:17", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "2408:14:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 2397, - "initializationExpression": { - "assignments": [ - 2366 - ], - "declarations": [ - { - "constant": false, - "id": 2366, - "mutability": "mutable", - "name": "i", - "nameLocation": "2401:1:17", - "nodeType": "VariableDeclaration", - "scope": 2397, - "src": "2394:8:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 2365, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "2394:6:17", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - } - ], - "id": 2368, - "initialValue": { - "hexValue": "30", - "id": 2367, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2405:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "2394:12:17" - }, - "loopExpression": { - "expression": { - "id": 2373, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "2424:3:17", - "subExpression": { - "id": 2372, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2366, - "src": "2424:1:17", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "id": 2374, - "nodeType": "ExpressionStatement", - "src": "2424:3:17" - }, - "nodeType": "ForStatement", - "src": "2389:253:17" - }, - { - "assignments": [ - 2399, - 2401 - ], - "declarations": [ - { - "constant": false, - "id": 2399, - "mutability": "mutable", - "name": "outputCount", - "nameLocation": "2660:11:17", - "nodeType": "VariableDeclaration", - "scope": 2453, - "src": "2653:18:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 2398, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "2653:6:17", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2401, - "mutability": "mutable", - "name": "outputCountSize", - "nameLocation": "2680:15:17", - "nodeType": "VariableDeclaration", - "scope": 2453, - "src": "2673:22:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - }, - "typeName": { - "id": 2400, - "name": "uint16", - "nodeType": "ElementaryTypeName", - "src": "2673:6:17", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - "visibility": "internal" - } - ], - "id": 2406, - "initialValue": { - "arguments": [ - { - "id": 2403, - "name": "currentPosition", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2326, - "src": "2719:15:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 2404, - "name": "rawTx", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2318, - "src": "2736:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - ], - "id": 2402, - "name": "parseCompactSizeInt", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3518, - "src": "2699:19:17", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_uint64_$_t_uint16_$", - "typeString": "function (uint256,bytes memory) pure returns (uint64,uint16)" - } - }, - "id": 2405, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2699:43:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_uint64_$_t_uint16_$", - "typeString": "tuple(uint64,uint16)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "2652:90:17" - }, - { - "expression": { - "id": 2409, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 2407, - "name": "currentPosition", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2326, - "src": "2752:15:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "+=", - "rightHandSide": { - "id": 2408, - "name": "outputCountSize", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2401, - "src": "2771:15:17", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - "src": "2752:34:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 2410, - "nodeType": "ExpressionStatement", - "src": "2752:34:17" - }, - { - "assignments": [ - 2415 - ], - "declarations": [ - { - "constant": false, - "id": 2415, - "mutability": "mutable", - "name": "result", - "nameLocation": "2818:6:17", - "nodeType": "VariableDeclaration", - "scope": 2453, - "src": "2797:27:17", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2307_memory_ptr_$dyn_memory_ptr", - "typeString": "struct BtcUtils.TxRawOutput[]" - }, - "typeName": { - "baseType": { - "id": 2413, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 2412, - "name": "TxRawOutput", - "nameLocations": [ - "2797:11:17" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 2307, - "src": "2797:11:17" - }, - "referencedDeclaration": 2307, - "src": "2797:11:17", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TxRawOutput_$2307_storage_ptr", - "typeString": "struct BtcUtils.TxRawOutput" - } - }, - "id": 2414, - "nodeType": "ArrayTypeName", - "src": "2797:13:17", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2307_storage_$dyn_storage_ptr", - "typeString": "struct BtcUtils.TxRawOutput[]" - } - }, - "visibility": "internal" - } - ], - "id": 2422, - "initialValue": { - "arguments": [ - { - "id": 2420, - "name": "outputCount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2399, - "src": "2845:11:17", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - ], - "id": 2419, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "NewExpression", - "src": "2827:17:17", - "typeDescriptions": { - "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_struct$_TxRawOutput_$2307_memory_ptr_$dyn_memory_ptr_$", - "typeString": "function (uint256) pure returns (struct BtcUtils.TxRawOutput memory[] memory)" - }, - "typeName": { - "baseType": { - "id": 2417, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 2416, - "name": "TxRawOutput", - "nameLocations": [ - "2831:11:17" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 2307, - "src": "2831:11:17" - }, - "referencedDeclaration": 2307, - "src": "2831:11:17", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TxRawOutput_$2307_storage_ptr", - "typeString": "struct BtcUtils.TxRawOutput" - } - }, - "id": 2418, - "nodeType": "ArrayTypeName", - "src": "2831:13:17", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2307_storage_$dyn_storage_ptr", - "typeString": "struct BtcUtils.TxRawOutput[]" - } - } - }, - "id": 2421, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2827:30:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2307_memory_ptr_$dyn_memory_ptr", - "typeString": "struct BtcUtils.TxRawOutput memory[] memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "2797:60:17" - }, - { - "body": { - "id": 2449, - "nodeType": "Block", - "src": "2906:129:17", - "statements": [ - { - "expression": { - "id": 2440, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 2433, - "name": "result", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2415, - "src": "2920:6:17", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2307_memory_ptr_$dyn_memory_ptr", - "typeString": "struct BtcUtils.TxRawOutput memory[] memory" - } - }, - "id": 2435, - "indexExpression": { - "id": 2434, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2424, - "src": "2927:1:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "2920:9:17", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TxRawOutput_$2307_memory_ptr", - "typeString": "struct BtcUtils.TxRawOutput memory" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 2437, - "name": "currentPosition", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2326, - "src": "2949:15:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 2438, - "name": "rawTx", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2318, - "src": "2966:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - ], - "id": 2436, - "name": "extractRawOutput", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2560, - "src": "2932:16:17", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_struct$_TxRawOutput_$2307_memory_ptr_$", - "typeString": "function (uint256,bytes memory) pure returns (struct BtcUtils.TxRawOutput memory)" - } - }, - "id": 2439, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2932:40:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_struct$_TxRawOutput_$2307_memory_ptr", - "typeString": "struct BtcUtils.TxRawOutput memory" - } - }, - "src": "2920:52:17", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TxRawOutput_$2307_memory_ptr", - "typeString": "struct BtcUtils.TxRawOutput memory" - } - }, - "id": 2441, - "nodeType": "ExpressionStatement", - "src": "2920:52:17" - }, - { - "expression": { - "id": 2447, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 2442, - "name": "currentPosition", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2326, - "src": "2986:15:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "+=", - "rightHandSide": { - "expression": { - "baseExpression": { - "id": 2443, - "name": "result", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2415, - "src": "3005:6:17", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2307_memory_ptr_$dyn_memory_ptr", - "typeString": "struct BtcUtils.TxRawOutput memory[] memory" - } - }, - "id": 2445, - "indexExpression": { - "id": 2444, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2424, - "src": "3012:1:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "3005:9:17", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TxRawOutput_$2307_memory_ptr", - "typeString": "struct BtcUtils.TxRawOutput memory" - } - }, - "id": 2446, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "3015:9:17", - "memberName": "totalSize", - "nodeType": "MemberAccess", - "referencedDeclaration": 2306, - "src": "3005:19:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2986:38:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 2448, - "nodeType": "ExpressionStatement", - "src": "2986:38:17" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2429, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 2427, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2424, - "src": "2884:1:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "id": 2428, - "name": "outputCount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2399, - "src": "2888:11:17", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "2884:15:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 2450, - "initializationExpression": { - "assignments": [ - 2424 - ], - "declarations": [ - { - "constant": false, - "id": 2424, - "mutability": "mutable", - "name": "i", - "nameLocation": "2877:1:17", - "nodeType": "VariableDeclaration", - "scope": 2450, - "src": "2872:6:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2423, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "2872:4:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 2426, - "initialValue": { - "hexValue": "30", - "id": 2425, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2881:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "2872:10:17" - }, - "loopExpression": { - "expression": { - "id": 2431, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "2901:3:17", - "subExpression": { - "id": 2430, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2424, - "src": "2901:1:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 2432, - "nodeType": "ExpressionStatement", - "src": "2901:3:17" - }, - "nodeType": "ForStatement", - "src": "2867:168:17" - }, - { - "expression": { - "id": 2451, - "name": "result", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2415, - "src": "3051:6:17", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2307_memory_ptr_$dyn_memory_ptr", - "typeString": "struct BtcUtils.TxRawOutput memory[] memory" - } - }, - "functionReturnParameters": 2324, - "id": 2452, - "nodeType": "Return", - "src": "3044:13:17" - } - ] - }, - "documentation": { - "id": 2316, - "nodeType": "StructuredDocumentation", - "src": "1693:216:17", - "text": "@notice Parse a raw transaction to get an array of its outputs in a structured representation\n @param rawTx the raw transaction\n @return An array of `TxRawOutput` with the outputs of the transaction" - }, - "functionSelector": "00f5b491", - "id": 2454, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getOutputs", - "nameLocation": "1923:10:17", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2319, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2318, - "mutability": "mutable", - "name": "rawTx", - "nameLocation": "1949:5:17", - "nodeType": "VariableDeclaration", - "scope": 2454, - "src": "1934:20:17", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2317, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1934:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "1933:22:17" - }, - "returnParameters": { - "id": 2324, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2323, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2454, - "src": "1977:20:17", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2307_memory_ptr_$dyn_memory_ptr", - "typeString": "struct BtcUtils.TxRawOutput[]" - }, - "typeName": { - "baseType": { - "id": 2321, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 2320, - "name": "TxRawOutput", - "nameLocations": [ - "1977:11:17" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 2307, - "src": "1977:11:17" - }, - "referencedDeclaration": 2307, - "src": "1977:11:17", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TxRawOutput_$2307_storage_ptr", - "typeString": "struct BtcUtils.TxRawOutput" - } - }, - "id": 2322, - "nodeType": "ArrayTypeName", - "src": "1977:13:17", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2307_storage_$dyn_storage_ptr", - "typeString": "struct BtcUtils.TxRawOutput[]" - } - }, - "visibility": "internal" - } - ], - "src": "1976:22:17" - }, - "scope": 3743, - "src": "1914:1150:17", - "stateMutability": "pure", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 2559, - "nodeType": "Block", - "src": "3173:699:17", - "statements": [ - { - "assignments": [ - 2466 - ], - "declarations": [ - { - "constant": false, - "id": 2466, - "mutability": "mutable", - "name": "result", - "nameLocation": "3202:6:17", - "nodeType": "VariableDeclaration", - "scope": 2559, - "src": "3183:25:17", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TxRawOutput_$2307_memory_ptr", - "typeString": "struct BtcUtils.TxRawOutput" - }, - "typeName": { - "id": 2465, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 2464, - "name": "TxRawOutput", - "nameLocations": [ - "3183:11:17" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 2307, - "src": "3183:11:17" - }, - "referencedDeclaration": 2307, - "src": "3183:11:17", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TxRawOutput_$2307_storage_ptr", - "typeString": "struct BtcUtils.TxRawOutput" - } - }, - "visibility": "internal" - } - ], - "id": 2473, - "initialValue": { - "arguments": [ - { - "hexValue": "30", - "id": 2468, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3223:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - { - "hexValue": "", - "id": 2469, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3226:2:17", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - }, - "value": "" - }, - { - "hexValue": "30", - "id": 2470, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3230:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - { - "hexValue": "30", - "id": 2471, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3233:1:17", - "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" - }, - { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - }, - { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - } - ], - "id": 2467, - "name": "TxRawOutput", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2307, - "src": "3211:11:17", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_struct$_TxRawOutput_$2307_storage_ptr_$", - "typeString": "type(struct BtcUtils.TxRawOutput storage pointer)" - } - }, - "id": 2472, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "structConstructorCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "3211:24:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_struct$_TxRawOutput_$2307_memory_ptr", - "typeString": "struct BtcUtils.TxRawOutput memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "3183:52:17" - }, - { - "expression": { - "id": 2487, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "id": 2474, - "name": "result", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2466, - "src": "3245:6:17", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TxRawOutput_$2307_memory_ptr", - "typeString": "struct BtcUtils.TxRawOutput memory" - } - }, - "id": 2476, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberLocation": "3252:5:17", - "memberName": "value", - "nodeType": "MemberAccess", - "referencedDeclaration": 2300, - "src": "3245:12:17", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "arguments": [ - { - "id": 2480, - "name": "position", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2456, - "src": "3297:8:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2483, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 2481, - "name": "position", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2456, - "src": "3307:8:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "id": 2482, - "name": "OUTPUT_VALUE_SIZE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2268, - "src": "3318:17:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "src": "3307:28:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 2484, - "name": "rawTx", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2458, - "src": "3337:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 2479, - "name": "calculateLittleEndianFragment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3584, - "src": "3267:29:17", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_uint256_$", - "typeString": "function (uint256,uint256,bytes memory) pure returns (uint256)" - } - }, - "id": 2485, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "3267:76:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 2478, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "3260:6:17", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint64_$", - "typeString": "type(uint64)" - }, - "typeName": { - "id": 2477, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "3260:6:17", - "typeDescriptions": {} - } - }, - "id": 2486, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "3260:84:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "3245:99:17", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "id": 2488, - "nodeType": "ExpressionStatement", - "src": "3245:99:17" - }, - { - "expression": { - "id": 2491, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 2489, - "name": "position", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2456, - "src": "3354:8:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "+=", - "rightHandSide": { - "id": 2490, - "name": "OUTPUT_VALUE_SIZE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2268, - "src": "3366:17:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "src": "3354:29:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 2492, - "nodeType": "ExpressionStatement", - "src": "3354:29:17" - }, - { - "assignments": [ - 2494, - 2496 - ], - "declarations": [ - { - "constant": false, - "id": 2494, - "mutability": "mutable", - "name": "scriptLength", - "nameLocation": "3402:12:17", - "nodeType": "VariableDeclaration", - "scope": 2559, - "src": "3395:19:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 2493, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "3395:6:17", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2496, - "mutability": "mutable", - "name": "scriptLengthSize", - "nameLocation": "3423:16:17", - "nodeType": "VariableDeclaration", - "scope": 2559, - "src": "3416:23:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - }, - "typeName": { - "id": 2495, - "name": "uint16", - "nodeType": "ElementaryTypeName", - "src": "3416:6:17", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - "visibility": "internal" - } - ], - "id": 2501, - "initialValue": { - "arguments": [ - { - "id": 2498, - "name": "position", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2456, - "src": "3463:8:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 2499, - "name": "rawTx", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2458, - "src": "3473:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 2497, - "name": "parseCompactSizeInt", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3518, - "src": "3443:19:17", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_uint64_$_t_uint16_$", - "typeString": "function (uint256,bytes memory) pure returns (uint64,uint16)" - } - }, - "id": 2500, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "3443:36:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_uint64_$_t_uint16_$", - "typeString": "tuple(uint64,uint16)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "3394:85:17" - }, - { - "expression": { - "id": 2504, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 2502, - "name": "position", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2456, - "src": "3489:8:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "+=", - "rightHandSide": { - "id": 2503, - "name": "scriptLengthSize", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2496, - "src": "3501:16:17", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - "src": "3489:28:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 2505, - "nodeType": "ExpressionStatement", - "src": "3489:28:17" - }, - { - "assignments": [ - 2507 - ], - "declarations": [ - { - "constant": false, - "id": 2507, - "mutability": "mutable", - "name": "pkScript", - "nameLocation": "3541:8:17", - "nodeType": "VariableDeclaration", - "scope": 2559, - "src": "3528:21:17", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2506, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "3528:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 2512, - "initialValue": { - "arguments": [ - { - "id": 2510, - "name": "scriptLength", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2494, - "src": "3562:12:17", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - ], - "id": 2509, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "NewExpression", - "src": "3552:9:17", - "typeDescriptions": { - "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (uint256) pure returns (bytes memory)" - }, - "typeName": { - "id": 2508, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "3556:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - } - }, - "id": 2511, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "3552:23:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "3528:47:17" - }, - { - "body": { - "id": 2533, - "nodeType": "Block", - "src": "3627:58:17", - "statements": [ - { - "expression": { - "id": 2531, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 2523, - "name": "pkScript", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2507, - "src": "3641:8:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 2525, - "indexExpression": { - "id": 2524, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2514, - "src": "3650:1:17", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "3641:11:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "baseExpression": { - "id": 2526, - "name": "rawTx", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2458, - "src": "3655:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 2530, - "indexExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2529, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 2527, - "name": "position", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2456, - "src": "3661:8:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "id": 2528, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2514, - "src": "3672:1:17", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "3661:12:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "3655:19:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "src": "3641:33:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "id": 2532, - "nodeType": "ExpressionStatement", - "src": "3641:33:17" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "id": 2519, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 2517, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2514, - "src": "3604:1:17", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "id": 2518, - "name": "scriptLength", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2494, - "src": "3608:12:17", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "3604:16:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 2534, - "initializationExpression": { - "assignments": [ - 2514 - ], - "declarations": [ - { - "constant": false, - "id": 2514, - "mutability": "mutable", - "name": "i", - "nameLocation": "3597:1:17", - "nodeType": "VariableDeclaration", - "scope": 2534, - "src": "3590:8:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 2513, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "3590:6:17", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - } - ], - "id": 2516, - "initialValue": { - "hexValue": "30", - "id": 2515, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3601:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "3590:12:17" - }, - "loopExpression": { - "expression": { - "id": 2521, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "3622:3:17", - "subExpression": { - "id": 2520, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2514, - "src": "3622:1:17", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "id": 2522, - "nodeType": "ExpressionStatement", - "src": "3622:3:17" - }, - "nodeType": "ForStatement", - "src": "3585:100:17" - }, - { - "expression": { - "id": 2539, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "id": 2535, - "name": "result", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2466, - "src": "3694:6:17", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TxRawOutput_$2307_memory_ptr", - "typeString": "struct BtcUtils.TxRawOutput memory" - } - }, - "id": 2537, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberLocation": "3701:8:17", - "memberName": "pkScript", - "nodeType": "MemberAccess", - "referencedDeclaration": 2302, - "src": "3694:15:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 2538, - "name": "pkScript", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2507, - "src": "3712:8:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "src": "3694:26:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 2540, - "nodeType": "ExpressionStatement", - "src": "3694:26:17" - }, - { - "expression": { - "id": 2545, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "id": 2541, - "name": "result", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2466, - "src": "3730:6:17", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TxRawOutput_$2307_memory_ptr", - "typeString": "struct BtcUtils.TxRawOutput memory" - } - }, - "id": 2543, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberLocation": "3737:10:17", - "memberName": "scriptSize", - "nodeType": "MemberAccess", - "referencedDeclaration": 2304, - "src": "3730:17:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 2544, - "name": "scriptLength", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2494, - "src": "3750:12:17", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "3730:32:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 2546, - "nodeType": "ExpressionStatement", - "src": "3730:32:17" - }, - { - "expression": { - "id": 2555, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "id": 2547, - "name": "result", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2466, - "src": "3772:6:17", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TxRawOutput_$2307_memory_ptr", - "typeString": "struct BtcUtils.TxRawOutput memory" - } - }, - "id": 2549, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberLocation": "3779:9:17", - "memberName": "totalSize", - "nodeType": "MemberAccess", - "referencedDeclaration": 2306, - "src": "3772:16:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "commonType": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "id": 2554, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "id": 2552, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 2550, - "name": "OUTPUT_VALUE_SIZE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2268, - "src": "3791:17:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "id": 2551, - "name": "scriptLength", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2494, - "src": "3811:12:17", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "3791:32:17", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "id": 2553, - "name": "scriptLengthSize", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2496, - "src": "3826:16:17", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - "src": "3791:51:17", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "3772:70:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 2556, - "nodeType": "ExpressionStatement", - "src": "3772:70:17" - }, - { - "expression": { - "id": 2557, - "name": "result", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2466, - "src": "3859:6:17", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TxRawOutput_$2307_memory_ptr", - "typeString": "struct BtcUtils.TxRawOutput memory" - } - }, - "functionReturnParameters": 2463, - "id": 2558, - "nodeType": "Return", - "src": "3852:13:17" - } - ] - }, - "id": 2560, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "extractRawOutput", - "nameLocation": "3079:16:17", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2459, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2456, - "mutability": "mutable", - "name": "position", - "nameLocation": "3101:8:17", - "nodeType": "VariableDeclaration", - "scope": 2560, - "src": "3096:13:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2455, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "3096:4:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2458, - "mutability": "mutable", - "name": "rawTx", - "nameLocation": "3124:5:17", - "nodeType": "VariableDeclaration", - "scope": 2560, - "src": "3111:18:17", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2457, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "3111:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "3095:35:17" - }, - "returnParameters": { - "id": 2463, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2462, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2560, - "src": "3153:18:17", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TxRawOutput_$2307_memory_ptr", - "typeString": "struct BtcUtils.TxRawOutput" - }, - "typeName": { - "id": 2461, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 2460, - "name": "TxRawOutput", - "nameLocations": [ - "3153:11:17" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 2307, - "src": "3153:11:17" - }, - "referencedDeclaration": 2307, - "src": "3153:11:17", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TxRawOutput_$2307_storage_ptr", - "typeString": "struct BtcUtils.TxRawOutput" - } - }, - "visibility": "internal" - } - ], - "src": "3152:20:17" - }, - "scope": 3743, - "src": "3070:802:17", - "stateMutability": "pure", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 2621, - "nodeType": "Block", - "src": "4564:618:17", - "statements": [ - { - "condition": { - "arguments": [ - { - "id": 2571, - "name": "outputScript", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2563, - "src": "4592:12:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - ], - "id": 2570, - "name": "isP2PKHOutput", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2675, - "src": "4578:13:17", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_bool_$", - "typeString": "function (bytes memory) pure returns (bool)" - } - }, - "id": 2572, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4578:27:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 2579, - "nodeType": "IfStatement", - "src": "4574:108:17", - "trueBody": { - "id": 2578, - "nodeType": "Block", - "src": "4607:75:17", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 2574, - "name": "outputScript", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2563, - "src": "4649:12:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - { - "id": 2575, - "name": "mainnet", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2565, - "src": "4663:7:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 2573, - "name": "parsePayToPubKeyHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2874, - "src": "4628:20:17", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_bytes_calldata_ptr_$_t_bool_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (bytes calldata,bool) pure returns (bytes memory)" - } - }, - "id": 2576, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4628:43:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 2569, - "id": 2577, - "nodeType": "Return", - "src": "4621:50:17" - } - ] - } - }, - { - "condition": { - "arguments": [ - { - "id": 2581, - "name": "outputScript", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2563, - "src": "4708:12:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - ], - "id": 2580, - "name": "isP2SHOutput", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2714, - "src": "4695:12:17", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_bool_$", - "typeString": "function (bytes memory) pure returns (bool)" - } - }, - "id": 2582, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4695:26:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 2589, - "nodeType": "IfStatement", - "src": "4691:107:17", - "trueBody": { - "id": 2588, - "nodeType": "Block", - "src": "4723:75:17", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 2584, - "name": "outputScript", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2563, - "src": "4765:12:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - { - "id": 2585, - "name": "mainnet", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2565, - "src": "4779:7:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 2583, - "name": "parsePayToScriptHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2938, - "src": "4744:20:17", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_bytes_calldata_ptr_$_t_bool_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (bytes calldata,bool) pure returns (bytes memory)" - } - }, - "id": 2586, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4744:43:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 2569, - "id": 2587, - "nodeType": "Return", - "src": "4737:50:17" - } - ] - } - }, - { - "condition": { - "arguments": [ - { - "id": 2591, - "name": "outputScript", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2563, - "src": "4826:12:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - ], - "id": 2590, - "name": "isP2WPKHOutput", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2746, - "src": "4811:14:17", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_bool_$", - "typeString": "function (bytes memory) pure returns (bool)" - } - }, - "id": 2592, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4811:28:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 2598, - "nodeType": "IfStatement", - "src": "4807:107:17", - "trueBody": { - "id": 2597, - "nodeType": "Block", - "src": "4841:73:17", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 2594, - "name": "outputScript", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2563, - "src": "4890:12:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - ], - "id": 2593, - "name": "parsePayToWitnessPubKeyHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3007, - "src": "4862:27:17", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_bytes_calldata_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (bytes calldata) pure returns (bytes memory)" - } - }, - "id": 2595, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4862:41:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 2569, - "id": 2596, - "nodeType": "Return", - "src": "4855:48:17" - } - ] - } - }, - { - "condition": { - "arguments": [ - { - "id": 2600, - "name": "outputScript", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2563, - "src": "4941:12:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - ], - "id": 2599, - "name": "isP2WSHOutput", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2778, - "src": "4927:13:17", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_bool_$", - "typeString": "function (bytes memory) pure returns (bool)" - } - }, - "id": 2601, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4927:27:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 2607, - "nodeType": "IfStatement", - "src": "4923:106:17", - "trueBody": { - "id": 2606, - "nodeType": "Block", - "src": "4956:73:17", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 2603, - "name": "outputScript", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2563, - "src": "5005:12:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - ], - "id": 2602, - "name": "parsePayToWitnessScriptHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3076, - "src": "4977:27:17", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_bytes_calldata_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (bytes calldata) pure returns (bytes memory)" - } - }, - "id": 2604, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4977:41:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 2569, - "id": 2605, - "nodeType": "Return", - "src": "4970:48:17" - } - ] - } - }, - { - "condition": { - "arguments": [ - { - "id": 2609, - "name": "outputScript", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2563, - "src": "5055:12:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - ], - "id": 2608, - "name": "isP2TROutput", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2810, - "src": "5042:12:17", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_bool_$", - "typeString": "function (bytes memory) pure returns (bool)" - } - }, - "id": 2610, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5042:26:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 2616, - "nodeType": "IfStatement", - "src": "5038:95:17", - "trueBody": { - "id": 2615, - "nodeType": "Block", - "src": "5070:63:17", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 2612, - "name": "outputScript", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2563, - "src": "5109:12:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - ], - "id": 2611, - "name": "parsePayToTaproot", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3145, - "src": "5091:17:17", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_bytes_calldata_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (bytes calldata) pure returns (bytes memory)" - } - }, - "id": 2613, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5091:31:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 2569, - "id": 2614, - "nodeType": "Return", - "src": "5084:38:17" - } - ] - } - }, - { - "expression": { - "arguments": [ - { - "hexValue": "556e737570706f72746564207363726970742074797065", - "id": 2618, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5149:25:17", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_82bc120954d4025ad83f4cfd56c5f75d5f05a659cc4489ef281377ffa1d8ef8b", - "typeString": "literal_string \"Unsupported script type\"" - }, - "value": "Unsupported script type" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_82bc120954d4025ad83f4cfd56c5f75d5f05a659cc4489ef281377ffa1d8ef8b", - "typeString": "literal_string \"Unsupported script type\"" - } - ], - "id": 2617, - "name": "revert", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967277, - 4294967277 - ], - "referencedDeclaration": 4294967277, - "src": "5142:6:17", - "typeDescriptions": { - "typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory) pure" - } - }, - "id": 2619, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5142:33:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2620, - "nodeType": "ExpressionStatement", - "src": "5142:33:17" - } - ] - }, - "documentation": { - "id": 2561, - "nodeType": "StructuredDocumentation", - "src": "3878:572:17", - "text": "@notice Parse a raw output script whose type is not known by the consumer. The function will\n return the corresponding address if the type of the script is supported or an error if not.\n For the addresses that are encoded with base58check the checksum bytes are not included in\n the resulting byte array\n @param outputScript the fragment of the raw transaction containing the raw output script\n @param mainnet if the address to generate is from mainnet or testnet\n @return The address bytes regarless of the output script type" - }, - "functionSelector": "c7ce85ac", - "id": 2622, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "outputScriptToAddress", - "nameLocation": "4464:21:17", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2566, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2563, - "mutability": "mutable", - "name": "outputScript", - "nameLocation": "4501:12:17", - "nodeType": "VariableDeclaration", - "scope": 2622, - "src": "4486:27:17", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2562, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "4486:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2565, - "mutability": "mutable", - "name": "mainnet", - "nameLocation": "4520:7:17", - "nodeType": "VariableDeclaration", - "scope": 2622, - "src": "4515:12:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2564, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "4515:4:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "4485:43:17" - }, - "returnParameters": { - "id": 2569, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2568, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2622, - "src": "4550:12:17", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2567, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "4550:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "4549:14:17" - }, - "scope": 3743, - "src": "4455:727:17", - "stateMutability": "pure", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 2674, - "nodeType": "Block", - "src": "5522:309:17", - "statements": [ - { - "expression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 2672, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 2665, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 2658, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 2649, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 2642, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2635, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 2630, - "name": "pkScript", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2625, - "src": "5539:8:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 2631, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "5548:6:17", - "memberName": "length", - "nodeType": "MemberAccess", - "src": "5539:15:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2634, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "leftExpression": { - "hexValue": "35", - "id": 2632, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5558:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_5_by_1", - "typeString": "int_const 5" - }, - "value": "5" - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "id": 2633, - "name": "HASH160_SIZE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2256, - "src": "5562:12:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "5558:16:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "5539:35:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - }, - "id": 2641, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "id": 2636, - "name": "pkScript", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2625, - "src": "5590:8:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 2638, - "indexExpression": { - "hexValue": "30", - "id": 2637, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5599:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "5590:11:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 2639, - "name": "OpCodes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3770, - "src": "5605:7:17", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_OpCodes_$3770_$", - "typeString": "type(library OpCodes)" - } - }, - "id": 2640, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "5613:6:17", - "memberName": "OP_DUP", - "nodeType": "MemberAccess", - "referencedDeclaration": 3748, - "src": "5605:14:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "src": "5590:29:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "5539:80:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - }, - "id": 2648, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "id": 2643, - "name": "pkScript", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2625, - "src": "5635:8:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 2645, - "indexExpression": { - "hexValue": "31", - "id": 2644, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5644:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "5635:11:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 2646, - "name": "OpCodes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3770, - "src": "5650:7:17", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_OpCodes_$3770_$", - "typeString": "type(library OpCodes)" - } - }, - "id": 2647, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "5658:10:17", - "memberName": "OP_HASH160", - "nodeType": "MemberAccess", - "referencedDeclaration": 3751, - "src": "5650:18:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "src": "5635:33:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "5539:129:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2657, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "baseExpression": { - "id": 2652, - "name": "pkScript", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2625, - "src": "5690:8:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 2654, - "indexExpression": { - "hexValue": "32", - "id": 2653, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5699:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_2_by_1", - "typeString": "int_const 2" - }, - "value": "2" - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "5690:11:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - ], - "id": 2651, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "5684:5:17", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint8_$", - "typeString": "type(uint8)" - }, - "typeName": { - "id": 2650, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "5684:5:17", - "typeDescriptions": {} - } - }, - "id": 2655, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5684:18:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "id": 2656, - "name": "HASH160_SIZE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2256, - "src": "5706:12:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "5684:34:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "5539:179:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - }, - "id": 2664, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "id": 2659, - "name": "pkScript", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2625, - "src": "5734:8:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 2661, - "indexExpression": { - "hexValue": "3233", - "id": 2660, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5743:2:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_23_by_1", - "typeString": "int_const 23" - }, - "value": "23" - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "5734:12:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 2662, - "name": "OpCodes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3770, - "src": "5750:7:17", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_OpCodes_$3770_$", - "typeString": "type(library OpCodes)" - } - }, - "id": 2663, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "5758:14:17", - "memberName": "OP_EQUALVERIFY", - "nodeType": "MemberAccess", - "referencedDeclaration": 3754, - "src": "5750:22:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "src": "5734:38:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "5539:233:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - }, - "id": 2671, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "id": 2666, - "name": "pkScript", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2625, - "src": "5788:8:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 2668, - "indexExpression": { - "hexValue": "3234", - "id": 2667, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5797:2:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_24_by_1", - "typeString": "int_const 24" - }, - "value": "24" - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "5788:12:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 2669, - "name": "OpCodes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3770, - "src": "5805:7:17", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_OpCodes_$3770_$", - "typeString": "type(library OpCodes)" - } - }, - "id": 2670, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "5813:11:17", - "memberName": "OP_CHECKSIG", - "nodeType": "MemberAccess", - "referencedDeclaration": 3757, - "src": "5805:19:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "src": "5788:36:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "5539:285:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 2629, - "id": 2673, - "nodeType": "Return", - "src": "5532:292:17" - } - ] - }, - "documentation": { - "id": 2623, - "nodeType": "StructuredDocumentation", - "src": "5188:256:17", - "text": "@notice Check if a raw output script is a pay-to-public-key-hash output\n @param pkScript the fragment of the raw transaction containing the raw output script\n @return Whether the script has a pay-to-public-key-hash output structure or not" - }, - "functionSelector": "facde656", - "id": 2675, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "isP2PKHOutput", - "nameLocation": "5458:13:17", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2626, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2625, - "mutability": "mutable", - "name": "pkScript", - "nameLocation": "5485:8:17", - "nodeType": "VariableDeclaration", - "scope": 2675, - "src": "5472:21:17", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2624, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "5472:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "5471:23:17" - }, - "returnParameters": { - "id": 2629, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2628, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2675, - "src": "5516:4:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2627, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "5516:4:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "5515:6:17" - }, - "scope": 3743, - "src": "5449:382:17", - "stateMutability": "pure", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 2713, - "nodeType": "Block", - "src": "6162:206:17", - "statements": [ - { - "expression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 2711, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 2704, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 2695, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2688, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 2683, - "name": "pkScript", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2678, - "src": "6179:8:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 2684, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "6188:6:17", - "memberName": "length", - "nodeType": "MemberAccess", - "src": "6179:15:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2687, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "leftExpression": { - "hexValue": "33", - "id": 2685, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6198:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_3_by_1", - "typeString": "int_const 3" - }, - "value": "3" - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "id": 2686, - "name": "HASH160_SIZE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2256, - "src": "6202:12:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "6198:16:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "6179:35:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - }, - "id": 2694, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "id": 2689, - "name": "pkScript", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2678, - "src": "6230:8:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 2691, - "indexExpression": { - "hexValue": "30", - "id": 2690, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6239:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "6230:11:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 2692, - "name": "OpCodes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3770, - "src": "6245:7:17", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_OpCodes_$3770_$", - "typeString": "type(library OpCodes)" - } - }, - "id": 2693, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "6253:10:17", - "memberName": "OP_HASH160", - "nodeType": "MemberAccess", - "referencedDeclaration": 3751, - "src": "6245:18:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "src": "6230:33:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "6179:84:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2703, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "baseExpression": { - "id": 2698, - "name": "pkScript", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2678, - "src": "6285:8:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 2700, - "indexExpression": { - "hexValue": "31", - "id": 2699, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6294:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "6285:11:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - ], - "id": 2697, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "6279:5:17", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint8_$", - "typeString": "type(uint8)" - }, - "typeName": { - "id": 2696, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "6279:5:17", - "typeDescriptions": {} - } - }, - "id": 2701, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "6279:18:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "id": 2702, - "name": "HASH160_SIZE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2256, - "src": "6301:12:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "6279:34:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "6179:134:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - }, - "id": 2710, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "id": 2705, - "name": "pkScript", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2678, - "src": "6329:8:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 2707, - "indexExpression": { - "hexValue": "3232", - "id": 2706, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6338:2:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_22_by_1", - "typeString": "int_const 22" - }, - "value": "22" - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "6329:12:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 2708, - "name": "OpCodes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3770, - "src": "6345:7:17", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_OpCodes_$3770_$", - "typeString": "type(library OpCodes)" - } - }, - "id": 2709, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "6353:8:17", - "memberName": "OP_EQUAL", - "nodeType": "MemberAccess", - "referencedDeclaration": 3763, - "src": "6345:16:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "src": "6329:32:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "6179:182:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 2682, - "id": 2712, - "nodeType": "Return", - "src": "6172:189:17" - } - ] - }, - "documentation": { - "id": 2676, - "nodeType": "StructuredDocumentation", - "src": "5837:248:17", - "text": "@notice Check if a raw output script is a pay-to-script-hash output\n @param pkScript the fragment of the raw transaction containing the raw output script\n @return Whether the script has a pay-to-script-hash output structure or not" - }, - "functionSelector": "b42da4a2", - "id": 2714, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "isP2SHOutput", - "nameLocation": "6099:12:17", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2679, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2678, - "mutability": "mutable", - "name": "pkScript", - "nameLocation": "6125:8:17", - "nodeType": "VariableDeclaration", - "scope": 2714, - "src": "6112:21:17", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2677, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "6112:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "6111:23:17" - }, - "returnParameters": { - "id": 2682, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2681, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2714, - "src": "6156:4:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2680, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "6156:4:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "6155:6:17" - }, - "scope": 3743, - "src": "6090:278:17", - "stateMutability": "pure", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 2745, - "nodeType": "Block", - "src": "6717:152:17", - "statements": [ - { - "expression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 2743, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 2734, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2727, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 2722, - "name": "pkScript", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2717, - "src": "6734:8:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 2723, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "6743:6:17", - "memberName": "length", - "nodeType": "MemberAccess", - "src": "6734:15:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2726, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "leftExpression": { - "hexValue": "32", - "id": 2724, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6753:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_2_by_1", - "typeString": "int_const 2" - }, - "value": "2" - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "id": 2725, - "name": "HASH160_SIZE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2256, - "src": "6757:12:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "6753:16:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "6734:35:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - }, - "id": 2733, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "id": 2728, - "name": "pkScript", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2717, - "src": "6785:8:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 2730, - "indexExpression": { - "hexValue": "30", - "id": 2729, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6794:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "6785:11:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 2731, - "name": "OpCodes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3770, - "src": "6800:7:17", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_OpCodes_$3770_$", - "typeString": "type(library OpCodes)" - } - }, - "id": 2732, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "6808:4:17", - "memberName": "OP_0", - "nodeType": "MemberAccess", - "referencedDeclaration": 3766, - "src": "6800:12:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "src": "6785:27:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "6734:78:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2742, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "baseExpression": { - "id": 2737, - "name": "pkScript", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2717, - "src": "6834:8:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 2739, - "indexExpression": { - "hexValue": "31", - "id": 2738, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6843:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "6834:11:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - ], - "id": 2736, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "6828:5:17", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint8_$", - "typeString": "type(uint8)" - }, - "typeName": { - "id": 2735, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "6828:5:17", - "typeDescriptions": {} - } - }, - "id": 2740, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "6828:18:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "id": 2741, - "name": "HASH160_SIZE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2256, - "src": "6850:12:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "6828:34:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "6734:128:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 2721, - "id": 2744, - "nodeType": "Return", - "src": "6727:135:17" - } - ] - }, - "documentation": { - "id": 2715, - "nodeType": "StructuredDocumentation", - "src": "6374:264:17", - "text": "@notice Check if a raw output script is a pay-to-witness-pubkey-hash output\n @param pkScript the fragment of the raw transaction containing the raw output script\n @return Whether the script has a pay-to-witness-pubkey-hash output structure or not" - }, - "functionSelector": "ed0b4ba0", - "id": 2746, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "isP2WPKHOutput", - "nameLocation": "6652:14:17", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2718, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2717, - "mutability": "mutable", - "name": "pkScript", - "nameLocation": "6680:8:17", - "nodeType": "VariableDeclaration", - "scope": 2746, - "src": "6667:21:17", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2716, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "6667:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "6666:23:17" - }, - "returnParameters": { - "id": 2721, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2720, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2746, - "src": "6711:4:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2719, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "6711:4:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "6710:6:17" - }, - "scope": 3743, - "src": "6643:226:17", - "stateMutability": "pure", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 2777, - "nodeType": "Block", - "src": "7217:150:17", - "statements": [ - { - "expression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 2775, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 2766, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2759, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 2754, - "name": "pkScript", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2749, - "src": "7234:8:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 2755, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "7243:6:17", - "memberName": "length", - "nodeType": "MemberAccess", - "src": "7234:15:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2758, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "leftExpression": { - "hexValue": "32", - "id": 2756, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7253:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_2_by_1", - "typeString": "int_const 2" - }, - "value": "2" - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "id": 2757, - "name": "SHA256_SIZE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2259, - "src": "7257:11:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "7253:15:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "7234:34:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - }, - "id": 2765, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "id": 2760, - "name": "pkScript", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2749, - "src": "7284:8:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 2762, - "indexExpression": { - "hexValue": "30", - "id": 2761, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7293:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "7284:11:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 2763, - "name": "OpCodes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3770, - "src": "7299:7:17", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_OpCodes_$3770_$", - "typeString": "type(library OpCodes)" - } - }, - "id": 2764, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "7307:4:17", - "memberName": "OP_0", - "nodeType": "MemberAccess", - "referencedDeclaration": 3766, - "src": "7299:12:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "src": "7284:27:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "7234:77:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2774, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "baseExpression": { - "id": 2769, - "name": "pkScript", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2749, - "src": "7333:8:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 2771, - "indexExpression": { - "hexValue": "31", - "id": 2770, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7342:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "7333:11:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - ], - "id": 2768, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "7327:5:17", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint8_$", - "typeString": "type(uint8)" - }, - "typeName": { - "id": 2767, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "7327:5:17", - "typeDescriptions": {} - } - }, - "id": 2772, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "7327:18:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "id": 2773, - "name": "SHA256_SIZE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2259, - "src": "7349:11:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "7327:33:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "7234:126:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 2753, - "id": 2776, - "nodeType": "Return", - "src": "7227:133:17" - } - ] - }, - "documentation": { - "id": 2747, - "nodeType": "StructuredDocumentation", - "src": "6875:264:17", - "text": "@notice Check if a raw output script is a pay-to-witness-script-hash output\n @param pkScript the fragment of the raw transaction containing the raw output script\n @return Whether the script has a pay-to-witness-script-hash output structure or not" - }, - "functionSelector": "b36b0294", - "id": 2778, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "isP2WSHOutput", - "nameLocation": "7153:13:17", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2750, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2749, - "mutability": "mutable", - "name": "pkScript", - "nameLocation": "7180:8:17", - "nodeType": "VariableDeclaration", - "scope": 2778, - "src": "7167:21:17", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2748, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "7167:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "7166:23:17" - }, - "returnParameters": { - "id": 2753, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2752, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2778, - "src": "7211:4:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2751, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "7211:4:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "7210:6:17" - }, - "scope": 3743, - "src": "7144:223:17", - "stateMutability": "pure", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 2809, - "nodeType": "Block", - "src": "7800:166:17", - "statements": [ - { - "expression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 2807, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 2798, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2791, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 2786, - "name": "pkScript", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2781, - "src": "7817:8:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 2787, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "7826:6:17", - "memberName": "length", - "nodeType": "MemberAccess", - "src": "7817:15:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2790, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "leftExpression": { - "hexValue": "32", - "id": 2788, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7836:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_2_by_1", - "typeString": "int_const 2" - }, - "value": "2" - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "id": 2789, - "name": "TAPROOT_PUBKEY_SIZE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2262, - "src": "7840:19:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "7836:23:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "7817:42:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - }, - "id": 2797, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "id": 2792, - "name": "pkScript", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2781, - "src": "7875:8:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 2794, - "indexExpression": { - "hexValue": "30", - "id": 2793, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7884:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "7875:11:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 2795, - "name": "OpCodes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3770, - "src": "7890:7:17", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_OpCodes_$3770_$", - "typeString": "type(library OpCodes)" - } - }, - "id": 2796, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "7898:4:17", - "memberName": "OP_1", - "nodeType": "MemberAccess", - "referencedDeclaration": 3769, - "src": "7890:12:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "src": "7875:27:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "7817:85:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2806, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "baseExpression": { - "id": 2801, - "name": "pkScript", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2781, - "src": "7924:8:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 2803, - "indexExpression": { - "hexValue": "31", - "id": 2802, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7933:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "7924:11:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - ], - "id": 2800, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "7918:5:17", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint8_$", - "typeString": "type(uint8)" - }, - "typeName": { - "id": 2799, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "7918:5:17", - "typeDescriptions": {} - } - }, - "id": 2804, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "7918:18:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "id": 2805, - "name": "TAPROOT_PUBKEY_SIZE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2262, - "src": "7940:19:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "7918:41:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "7817:142:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 2785, - "id": 2808, - "nodeType": "Return", - "src": "7810:149:17" - } - ] - }, - "documentation": { - "id": 2779, - "nodeType": "StructuredDocumentation", - "src": "7373:350:17", - "text": "@notice Check if a raw output script is a pay-to-taproot output\n @notice Reference for implementation: https://github.com/bitcoin/bips/blob/master/bip-0341.mediawiki \n @param pkScript the fragment of the raw transaction containing the raw output script\n @return Whether the script has a pay-to-taproot output structure or not" - }, - "functionSelector": "c3d9cc75", - "id": 2810, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "isP2TROutput", - "nameLocation": "7737:12:17", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2782, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2781, - "mutability": "mutable", - "name": "pkScript", - "nameLocation": "7763:8:17", - "nodeType": "VariableDeclaration", - "scope": 2810, - "src": "7750:21:17", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2780, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "7750:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "7749:23:17" - }, - "returnParameters": { - "id": 2785, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2784, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2810, - "src": "7794:4:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2783, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "7794:4:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "7793:6:17" - }, - "scope": 3743, - "src": "7728:238:17", - "stateMutability": "pure", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 2873, - "nodeType": "Block", - "src": "8544:468:17", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "id": 2822, - "name": "outputScript", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2813, - "src": "8576:12:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - ], - "id": 2821, - "name": "isP2PKHOutput", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2675, - "src": "8562:13:17", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_bool_$", - "typeString": "function (bytes memory) pure returns (bool)" - } - }, - "id": 2823, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "8562:27:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "536372697074206861736e27742074686520726571756972656420737472756374757265", - "id": 2824, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "8591:38:17", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_5c42cb24ade4c938d2af09aa1cf0c55f1ebed622636f7647d2e3fc9fd6191142", - "typeString": "literal_string \"Script hasn't the required structure\"" - }, - "value": "Script hasn't the required structure" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_5c42cb24ade4c938d2af09aa1cf0c55f1ebed622636f7647d2e3fc9fd6191142", - "typeString": "literal_string \"Script hasn't the required structure\"" - } - ], - "id": 2820, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "8554:7:17", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 2825, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "8554:76:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2826, - "nodeType": "ExpressionStatement", - "src": "8554:76:17" - }, - { - "assignments": [ - 2828 - ], - "declarations": [ - { - "constant": false, - "id": 2828, - "mutability": "mutable", - "name": "destinationAddress", - "nameLocation": "8654:18:17", - "nodeType": "VariableDeclaration", - "scope": 2873, - "src": "8641:31:17", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2827, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "8641:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 2835, - "initialValue": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2833, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "leftExpression": { - "id": 2831, - "name": "HASH160_SIZE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2256, - "src": "8685:12:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "hexValue": "31", - "id": 2832, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "8700:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "8685:16:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 2830, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "NewExpression", - "src": "8675:9:17", - "typeDescriptions": { - "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (uint256) pure returns (bytes memory)" - }, - "typeName": { - "id": 2829, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "8679:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - } - }, - "id": 2834, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "8675:27:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "8641:61:17" - }, - { - "body": { - "id": 2860, - "nodeType": "Block", - "src": "8788:88:17", - "statements": [ - { - "expression": { - "id": 2858, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 2848, - "name": "destinationAddress", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2828, - "src": "8802:18:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 2854, - "indexExpression": { - "commonType": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "id": 2853, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "id": 2851, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 2849, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2837, - "src": "8821:1:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "id": 2850, - "name": "PUBKEY_HASH_START", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2271, - "src": "8825:17:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "src": "8821:21:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "hexValue": "31", - "id": 2852, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "8845:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "8821:25:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "8802:45:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "baseExpression": { - "id": 2855, - "name": "outputScript", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2813, - "src": "8850:12:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "id": 2857, - "indexExpression": { - "id": 2856, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2837, - "src": "8863:1:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "8850:15:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "src": "8802:63:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "id": 2859, - "nodeType": "ExpressionStatement", - "src": "8802:63:17" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2844, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 2840, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2837, - "src": "8745:1:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2843, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "leftExpression": { - "id": 2841, - "name": "HASH160_SIZE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2256, - "src": "8749:12:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "id": 2842, - "name": "PUBKEY_HASH_START", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2271, - "src": "8764:17:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "src": "8749:32:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "8745:36:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 2861, - "initializationExpression": { - "assignments": [ - 2837 - ], - "declarations": [ - { - "constant": false, - "id": 2837, - "mutability": "mutable", - "name": "i", - "nameLocation": "8722:1:17", - "nodeType": "VariableDeclaration", - "scope": 2861, - "src": "8716:7:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "typeName": { - "id": 2836, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "8716:5:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "visibility": "internal" - } - ], - "id": 2839, - "initialValue": { - "id": 2838, - "name": "PUBKEY_HASH_START", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2271, - "src": "8726:17:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "8716:27:17" - }, - "loopExpression": { - "expression": { - "id": 2846, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "8783:3:17", - "subExpression": { - "id": 2845, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2837, - "src": "8783:1:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "id": 2847, - "nodeType": "ExpressionStatement", - "src": "8783:3:17" - }, - "nodeType": "ForStatement", - "src": "8712:164:17" - }, - { - "expression": { - "id": 2869, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 2862, - "name": "destinationAddress", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2828, - "src": "8886:18:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 2864, - "indexExpression": { - "hexValue": "30", - "id": 2863, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "8905:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "8886:21:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "condition": { - "id": 2865, - "name": "mainnet", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2815, - "src": "8910:7:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseExpression": { - "id": 2867, - "name": "PUBKEY_HASH_TESTNET_BYTE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2277, - "src": "8946:24:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "id": 2868, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "Conditional", - "src": "8910:60:17", - "trueExpression": { - "id": 2866, - "name": "PUBKEY_HASH_MAINNET_BYTE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2274, - "src": "8919:24:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "src": "8886:84:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "id": 2870, - "nodeType": "ExpressionStatement", - "src": "8886:84:17" - }, - { - "expression": { - "id": 2871, - "name": "destinationAddress", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2828, - "src": "8987:18:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 2819, - "id": 2872, - "nodeType": "Return", - "src": "8980:25:17" - } - ] - }, - "documentation": { - "id": 2811, - "nodeType": "StructuredDocumentation", - "src": "7972:459:17", - "text": "@notice Parse a raw pay-to-public-key-hash output script to get the corresponding address,\n the resulting byte array doesn't include the checksum bytes of the base58check encoding at\n the end\n @param outputScript the fragment of the raw transaction containing the raw output script\n @param mainnet if the address to generate is from mainnet or testnet \n @return The address generated using the receiver's public key hash" - }, - "functionSelector": "4c03fe59", - "id": 2874, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "parsePayToPubKeyHash", - "nameLocation": "8445:20:17", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2816, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2813, - "mutability": "mutable", - "name": "outputScript", - "nameLocation": "8481:12:17", - "nodeType": "VariableDeclaration", - "scope": 2874, - "src": "8466:27:17", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2812, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "8466:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2815, - "mutability": "mutable", - "name": "mainnet", - "nameLocation": "8500:7:17", - "nodeType": "VariableDeclaration", - "scope": 2874, - "src": "8495:12:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2814, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "8495:4:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "8465:43:17" - }, - "returnParameters": { - "id": 2819, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2818, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2874, - "src": "8530:12:17", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2817, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "8530:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "8529:14:17" - }, - "scope": 3743, - "src": "8436:576:17", - "stateMutability": "pure", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 2937, - "nodeType": "Block", - "src": "9570:467:17", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "id": 2886, - "name": "outputScript", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2877, - "src": "9601:12:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - ], - "id": 2885, - "name": "isP2SHOutput", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2714, - "src": "9588:12:17", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_bool_$", - "typeString": "function (bytes memory) pure returns (bool)" - } - }, - "id": 2887, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "9588:26:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "536372697074206861736e27742074686520726571756972656420737472756374757265", - "id": 2888, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9616:38:17", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_5c42cb24ade4c938d2af09aa1cf0c55f1ebed622636f7647d2e3fc9fd6191142", - "typeString": "literal_string \"Script hasn't the required structure\"" - }, - "value": "Script hasn't the required structure" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_5c42cb24ade4c938d2af09aa1cf0c55f1ebed622636f7647d2e3fc9fd6191142", - "typeString": "literal_string \"Script hasn't the required structure\"" - } - ], - "id": 2884, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "9580:7:17", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 2889, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "9580:75:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2890, - "nodeType": "ExpressionStatement", - "src": "9580:75:17" - }, - { - "assignments": [ - 2892 - ], - "declarations": [ - { - "constant": false, - "id": 2892, - "mutability": "mutable", - "name": "destinationAddress", - "nameLocation": "9679:18:17", - "nodeType": "VariableDeclaration", - "scope": 2937, - "src": "9666:31:17", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2891, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "9666:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 2899, - "initialValue": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2897, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "leftExpression": { - "id": 2895, - "name": "HASH160_SIZE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2256, - "src": "9710:12:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "hexValue": "31", - "id": 2896, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9725:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "9710:16:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 2894, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "NewExpression", - "src": "9700:9:17", - "typeDescriptions": { - "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (uint256) pure returns (bytes memory)" - }, - "typeName": { - "id": 2893, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "9704:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - } - }, - "id": 2898, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "9700:27:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "9666:61:17" - }, - { - "body": { - "id": 2924, - "nodeType": "Block", - "src": "9813:88:17", - "statements": [ - { - "expression": { - "id": 2922, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 2912, - "name": "destinationAddress", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2892, - "src": "9827:18:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 2918, - "indexExpression": { - "commonType": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "id": 2917, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "id": 2915, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 2913, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2901, - "src": "9846:1:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "id": 2914, - "name": "SCRIPT_HASH_START", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2280, - "src": "9850:17:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "src": "9846:21:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "hexValue": "31", - "id": 2916, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9870:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "9846:25:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "9827:45:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "baseExpression": { - "id": 2919, - "name": "outputScript", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2877, - "src": "9875:12:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "id": 2921, - "indexExpression": { - "id": 2920, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2901, - "src": "9888:1:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "9875:15:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "src": "9827:63:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "id": 2923, - "nodeType": "ExpressionStatement", - "src": "9827:63:17" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2908, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 2904, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2901, - "src": "9770:1:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2907, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "leftExpression": { - "id": 2905, - "name": "HASH160_SIZE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2256, - "src": "9774:12:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "id": 2906, - "name": "SCRIPT_HASH_START", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2280, - "src": "9789:17:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "src": "9774:32:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "9770:36:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 2925, - "initializationExpression": { - "assignments": [ - 2901 - ], - "declarations": [ - { - "constant": false, - "id": 2901, - "mutability": "mutable", - "name": "i", - "nameLocation": "9747:1:17", - "nodeType": "VariableDeclaration", - "scope": 2925, - "src": "9741:7:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "typeName": { - "id": 2900, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "9741:5:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "visibility": "internal" - } - ], - "id": 2903, - "initialValue": { - "id": 2902, - "name": "SCRIPT_HASH_START", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2280, - "src": "9751:17:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "9741:27:17" - }, - "loopExpression": { - "expression": { - "id": 2910, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "9808:3:17", - "subExpression": { - "id": 2909, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2901, - "src": "9808:1:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "id": 2911, - "nodeType": "ExpressionStatement", - "src": "9808:3:17" - }, - "nodeType": "ForStatement", - "src": "9737:164:17" - }, - { - "expression": { - "id": 2933, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 2926, - "name": "destinationAddress", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2892, - "src": "9911:18:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 2928, - "indexExpression": { - "hexValue": "30", - "id": 2927, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9930:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "9911:21:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "condition": { - "id": 2929, - "name": "mainnet", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2879, - "src": "9935:7:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseExpression": { - "id": 2931, - "name": "SCRIPT_HASH_TESTNET_BYTE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2286, - "src": "9971:24:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "id": 2932, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "Conditional", - "src": "9935:60:17", - "trueExpression": { - "id": 2930, - "name": "SCRIPT_HASH_MAINNET_BYTE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2283, - "src": "9944:24:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "src": "9911:84:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "id": 2934, - "nodeType": "ExpressionStatement", - "src": "9911:84:17" - }, - { - "expression": { - "id": 2935, - "name": "destinationAddress", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2892, - "src": "10012:18:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 2883, - "id": 2936, - "nodeType": "Return", - "src": "10005:25:17" - } - ] - }, - "documentation": { - "id": 2875, - "nodeType": "StructuredDocumentation", - "src": "9018:439:17", - "text": "@notice Parse a raw pay-to-script-hash output script to get the corresponding address,\n the resulting byte array doesn't include the checksum bytes of the base58check encoding at\n the end\n @param outputScript the fragment of the raw transaction containing the raw output script\n @param mainnet if the address to generate is from mainnet or testnet\n @return The address generated using the script hash" - }, - "functionSelector": "06ac4100", - "id": 2938, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "parsePayToScriptHash", - "nameLocation": "9471:20:17", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2880, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2877, - "mutability": "mutable", - "name": "outputScript", - "nameLocation": "9507:12:17", - "nodeType": "VariableDeclaration", - "scope": 2938, - "src": "9492:27:17", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2876, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "9492:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 2879, - "mutability": "mutable", - "name": "mainnet", - "nameLocation": "9526:7:17", - "nodeType": "VariableDeclaration", - "scope": 2938, - "src": "9521:12:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2878, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "9521:4:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "9491:43:17" - }, - "returnParameters": { - "id": 2883, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2882, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2938, - "src": "9556:12:17", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2881, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "9556:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "9555:14:17" - }, - "scope": 3743, - "src": "9462:575:17", - "stateMutability": "pure", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 3006, - "nodeType": "Block", - "src": "10525:414:17", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "id": 2948, - "name": "outputScript", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2941, - "src": "10558:12:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - ], - "id": 2947, - "name": "isP2WPKHOutput", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2746, - "src": "10543:14:17", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_bool_$", - "typeString": "function (bytes memory) pure returns (bool)" - } - }, - "id": 2949, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "10543:28:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "536372697074206861736e27742074686520726571756972656420737472756374757265", - "id": 2950, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "10573:38:17", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_5c42cb24ade4c938d2af09aa1cf0c55f1ebed622636f7647d2e3fc9fd6191142", - "typeString": "literal_string \"Script hasn't the required structure\"" - }, - "value": "Script hasn't the required structure" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_5c42cb24ade4c938d2af09aa1cf0c55f1ebed622636f7647d2e3fc9fd6191142", - "typeString": "literal_string \"Script hasn't the required structure\"" - } - ], - "id": 2946, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "10535:7:17", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 2951, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "10535:77:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 2952, - "nodeType": "ExpressionStatement", - "src": "10535:77:17" - }, - { - "assignments": [ - 2954 - ], - "declarations": [ - { - "constant": false, - "id": 2954, - "mutability": "mutable", - "name": "length", - "nameLocation": "10628:6:17", - "nodeType": "VariableDeclaration", - "scope": 3006, - "src": "10623:11:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2953, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "10623:4:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 2960, - "initialValue": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2959, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "hexValue": "31", - "id": 2955, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "10637:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "arguments": [ - { - "id": 2957, - "name": "HASH160_SIZE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2256, - "src": "10656:12:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 2956, - "name": "total5BitWords", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3742, - "src": "10641:14:17", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_uint256_$returns$_t_uint256_$", - "typeString": "function (uint256) pure returns (uint256)" - } - }, - "id": 2958, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "10641:28:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "10637:32:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "10623:46:17" - }, - { - "assignments": [ - 2962 - ], - "declarations": [ - { - "constant": false, - "id": 2962, - "mutability": "mutable", - "name": "result", - "nameLocation": "10692:6:17", - "nodeType": "VariableDeclaration", - "scope": 3006, - "src": "10679:19:17", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2961, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "10679:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 2967, - "initialValue": { - "arguments": [ - { - "id": 2965, - "name": "length", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2954, - "src": "10711:6:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 2964, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "NewExpression", - "src": "10701:9:17", - "typeDescriptions": { - "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (uint256) pure returns (bytes memory)" - }, - "typeName": { - "id": 2963, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "10705:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - } - }, - "id": 2966, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "10701:17:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "10679:39:17" - }, - { - "expression": { - "id": 2972, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 2968, - "name": "result", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2962, - "src": "10728:6:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 2970, - "indexExpression": { - "hexValue": "30", - "id": 2969, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "10735:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "10728:9:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 2971, - "name": "WITNESS_VERSION_0", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2295, - "src": "10740:17:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "src": "10728:29:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "id": 2973, - "nodeType": "ExpressionStatement", - "src": "10728:29:17" - }, - { - "assignments": [ - 2975 - ], - "declarations": [ - { - "constant": false, - "id": 2975, - "mutability": "mutable", - "name": "words", - "nameLocation": "10780:5:17", - "nodeType": "VariableDeclaration", - "scope": 3006, - "src": "10767:18:17", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2974, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "10767:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 2981, - "initialValue": { - "arguments": [ - { - "baseExpression": { - "id": 2977, - "name": "outputScript", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2941, - "src": "10800:12:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "id": 2979, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexRangeAccess", - "src": "10800:16:17", - "startExpression": { - "hexValue": "32", - "id": 2978, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "10813:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_2_by_1", - "typeString": "int_const 2" - }, - "value": "2" - }, - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr_slice", - "typeString": "bytes calldata slice" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_calldata_ptr_slice", - "typeString": "bytes calldata slice" - } - ], - "id": 2976, - "name": "to5BitWords", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3706, - "src": "10788:11:17", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (bytes memory) pure returns (bytes memory)" - } - }, - "id": 2980, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "10788:29:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "10767:50:17" - }, - { - "body": { - "id": 3002, - "nodeType": "Block", - "src": "10861:49:17", - "statements": [ - { - "expression": { - "id": 3000, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 2992, - "name": "result", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2962, - "src": "10875:6:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 2994, - "indexExpression": { - "id": 2993, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2983, - "src": "10882:1:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "10875:9:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "baseExpression": { - "id": 2995, - "name": "words", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2975, - "src": "10887:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 2999, - "indexExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2998, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 2996, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2983, - "src": "10893:1:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "hexValue": "31", - "id": 2997, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "10897:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "10893:5:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "10887:12:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "src": "10875:24:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "id": 3001, - "nodeType": "ExpressionStatement", - "src": "10875:24:17" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 2988, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 2986, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2983, - "src": "10844:1:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "id": 2987, - "name": "length", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2954, - "src": "10848:6:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "10844:10:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 3003, - "initializationExpression": { - "assignments": [ - 2983 - ], - "declarations": [ - { - "constant": false, - "id": 2983, - "mutability": "mutable", - "name": "i", - "nameLocation": "10837:1:17", - "nodeType": "VariableDeclaration", - "scope": 3003, - "src": "10832:6:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2982, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "10832:4:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 2985, - "initialValue": { - "hexValue": "31", - "id": 2984, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "10841:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "nodeType": "VariableDeclarationStatement", - "src": "10832:10:17" - }, - "loopExpression": { - "expression": { - "id": 2990, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "10856:3:17", - "subExpression": { - "id": 2989, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2983, - "src": "10856:1:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 2991, - "nodeType": "ExpressionStatement", - "src": "10856:3:17" - }, - "nodeType": "ForStatement", - "src": "10827:83:17" - }, - { - "expression": { - "id": 3004, - "name": "result", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2962, - "src": "10926:6:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 2945, - "id": 3005, - "nodeType": "Return", - "src": "10919:13:17" - } - ] - }, - "documentation": { - "id": 2939, - "nodeType": "StructuredDocumentation", - "src": "10043:376:17", - "text": "@notice Parse a raw pay-to-witness-pubkey-hash output script to get the corresponding address words,\n the resulting words are only the data part of the bech32 encoding and doesn't include the HRP\n @param outputScript the fragment of the raw transaction containing the raw output script\n @return The address bech32 words generated using the pubkey hash" - }, - "functionSelector": "7ddac3b2", - "id": 3007, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "parsePayToWitnessPubKeyHash", - "nameLocation": "10433:27:17", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2942, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2941, - "mutability": "mutable", - "name": "outputScript", - "nameLocation": "10476:12:17", - "nodeType": "VariableDeclaration", - "scope": 3007, - "src": "10461:27:17", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2940, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "10461:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "10460:29:17" - }, - "returnParameters": { - "id": 2945, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2944, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 3007, - "src": "10511:12:17", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2943, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "10511:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "10510:14:17" - }, - "scope": 3743, - "src": "10424:515:17", - "stateMutability": "pure", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 3075, - "nodeType": "Block", - "src": "11427:411:17", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "id": 3017, - "name": "outputScript", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3010, - "src": "11459:12:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - ], - "id": 3016, - "name": "isP2WSHOutput", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2778, - "src": "11445:13:17", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_bool_$", - "typeString": "function (bytes memory) pure returns (bool)" - } - }, - "id": 3018, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "11445:27:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "536372697074206861736e27742074686520726571756972656420737472756374757265", - "id": 3019, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "11474:38:17", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_5c42cb24ade4c938d2af09aa1cf0c55f1ebed622636f7647d2e3fc9fd6191142", - "typeString": "literal_string \"Script hasn't the required structure\"" - }, - "value": "Script hasn't the required structure" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_5c42cb24ade4c938d2af09aa1cf0c55f1ebed622636f7647d2e3fc9fd6191142", - "typeString": "literal_string \"Script hasn't the required structure\"" - } - ], - "id": 3015, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "11437:7:17", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 3020, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "11437:76:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 3021, - "nodeType": "ExpressionStatement", - "src": "11437:76:17" - }, - { - "assignments": [ - 3023 - ], - "declarations": [ - { - "constant": false, - "id": 3023, - "mutability": "mutable", - "name": "length", - "nameLocation": "11528:6:17", - "nodeType": "VariableDeclaration", - "scope": 3075, - "src": "11523:11:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3022, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "11523:4:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 3029, - "initialValue": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3028, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "hexValue": "31", - "id": 3024, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "11537:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "arguments": [ - { - "id": 3026, - "name": "SHA256_SIZE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2259, - "src": "11556:11:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 3025, - "name": "total5BitWords", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3742, - "src": "11541:14:17", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_uint256_$returns$_t_uint256_$", - "typeString": "function (uint256) pure returns (uint256)" - } - }, - "id": 3027, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "11541:27:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "11537:31:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "11523:45:17" - }, - { - "assignments": [ - 3031 - ], - "declarations": [ - { - "constant": false, - "id": 3031, - "mutability": "mutable", - "name": "result", - "nameLocation": "11591:6:17", - "nodeType": "VariableDeclaration", - "scope": 3075, - "src": "11578:19:17", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 3030, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "11578:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 3036, - "initialValue": { - "arguments": [ - { - "id": 3034, - "name": "length", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3023, - "src": "11610:6:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 3033, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "NewExpression", - "src": "11600:9:17", - "typeDescriptions": { - "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (uint256) pure returns (bytes memory)" - }, - "typeName": { - "id": 3032, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "11604:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - } - }, - "id": 3035, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "11600:17:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "11578:39:17" - }, - { - "expression": { - "id": 3041, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 3037, - "name": "result", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3031, - "src": "11627:6:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 3039, - "indexExpression": { - "hexValue": "30", - "id": 3038, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "11634:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "11627:9:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 3040, - "name": "WITNESS_VERSION_0", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2295, - "src": "11639:17:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "src": "11627:29:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "id": 3042, - "nodeType": "ExpressionStatement", - "src": "11627:29:17" - }, - { - "assignments": [ - 3044 - ], - "declarations": [ - { - "constant": false, - "id": 3044, - "mutability": "mutable", - "name": "words", - "nameLocation": "11679:5:17", - "nodeType": "VariableDeclaration", - "scope": 3075, - "src": "11666:18:17", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 3043, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "11666:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 3050, - "initialValue": { - "arguments": [ - { - "baseExpression": { - "id": 3046, - "name": "outputScript", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3010, - "src": "11699:12:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "id": 3048, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexRangeAccess", - "src": "11699:16:17", - "startExpression": { - "hexValue": "32", - "id": 3047, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "11712:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_2_by_1", - "typeString": "int_const 2" - }, - "value": "2" - }, - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr_slice", - "typeString": "bytes calldata slice" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_calldata_ptr_slice", - "typeString": "bytes calldata slice" - } - ], - "id": 3045, - "name": "to5BitWords", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3706, - "src": "11687:11:17", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (bytes memory) pure returns (bytes memory)" - } - }, - "id": 3049, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "11687:29:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "11666:50:17" - }, - { - "body": { - "id": 3071, - "nodeType": "Block", - "src": "11760:49:17", - "statements": [ - { - "expression": { - "id": 3069, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 3061, - "name": "result", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3031, - "src": "11774:6:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 3063, - "indexExpression": { - "id": 3062, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3052, - "src": "11781:1:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "11774:9:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "baseExpression": { - "id": 3064, - "name": "words", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3044, - "src": "11786:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 3068, - "indexExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3067, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 3065, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3052, - "src": "11792:1:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "hexValue": "31", - "id": 3066, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "11796:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "11792:5:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "11786:12:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "src": "11774:24:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "id": 3070, - "nodeType": "ExpressionStatement", - "src": "11774:24:17" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3057, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 3055, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3052, - "src": "11743:1:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "id": 3056, - "name": "length", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3023, - "src": "11747:6:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "11743:10:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 3072, - "initializationExpression": { - "assignments": [ - 3052 - ], - "declarations": [ - { - "constant": false, - "id": 3052, - "mutability": "mutable", - "name": "i", - "nameLocation": "11736:1:17", - "nodeType": "VariableDeclaration", - "scope": 3072, - "src": "11731:6:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3051, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "11731:4:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 3054, - "initialValue": { - "hexValue": "31", - "id": 3053, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "11740:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "nodeType": "VariableDeclarationStatement", - "src": "11731:10:17" - }, - "loopExpression": { - "expression": { - "id": 3059, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "11755:3:17", - "subExpression": { - "id": 3058, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3052, - "src": "11755:1:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 3060, - "nodeType": "ExpressionStatement", - "src": "11755:3:17" - }, - "nodeType": "ForStatement", - "src": "11726:83:17" - }, - { - "expression": { - "id": 3073, - "name": "result", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3031, - "src": "11825:6:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 3014, - "id": 3074, - "nodeType": "Return", - "src": "11818:13:17" - } - ] - }, - "documentation": { - "id": 3008, - "nodeType": "StructuredDocumentation", - "src": "10945:376:17", - "text": "@notice Parse a raw pay-to-witness-script-hash output script to get the corresponding address words,\n the resulting words are only the data part of the bech32 encoding and doesn't include the HRP\n @param outputScript the fragment of the raw transaction containing the raw output script\n @return The address bech32 words generated using the script hash" - }, - "functionSelector": "96743c31", - "id": 3076, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "parsePayToWitnessScriptHash", - "nameLocation": "11335:27:17", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3011, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3010, - "mutability": "mutable", - "name": "outputScript", - "nameLocation": "11378:12:17", - "nodeType": "VariableDeclaration", - "scope": 3076, - "src": "11363:27:17", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 3009, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "11363:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "11362:29:17" - }, - "returnParameters": { - "id": 3014, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3013, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 3076, - "src": "11413:12:17", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 3012, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "11413:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "11412:14:17" - }, - "scope": 3743, - "src": "11326:512:17", - "stateMutability": "pure", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 3144, - "nodeType": "Block", - "src": "12314:418:17", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "id": 3086, - "name": "outputScript", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3079, - "src": "12345:12:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - ], - "id": 3085, - "name": "isP2TROutput", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2810, - "src": "12332:12:17", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_bool_$", - "typeString": "function (bytes memory) pure returns (bool)" - } - }, - "id": 3087, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "12332:26:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "536372697074206861736e27742074686520726571756972656420737472756374757265", - "id": 3088, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "12360:38:17", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_5c42cb24ade4c938d2af09aa1cf0c55f1ebed622636f7647d2e3fc9fd6191142", - "typeString": "literal_string \"Script hasn't the required structure\"" - }, - "value": "Script hasn't the required structure" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_5c42cb24ade4c938d2af09aa1cf0c55f1ebed622636f7647d2e3fc9fd6191142", - "typeString": "literal_string \"Script hasn't the required structure\"" - } - ], - "id": 3084, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "12324:7:17", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 3089, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "12324:75:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 3090, - "nodeType": "ExpressionStatement", - "src": "12324:75:17" - }, - { - "assignments": [ - 3092 - ], - "declarations": [ - { - "constant": false, - "id": 3092, - "mutability": "mutable", - "name": "length", - "nameLocation": "12414:6:17", - "nodeType": "VariableDeclaration", - "scope": 3144, - "src": "12409:11:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3091, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "12409:4:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 3098, - "initialValue": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3097, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "hexValue": "31", - "id": 3093, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "12423:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "arguments": [ - { - "id": 3095, - "name": "TAPROOT_PUBKEY_SIZE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2262, - "src": "12442:19:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 3094, - "name": "total5BitWords", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3742, - "src": "12427:14:17", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_uint256_$returns$_t_uint256_$", - "typeString": "function (uint256) pure returns (uint256)" - } - }, - "id": 3096, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "12427:35:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "12423:39:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "12409:53:17" - }, - { - "assignments": [ - 3100 - ], - "declarations": [ - { - "constant": false, - "id": 3100, - "mutability": "mutable", - "name": "result", - "nameLocation": "12485:6:17", - "nodeType": "VariableDeclaration", - "scope": 3144, - "src": "12472:19:17", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 3099, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "12472:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 3105, - "initialValue": { - "arguments": [ - { - "id": 3103, - "name": "length", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3092, - "src": "12504:6:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 3102, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "NewExpression", - "src": "12494:9:17", - "typeDescriptions": { - "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (uint256) pure returns (bytes memory)" - }, - "typeName": { - "id": 3101, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "12498:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - } - }, - "id": 3104, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "12494:17:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "12472:39:17" - }, - { - "expression": { - "id": 3110, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 3106, - "name": "result", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3100, - "src": "12521:6:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 3108, - "indexExpression": { - "hexValue": "30", - "id": 3107, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "12528:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "12521:9:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 3109, - "name": "WITNESS_VERSION_1", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2298, - "src": "12533:17:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "src": "12521:29:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "id": 3111, - "nodeType": "ExpressionStatement", - "src": "12521:29:17" - }, - { - "assignments": [ - 3113 - ], - "declarations": [ - { - "constant": false, - "id": 3113, - "mutability": "mutable", - "name": "words", - "nameLocation": "12573:5:17", - "nodeType": "VariableDeclaration", - "scope": 3144, - "src": "12560:18:17", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 3112, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "12560:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 3119, - "initialValue": { - "arguments": [ - { - "baseExpression": { - "id": 3115, - "name": "outputScript", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3079, - "src": "12593:12:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "id": 3117, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexRangeAccess", - "src": "12593:16:17", - "startExpression": { - "hexValue": "32", - "id": 3116, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "12606:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_2_by_1", - "typeString": "int_const 2" - }, - "value": "2" - }, - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr_slice", - "typeString": "bytes calldata slice" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_calldata_ptr_slice", - "typeString": "bytes calldata slice" - } - ], - "id": 3114, - "name": "to5BitWords", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3706, - "src": "12581:11:17", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (bytes memory) pure returns (bytes memory)" - } - }, - "id": 3118, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "12581:29:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "12560:50:17" - }, - { - "body": { - "id": 3140, - "nodeType": "Block", - "src": "12654:49:17", - "statements": [ - { - "expression": { - "id": 3138, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 3130, - "name": "result", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3100, - "src": "12668:6:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 3132, - "indexExpression": { - "id": 3131, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3121, - "src": "12675:1:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "12668:9:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "baseExpression": { - "id": 3133, - "name": "words", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3113, - "src": "12680:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 3137, - "indexExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3136, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 3134, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3121, - "src": "12686:1:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "hexValue": "31", - "id": 3135, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "12690:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "12686:5:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "12680:12:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "src": "12668:24:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "id": 3139, - "nodeType": "ExpressionStatement", - "src": "12668:24:17" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3126, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 3124, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3121, - "src": "12637:1:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "id": 3125, - "name": "length", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3092, - "src": "12641:6:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "12637:10:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 3141, - "initializationExpression": { - "assignments": [ - 3121 - ], - "declarations": [ - { - "constant": false, - "id": 3121, - "mutability": "mutable", - "name": "i", - "nameLocation": "12630:1:17", - "nodeType": "VariableDeclaration", - "scope": 3141, - "src": "12625:6:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3120, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "12625:4:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 3123, - "initialValue": { - "hexValue": "31", - "id": 3122, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "12634:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "nodeType": "VariableDeclarationStatement", - "src": "12625:10:17" - }, - "loopExpression": { - "expression": { - "id": 3128, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "12649:3:17", - "subExpression": { - "id": 3127, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3121, - "src": "12649:1:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 3129, - "nodeType": "ExpressionStatement", - "src": "12649:3:17" - }, - "nodeType": "ForStatement", - "src": "12620:83:17" - }, - { - "expression": { - "id": 3142, - "name": "result", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3100, - "src": "12719:6:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 3083, - "id": 3143, - "nodeType": "Return", - "src": "12712:13:17" - } - ] - }, - "documentation": { - "id": 3077, - "nodeType": "StructuredDocumentation", - "src": "11844:374:17", - "text": "@notice Parse a raw pay-to-taproot output script to get the corresponding address words,\n the resulting words are only the data part of the bech32m encoding and doesn't include the HRP\n @param outputScript the fragment of the raw transaction containing the raw output script\n @return The address bech32m words generated using the taproot pubkey hash" - }, - "functionSelector": "6bdd7563", - "id": 3145, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "parsePayToTaproot", - "nameLocation": "12232:17:17", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3080, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3079, - "mutability": "mutable", - "name": "outputScript", - "nameLocation": "12265:12:17", - "nodeType": "VariableDeclaration", - "scope": 3145, - "src": "12250:27:17", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 3078, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "12250:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "12249:29:17" - }, - "returnParameters": { - "id": 3083, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3082, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 3145, - "src": "12300:12:17", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 3081, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "12300:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "12299:14:17" - }, - "scope": 3743, - "src": "12223:509:17", - "stateMutability": "pure", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 3175, - "nodeType": "Block", - "src": "13055:169:17", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3157, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 3154, - "name": "outputScript", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3148, - "src": "13073:12:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "id": 3155, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "13086:6:17", - "memberName": "length", - "nodeType": "MemberAccess", - "src": "13073:19:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "31", - "id": 3156, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "13095:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "13073:23:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "496e76616c69642073697a65", - "id": 3158, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "13097:14:17", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_151b9b932514cffea6d6fb8ef0dc06f3ba8d7fdd73eacee7d06d663fcfd3d8d0", - "typeString": "literal_string \"Invalid size\"" - }, - "value": "Invalid size" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_151b9b932514cffea6d6fb8ef0dc06f3ba8d7fdd73eacee7d06d663fcfd3d8d0", - "typeString": "literal_string \"Invalid size\"" - } - ], - "id": 3153, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "13065:7:17", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 3159, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "13065:47:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 3160, - "nodeType": "ExpressionStatement", - "src": "13065:47:17" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - }, - "id": 3167, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "id": 3162, - "name": "outputScript", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3148, - "src": "13130:12:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "id": 3164, - "indexExpression": { - "hexValue": "30", - "id": 3163, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "13143:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "13130:15:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 3165, - "name": "OpCodes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3770, - "src": "13149:7:17", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_OpCodes_$3770_$", - "typeString": "type(library OpCodes)" - } - }, - "id": 3166, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "13157:9:17", - "memberName": "OP_RETURN", - "nodeType": "MemberAccess", - "referencedDeclaration": 3760, - "src": "13149:17:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "src": "13130:36:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4e6f74204f505f52455455524e", - "id": 3168, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "13168:15:17", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_91402c28d33a78ed08b610916663678b602b8439e472ae56e5b350939be81082", - "typeString": "literal_string \"Not OP_RETURN\"" - }, - "value": "Not OP_RETURN" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_91402c28d33a78ed08b610916663678b602b8439e472ae56e5b350939be81082", - "typeString": "literal_string \"Not OP_RETURN\"" - } - ], - "id": 3161, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "13122:7:17", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 3169, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "13122:62:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 3170, - "nodeType": "ExpressionStatement", - "src": "13122:62:17" - }, - { - "expression": { - "baseExpression": { - "id": 3171, - "name": "outputScript", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3148, - "src": "13201:12:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "id": 3173, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexRangeAccess", - "src": "13201:16:17", - "startExpression": { - "hexValue": "31", - "id": 3172, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "13214:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr_slice", - "typeString": "bytes calldata slice" - } - }, - "functionReturnParameters": 3152, - "id": 3174, - "nodeType": "Return", - "src": "13194:23:17" - } - ] - }, - "documentation": { - "id": 3146, - "nodeType": "StructuredDocumentation", - "src": "12738:219:17", - "text": "@notice Parse a raw null-data output script to get its content\n @param outputScript the fragment of the raw transaction containing the raw output script \n @return The content embedded inside the script" - }, - "functionSelector": "2d56f323", - "id": 3176, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "parseNullDataScript", - "nameLocation": "12971:19:17", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3149, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3148, - "mutability": "mutable", - "name": "outputScript", - "nameLocation": "13006:12:17", - "nodeType": "VariableDeclaration", - "scope": 3176, - "src": "12991:27:17", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 3147, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "12991:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "12990:29:17" - }, - "returnParameters": { - "id": 3152, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3151, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 3176, - "src": "13041:12:17", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 3150, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "13041:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "13040:14:17" - }, - "scope": 3743, - "src": "12962:262:17", - "stateMutability": "pure", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 3243, - "nodeType": "Block", - "src": "13468:427:17", - "statements": [ - { - "assignments": [ - 3185 - ], - "declarations": [ - { - "constant": false, - "id": 3185, - "mutability": "mutable", - "name": "doubleSha256", - "nameLocation": "13491:12:17", - "nodeType": "VariableDeclaration", - "scope": 3243, - "src": "13478:25:17", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 3184, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "13478:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 3197, - "initialValue": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "id": 3192, - "name": "btcTx", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3179, - "src": "13554:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - ], - "id": 3191, - "name": "sha256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967274, - "src": "13547:6:17", - "typeDescriptions": { - "typeIdentifier": "t_function_sha256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 3193, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "13547:13:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "expression": { - "id": 3189, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "13530:3:17", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 3190, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "13534:12:17", - "memberName": "encodePacked", - "nodeType": "MemberAccess", - "src": "13530:16:17", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 3194, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "13530:31:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 3188, - "name": "sha256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967274, - "src": "13523:6:17", - "typeDescriptions": { - "typeIdentifier": "t_function_sha256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 3195, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "13523:39:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "expression": { - "id": 3186, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "13506:3:17", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 3187, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "13510:12:17", - "memberName": "encodePacked", - "nodeType": "MemberAccess", - "src": "13506:16:17", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 3196, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "13506:57:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "13478:85:17" - }, - { - "assignments": [ - 3199 - ], - "declarations": [ - { - "constant": false, - "id": 3199, - "mutability": "mutable", - "name": "aux", - "nameLocation": "13580:3:17", - "nodeType": "VariableDeclaration", - "scope": 3243, - "src": "13573:10:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - }, - "typeName": { - "id": 3198, - "name": "bytes1", - "nodeType": "ElementaryTypeName", - "src": "13573:6:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "visibility": "internal" - } - ], - "id": 3200, - "nodeType": "VariableDeclarationStatement", - "src": "13573:10:17" - }, - { - "body": { - "id": 3235, - "nodeType": "Block", - "src": "13623:138:17", - "statements": [ - { - "expression": { - "id": 3215, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 3211, - "name": "aux", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3199, - "src": "13637:3:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "baseExpression": { - "id": 3212, - "name": "doubleSha256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3185, - "src": "13643:12:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 3214, - "indexExpression": { - "id": 3213, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3202, - "src": "13656:1:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "13643:15:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "src": "13637:21:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "id": 3216, - "nodeType": "ExpressionStatement", - "src": "13637:21:17" - }, - { - "expression": { - "id": 3225, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 3217, - "name": "doubleSha256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3185, - "src": "13672:12:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 3219, - "indexExpression": { - "id": 3218, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3202, - "src": "13685:1:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "13672:15:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "baseExpression": { - "id": 3220, - "name": "doubleSha256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3185, - "src": "13690:12:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 3224, - "indexExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3223, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "hexValue": "3331", - "id": 3221, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "13703:2:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_31_by_1", - "typeString": "int_const 31" - }, - "value": "31" - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "id": 3222, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3202, - "src": "13708:1:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "13703:6:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "13690:20:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "src": "13672:38:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "id": 3226, - "nodeType": "ExpressionStatement", - "src": "13672:38:17" - }, - { - "expression": { - "id": 3233, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 3227, - "name": "doubleSha256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3185, - "src": "13724:12:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 3231, - "indexExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3230, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "hexValue": "3331", - "id": 3228, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "13737:2:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_31_by_1", - "typeString": "int_const 31" - }, - "value": "31" - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "id": 3229, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3202, - "src": "13742:1:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "13737:6:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "13724:20:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 3232, - "name": "aux", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3199, - "src": "13747:3:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "src": "13724:26:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "id": 3234, - "nodeType": "ExpressionStatement", - "src": "13724:26:17" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3207, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 3205, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3202, - "src": "13610:1:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "hexValue": "3136", - "id": 3206, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "13614:2:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_16_by_1", - "typeString": "int_const 16" - }, - "value": "16" - }, - "src": "13610:6:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 3236, - "initializationExpression": { - "assignments": [ - 3202 - ], - "declarations": [ - { - "constant": false, - "id": 3202, - "mutability": "mutable", - "name": "i", - "nameLocation": "13603:1:17", - "nodeType": "VariableDeclaration", - "scope": 3236, - "src": "13598:6:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3201, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "13598:4:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 3204, - "initialValue": { - "hexValue": "30", - "id": 3203, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "13607:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "13598:10:17" - }, - "loopExpression": { - "expression": { - "id": 3209, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "13618:3:17", - "subExpression": { - "id": 3208, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3202, - "src": "13618:1:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 3210, - "nodeType": "ExpressionStatement", - "src": "13618:3:17" - }, - "nodeType": "ForStatement", - "src": "13593:168:17" - }, - { - "assignments": [ - 3238 - ], - "declarations": [ - { - "constant": false, - "id": 3238, - "mutability": "mutable", - "name": "result", - "nameLocation": "13779:6:17", - "nodeType": "VariableDeclaration", - "scope": 3243, - "src": "13771:14:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 3237, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "13771:7:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "id": 3239, - "nodeType": "VariableDeclarationStatement", - "src": "13771:14:17" - }, - { - "AST": { - "nodeType": "YulBlock", - "src": "13804:62:17", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "13818:38:17", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "doubleSha256", - "nodeType": "YulIdentifier", - "src": "13838:12:17" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13852:2:17", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13834:3:17" - }, - "nodeType": "YulFunctionCall", - "src": "13834:21:17" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "13828:5:17" - }, - "nodeType": "YulFunctionCall", - "src": "13828:28:17" - }, - "variableNames": [ - { - "name": "result", - "nodeType": "YulIdentifier", - "src": "13818:6:17" - } - ] - } - ] - }, - "evmVersion": "paris", - "externalReferences": [ - { - "declaration": 3185, - "isOffset": false, - "isSlot": false, - "src": "13838:12:17", - "valueSize": 1 - }, - { - "declaration": 3238, - "isOffset": false, - "isSlot": false, - "src": "13818:6:17", - "valueSize": 1 - } - ], - "id": 3240, - "nodeType": "InlineAssembly", - "src": "13795:71:17" - }, - { - "expression": { - "id": 3241, - "name": "result", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3238, - "src": "13882:6:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "functionReturnParameters": 3183, - "id": 3242, - "nodeType": "Return", - "src": "13875:13:17" - } - ] - }, - "documentation": { - "id": 3177, - "nodeType": "StructuredDocumentation", - "src": "13230:162:17", - "text": "@notice Hash a bitcoin raw transaction to get its id (reversed double sha256)\n @param btcTx the transaction to hash\n @return The transaction id " - }, - "functionSelector": "fea8ba63", - "id": 3244, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "hashBtcTx", - "nameLocation": "13406:9:17", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3180, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3179, - "mutability": "mutable", - "name": "btcTx", - "nameLocation": "13431:5:17", - "nodeType": "VariableDeclaration", - "scope": 3244, - "src": "13416:20:17", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 3178, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "13416:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "13415:22:17" - }, - "returnParameters": { - "id": 3183, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3182, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 3244, - "src": "13459:7:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 3181, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "13459:7:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "13458:9:17" - }, - "scope": 3743, - "src": "13397:498:17", - "stateMutability": "pure", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 3265, - "nodeType": "Block", - "src": "14129:222:17", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3256, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 3253, - "name": "header", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3247, - "src": "14251:6:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 3254, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "14258:6:17", - "memberName": "length", - "nodeType": "MemberAccess", - "src": "14251:13:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "3830", - "id": 3255, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "14268:2:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_80_by_1", - "typeString": "int_const 80" - }, - "value": "80" - }, - "src": "14251:19:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "496e76616c696420686561646572206c656e677468", - "id": 3257, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "14272:23:17", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_62784c5b4854856e20fdf3da2ed017d8d7ad91e96ee28ef17acb0683953b91b7", - "typeString": "literal_string \"Invalid header length\"" - }, - "value": "Invalid header length" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_62784c5b4854856e20fdf3da2ed017d8d7ad91e96ee28ef17acb0683953b91b7", - "typeString": "literal_string \"Invalid header length\"" - } - ], - "id": 3252, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "14243:7:17", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 3258, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "14243:53:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 3259, - "nodeType": "ExpressionStatement", - "src": "14243:53:17" - }, - { - "expression": { - "arguments": [ - { - "id": 3261, - "name": "header", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3247, - "src": "14333:6:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "hexValue": "3638", - "id": 3262, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "14341:2:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_68_by_1", - "typeString": "int_const 68" - }, - "value": "68" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_rational_68_by_1", - "typeString": "int_const 68" - } - ], - "id": 3260, - "name": "sliceUint32FromLSB", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3341, - "src": "14314:18:17", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_uint32_$", - "typeString": "function (bytes memory,uint256) pure returns (uint32)" - } - }, - "id": 3263, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "14314:30:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "functionReturnParameters": 3251, - "id": 3264, - "nodeType": "Return", - "src": "14307:37:17" - } - ] - }, - "documentation": { - "id": 3245, - "nodeType": "StructuredDocumentation", - "src": "13901:142:17", - "text": "@dev Gets the timestamp of a Bitcoin block header\n @param header The block header\n @return The timestamp of the block header" - }, - "functionSelector": "a0cd70fc", - "id": 3266, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getBtcBlockTimestamp", - "nameLocation": "14057:20:17", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3248, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3247, - "mutability": "mutable", - "name": "header", - "nameLocation": "14091:6:17", - "nodeType": "VariableDeclaration", - "scope": 3266, - "src": "14078:19:17", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 3246, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "14078:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "14077:21:17" - }, - "returnParameters": { - "id": 3251, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3250, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 3266, - "src": "14120:7:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3249, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "14120:7:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "14119:9:17" - }, - "scope": 3743, - "src": "14048:303:17", - "stateMutability": "pure", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 3340, - "nodeType": "Block", - "src": "14504:267:17", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3281, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 3276, - "name": "bs", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3268, - "src": "14522:2:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 3277, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "14525:6:17", - "memberName": "length", - "nodeType": "MemberAccess", - "src": "14522:9:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3280, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 3278, - "name": "offset", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3270, - "src": "14535:6:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "hexValue": "34", - "id": 3279, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "14544:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_4_by_1", - "typeString": "int_const 4" - }, - "value": "4" - }, - "src": "14535:10:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "14522:23:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "536c6963696e67206f7574206f662072616e6765", - "id": 3282, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "14547:22:17", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_0ad8ca266b3c2b0d5c0f93daeb15638ddfa510fccabc652325dc97cf893869fd", - "typeString": "literal_string \"Slicing out of range\"" - }, - "value": "Slicing out of range" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_0ad8ca266b3c2b0d5c0f93daeb15638ddfa510fccabc652325dc97cf893869fd", - "typeString": "literal_string \"Slicing out of range\"" - } - ], - "id": 3275, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "14514:7:17", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 3283, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "14514:56:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 3284, - "nodeType": "ExpressionStatement", - "src": "14514:56:17" - }, - { - "expression": { - "commonType": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "id": 3338, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "id": 3323, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "id": 3308, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "arguments": [ - { - "baseExpression": { - "id": 3289, - "name": "bs", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3268, - "src": "14609:2:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 3291, - "indexExpression": { - "id": 3290, - "name": "offset", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3270, - "src": "14612:6:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "14609:10:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - ], - "id": 3288, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "14603:5:17", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint8_$", - "typeString": "type(uint8)" - }, - "typeName": { - "id": 3287, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "14603:5:17", - "typeDescriptions": {} - } - }, - "id": 3292, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "14603:17:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - ], - "id": 3286, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "14596:6:17", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint32_$", - "typeString": "type(uint32)" - }, - "typeName": { - "id": 3285, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "14596:6:17", - "typeDescriptions": {} - } - }, - "id": 3293, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "14596:25:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "nodeType": "BinaryOperation", - "operator": "|", - "rightExpression": { - "components": [ - { - "commonType": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "id": 3306, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "arguments": [ - { - "baseExpression": { - "id": 3298, - "name": "bs", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3268, - "src": "14646:2:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 3302, - "indexExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3301, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 3299, - "name": "offset", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3270, - "src": "14649:6:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "hexValue": "31", - "id": 3300, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "14658:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "14649:10:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "14646:14:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - ], - "id": 3297, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "14640:5:17", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint8_$", - "typeString": "type(uint8)" - }, - "typeName": { - "id": 3296, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "14640:5:17", - "typeDescriptions": {} - } - }, - "id": 3303, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "14640:21:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - ], - "id": 3295, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "14633:6:17", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint32_$", - "typeString": "type(uint32)" - }, - "typeName": { - "id": 3294, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "14633:6:17", - "typeDescriptions": {} - } - }, - "id": 3304, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "14633:29:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "nodeType": "BinaryOperation", - "operator": "<<", - "rightExpression": { - "hexValue": "38", - "id": 3305, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "14666:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_8_by_1", - "typeString": "int_const 8" - }, - "value": "8" - }, - "src": "14633:34:17", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - } - ], - "id": 3307, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "14632:36:17", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "src": "14596:72:17", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "nodeType": "BinaryOperation", - "operator": "|", - "rightExpression": { - "components": [ - { - "commonType": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "id": 3321, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "arguments": [ - { - "baseExpression": { - "id": 3313, - "name": "bs", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3268, - "src": "14693:2:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 3317, - "indexExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3316, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 3314, - "name": "offset", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3270, - "src": "14696:6:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "hexValue": "32", - "id": 3315, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "14705:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_2_by_1", - "typeString": "int_const 2" - }, - "value": "2" - }, - "src": "14696:10:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "14693:14:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - ], - "id": 3312, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "14687:5:17", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint8_$", - "typeString": "type(uint8)" - }, - "typeName": { - "id": 3311, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "14687:5:17", - "typeDescriptions": {} - } - }, - "id": 3318, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "14687:21:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - ], - "id": 3310, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "14680:6:17", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint32_$", - "typeString": "type(uint32)" - }, - "typeName": { - "id": 3309, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "14680:6:17", - "typeDescriptions": {} - } - }, - "id": 3319, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "14680:29:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "nodeType": "BinaryOperation", - "operator": "<<", - "rightExpression": { - "hexValue": "3136", - "id": 3320, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "14713:2:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_16_by_1", - "typeString": "int_const 16" - }, - "value": "16" - }, - "src": "14680:35:17", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - } - ], - "id": 3322, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "14679:37:17", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "src": "14596:120:17", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "nodeType": "BinaryOperation", - "operator": "|", - "rightExpression": { - "components": [ - { - "commonType": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "id": 3336, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "arguments": [ - { - "baseExpression": { - "id": 3328, - "name": "bs", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3268, - "src": "14741:2:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 3332, - "indexExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3331, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 3329, - "name": "offset", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3270, - "src": "14744:6:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "hexValue": "33", - "id": 3330, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "14753:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_3_by_1", - "typeString": "int_const 3" - }, - "value": "3" - }, - "src": "14744:10:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "14741:14:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - ], - "id": 3327, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "14735:5:17", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint8_$", - "typeString": "type(uint8)" - }, - "typeName": { - "id": 3326, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "14735:5:17", - "typeDescriptions": {} - } - }, - "id": 3333, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "14735:21:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - ], - "id": 3325, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "14728:6:17", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint32_$", - "typeString": "type(uint32)" - }, - "typeName": { - "id": 3324, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "14728:6:17", - "typeDescriptions": {} - } - }, - "id": 3334, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "14728:29:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "nodeType": "BinaryOperation", - "operator": "<<", - "rightExpression": { - "hexValue": "3234", - "id": 3335, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "14761:2:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_24_by_1", - "typeString": "int_const 24" - }, - "value": "24" - }, - "src": "14728:35:17", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - } - ], - "id": 3337, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "14727:37:17", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "src": "14596:168:17", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "functionReturnParameters": 3274, - "id": 3339, - "nodeType": "Return", - "src": "14581:183:17" - } - ] - }, - "id": 3341, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "sliceUint32FromLSB", - "nameLocation": "14425:18:17", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3271, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3268, - "mutability": "mutable", - "name": "bs", - "nameLocation": "14457:2:17", - "nodeType": "VariableDeclaration", - "scope": 3341, - "src": "14444:15:17", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 3267, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "14444:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 3270, - "mutability": "mutable", - "name": "offset", - "nameLocation": "14466:6:17", - "nodeType": "VariableDeclaration", - "scope": 3341, - "src": "14461:11:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3269, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "14461:4:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "14443:30:17" - }, - "returnParameters": { - "id": 3274, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3273, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 3341, - "src": "14496:6:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "typeName": { - "id": 3272, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "14496:6:17", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "visibility": "internal" - } - ], - "src": "14495:8:17" - }, - "scope": 3743, - "src": "14416:355:17", - "stateMutability": "pure", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 3369, - "nodeType": "Block", - "src": "15272:117:17", - "statements": [ - { - "expression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 3367, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3356, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 3353, - "name": "p2sh", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3344, - "src": "15289:4:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "id": 3354, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "15294:6:17", - "memberName": "length", - "nodeType": "MemberAccess", - "src": "15289:11:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "3235", - "id": 3355, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "15304:2:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_25_by_1", - "typeString": "int_const 25" - }, - "value": "25" - }, - "src": "15289:17:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "id": 3366, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "id": 3358, - "name": "p2sh", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3344, - "src": "15320:4:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - ], - "id": 3357, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967288, - "src": "15310:9:17", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 3359, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "15310:15:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "arguments": [ - { - "arguments": [ - { - "id": 3362, - "name": "script", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3346, - "src": "15365:6:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - { - "id": 3363, - "name": "mainnet", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3348, - "src": "15373:7:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 3361, - "name": "getP2SHAddressFromScript", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3429, - "src": "15340:24:17", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_bytes_calldata_ptr_$_t_bool_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (bytes calldata,bool) pure returns (bytes memory)" - } - }, - "id": 3364, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "15340:41:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 3360, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967288, - "src": "15330:9:17", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 3365, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "15330:52:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "src": "15310:72:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "15289:93:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 3352, - "id": 3368, - "nodeType": "Return", - "src": "15282:100:17" - } - ] - }, - "documentation": { - "id": 3342, - "nodeType": "StructuredDocumentation", - "src": "14777:377:17", - "text": "@notice Check if a pay-to-script-hash address belogs to a specific script, expects the address\n bytes to include the 4 checksum bytes at the end\n @param p2sh the pay-to-script-hash address\n @param script the script to check\n @param mainnet flag to specify if its a mainnet address\n @return Whether the address belongs to the script or not" - }, - "functionSelector": "9b02794b", - "id": 3370, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "validateP2SHAdress", - "nameLocation": "15168:18:17", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3349, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3344, - "mutability": "mutable", - "name": "p2sh", - "nameLocation": "15202:4:17", - "nodeType": "VariableDeclaration", - "scope": 3370, - "src": "15187:19:17", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 3343, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "15187:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 3346, - "mutability": "mutable", - "name": "script", - "nameLocation": "15223:6:17", - "nodeType": "VariableDeclaration", - "scope": 3370, - "src": "15208:21:17", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 3345, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "15208:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 3348, - "mutability": "mutable", - "name": "mainnet", - "nameLocation": "15236:7:17", - "nodeType": "VariableDeclaration", - "scope": 3370, - "src": "15231:12:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 3347, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "15231:4:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "15186:58:17" - }, - "returnParameters": { - "id": 3352, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3351, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 3370, - "src": "15266:4:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 3350, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "15266:4:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "15265:6:17" - }, - "scope": 3743, - "src": "15159:230:17", - "stateMutability": "pure", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 3428, - "nodeType": "Block", - "src": "15854:389:17", - "statements": [ - { - "assignments": [ - 3381 - ], - "declarations": [ - { - "constant": false, - "id": 3381, - "mutability": "mutable", - "name": "scriptHash", - "nameLocation": "15872:10:17", - "nodeType": "VariableDeclaration", - "scope": 3428, - "src": "15864:18:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes20", - "typeString": "bytes20" - }, - "typeName": { - "id": 3380, - "name": "bytes20", - "nodeType": "ElementaryTypeName", - "src": "15864:7:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes20", - "typeString": "bytes20" - } - }, - "visibility": "internal" - } - ], - "id": 3390, - "initialValue": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "id": 3386, - "name": "script", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3373, - "src": "15919:6:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - ], - "id": 3385, - "name": "sha256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967274, - "src": "15912:6:17", - "typeDescriptions": { - "typeIdentifier": "t_function_sha256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 3387, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "15912:14:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "expression": { - "id": 3383, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "15895:3:17", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 3384, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "15899:12:17", - "memberName": "encodePacked", - "nodeType": "MemberAccess", - "src": "15895:16:17", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 3388, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "15895:32:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 3382, - "name": "ripemd160", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967276, - "src": "15885:9:17", - "typeDescriptions": { - "typeIdentifier": "t_function_ripemd160_pure$_t_bytes_memory_ptr_$returns$_t_bytes20_$", - "typeString": "function (bytes memory) pure returns (bytes20)" - } - }, - "id": 3389, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "15885:43:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes20", - "typeString": "bytes20" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "15864:64:17" - }, - { - "assignments": [ - 3392 - ], - "declarations": [ - { - "constant": false, - "id": 3392, - "mutability": "mutable", - "name": "versionByte", - "nameLocation": "15945:11:17", - "nodeType": "VariableDeclaration", - "scope": 3428, - "src": "15938:18:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - }, - "typeName": { - "id": 3391, - "name": "bytes1", - "nodeType": "ElementaryTypeName", - "src": "15938:6:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "visibility": "internal" - } - ], - "id": 3397, - "initialValue": { - "condition": { - "id": 3393, - "name": "mainnet", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3375, - "src": "15959:7:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseExpression": { - "id": 3395, - "name": "SCRIPT_HASH_TESTNET_BYTE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2286, - "src": "15996:24:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "id": 3396, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "Conditional", - "src": "15959:61:17", - "trueExpression": { - "id": 3394, - "name": "SCRIPT_HASH_MAINNET_BYTE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2283, - "src": "15969:24:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "15938:82:17" - }, - { - "assignments": [ - 3399 - ], - "declarations": [ - { - "constant": false, - "id": 3399, - "mutability": "mutable", - "name": "versionAndHash", - "nameLocation": "16043:14:17", - "nodeType": "VariableDeclaration", - "scope": 3428, - "src": "16030:27:17", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 3398, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "16030:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 3406, - "initialValue": { - "arguments": [ - { - "id": 3403, - "name": "versionByte", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3392, - "src": "16073:11:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - { - "id": 3404, - "name": "scriptHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3381, - "src": "16086:10:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes20", - "typeString": "bytes20" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - }, - { - "typeIdentifier": "t_bytes20", - "typeString": "bytes20" - } - ], - "expression": { - "id": 3401, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "16060:5:17", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": { - "id": 3400, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "16060:5:17", - "typeDescriptions": {} - } - }, - "id": 3402, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "16066:6:17", - "memberName": "concat", - "nodeType": "MemberAccess", - "src": "16060:12:17", - "typeDescriptions": { - "typeIdentifier": "t_function_bytesconcat_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 3405, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "16060:37:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "16030:67:17" - }, - { - "assignments": [ - 3408 - ], - "declarations": [ - { - "constant": false, - "id": 3408, - "mutability": "mutable", - "name": "checksum", - "nameLocation": "16114:8:17", - "nodeType": "VariableDeclaration", - "scope": 3428, - "src": "16107:15:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "typeName": { - "id": 3407, - "name": "bytes4", - "nodeType": "ElementaryTypeName", - "src": "16107:6:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "visibility": "internal" - } - ], - "id": 3420, - "initialValue": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "id": 3415, - "name": "versionAndHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3399, - "src": "16163:14:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 3414, - "name": "sha256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967274, - "src": "16156:6:17", - "typeDescriptions": { - "typeIdentifier": "t_function_sha256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 3416, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "16156:22:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "expression": { - "id": 3412, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "16139:3:17", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 3413, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "16143:12:17", - "memberName": "encodePacked", - "nodeType": "MemberAccess", - "src": "16139:16:17", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 3417, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "16139:40:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 3411, - "name": "sha256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967274, - "src": "16132:6:17", - "typeDescriptions": { - "typeIdentifier": "t_function_sha256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 3418, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "16132:48:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "id": 3410, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "16125:6:17", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes4_$", - "typeString": "type(bytes4)" - }, - "typeName": { - "id": 3409, - "name": "bytes4", - "nodeType": "ElementaryTypeName", - "src": "16125:6:17", - "typeDescriptions": {} - } - }, - "id": 3419, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "16125:56:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "16107:74:17" - }, - { - "expression": { - "arguments": [ - { - "id": 3424, - "name": "versionAndHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3399, - "src": "16211:14:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "id": 3425, - "name": "checksum", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3408, - "src": "16227:8:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - ], - "expression": { - "id": 3422, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "16198:5:17", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": { - "id": 3421, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "16198:5:17", - "typeDescriptions": {} - } - }, - "id": 3423, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "16204:6:17", - "memberName": "concat", - "nodeType": "MemberAccess", - "src": "16198:12:17", - "typeDescriptions": { - "typeIdentifier": "t_function_bytesconcat_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 3426, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "16198:38:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 3379, - "id": 3427, - "nodeType": "Return", - "src": "16191:45:17" - } - ] - }, - "documentation": { - "id": 3371, - "nodeType": "StructuredDocumentation", - "src": "15395:348:17", - "text": "@notice Generate a pay-to-script-hash address from a script, the resulting byte array already contains\n the 4 checksum bytes at the end of it\n @param script the script to generate the address from\n @param mainnet flag to specify if the output should be a mainnet address\n @return The address generate from the script" - }, - "functionSelector": "b0d6b1cb", - "id": 3429, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getP2SHAddressFromScript", - "nameLocation": "15757:24:17", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3376, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3373, - "mutability": "mutable", - "name": "script", - "nameLocation": "15797:6:17", - "nodeType": "VariableDeclaration", - "scope": 3429, - "src": "15782:21:17", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 3372, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "15782:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 3375, - "mutability": "mutable", - "name": "mainnet", - "nameLocation": "15810:7:17", - "nodeType": "VariableDeclaration", - "scope": 3429, - "src": "15805:12:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 3374, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "15805:4:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "15781:37:17" - }, - "returnParameters": { - "id": 3379, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3378, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 3429, - "src": "15840:12:17", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 3377, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "15840:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "15839:14:17" - }, - "scope": 3743, - "src": "15748:495:17", - "stateMutability": "pure", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 3517, - "nodeType": "Block", - "src": "16354:809:17", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3444, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 3441, - "name": "array", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3433, - "src": "16372:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 3442, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "16378:6:17", - "memberName": "length", - "nodeType": "MemberAccess", - "src": "16372:12:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "id": 3443, - "name": "sizePosition", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3431, - "src": "16387:12:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "16372:27:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "53697a6520706f736974696f6e2063616e277420626520626967676572207468616e206172726179", - "id": 3445, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "16401:42:17", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_33c6dd8650ffbd109c11f2a50d2c26a90aa65e9c0c8ae6a11ce0114fae017f47", - "typeString": "literal_string \"Size position can't be bigger than array\"" - }, - "value": "Size position can't be bigger than array" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_33c6dd8650ffbd109c11f2a50d2c26a90aa65e9c0c8ae6a11ce0114fae017f47", - "typeString": "literal_string \"Size position can't be bigger than array\"" - } - ], - "id": 3440, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "16364:7:17", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 3446, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "16364:80:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 3447, - "nodeType": "ExpressionStatement", - "src": "16364:80:17" - }, - { - "assignments": [ - 3449 - ], - "declarations": [ - { - "constant": false, - "id": 3449, - "mutability": "mutable", - "name": "maxSize", - "nameLocation": "16460:7:17", - "nodeType": "VariableDeclaration", - "scope": 3517, - "src": "16454:13:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "typeName": { - "id": 3448, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "16454:5:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "visibility": "internal" - } - ], - "id": 3456, - "initialValue": { - "arguments": [ - { - "baseExpression": { - "id": 3452, - "name": "array", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3433, - "src": "16476:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 3454, - "indexExpression": { - "id": 3453, - "name": "sizePosition", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3431, - "src": "16482:12:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "16476:19:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - ], - "id": 3451, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "16470:5:17", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint8_$", - "typeString": "type(uint8)" - }, - "typeName": { - "id": 3450, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "16470:5:17", - "typeDescriptions": {} - } - }, - "id": 3455, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "16470:26:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "16454:42:17" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "id": 3459, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 3457, - "name": "maxSize", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3449, - "src": "16510:7:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 3458, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "16521:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "16510:12:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "condition": { - "commonType": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "id": 3467, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 3465, - "name": "maxSize", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3449, - "src": "16572:7:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "BinaryOperation", - "operator": "<=", - "rightExpression": { - "id": 3466, - "name": "MAX_COMPACT_SIZE_LENGTH", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2250, - "src": "16583:23:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "src": "16572:34:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 3473, - "nodeType": "IfStatement", - "src": "16568:84:17", - "trueBody": { - "id": 3472, - "nodeType": "Block", - "src": "16608:44:17", - "statements": [ - { - "expression": { - "components": [ - { - "id": 3468, - "name": "maxSize", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3449, - "src": "16630:7:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - { - "hexValue": "31", - "id": 3469, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "16639:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - } - ], - "id": 3470, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "16629:12:17", - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_uint8_$_t_rational_1_by_1_$", - "typeString": "tuple(uint8,int_const 1)" - } - }, - "functionReturnParameters": 3439, - "id": 3471, - "nodeType": "Return", - "src": "16622:19:17" - } - ] - } - }, - "id": 3474, - "nodeType": "IfStatement", - "src": "16506:146:17", - "trueBody": { - "id": 3464, - "nodeType": "Block", - "src": "16524:38:17", - "statements": [ - { - "expression": { - "components": [ - { - "hexValue": "30", - "id": 3460, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "16546:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - { - "hexValue": "31", - "id": 3461, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "16549:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - } - ], - "id": 3462, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "16545:6:17", - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_rational_0_by_1_$_t_rational_1_by_1_$", - "typeString": "tuple(int_const 0,int_const 1)" - } - }, - "functionReturnParameters": 3439, - "id": 3463, - "nodeType": "Return", - "src": "16538:13:17" - } - ] - } - }, - { - "assignments": [ - 3476 - ], - "declarations": [ - { - "constant": false, - "id": 3476, - "mutability": "mutable", - "name": "compactSizeBytes", - "nameLocation": "16675:16:17", - "nodeType": "VariableDeclaration", - "scope": 3517, - "src": "16670:21:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3475, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "16670:4:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 3483, - "initialValue": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3482, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "hexValue": "32", - "id": 3477, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "16694:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_2_by_1", - "typeString": "int_const 2" - }, - "value": "2" - }, - "nodeType": "BinaryOperation", - "operator": "**", - "rightExpression": { - "components": [ - { - "commonType": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "id": 3480, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 3478, - "name": "maxSize", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3449, - "src": "16700:7:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "id": 3479, - "name": "MAX_COMPACT_SIZE_LENGTH", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2250, - "src": "16710:23:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "src": "16700:33:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - } - ], - "id": 3481, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "16699:35:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "src": "16694:40:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "16670:64:17" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3487, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 3485, - "name": "compactSizeBytes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3476, - "src": "16752:16:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<=", - "rightExpression": { - "id": 3486, - "name": "MAX_BYTES_USED_FOR_COMPACT_SIZE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2253, - "src": "16772:31:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "src": "16752:51:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "756e737570706f7274656420636f6d706163742073697a65206c656e677468", - "id": 3488, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "16805:33:17", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_173d55eda06bf2b35eca6401b7d16b17b1fc97b7601de25f26189f5300bf3cb3", - "typeString": "literal_string \"unsupported compact size length\"" - }, - "value": "unsupported compact size length" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_173d55eda06bf2b35eca6401b7d16b17b1fc97b7601de25f26189f5300bf3cb3", - "typeString": "literal_string \"unsupported compact size length\"" - } - ], - "id": 3484, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "16744:7:17", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 3489, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "16744:95:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 3490, - "nodeType": "ExpressionStatement", - "src": "16744:95:17" - }, - { - "assignments": [ - 3492 - ], - "declarations": [ - { - "constant": false, - "id": 3492, - "mutability": "mutable", - "name": "result", - "nameLocation": "16971:6:17", - "nodeType": "VariableDeclaration", - "scope": 3517, - "src": "16964:13:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 3491, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "16964:6:17", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - } - ], - "id": 3507, - "initialValue": { - "arguments": [ - { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3498, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 3496, - "name": "sizePosition", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3431, - "src": "17030:12:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "hexValue": "31", - "id": 3497, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "17045:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "17030:16:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3503, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3501, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 3499, - "name": "sizePosition", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3431, - "src": "17048:12:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "id": 3500, - "name": "compactSizeBytes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3476, - "src": "17063:16:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "17048:31:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "hexValue": "31", - "id": 3502, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "17082:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "17048:35:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 3504, - "name": "array", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3433, - "src": "17085:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 3495, - "name": "calculateLittleEndianFragment", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3584, - "src": "17000:29:17", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_uint256_$", - "typeString": "function (uint256,uint256,bytes memory) pure returns (uint256)" - } - }, - "id": 3505, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "17000:91:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 3494, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "16980:6:17", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint64_$", - "typeString": "type(uint64)" - }, - "typeName": { - "id": 3493, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "16980:6:17", - "typeDescriptions": {} - } - }, - "id": 3506, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "16980:121:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "16964:137:17" - }, - { - "expression": { - "components": [ - { - "id": 3508, - "name": "result", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3492, - "src": "17119:6:17", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - { - "commonType": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - }, - "id": 3514, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "id": 3511, - "name": "compactSizeBytes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3476, - "src": "17134:16:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 3510, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "17127:6:17", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint16_$", - "typeString": "type(uint16)" - }, - "typeName": { - "id": 3509, - "name": "uint16", - "nodeType": "ElementaryTypeName", - "src": "17127:6:17", - "typeDescriptions": {} - } - }, - "id": 3512, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "17127:24:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "hexValue": "31", - "id": 3513, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "17154:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "17127:28:17", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - } - ], - "id": 3515, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "17118:38:17", - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_uint64_$_t_uint16_$", - "typeString": "tuple(uint64,uint16)" - } - }, - "functionReturnParameters": 3439, - "id": 3516, - "nodeType": "Return", - "src": "17111:45:17" - } - ] - }, - "id": 3518, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "parseCompactSizeInt", - "nameLocation": "16258:19:17", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3434, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3431, - "mutability": "mutable", - "name": "sizePosition", - "nameLocation": "16283:12:17", - "nodeType": "VariableDeclaration", - "scope": 3518, - "src": "16278:17:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3430, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "16278:4:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 3433, - "mutability": "mutable", - "name": "array", - "nameLocation": "16310:5:17", - "nodeType": "VariableDeclaration", - "scope": 3518, - "src": "16297:18:17", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 3432, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "16297:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "16277:39:17" - }, - "returnParameters": { - "id": 3439, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3436, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 3518, - "src": "16338:6:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "typeName": { - "id": 3435, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "16338:6:17", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 3438, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 3518, - "src": "16346:6:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - }, - "typeName": { - "id": 3437, - "name": "uint16", - "nodeType": "ElementaryTypeName", - "src": "16346:6:17", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - "visibility": "internal" - } - ], - "src": "16337:16:17" - }, - "scope": 3743, - "src": "16249:914:17", - "stateMutability": "pure", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 3583, - "nodeType": "Block", - "src": "17324:357:17", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 3538, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3533, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 3530, - "name": "fragmentStart", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3520, - "src": "17355:13:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "expression": { - "id": 3531, - "name": "array", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3524, - "src": "17371:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 3532, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "17377:6:17", - "memberName": "length", - "nodeType": "MemberAccess", - "src": "17371:12:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "17355:28:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3537, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 3534, - "name": "fragmentEnd", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3522, - "src": "17387:11:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "expression": { - "id": 3535, - "name": "array", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3524, - "src": "17401:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 3536, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "17407:6:17", - "memberName": "length", - "nodeType": "MemberAccess", - "src": "17401:12:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "17387:26:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "17355:58:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "52616e67652063616e277420626520626967676572207468616e206172726179", - "id": 3539, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "17428:34:17", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_b880bf2732d5dc41106d7c9b4d33a7d7359e73ab841c93dd915612cdef84660a", - "typeString": "literal_string \"Range can't be bigger than array\"" - }, - "value": "Range can't be bigger than array" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_b880bf2732d5dc41106d7c9b4d33a7d7359e73ab841c93dd915612cdef84660a", - "typeString": "literal_string \"Range can't be bigger than array\"" - } - ], - "id": 3529, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "17334:7:17", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 3540, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "17334:138:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 3541, - "nodeType": "ExpressionStatement", - "src": "17334:138:17" - }, - { - "assignments": [ - 3543 - ], - "declarations": [ - { - "constant": false, - "id": 3543, - "mutability": "mutable", - "name": "result", - "nameLocation": "17487:6:17", - "nodeType": "VariableDeclaration", - "scope": 3583, - "src": "17482:11:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3542, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "17482:4:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 3545, - "initialValue": { - "hexValue": "30", - "id": 3544, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "17496:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "17482:15:17" - }, - { - "body": { - "id": 3579, - "nodeType": "Block", - "src": "17558:94:17", - "statements": [ - { - "expression": { - "id": 3577, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 3556, - "name": "result", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3543, - "src": "17572:6:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "+=", - "rightHandSide": { - "commonType": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "id": 3576, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "baseExpression": { - "id": 3559, - "name": "array", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3524, - "src": "17588:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 3561, - "indexExpression": { - "id": 3560, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3547, - "src": "17594:1:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "17588:8:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - ], - "id": 3558, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "17582:5:17", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint8_$", - "typeString": "type(uint8)" - }, - "typeName": { - "id": 3557, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "17582:5:17", - "typeDescriptions": {} - } - }, - "id": 3562, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "17582:15:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "BinaryOperation", - "operator": "*", - "rightExpression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3574, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "hexValue": "32", - "id": 3565, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "17608:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_2_by_1", - "typeString": "int_const 2" - }, - "value": "2" - }, - "nodeType": "BinaryOperation", - "operator": "**", - "rightExpression": { - "components": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3572, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "hexValue": "38", - "id": 3566, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "17614:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_8_by_1", - "typeString": "int_const 8" - }, - "value": "8" - }, - "nodeType": "BinaryOperation", - "operator": "*", - "rightExpression": { - "components": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3570, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 3567, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3547, - "src": "17619:1:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "components": [ - { - "id": 3568, - "name": "fragmentStart", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3520, - "src": "17624:13:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "id": 3569, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "17623:15:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "17619:19:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "id": 3571, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "17618:21:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "17614:25:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "id": 3573, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "17613:27:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "17608:32:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 3564, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "17601:6:17", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint64_$", - "typeString": "type(uint64)" - }, - "typeName": { - "id": 3563, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "17601:6:17", - "typeDescriptions": {} - } - }, - "id": 3575, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "17601:40:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "17582:59:17", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "17572:69:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 3578, - "nodeType": "ExpressionStatement", - "src": "17572:69:17" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3552, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 3550, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3547, - "src": "17536:1:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "id": 3551, - "name": "fragmentEnd", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3522, - "src": "17540:11:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "17536:15:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 3580, - "initializationExpression": { - "assignments": [ - 3547 - ], - "declarations": [ - { - "constant": false, - "id": 3547, - "mutability": "mutable", - "name": "i", - "nameLocation": "17517:1:17", - "nodeType": "VariableDeclaration", - "scope": 3580, - "src": "17512:6:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3546, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "17512:4:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 3549, - "initialValue": { - "id": 3548, - "name": "fragmentStart", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3520, - "src": "17521:13:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "17512:22:17" - }, - "loopExpression": { - "expression": { - "id": 3554, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "17553:3:17", - "subExpression": { - "id": 3553, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3547, - "src": "17553:1:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 3555, - "nodeType": "ExpressionStatement", - "src": "17553:3:17" - }, - "nodeType": "ForStatement", - "src": "17507:145:17" - }, - { - "expression": { - "id": 3581, - "name": "result", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3543, - "src": "17668:6:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 3528, - "id": 3582, - "nodeType": "Return", - "src": "17661:13:17" - } - ] - }, - "id": 3584, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "calculateLittleEndianFragment", - "nameLocation": "17178:29:17", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3525, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3520, - "mutability": "mutable", - "name": "fragmentStart", - "nameLocation": "17222:13:17", - "nodeType": "VariableDeclaration", - "scope": 3584, - "src": "17217:18:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3519, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "17217:4:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 3522, - "mutability": "mutable", - "name": "fragmentEnd", - "nameLocation": "17250:11:17", - "nodeType": "VariableDeclaration", - "scope": 3584, - "src": "17245:16:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3521, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "17245:4:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 3524, - "mutability": "mutable", - "name": "array", - "nameLocation": "17284:5:17", - "nodeType": "VariableDeclaration", - "scope": 3584, - "src": "17271:18:17", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 3523, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "17271:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "17207:88:17" - }, - "returnParameters": { - "id": 3528, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3527, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 3584, - "src": "17318:4:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3526, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "17318:4:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "17317:6:17" - }, - "scope": 3743, - "src": "17169:512:17", - "stateMutability": "pure", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 3705, - "nodeType": "Block", - "src": "17875:864:17", - "statements": [ - { - "assignments": [ - 3593 - ], - "declarations": [ - { - "constant": false, - "id": 3593, - "mutability": "mutable", - "name": "MAX_VALUE", - "nameLocation": "17891:9:17", - "nodeType": "VariableDeclaration", - "scope": 3705, - "src": "17885:15:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "typeName": { - "id": 3592, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "17885:5:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "visibility": "internal" - } - ], - "id": 3595, - "initialValue": { - "hexValue": "3331", - "id": 3594, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "17903:2:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_31_by_1", - "typeString": "int_const 31" - }, - "value": "31" - }, - "nodeType": "VariableDeclarationStatement", - "src": "17885:20:17" - }, - { - "assignments": [ - 3597 - ], - "declarations": [ - { - "constant": false, - "id": 3597, - "mutability": "mutable", - "name": "currentValue", - "nameLocation": "17921:12:17", - "nodeType": "VariableDeclaration", - "scope": 3705, - "src": "17916:17:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3596, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "17916:4:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 3599, - "initialValue": { - "hexValue": "30", - "id": 3598, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "17936:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "17916:21:17" - }, - { - "assignments": [ - 3601 - ], - "declarations": [ - { - "constant": false, - "id": 3601, - "mutability": "mutable", - "name": "bitCount", - "nameLocation": "17952:8:17", - "nodeType": "VariableDeclaration", - "scope": 3705, - "src": "17947:13:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3600, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "17947:4:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 3603, - "initialValue": { - "hexValue": "30", - "id": 3602, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "17963:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "17947:17:17" - }, - { - "assignments": [ - 3605 - ], - "declarations": [ - { - "constant": false, - "id": 3605, - "mutability": "mutable", - "name": "resultIndex", - "nameLocation": "17980:11:17", - "nodeType": "VariableDeclaration", - "scope": 3705, - "src": "17974:17:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "typeName": { - "id": 3604, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "17974:5:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "visibility": "internal" - } - ], - "id": 3607, - "initialValue": { - "hexValue": "30", - "id": 3606, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "17994:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "17974:21:17" - }, - { - "assignments": [ - 3609 - ], - "declarations": [ - { - "constant": false, - "id": 3609, - "mutability": "mutable", - "name": "result", - "nameLocation": "18018:6:17", - "nodeType": "VariableDeclaration", - "scope": 3705, - "src": "18005:19:17", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 3608, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "18005:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 3617, - "initialValue": { - "arguments": [ - { - "arguments": [ - { - "expression": { - "id": 3613, - "name": "byteArray", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3587, - "src": "18052:9:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 3614, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "18062:6:17", - "memberName": "length", - "nodeType": "MemberAccess", - "src": "18052:16:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 3612, - "name": "total5BitWords", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3742, - "src": "18037:14:17", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_uint256_$returns$_t_uint256_$", - "typeString": "function (uint256) pure returns (uint256)" - } - }, - "id": 3615, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "18037:32:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 3611, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "NewExpression", - "src": "18027:9:17", - "typeDescriptions": { - "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (uint256) pure returns (bytes memory)" - }, - "typeName": { - "id": 3610, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "18031:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - } - }, - "id": 3616, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "18027:43:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "18005:65:17" - }, - { - "body": { - "id": 3676, - "nodeType": "Block", - "src": "18125:436:17", - "statements": [ - { - "expression": { - "id": 3641, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 3629, - "name": "currentValue", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3597, - "src": "18139:12:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3640, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "components": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3632, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 3630, - "name": "currentValue", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3597, - "src": "18155:12:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<<", - "rightExpression": { - "id": 3631, - "name": "BYTE_SIZE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2292, - "src": "18171:9:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "18155:25:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "id": 3633, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "18154:27:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "|", - "rightExpression": { - "arguments": [ - { - "baseExpression": { - "id": 3636, - "name": "byteArray", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3587, - "src": "18190:9:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 3638, - "indexExpression": { - "id": 3637, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3619, - "src": "18200:1:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "18190:12:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - ], - "id": 3635, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "18184:5:17", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint8_$", - "typeString": "type(uint8)" - }, - "typeName": { - "id": 3634, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "18184:5:17", - "typeDescriptions": {} - } - }, - "id": 3639, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "18184:19:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "src": "18154:49:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "18139:64:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 3642, - "nodeType": "ExpressionStatement", - "src": "18139:64:17" - }, - { - "expression": { - "id": 3645, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 3643, - "name": "bitCount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3601, - "src": "18217:8:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "+=", - "rightHandSide": { - "id": 3644, - "name": "BYTE_SIZE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2292, - "src": "18229:9:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "18217:21:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 3646, - "nodeType": "ExpressionStatement", - "src": "18217:21:17" - }, - { - "body": { - "id": 3674, - "nodeType": "Block", - "src": "18289:262:17", - "statements": [ - { - "expression": { - "id": 3652, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 3650, - "name": "bitCount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3601, - "src": "18307:8:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "-=", - "rightHandSide": { - "id": 3651, - "name": "BECH32_WORD_SIZE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2289, - "src": "18319:16:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "18307:28:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 3653, - "nodeType": "ExpressionStatement", - "src": "18307:28:17" - }, - { - "expression": { - "id": 3669, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 3654, - "name": "result", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3609, - "src": "18430:6:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 3656, - "indexExpression": { - "id": 3655, - "name": "resultIndex", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3605, - "src": "18437:11:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "18430:19:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3666, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "components": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3663, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 3661, - "name": "currentValue", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3597, - "src": "18466:12:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">>", - "rightExpression": { - "id": 3662, - "name": "bitCount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3601, - "src": "18482:8:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "18466:24:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "id": 3664, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "18465:26:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "&", - "rightExpression": { - "id": 3665, - "name": "MAX_VALUE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3593, - "src": "18494:9:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "src": "18465:38:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 3660, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "18459:5:17", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint8_$", - "typeString": "type(uint8)" - }, - "typeName": { - "id": 3659, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "18459:5:17", - "typeDescriptions": {} - } - }, - "id": 3667, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "18459:45:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - ], - "id": 3658, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "18452:6:17", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes1_$", - "typeString": "type(bytes1)" - }, - "typeName": { - "id": 3657, - "name": "bytes1", - "nodeType": "ElementaryTypeName", - "src": "18452:6:17", - "typeDescriptions": {} - } - }, - "id": 3668, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "18452:53:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "src": "18430:75:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "id": 3670, - "nodeType": "ExpressionStatement", - "src": "18430:75:17" - }, - { - "expression": { - "id": 3672, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "18523:13:17", - "subExpression": { - "id": 3671, - "name": "resultIndex", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3605, - "src": "18523:11:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "id": 3673, - "nodeType": "ExpressionStatement", - "src": "18523:13:17" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3649, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 3647, - "name": "bitCount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3601, - "src": "18259:8:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "id": 3648, - "name": "BECH32_WORD_SIZE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2289, - "src": "18271:16:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "18259:28:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 3675, - "nodeType": "WhileStatement", - "src": "18252:299:17" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3625, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 3622, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3619, - "src": "18098:1:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "expression": { - "id": 3623, - "name": "byteArray", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3587, - "src": "18102:9:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 3624, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "18112:6:17", - "memberName": "length", - "nodeType": "MemberAccess", - "src": "18102:16:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "18098:20:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 3677, - "initializationExpression": { - "assignments": [ - 3619 - ], - "declarations": [ - { - "constant": false, - "id": 3619, - "mutability": "mutable", - "name": "i", - "nameLocation": "18091:1:17", - "nodeType": "VariableDeclaration", - "scope": 3677, - "src": "18086:6:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3618, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "18086:4:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 3621, - "initialValue": { - "hexValue": "30", - "id": 3620, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "18095:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "18086:10:17" - }, - "loopExpression": { - "expression": { - "id": 3627, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": true, - "src": "18120:3:17", - "subExpression": { - "id": 3626, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3619, - "src": "18122:1:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 3628, - "nodeType": "ExpressionStatement", - "src": "18120:3:17" - }, - "nodeType": "ForStatement", - "src": "18081:480:17" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3680, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 3678, - "name": "bitCount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3601, - "src": "18575:8:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 3679, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "18586:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "18575:12:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 3702, - "nodeType": "IfStatement", - "src": "18571:139:17", - "trueBody": { - "id": 3701, - "nodeType": "Block", - "src": "18589:121:17", - "statements": [ - { - "expression": { - "id": 3699, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 3681, - "name": "result", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3609, - "src": "18603:6:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 3683, - "indexExpression": { - "id": 3682, - "name": "resultIndex", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3605, - "src": "18610:11:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "18603:19:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3696, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "components": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3693, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 3688, - "name": "currentValue", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3597, - "src": "18639:12:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<<", - "rightExpression": { - "components": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3691, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 3689, - "name": "BECH32_WORD_SIZE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2289, - "src": "18656:16:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "id": 3690, - "name": "bitCount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3601, - "src": "18675:8:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "18656:27:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "id": 3692, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "18655:29:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "18639:45:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "id": 3694, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "18638:47:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "&", - "rightExpression": { - "id": 3695, - "name": "MAX_VALUE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3593, - "src": "18688:9:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "src": "18638:59:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 3687, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "18632:5:17", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint8_$", - "typeString": "type(uint8)" - }, - "typeName": { - "id": 3686, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "18632:5:17", - "typeDescriptions": {} - } - }, - "id": 3697, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "18632:66:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - ], - "id": 3685, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "18625:6:17", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes1_$", - "typeString": "type(bytes1)" - }, - "typeName": { - "id": 3684, - "name": "bytes1", - "nodeType": "ElementaryTypeName", - "src": "18625:6:17", - "typeDescriptions": {} - } - }, - "id": 3698, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "18625:74:17", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "src": "18603:96:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "id": 3700, - "nodeType": "ExpressionStatement", - "src": "18603:96:17" - } - ] - } - }, - { - "expression": { - "id": 3703, - "name": "result", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3609, - "src": "18726:6:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 3591, - "id": 3704, - "nodeType": "Return", - "src": "18719:13:17" - } - ] - }, - "documentation": { - "id": 3585, - "nodeType": "StructuredDocumentation", - "src": "17687:103:17", - "text": "@notice Referece for implementation: https://github.com/bitcoin/bips/blob/master/bip-0173.mediawiki" - }, - "id": 3706, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "to5BitWords", - "nameLocation": "17804:11:17", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3588, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3587, - "mutability": "mutable", - "name": "byteArray", - "nameLocation": "17829:9:17", - "nodeType": "VariableDeclaration", - "scope": 3706, - "src": "17816:22:17", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 3586, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "17816:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "17815:24:17" - }, - "returnParameters": { - "id": 3591, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3590, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 3706, - "src": "17861:12:17", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 3589, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "17861:5:17", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "17860:14:17" - }, - "scope": 3743, - "src": "17795:944:17", - "stateMutability": "pure", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 3741, - "nodeType": "Block", - "src": "18816:197:17", - "statements": [ - { - "assignments": [ - 3714 - ], - "declarations": [ - { - "constant": false, - "id": 3714, - "mutability": "mutable", - "name": "total", - "nameLocation": "18831:5:17", - "nodeType": "VariableDeclaration", - "scope": 3741, - "src": "18826:10:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3713, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "18826:4:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 3721, - "initialValue": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3720, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "components": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3717, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 3715, - "name": "numberOfBytes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3708, - "src": "18840:13:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "*", - "rightExpression": { - "id": 3716, - "name": "BYTE_SIZE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2292, - "src": "18856:9:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "18840:25:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "id": 3718, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "18839:27:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "/", - "rightExpression": { - "id": 3719, - "name": "BECH32_WORD_SIZE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2289, - "src": "18869:16:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "18839:46:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "18826:59:17" - }, - { - "assignments": [ - 3723 - ], - "declarations": [ - { - "constant": false, - "id": 3723, - "mutability": "mutable", - "name": "extraWord", - "nameLocation": "18900:9:17", - "nodeType": "VariableDeclaration", - "scope": 3741, - "src": "18895:14:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 3722, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "18895:4:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "id": 3732, - "initialValue": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3731, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3729, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "components": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3726, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 3724, - "name": "numberOfBytes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3708, - "src": "18913:13:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "*", - "rightExpression": { - "id": 3725, - "name": "BYTE_SIZE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2292, - "src": "18929:9:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "18913:25:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "id": 3727, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "18912:27:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "%", - "rightExpression": { - "id": 3728, - "name": "BECH32_WORD_SIZE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2289, - "src": "18942:16:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "18912:46:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 3730, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "18962:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "18912:51:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "18895:68:17" - }, - { - "expression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3739, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 3733, - "name": "total", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3714, - "src": "18980:5:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "components": [ - { - "condition": { - "id": 3734, - "name": "extraWord", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3723, - "src": "18989:9:17", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseExpression": { - "hexValue": "31", - "id": 3736, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "19004:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "id": 3737, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "Conditional", - "src": "18989:16:17", - "trueExpression": { - "hexValue": "30", - "id": 3735, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "19000:1:17", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - } - ], - "id": 3738, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "18988:18:17", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "src": "18980:26:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 3712, - "id": 3740, - "nodeType": "Return", - "src": "18973:33:17" - } - ] - }, - "id": 3742, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "total5BitWords", - "nameLocation": "18754:14:17", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3709, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3708, - "mutability": "mutable", - "name": "numberOfBytes", - "nameLocation": "18774:13:17", - "nodeType": "VariableDeclaration", - "scope": 3742, - "src": "18769:18:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3707, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "18769:4:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "18768:20:17" - }, - "returnParameters": { - "id": 3712, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3711, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 3742, - "src": "18810:4:17", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3710, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "18810:4:17", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "18809:6:17" - }, - "scope": 3743, - "src": "18745:268:17", - "stateMutability": "pure", - "virtual": false, - "visibility": "private" - } - ], - "scope": 3744, - "src": "356:18659:17", - "usedErrors": [] - } - ], - "src": "32:18983:17" - }, - "compiler": { - "name": "solc", - "version": "0.8.18+commit.87f61d96.Emscripten.clang" - }, - "networks": { - "31": { - "events": {}, - "links": {}, - "address": "0x147F172c8a7434D10FDac6E2c8045116683f277B", - "transactionHash": "0x0f9c2577351e533bc1f055f92b06acf2e72964c5afa81f157f45cd94457fef44" - } - }, - "schemaVersion": "3.4.13", - "updatedAt": "2024-12-10T18:55:01.688Z", - "networkType": "ethereum", - "devdoc": { - "kind": "dev", - "methods": { - "getBtcBlockTimestamp(bytes)": { - "details": "Gets the timestamp of a Bitcoin block header", - "params": { - "header": "The block header" - }, - "returns": { - "_0": "The timestamp of the block header" - } - }, - "getOutputs(bytes)": { - "params": { - "rawTx": "the raw transaction" - }, - "returns": { - "_0": "An array of `TxRawOutput` with the outputs of the transaction" - } - }, - "getP2SHAddressFromScript(bytes,bool)": { - "params": { - "mainnet": "flag to specify if the output should be a mainnet address", - "script": "the script to generate the address from" - }, - "returns": { - "_0": "The address generate from the script" - } - }, - "hashBtcTx(bytes)": { - "params": { - "btcTx": "the transaction to hash" - }, - "returns": { - "_0": "The transaction id " - } - }, - "isP2PKHOutput(bytes)": { - "params": { - "pkScript": "the fragment of the raw transaction containing the raw output script" - }, - "returns": { - "_0": "Whether the script has a pay-to-public-key-hash output structure or not" - } - }, - "isP2SHOutput(bytes)": { - "params": { - "pkScript": "the fragment of the raw transaction containing the raw output script" - }, - "returns": { - "_0": "Whether the script has a pay-to-script-hash output structure or not" - } - }, - "isP2TROutput(bytes)": { - "params": { - "pkScript": "the fragment of the raw transaction containing the raw output script" - }, - "returns": { - "_0": "Whether the script has a pay-to-taproot output structure or not" - } - }, - "isP2WPKHOutput(bytes)": { - "params": { - "pkScript": "the fragment of the raw transaction containing the raw output script" - }, - "returns": { - "_0": "Whether the script has a pay-to-witness-pubkey-hash output structure or not" - } - }, - "isP2WSHOutput(bytes)": { - "params": { - "pkScript": "the fragment of the raw transaction containing the raw output script" - }, - "returns": { - "_0": "Whether the script has a pay-to-witness-script-hash output structure or not" - } - }, - "outputScriptToAddress(bytes,bool)": { - "params": { - "mainnet": "if the address to generate is from mainnet or testnet", - "outputScript": "the fragment of the raw transaction containing the raw output script" - }, - "returns": { - "_0": "The address bytes regarless of the output script type" - } - }, - "parseNullDataScript(bytes)": { - "params": { - "outputScript": "the fragment of the raw transaction containing the raw output script " - }, - "returns": { - "_0": "The content embedded inside the script" - } - }, - "parsePayToPubKeyHash(bytes,bool)": { - "params": { - "mainnet": "if the address to generate is from mainnet or testnet ", - "outputScript": "the fragment of the raw transaction containing the raw output script" - }, - "returns": { - "_0": "The address generated using the receiver's public key hash" - } - }, - "parsePayToScriptHash(bytes,bool)": { - "params": { - "mainnet": "if the address to generate is from mainnet or testnet", - "outputScript": "the fragment of the raw transaction containing the raw output script" - }, - "returns": { - "_0": "The address generated using the script hash" - } - }, - "parsePayToTaproot(bytes)": { - "params": { - "outputScript": "the fragment of the raw transaction containing the raw output script" - }, - "returns": { - "_0": "The address bech32m words generated using the taproot pubkey hash" - } - }, - "parsePayToWitnessPubKeyHash(bytes)": { - "params": { - "outputScript": "the fragment of the raw transaction containing the raw output script" - }, - "returns": { - "_0": "The address bech32 words generated using the pubkey hash" - } - }, - "parsePayToWitnessScriptHash(bytes)": { - "params": { - "outputScript": "the fragment of the raw transaction containing the raw output script" - }, - "returns": { - "_0": "The address bech32 words generated using the script hash" - } - }, - "validateP2SHAdress(bytes,bytes,bool)": { - "params": { - "mainnet": "flag to specify if its a mainnet address", - "p2sh": "the pay-to-script-hash address", - "script": "the script to check" - }, - "returns": { - "_0": "Whether the address belongs to the script or not" - } - } - }, - "title": "BtcUtils", - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": { - "getOutputs(bytes)": { - "notice": "Parse a raw transaction to get an array of its outputs in a structured representation" - }, - "getP2SHAddressFromScript(bytes,bool)": { - "notice": "Generate a pay-to-script-hash address from a script, the resulting byte array already contains the 4 checksum bytes at the end of it" - }, - "hashBtcTx(bytes)": { - "notice": "Hash a bitcoin raw transaction to get its id (reversed double sha256)" - }, - "isP2PKHOutput(bytes)": { - "notice": "Check if a raw output script is a pay-to-public-key-hash output" - }, - "isP2SHOutput(bytes)": { - "notice": "Check if a raw output script is a pay-to-script-hash output" - }, - "isP2TROutput(bytes)": { - "notice": "Check if a raw output script is a pay-to-taproot outputReference for implementation: https://github.com/bitcoin/bips/blob/master/bip-0341.mediawiki " - }, - "isP2WPKHOutput(bytes)": { - "notice": "Check if a raw output script is a pay-to-witness-pubkey-hash output" - }, - "isP2WSHOutput(bytes)": { - "notice": "Check if a raw output script is a pay-to-witness-script-hash output" - }, - "outputScriptToAddress(bytes,bool)": { - "notice": "Parse a raw output script whose type is not known by the consumer. The function will return the corresponding address if the type of the script is supported or an error if not. For the addresses that are encoded with base58check the checksum bytes are not included in the resulting byte array" - }, - "parseNullDataScript(bytes)": { - "notice": "Parse a raw null-data output script to get its content" - }, - "parsePayToPubKeyHash(bytes,bool)": { - "notice": "Parse a raw pay-to-public-key-hash output script to get the corresponding address, the resulting byte array doesn't include the checksum bytes of the base58check encoding at the end" - }, - "parsePayToScriptHash(bytes,bool)": { - "notice": "Parse a raw pay-to-script-hash output script to get the corresponding address, the resulting byte array doesn't include the checksum bytes of the base58check encoding at the end" - }, - "parsePayToTaproot(bytes)": { - "notice": "Parse a raw pay-to-taproot output script to get the corresponding address words, the resulting words are only the data part of the bech32m encoding and doesn't include the HRP" - }, - "parsePayToWitnessPubKeyHash(bytes)": { - "notice": "Parse a raw pay-to-witness-pubkey-hash output script to get the corresponding address words, the resulting words are only the data part of the bech32 encoding and doesn't include the HRP" - }, - "parsePayToWitnessScriptHash(bytes)": { - "notice": "Parse a raw pay-to-witness-script-hash output script to get the corresponding address words, the resulting words are only the data part of the bech32 encoding and doesn't include the HRP" - }, - "validateP2SHAdress(bytes,bytes,bool)": { - "notice": "Check if a pay-to-script-hash address belogs to a specific script, expects the address bytes to include the 4 checksum bytes at the end" - } - }, - "notice": "This library contains functionality to make easier to work with Bitcoin transactions in Solidity.This library is based in this document: https://developer.bitcoin.org/reference/transactions.html#raw-transaction-format", - "version": 1 - } -} \ No newline at end of file diff --git a/build/contracts/Context.json b/build/contracts/Context.json deleted file mode 100644 index 8eab2a5..0000000 --- a/build/contracts/Context.json +++ /dev/null @@ -1,355 +0,0 @@ -{ - "contractName": "Context", - "abi": [], - "metadata": "{\"compiler\":{\"version\":\"0.8.18+commit.87f61d96\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"details\":\"Provides information about the current execution context, including the sender of the transaction and its data. While these are generally available via msg.sender and msg.data, they should not be accessed in such a direct manner, since when dealing with meta-transactions the account sending and paying for execution may not be the actual sender (as far as an application is concerned). This contract is only required for intermediate, library-like contracts.\",\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@openzeppelin/contracts/utils/Context.sol\":\"Context\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":1},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts/utils/Context.sol\":{\"keccak256\":\"0xa92e4fa126feb6907daa0513ddd816b2eb91f30a808de54f63c17d0e162c3439\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a367861093b74443b137564d3f3c472f70bcf114739e62059c939f25e315706c\",\"dweb:/ipfs/Qmd7JMpcxD9RuQjK3uM3EzJUgSqdN8vzp8eytEiuwxQJ6h\"]}},\"version\":1}", - "bytecode": "0x", - "deployedBytecode": "0x", - "immutableReferences": {}, - "generatedSources": [], - "deployedGeneratedSources": [], - "sourceMap": "", - "deployedSourceMap": "", - "source": "// SPDX-License-Identifier: MIT\n// OpenZeppelin Contracts (last updated v4.9.4) (utils/Context.sol)\n\npragma solidity ^0.8.0;\n\n/**\n * @dev Provides information about the current execution context, including the\n * sender of the transaction and its data. While these are generally available\n * via msg.sender and msg.data, they should not be accessed in such a direct\n * manner, since when dealing with meta-transactions the account sending and\n * paying for execution may not be the actual sender (as far as an application\n * is concerned).\n *\n * This contract is only required for intermediate, library-like contracts.\n */\nabstract contract Context {\n function _msgSender() internal view virtual returns (address) {\n return msg.sender;\n }\n\n function _msgData() internal view virtual returns (bytes calldata) {\n return msg.data;\n }\n\n function _contextSuffixLength() internal view virtual returns (uint256) {\n return 0;\n }\n}\n", - "sourcePath": "@openzeppelin/contracts/utils/Context.sol", - "ast": { - "absolutePath": "@openzeppelin/contracts/utils/Context.sol", - "exportedSymbols": { - "Context": [ - 2133 - ] - }, - "id": 2134, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 2105, - "literals": [ - "solidity", - "^", - "0.8", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "101:23:15" - }, - { - "abstract": true, - "baseContracts": [], - "canonicalName": "Context", - "contractDependencies": [], - "contractKind": "contract", - "documentation": { - "id": 2106, - "nodeType": "StructuredDocumentation", - "src": "126:496:15", - "text": " @dev Provides information about the current execution context, including the\n sender of the transaction and its data. While these are generally available\n via msg.sender and msg.data, they should not be accessed in such a direct\n manner, since when dealing with meta-transactions the account sending and\n paying for execution may not be the actual sender (as far as an application\n is concerned).\n This contract is only required for intermediate, library-like contracts." - }, - "fullyImplemented": true, - "id": 2133, - "linearizedBaseContracts": [ - 2133 - ], - "name": "Context", - "nameLocation": "641:7:15", - "nodeType": "ContractDefinition", - "nodes": [ - { - "body": { - "id": 2114, - "nodeType": "Block", - "src": "717:34:15", - "statements": [ - { - "expression": { - "expression": { - "id": 2111, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "734:3:15", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2112, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "738:6:15", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "734:10:15", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "functionReturnParameters": 2110, - "id": 2113, - "nodeType": "Return", - "src": "727:17:15" - } - ] - }, - "id": 2115, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_msgSender", - "nameLocation": "664:10:15", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2107, - "nodeType": "ParameterList", - "parameters": [], - "src": "674:2:15" - }, - "returnParameters": { - "id": 2110, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2109, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2115, - "src": "708:7:15", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2108, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "708:7:15", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "707:9:15" - }, - "scope": 2133, - "src": "655:96:15", - "stateMutability": "view", - "virtual": true, - "visibility": "internal" - }, - { - "body": { - "id": 2123, - "nodeType": "Block", - "src": "824:32:15", - "statements": [ - { - "expression": { - "expression": { - "id": 2120, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "841:3:15", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 2121, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "845:4:15", - "memberName": "data", - "nodeType": "MemberAccess", - "src": "841:8:15", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "functionReturnParameters": 2119, - "id": 2122, - "nodeType": "Return", - "src": "834:15:15" - } - ] - }, - "id": 2124, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_msgData", - "nameLocation": "766:8:15", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2116, - "nodeType": "ParameterList", - "parameters": [], - "src": "774:2:15" - }, - "returnParameters": { - "id": 2119, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2118, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2124, - "src": "808:14:15", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2117, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "808:5:15", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "807:16:15" - }, - "scope": 2133, - "src": "757:99:15", - "stateMutability": "view", - "virtual": true, - "visibility": "internal" - }, - { - "body": { - "id": 2131, - "nodeType": "Block", - "src": "934:25:15", - "statements": [ - { - "expression": { - "hexValue": "30", - "id": 2129, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "951:1:15", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "functionReturnParameters": 2128, - "id": 2130, - "nodeType": "Return", - "src": "944:8:15" - } - ] - }, - "id": 2132, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_contextSuffixLength", - "nameLocation": "871:20:15", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2125, - "nodeType": "ParameterList", - "parameters": [], - "src": "891:2:15" - }, - "returnParameters": { - "id": 2128, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2127, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 2132, - "src": "925:7:15", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2126, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "925:7:15", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "924:9:15" - }, - "scope": 2133, - "src": "862:97:15", - "stateMutability": "view", - "virtual": true, - "visibility": "internal" - } - ], - "scope": 2134, - "src": "623:338:15", - "usedErrors": [] - } - ], - "src": "101:861:15" - }, - "compiler": { - "name": "solc", - "version": "0.8.18+commit.87f61d96.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "3.4.13", - "updatedAt": "2024-12-10T18:52:58.863Z", - "devdoc": { - "details": "Provides information about the current execution context, including the sender of the transaction and its data. While these are generally available via msg.sender and msg.data, they should not be accessed in such a direct manner, since when dealing with meta-transactions the account sending and paying for execution may not be the actual sender (as far as an application is concerned). This contract is only required for intermediate, library-like contracts.", - "kind": "dev", - "methods": {}, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } -} \ No newline at end of file diff --git a/build/contracts/ContextUpgradeable.json b/build/contracts/ContextUpgradeable.json deleted file mode 100644 index 0d939a1..0000000 --- a/build/contracts/ContextUpgradeable.json +++ /dev/null @@ -1,580 +0,0 @@ -{ - "contractName": "ContextUpgradeable", - "abi": [ - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint8", - "name": "version", - "type": "uint8" - } - ], - "name": "Initialized", - "type": "event" - } - ], - "metadata": "{\"compiler\":{\"version\":\"0.8.18+commit.87f61d96\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"}],\"devdoc\":{\"details\":\"Provides information about the current execution context, including the sender of the transaction and its data. While these are generally available via msg.sender and msg.data, they should not be accessed in such a direct manner, since when dealing with meta-transactions the account sending and paying for execution may not be the actual sender (as far as an application is concerned). This contract is only required for intermediate, library-like contracts.\",\"events\":{\"Initialized(uint8)\":{\"details\":\"Triggered when the contract has been initialized or reinitialized.\"}},\"kind\":\"dev\",\"methods\":{},\"stateVariables\":{\"__gap\":{\"details\":\"This empty reserved space is put in place to allow future versions to add new variables without shifting down storage in the inheritance chain. See https://docs.openzeppelin.com/contracts/4.x/upgradeable#storage_gaps\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol\":\"ContextUpgradeable\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":1},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]},\"@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95\",\"dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx\"]}},\"version\":1}", - "bytecode": "0x", - "deployedBytecode": "0x", - "immutableReferences": {}, - "generatedSources": [], - "deployedGeneratedSources": [], - "sourceMap": "", - "deployedSourceMap": "", - "source": "// SPDX-License-Identifier: MIT\n// OpenZeppelin Contracts (last updated v4.9.4) (utils/Context.sol)\n\npragma solidity ^0.8.0;\nimport {Initializable} from \"../proxy/utils/Initializable.sol\";\n\n/**\n * @dev Provides information about the current execution context, including the\n * sender of the transaction and its data. While these are generally available\n * via msg.sender and msg.data, they should not be accessed in such a direct\n * manner, since when dealing with meta-transactions the account sending and\n * paying for execution may not be the actual sender (as far as an application\n * is concerned).\n *\n * This contract is only required for intermediate, library-like contracts.\n */\nabstract contract ContextUpgradeable is Initializable {\n function __Context_init() internal onlyInitializing {\n }\n\n function __Context_init_unchained() internal onlyInitializing {\n }\n function _msgSender() internal view virtual returns (address) {\n return msg.sender;\n }\n\n function _msgData() internal view virtual returns (bytes calldata) {\n return msg.data;\n }\n\n function _contextSuffixLength() internal view virtual returns (uint256) {\n return 0;\n }\n\n /**\n * @dev This empty reserved space is put in place to allow future versions to add new\n * variables without shifting down storage in the inheritance chain.\n * See https://docs.openzeppelin.com/contracts/4.x/upgradeable#storage_gaps\n */\n uint256[50] private __gap;\n}\n", - "sourcePath": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol", - "ast": { - "absolutePath": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol", - "exportedSymbols": { - "ContextUpgradeable": [ - 767 - ], - "Initializable": [ - 301 - ] - }, - "id": 768, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 718, - "literals": [ - "solidity", - "^", - "0.8", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "101:23:4" - }, - { - "absolutePath": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol", - "file": "../proxy/utils/Initializable.sol", - "id": 720, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 768, - "sourceUnit": 302, - "src": "125:63:4", - "symbolAliases": [ - { - "foreign": { - "id": 719, - "name": "Initializable", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 301, - "src": "133:13:4", - "typeDescriptions": {} - }, - "nameLocation": "-1:-1:-1" - } - ], - "unitAlias": "" - }, - { - "abstract": true, - "baseContracts": [ - { - "baseName": { - "id": 722, - "name": "Initializable", - "nameLocations": [ - "727:13:4" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 301, - "src": "727:13:4" - }, - "id": 723, - "nodeType": "InheritanceSpecifier", - "src": "727:13:4" - } - ], - "canonicalName": "ContextUpgradeable", - "contractDependencies": [], - "contractKind": "contract", - "documentation": { - "id": 721, - "nodeType": "StructuredDocumentation", - "src": "190:496:4", - "text": " @dev Provides information about the current execution context, including the\n sender of the transaction and its data. While these are generally available\n via msg.sender and msg.data, they should not be accessed in such a direct\n manner, since when dealing with meta-transactions the account sending and\n paying for execution may not be the actual sender (as far as an application\n is concerned).\n This contract is only required for intermediate, library-like contracts." - }, - "fullyImplemented": true, - "id": 767, - "linearizedBaseContracts": [ - 767, - 301 - ], - "name": "ContextUpgradeable", - "nameLocation": "705:18:4", - "nodeType": "ContractDefinition", - "nodes": [ - { - "body": { - "id": 728, - "nodeType": "Block", - "src": "799:7:4", - "statements": [] - }, - "id": 729, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "id": 726, - "kind": "modifierInvocation", - "modifierName": { - "id": 725, - "name": "onlyInitializing", - "nameLocations": [ - "782:16:4" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 246, - "src": "782:16:4" - }, - "nodeType": "ModifierInvocation", - "src": "782:16:4" - } - ], - "name": "__Context_init", - "nameLocation": "756:14:4", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 724, - "nodeType": "ParameterList", - "parameters": [], - "src": "770:2:4" - }, - "returnParameters": { - "id": 727, - "nodeType": "ParameterList", - "parameters": [], - "src": "799:0:4" - }, - "scope": 767, - "src": "747:59:4", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 734, - "nodeType": "Block", - "src": "874:7:4", - "statements": [] - }, - "id": 735, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "id": 732, - "kind": "modifierInvocation", - "modifierName": { - "id": 731, - "name": "onlyInitializing", - "nameLocations": [ - "857:16:4" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 246, - "src": "857:16:4" - }, - "nodeType": "ModifierInvocation", - "src": "857:16:4" - } - ], - "name": "__Context_init_unchained", - "nameLocation": "821:24:4", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 730, - "nodeType": "ParameterList", - "parameters": [], - "src": "845:2:4" - }, - "returnParameters": { - "id": 733, - "nodeType": "ParameterList", - "parameters": [], - "src": "874:0:4" - }, - "scope": 767, - "src": "812:69:4", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 743, - "nodeType": "Block", - "src": "948:34:4", - "statements": [ - { - "expression": { - "expression": { - "id": 740, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "965:3:4", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 741, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "969:6:4", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "965:10:4", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "functionReturnParameters": 739, - "id": 742, - "nodeType": "Return", - "src": "958:17:4" - } - ] - }, - "id": 744, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_msgSender", - "nameLocation": "895:10:4", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 736, - "nodeType": "ParameterList", - "parameters": [], - "src": "905:2:4" - }, - "returnParameters": { - "id": 739, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 738, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 744, - "src": "939:7:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 737, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "939:7:4", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "938:9:4" - }, - "scope": 767, - "src": "886:96:4", - "stateMutability": "view", - "virtual": true, - "visibility": "internal" - }, - { - "body": { - "id": 752, - "nodeType": "Block", - "src": "1055:32:4", - "statements": [ - { - "expression": { - "expression": { - "id": 749, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "1072:3:4", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 750, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "1076:4:4", - "memberName": "data", - "nodeType": "MemberAccess", - "src": "1072:8:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "functionReturnParameters": 748, - "id": 751, - "nodeType": "Return", - "src": "1065:15:4" - } - ] - }, - "id": 753, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_msgData", - "nameLocation": "997:8:4", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 745, - "nodeType": "ParameterList", - "parameters": [], - "src": "1005:2:4" - }, - "returnParameters": { - "id": 748, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 747, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 753, - "src": "1039:14:4", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 746, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1039:5:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "1038:16:4" - }, - "scope": 767, - "src": "988:99:4", - "stateMutability": "view", - "virtual": true, - "visibility": "internal" - }, - { - "body": { - "id": 760, - "nodeType": "Block", - "src": "1165:25:4", - "statements": [ - { - "expression": { - "hexValue": "30", - "id": 758, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1182:1:4", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "functionReturnParameters": 757, - "id": 759, - "nodeType": "Return", - "src": "1175:8:4" - } - ] - }, - "id": 761, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_contextSuffixLength", - "nameLocation": "1102:20:4", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 754, - "nodeType": "ParameterList", - "parameters": [], - "src": "1122:2:4" - }, - "returnParameters": { - "id": 757, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 756, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 761, - "src": "1156:7:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 755, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1156:7:4", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "1155:9:4" - }, - "scope": 767, - "src": "1093:97:4", - "stateMutability": "view", - "virtual": true, - "visibility": "internal" - }, - { - "constant": false, - "documentation": { - "id": 762, - "nodeType": "StructuredDocumentation", - "src": "1196:254:4", - "text": " @dev This empty reserved space is put in place to allow future versions to add new\n variables without shifting down storage in the inheritance chain.\n See https://docs.openzeppelin.com/contracts/4.x/upgradeable#storage_gaps" - }, - "id": 766, - "mutability": "mutable", - "name": "__gap", - "nameLocation": "1475:5:4", - "nodeType": "VariableDeclaration", - "scope": 767, - "src": "1455:25:4", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$50_storage", - "typeString": "uint256[50]" - }, - "typeName": { - "baseType": { - "id": 763, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1455:7:4", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 765, - "length": { - "hexValue": "3530", - "id": 764, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1463:2:4", - "typeDescriptions": { - "typeIdentifier": "t_rational_50_by_1", - "typeString": "int_const 50" - }, - "value": "50" - }, - "nodeType": "ArrayTypeName", - "src": "1455:11:4", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$50_storage_ptr", - "typeString": "uint256[50]" - } - }, - "visibility": "private" - } - ], - "scope": 768, - "src": "687:796:4", - "usedErrors": [] - } - ], - "src": "101:1383:4" - }, - "compiler": { - "name": "solc", - "version": "0.8.18+commit.87f61d96.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "3.4.13", - "updatedAt": "2024-12-10T18:52:58.844Z", - "devdoc": { - "details": "Provides information about the current execution context, including the sender of the transaction and its data. While these are generally available via msg.sender and msg.data, they should not be accessed in such a direct manner, since when dealing with meta-transactions the account sending and paying for execution may not be the actual sender (as far as an application is concerned). This contract is only required for intermediate, library-like contracts.", - "events": { - "Initialized(uint8)": { - "details": "Triggered when the contract has been initialized or reinitialized." - } - }, - "kind": "dev", - "methods": {}, - "stateVariables": { - "__gap": { - "details": "This empty reserved space is put in place to allow future versions to add new variables without shifting down storage in the inheritance chain. See https://docs.openzeppelin.com/contracts/4.x/upgradeable#storage_gaps" - } - }, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } -} \ No newline at end of file diff --git a/build/contracts/ERC1967Proxy.json b/build/contracts/ERC1967Proxy.json deleted file mode 100644 index 282bfaa..0000000 --- a/build/contracts/ERC1967Proxy.json +++ /dev/null @@ -1,3749 +0,0 @@ -{ - "contractName": "ERC1967Proxy", - "abi": [ - { - "inputs": [ - { - "internalType": "address", - "name": "_logic", - "type": "address" - }, - { - "internalType": "bytes", - "name": "_data", - "type": "bytes" - } - ], - "stateMutability": "payable", - "type": "constructor" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "previousAdmin", - "type": "address" - }, - { - "indexed": false, - "internalType": "address", - "name": "newAdmin", - "type": "address" - } - ], - "name": "AdminChanged", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "beacon", - "type": "address" - } - ], - "name": "BeaconUpgraded", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "implementation", - "type": "address" - } - ], - "name": "Upgraded", - "type": "event" - }, - { - "stateMutability": "payable", - "type": "fallback" - }, - { - "stateMutability": "payable", - "type": "receive" - } - ], - "metadata": "{\"compiler\":{\"version\":\"0.8.18+commit.87f61d96\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_logic\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"}],\"stateMutability\":\"payable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"previousAdmin\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newAdmin\",\"type\":\"address\"}],\"name\":\"AdminChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"beacon\",\"type\":\"address\"}],\"name\":\"BeaconUpgraded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"implementation\",\"type\":\"address\"}],\"name\":\"Upgraded\",\"type\":\"event\"},{\"stateMutability\":\"payable\",\"type\":\"fallback\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}],\"devdoc\":{\"details\":\"This contract implements an upgradeable proxy. It is upgradeable because calls are delegated to an implementation address that can be changed. This address is stored in storage in the location specified by https://eips.ethereum.org/EIPS/eip-1967[EIP1967], so that it doesn't conflict with the storage layout of the implementation behind the proxy.\",\"events\":{\"AdminChanged(address,address)\":{\"details\":\"Emitted when the admin account has changed.\"},\"BeaconUpgraded(address)\":{\"details\":\"Emitted when the beacon is changed.\"},\"Upgraded(address)\":{\"details\":\"Emitted when the implementation is upgraded.\"}},\"kind\":\"dev\",\"methods\":{\"constructor\":{\"details\":\"Initializes the upgradeable proxy with an initial implementation specified by `_logic`. If `_data` is nonempty, it's used as data in a delegate call to `_logic`. This will typically be an encoded function call, and allows initializing the storage of the proxy like a Solidity constructor.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol\":\"ERC1967Proxy\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":1},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts/interfaces/IERC1967.sol\":{\"keccak256\":\"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263\",\"dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE\"]},\"@openzeppelin/contracts/interfaces/draft-IERC1822.sol\":{\"keccak256\":\"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688\",\"dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr\"]},\"@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol\":{\"keccak256\":\"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5\",\"dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn\"]},\"@openzeppelin/contracts/proxy/ERC1967/ERC1967Upgrade.sol\":{\"keccak256\":\"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2\",\"dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82\"]},\"@openzeppelin/contracts/proxy/Proxy.sol\":{\"keccak256\":\"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472\",\"dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN\"]},\"@openzeppelin/contracts/proxy/beacon/IBeacon.sol\":{\"keccak256\":\"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354\",\"dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce\"]},\"@openzeppelin/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]},\"@openzeppelin/contracts/utils/StorageSlot.sol\":{\"keccak256\":\"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da\",\"dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q\"]}},\"version\":1}", - "bytecode": "0x608060405260405161072338038061072383398101604081905261002291610317565b61002e82826000610035565b5050610434565b61003e8361006b565b60008251118061004b5750805b156100665761006483836100ab60201b6100291760201c565b505b505050565b610074816100d7565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606100d083836040518060600160405280602781526020016106fc602791396101a9565b9392505050565b6100ea8161022260201b6100551760201c565b6101515760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084015b60405180910390fd5b806101887f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc60001b61023160201b6100641760201c565b80546001600160a01b0319166001600160a01b039290921691909117905550565b6060600080856001600160a01b0316856040516101c691906103e5565b600060405180830381855af49150503d8060008114610201576040519150601f19603f3d011682016040523d82523d6000602084013e610206565b606091505b50909250905061021886838387610234565b9695505050505050565b6001600160a01b03163b151590565b90565b606083156102a157825160000361029a5761024e85610222565b61029a5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610148565b50816102ab565b6102ab83836102b3565b949350505050565b8151156102c35781518083602001fd5b8060405162461bcd60e51b81526004016101489190610401565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561030e5781810151838201526020016102f6565b50506000910152565b6000806040838503121561032a57600080fd5b82516001600160a01b038116811461034157600080fd5b60208401519092506001600160401b038082111561035e57600080fd5b818501915085601f83011261037257600080fd5b815181811115610384576103846102dd565b604051601f8201601f19908116603f011681019083821181831017156103ac576103ac6102dd565b816040528281528860208487010111156103c557600080fd5b6103d68360208301602088016102f3565b80955050505050509250929050565b600082516103f78184602087016102f3565b9190910192915050565b60208152600082518060208401526104208160408501602087016102f3565b601f01601f19169190910160400192915050565b6102b9806104436000396000f3fe60806040523661001357610011610017565b005b6100115b610027610022610067565b61009f565b565b606061004e838360405180606001604052806027815260200161025d602791396100c3565b9392505050565b6001600160a01b03163b151590565b90565b600061009a7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e8080156100be573d6000f35b3d6000fd5b6060600080856001600160a01b0316856040516100e0919061020d565b600060405180830381855af49150503d806000811461011b576040519150601f19603f3d011682016040523d82523d6000602084013e610120565b606091505b50915091506101318683838761013b565b9695505050505050565b606083156101ad5782516000036101a65761015585610055565b6101a65760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064015b60405180910390fd5b50816101b7565b6101b783836101bf565b949350505050565b8151156101cf5781518083602001fd5b8060405162461bcd60e51b815260040161019d9190610229565b60005b838110156102045781810151838201526020016101ec565b50506000910152565b6000825161021f8184602087016101e9565b9190910192915050565b60208152600082518060208401526102488160408501602087016101e9565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122029dcfae01a70e86b7ef0d6b2ddb6f1965316c69142dbfe14c54281ffb2f7e5d264736f6c63430008120033416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564", - "deployedBytecode": "0x60806040523661001357610011610017565b005b6100115b610027610022610067565b61009f565b565b606061004e838360405180606001604052806027815260200161025d602791396100c3565b9392505050565b6001600160a01b03163b151590565b90565b600061009a7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e8080156100be573d6000f35b3d6000fd5b6060600080856001600160a01b0316856040516100e0919061020d565b600060405180830381855af49150503d806000811461011b576040519150601f19603f3d011682016040523d82523d6000602084013e610120565b606091505b50915091506101318683838761013b565b9695505050505050565b606083156101ad5782516000036101a65761015585610055565b6101a65760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064015b60405180910390fd5b50816101b7565b6101b783836101bf565b949350505050565b8151156101cf5781518083602001fd5b8060405162461bcd60e51b815260040161019d9190610229565b60005b838110156102045781810151838201526020016101ec565b50506000910152565b6000825161021f8184602087016101e9565b9190910192915050565b60208152600082518060208401526102488160408501602087016101e9565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122029dcfae01a70e86b7ef0d6b2ddb6f1965316c69142dbfe14c54281ffb2f7e5d264736f6c63430008120033", - "immutableReferences": {}, - "generatedSources": [ - { - "ast": { - "nodeType": "YulBlock", - "src": "0:2931:32", - "statements": [ - { - "nodeType": "YulBlock", - "src": "6:3:32", - "statements": [] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "46:95:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "63:1:32", - "type": "", - "value": "0" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "70:3:32", - "type": "", - "value": "224" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "75:10:32", - "type": "", - "value": "0x4e487b71" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "66:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "66:20:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "56:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "56:31:32" - }, - "nodeType": "YulExpressionStatement", - "src": "56:31:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "103:1:32", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "106:4:32", - "type": "", - "value": "0x41" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "96:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "96:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "96:15:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "127:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "130:4:32", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "120:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "120:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "120:15:32" - } - ] - }, - "name": "panic_error_0x41", - "nodeType": "YulFunctionDefinition", - "src": "14:127:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "212:184:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "222:10:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "231:1:32", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "i", - "nodeType": "YulTypedName", - "src": "226:1:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "291:63:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "316:3:32" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "321:1:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "312:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "312:11:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "335:3:32" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "340:1:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "331:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "331:11:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "325:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "325:18:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "305:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "305:39:32" - }, - "nodeType": "YulExpressionStatement", - "src": "305:39:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "252:1:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "255:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "249:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "249:13:32" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "263:19:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "265:15:32", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "274:1:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "277:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "270:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "270:10:32" - }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "265:1:32" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "245:3:32", - "statements": [] - }, - "src": "241:113:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "374:3:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "379:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "370:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "370:16:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "388:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "363:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "363:27:32" - }, - "nodeType": "YulExpressionStatement", - "src": "363:27:32" - } - ] - }, - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "src", - "nodeType": "YulTypedName", - "src": "190:3:32", - "type": "" - }, - { - "name": "dst", - "nodeType": "YulTypedName", - "src": "195:3:32", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "200:6:32", - "type": "" - } - ], - "src": "146:250:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "508:956:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "554:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "563:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "566:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "556:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "556:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "556:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "529:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "538:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "525:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "525:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "550:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "521:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "521:32:32" - }, - "nodeType": "YulIf", - "src": "518:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "579:29:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "598:9:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "592:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "592:16:32" - }, - "variables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "583:5:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "671:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "680:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "683:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "673:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "673:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "673:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "630:5:32" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "641:5:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "656:3:32", - "type": "", - "value": "160" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "661:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "652:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "652:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "665:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "648:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "648:19:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "637:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "637:31:32" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "627:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "627:42:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "620:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "620:50:32" - }, - "nodeType": "YulIf", - "src": "617:70:32" - }, - { - "nodeType": "YulAssignment", - "src": "696:15:32", - "value": { - "name": "value", - "nodeType": "YulIdentifier", - "src": "706:5:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "696:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "720:39:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "744:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "755:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "740:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "740:18:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "734:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "734:25:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "724:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "768:28:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "786:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "790:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "782:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "782:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "794:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "778:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "778:18:32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "772:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "823:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "832:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "835:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "825:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "825:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "825:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "811:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "819:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "808:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "808:14:32" - }, - "nodeType": "YulIf", - "src": "805:34:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "848:32:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "862:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "873:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "858:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "858:22:32" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "852:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "928:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "937:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "940:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "930:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "930:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "930:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "907:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "911:4:32", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "903:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "903:13:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "918:7:32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "899:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "899:27:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "892:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "892:35:32" - }, - "nodeType": "YulIf", - "src": "889:55:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "953:19:32", - "value": { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "969:2:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "963:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "963:9:32" - }, - "variables": [ - { - "name": "_3", - "nodeType": "YulTypedName", - "src": "957:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "995:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "997:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "997:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "997:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "987:2:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "991:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "984:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "984:10:32" - }, - "nodeType": "YulIf", - "src": "981:36:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1026:17:32", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1040:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "1036:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1036:7:32" - }, - "variables": [ - { - "name": "_4", - "nodeType": "YulTypedName", - "src": "1030:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1052:23:32", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1072:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "1066:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "1066:9:32" - }, - "variables": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "1056:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1084:71:32", - "value": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1106:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "1130:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1134:4:32", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1126:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1126:13:32" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "1141:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "1122:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1122:22:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1146:2:32", - "type": "", - "value": "63" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1118:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1118:31:32" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "1151:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "1114:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1114:40:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1102:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1102:53:32" - }, - "variables": [ - { - "name": "newFreePtr", - "nodeType": "YulTypedName", - "src": "1088:10:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1214:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "1216:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "1216:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1216:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "1173:10:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1185:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1170:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "1170:18:32" - }, - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "1193:10:32" - }, - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1205:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "1190:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "1190:22:32" - } - ], - "functionName": { - "name": "or", - "nodeType": "YulIdentifier", - "src": "1167:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "1167:46:32" - }, - "nodeType": "YulIf", - "src": "1164:72:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1252:2:32", - "type": "", - "value": "64" - }, - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "1256:10:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1245:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1245:22:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1245:22:32" - }, - { - "expression": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1283:6:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "1291:2:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1276:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1276:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1276:18:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1340:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1349:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1352:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1342:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1342:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1342:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "1317:2:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "1321:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1313:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1313:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1326:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1309:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1309:20:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "1331:7:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1306:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "1306:33:32" - }, - "nodeType": "YulIf", - "src": "1303:53:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "1404:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1408:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1400:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1400:11:32" - }, - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1417:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1425:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1413:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1413:15:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "1430:2:32" - } - ], - "functionName": { - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulIdentifier", - "src": "1365:34:32" - }, - "nodeType": "YulFunctionCall", - "src": "1365:68:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1365:68:32" - }, - { - "nodeType": "YulAssignment", - "src": "1442:16:32", - "value": { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1452:6:32" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "1442:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_addresst_bytes_memory_ptr_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "466:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "477:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "489:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "497:6:32", - "type": "" - } - ], - "src": "401:1063:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1643:235:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1660:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1671:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1653:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1653:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1653:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1694:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1705:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1690:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1690:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1710:2:32", - "type": "", - "value": "45" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1683:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1683:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1683:30:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1733:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1744:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1729:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1729:18:32" - }, - { - "hexValue": "455243313936373a206e657720696d706c656d656e746174696f6e206973206e", - "kind": "string", - "nodeType": "YulLiteral", - "src": "1749:34:32", - "type": "", - "value": "ERC1967: new implementation is n" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1722:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1722:62:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1722:62:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1804:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1815:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1800:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1800:18:32" - }, - { - "hexValue": "6f74206120636f6e7472616374", - "kind": "string", - "nodeType": "YulLiteral", - "src": "1820:15:32", - "type": "", - "value": "ot a contract" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1793:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1793:43:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1793:43:32" - }, - { - "nodeType": "YulAssignment", - "src": "1845:27:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1857:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1868:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1853:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1853:19:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "1845:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_972b7028e8de0bff0d553b3264eba2312ec98a552add05e58853b313f9f4ac65__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "1620:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "1634:4:32", - "type": "" - } - ], - "src": "1469:409:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2020:150:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "2030:27:32", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "2050:6:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "2044:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "2044:13:32" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "2034:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "2105:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2113:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2101:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2101:17:32" - }, - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "2120:3:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "2125:6:32" - } - ], - "functionName": { - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulIdentifier", - "src": "2066:34:32" - }, - "nodeType": "YulFunctionCall", - "src": "2066:66:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2066:66:32" - }, - { - "nodeType": "YulAssignment", - "src": "2141:23:32", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "2152:3:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "2157:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2148:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2148:16:32" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "2141:3:32" - } - ] - } - ] - }, - "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": "1996:3:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "2001:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "2012:3:32", - "type": "" - } - ], - "src": "1883:287:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2349:179:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2366:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2377:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2359:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2359:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2359:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2400:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2411:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2396:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2396:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2416:2:32", - "type": "", - "value": "29" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2389:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2389:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2389:30:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2439:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2450:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2435:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2435:18:32" - }, - { - "hexValue": "416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374", - "kind": "string", - "nodeType": "YulLiteral", - "src": "2455:31:32", - "type": "", - "value": "Address: call to non-contract" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2428:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2428:59:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2428:59:32" - }, - { - "nodeType": "YulAssignment", - "src": "2496:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2508:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2519:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2504:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2504:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "2496:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_cc2e4e38850b7c0a3e942cfed89b71c77302df25bcb2ec297a0c4ff9ff6b90ad__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "2326:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "2340:4:32", - "type": "" - } - ], - "src": "2175:353:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2654:275:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2671:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2682:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2664:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2664:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2664:21:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2694:27:32", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "2714:6:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "2708:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "2708:13:32" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "2698:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2741:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2752:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2737:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2737:18:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "2757:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2730:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2730:34:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2730:34:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "2812:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2820:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2808:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2808:15:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2829:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2840:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2825:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2825:18:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "2845:6:32" - } - ], - "functionName": { - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulIdentifier", - "src": "2773:34:32" - }, - "nodeType": "YulFunctionCall", - "src": "2773:79:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2773:79:32" - }, - { - "nodeType": "YulAssignment", - "src": "2861:62:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2877:9:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "2896:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2904:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2892:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2892:15:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2913:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "2909:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2909:7:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "2888:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2888:29:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2873:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2873:45:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2920:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2869:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2869:54:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "2861:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "2623:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "2634:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "2645:4:32", - "type": "" - } - ], - "src": "2533:396:32" - } - ] - }, - "contents": "{\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_bytes_memory_ptr_fromMemory(headStart, dataEnd) -> value0, value1\n {\n if slt(sub(dataEnd, headStart), 64) { 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 let offset := mload(add(headStart, 32))\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 value1 := memPtr\n }\n function abi_encode_tuple_t_stringliteral_972b7028e8de0bff0d553b3264eba2312ec98a552add05e58853b313f9f4ac65__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 45)\n mstore(add(headStart, 64), \"ERC1967: new implementation is n\")\n mstore(add(headStart, 96), \"ot a contract\")\n tail := add(headStart, 128)\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_cc2e4e38850b7c0a3e942cfed89b71c77302df25bcb2ec297a0c4ff9ff6b90ad__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 29)\n mstore(add(headStart, 64), \"Address: call to non-contract\")\n tail := add(headStart, 96)\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 let length := mload(value0)\n mstore(add(headStart, 32), length)\n copy_memory_to_memory_with_cleanup(add(value0, 32), add(headStart, 64), length)\n tail := add(add(headStart, and(add(length, 31), not(31))), 64)\n }\n}", - "id": 32, - "language": "Yul", - "name": "#utility.yul" - } - ], - "deployedGeneratedSources": [ - { - "ast": { - "nodeType": "YulBlock", - "src": "0:1317:32", - "statements": [ - { - "nodeType": "YulBlock", - "src": "6:3:32", - "statements": [] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "80:184:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "90:10:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "99:1:32", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "i", - "nodeType": "YulTypedName", - "src": "94:1:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "159:63:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "184:3:32" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "189:1:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "180:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "180:11:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "203:3:32" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "208:1:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "199:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "199:11:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "193:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "193:18:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "173:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "173:39:32" - }, - "nodeType": "YulExpressionStatement", - "src": "173:39:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "120:1:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "123:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "117:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "117:13:32" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "131:19:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "133:15:32", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "142:1:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "145:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "138:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "138:10:32" - }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "133:1:32" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "113:3:32", - "statements": [] - }, - "src": "109:113:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "242:3:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "247:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "238:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "238:16:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "256:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "231:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "231:27:32" - }, - "nodeType": "YulExpressionStatement", - "src": "231:27:32" - } - ] - }, - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "src", - "nodeType": "YulTypedName", - "src": "58:3:32", - "type": "" - }, - { - "name": "dst", - "nodeType": "YulTypedName", - "src": "63:3:32", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "68:6:32", - "type": "" - } - ], - "src": "14:250:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "406:150:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "416:27:32", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "436:6:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "430:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "430:13:32" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "420:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "491:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "499:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "487:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "487:17:32" - }, - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "506:3:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "511:6:32" - } - ], - "functionName": { - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulIdentifier", - "src": "452:34:32" - }, - "nodeType": "YulFunctionCall", - "src": "452:66:32" - }, - "nodeType": "YulExpressionStatement", - "src": "452:66:32" - }, - { - "nodeType": "YulAssignment", - "src": "527:23:32", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "538:3:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "543:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "534:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "534:16:32" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "527:3:32" - } - ] - } - ] - }, - "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": "382:3:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "387:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "398:3:32", - "type": "" - } - ], - "src": "269:287:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "735:179:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "752:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "763:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "745:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "745:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "745:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "786:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "797:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "782:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "782:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "802:2:32", - "type": "", - "value": "29" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "775:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "775:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "775:30:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "825:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "836:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "821:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "821:18:32" - }, - { - "hexValue": "416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374", - "kind": "string", - "nodeType": "YulLiteral", - "src": "841:31:32", - "type": "", - "value": "Address: call to non-contract" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "814:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "814:59:32" - }, - "nodeType": "YulExpressionStatement", - "src": "814:59:32" - }, - { - "nodeType": "YulAssignment", - "src": "882:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "894:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "905:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "890:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "890:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "882:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_cc2e4e38850b7c0a3e942cfed89b71c77302df25bcb2ec297a0c4ff9ff6b90ad__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "712:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "726:4:32", - "type": "" - } - ], - "src": "561:353:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1040:275:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1057:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1068:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1050:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1050:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1050:21:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1080:27:32", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "1100:6:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "1094:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "1094:13:32" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "1084:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1127:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1138:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1123:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1123:18:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "1143:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1116:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1116:34:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1116:34:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "1198:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1206:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1194:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1194:15:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1215:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1226:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1211:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1211:18:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "1231:6:32" - } - ], - "functionName": { - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulIdentifier", - "src": "1159:34:32" - }, - "nodeType": "YulFunctionCall", - "src": "1159:79:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1159:79:32" - }, - { - "nodeType": "YulAssignment", - "src": "1247:62:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1263:9:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "1282:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1290:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1278:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1278:15:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1299:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "1295:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1295:7:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "1274:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1274:29:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1259:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1259:45:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1306:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1255:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1255:54:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "1247:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "1009:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "1020:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "1031:4:32", - "type": "" - } - ], - "src": "919:396:32" - } - ] - }, - "contents": "{\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_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_cc2e4e38850b7c0a3e942cfed89b71c77302df25bcb2ec297a0c4ff9ff6b90ad__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 29)\n mstore(add(headStart, 64), \"Address: call to non-contract\")\n tail := add(headStart, 96)\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 let length := mload(value0)\n mstore(add(headStart, 32), length)\n copy_memory_to_memory_with_cleanup(add(value0, 32), add(headStart, 64), length)\n tail := add(add(headStart, and(add(length, 31), not(31))), 64)\n }\n}", - "id": 32, - "language": "Yul", - "name": "#utility.yul" - } - ], - "sourceMap": "567:723:8:-:0;;;958:112;;;;;;;;;;;;;;;;;;:::i;:::-;1024:39;1042:6;1050:5;1057;1024:17;:39::i;:::-;958:112;;567:723;;2057:265:9;2165:29;2176:17;2165:10;:29::i;:::-;2222:1;2208:4;:11;:15;:28;;;;2227:9;2208:28;2204:112;;;2252:53;2281:17;2300:4;2252:28;;;;;:53;;:::i;:::-;;2204:112;2057:265;;;:::o;1771:152::-;1837:37;1856:17;1837:18;:37::i;:::-;1889:27;;-1:-1:-1;;;;;1889:27:9;;;;;;;;1771:152;:::o;6674:198:14:-;6757:12;6788:77;6809:6;6817:4;6788:77;;;;;;;;;;;;;;;;;:20;:77::i;:::-;6781:84;6674:198;-1:-1:-1;;;6674:198:14:o;1406:259:9:-;1487:37;1506:17;1487:18;;;;;:37;;:::i;:::-;1479:95;;;;-1:-1:-1;;;1479:95:9;;1671:2:32;1479:95:9;;;1653:21:32;1710:2;1690:18;;;1683:30;1749:34;1729:18;;;1722:62;-1:-1:-1;;;1800:18:32;;;1793:43;1853:19;;1479:95:9;;;;;;;;;1641:17;1584:48;1030:66;1611:20;;1584:26;;;;;:48;;:::i;:::-;:74;;-1:-1:-1;;;;;;1584:74:9;-1:-1:-1;;;;;1584:74:9;;;;;;;;;;-1:-1:-1;1406:259:9:o;7058:325:14:-;7199:12;7224;7238:23;7265:6;-1:-1:-1;;;;;7265:19:14;7285:4;7265:25;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;7223:67:14;;-1:-1:-1;7223:67:14;-1:-1:-1;7307:69:14;7334:6;7223:67;;7363:12;7307:26;:69::i;:::-;7300:76;7058:325;-1:-1:-1;;;;;;7058:325:14:o;1412:320::-;-1:-1:-1;;;;;1702:19:14;;:23;;;1412:320::o;1859:190:16:-;2029:4;1859:190::o;7671:628:14:-;7851:12;7879:7;7875:418;;;7906:10;:17;7927:1;7906:22;7902:286;;8121:18;8132:6;8121:10;:18::i;:::-;8113:60;;;;-1:-1:-1;;;8113:60:14;;2377:2:32;8113:60:14;;;2359:21:32;2416:2;2396:18;;;2389:30;2455:31;2435:18;;;2428:59;2504:18;;8113:60:14;2175:353:32;8113:60:14;-1:-1:-1;8208:10:14;8201:17;;7875:418;8249:33;8257:10;8269:12;8249:7;:33::i;:::-;7671:628;;;;;;:::o;8821:540::-;8980:17;;:21;8976:379;;9208:10;9202:17;9264:15;9251:10;9247:2;9243:19;9236:44;8976:379;9331:12;9324:20;;-1:-1:-1;;;9324:20:14;;;;;;;;:::i;14:127:32:-;75:10;70:3;66:20;63:1;56:31;106:4;103:1;96:15;130:4;127:1;120:15;146:250;231:1;241:113;255:6;252:1;249:13;241:113;;;331:11;;;325:18;312:11;;;305:39;277:2;270:10;241:113;;;-1:-1:-1;;388:1:32;370:16;;363:27;146:250::o;401:1063::-;489:6;497;550:2;538:9;529:7;525:23;521:32;518:52;;;566:1;563;556:12;518:52;592:16;;-1:-1:-1;;;;;637:31:32;;627:42;;617:70;;683:1;680;673:12;617:70;755:2;740:18;;734:25;706:5;;-1:-1:-1;;;;;;808:14:32;;;805:34;;;835:1;832;825:12;805:34;873:6;862:9;858:22;848:32;;918:7;911:4;907:2;903:13;899:27;889:55;;940:1;937;930:12;889:55;969:2;963:9;991:2;987;984:10;981:36;;;997:18;;:::i;:::-;1072:2;1066:9;1040:2;1126:13;;-1:-1:-1;;1122:22:32;;;1146:2;1118:31;1114:40;1102:53;;;1170:18;;;1190:22;;;1167:46;1164:72;;;1216:18;;:::i;:::-;1256:10;1252:2;1245:22;1291:2;1283:6;1276:18;1331:7;1326:2;1321;1317;1313:11;1309:20;1306:33;1303:53;;;1352:1;1349;1342:12;1303:53;1365:68;1430:2;1425;1417:6;1413:15;1408:2;1404;1400:11;1365:68;:::i;:::-;1452:6;1442:16;;;;;;;401:1063;;;;;:::o;1883:287::-;2012:3;2050:6;2044:13;2066:66;2125:6;2120:3;2113:4;2105:6;2101:17;2066:66;:::i;:::-;2148:16;;;;;1883:287;-1:-1:-1;;1883:287:32:o;2533:396::-;2682:2;2671:9;2664:21;2645:4;2714:6;2708:13;2757:6;2752:2;2741:9;2737:18;2730:34;2773:79;2845:6;2840:2;2829:9;2825:18;2820:2;2812:6;2808:15;2773:79;:::i;:::-;2913:2;2892:15;-1:-1:-1;;2888:29:32;2873:45;;;;2920:2;2869:54;;2533:396;-1:-1:-1;;2533:396:32:o;:::-;567:723:8;;;;;;", - "deployedSourceMap": "567:723:8:-:0;;;;;;2898:11:10;:9;:11::i;:::-;567:723:8;;2675:11:10;2322:110;2397:28;2407:17;:15;:17::i;:::-;2397:9;:28::i;:::-;2322:110::o;6674:198:14:-;6757:12;6788:77;6809:6;6817:4;6788:77;;;;;;;;;;;;;;;;;:20;:77::i;:::-;6781:84;6674:198;-1:-1:-1;;;6674:198:14:o;1412:320::-;-1:-1:-1;;;;;1702:19:14;;:23;;;1412:320::o;1859:190:16:-;2029:4;1859:190::o;1148:140:8:-;1215:12;1246:35;1030:66:9;1254:54;-1:-1:-1;;;;;1254:54:9;;1175:140;1246:35:8;1239:42;;1148:140;:::o;948:895:10:-;1286:14;1283:1;1280;1267:34;1500:1;1497;1481:14;1478:1;1462:14;1455:5;1442:60;1576:16;1573:1;1570;1555:38;1614:6;1681:66;;;;1796:16;1793:1;1786:27;1681:66;1716:16;1713:1;1706:27;7058:325:14;7199:12;7224;7238:23;7265:6;-1:-1:-1;;;;;7265:19:14;7285:4;7265:25;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7223:67;;;;7307:69;7334:6;7342:7;7351:10;7363:12;7307:26;:69::i;:::-;7300:76;7058:325;-1:-1:-1;;;;;;7058:325:14:o;7671:628::-;7851:12;7879:7;7875:418;;;7906:10;:17;7927:1;7906:22;7902:286;;8121:18;8132:6;8121:10;:18::i;:::-;8113:60;;;;-1:-1:-1;;;8113:60:14;;763:2:32;8113:60:14;;;745:21:32;802:2;782:18;;;775:30;841:31;821:18;;;814:59;890:18;;8113:60:14;;;;;;;;;-1:-1:-1;8208:10:14;8201:17;;7875:418;8249:33;8257:10;8269:12;8249:7;:33::i;:::-;7671:628;;;;;;:::o;8821:540::-;8980:17;;:21;8976:379;;9208:10;9202:17;9264:15;9251:10;9247:2;9243:19;9236:44;8976:379;9331:12;9324:20;;-1:-1:-1;;;9324:20:14;;;;;;;;:::i;14:250:32:-;99:1;109:113;123:6;120:1;117:13;109:113;;;199:11;;;193:18;180:11;;;173:39;145:2;138:10;109:113;;;-1:-1:-1;;256:1:32;238:16;;231:27;14:250::o;269:287::-;398:3;436:6;430:13;452:66;511:6;506:3;499:4;491:6;487:17;452:66;:::i;:::-;534:16;;;;;269:287;-1:-1:-1;;269:287:32:o;919:396::-;1068:2;1057:9;1050:21;1031:4;1100:6;1094:13;1143:6;1138:2;1127:9;1123:18;1116:34;1159:79;1231:6;1226:2;1215:9;1211:18;1206:2;1198:6;1194:15;1159:79;:::i;:::-;1299:2;1278:15;-1:-1:-1;;1274:29:32;1259:45;;;;1306:2;1255:54;;919:396;-1:-1:-1;;919:396:32:o", - "source": "// SPDX-License-Identifier: MIT\n// OpenZeppelin Contracts (last updated v4.7.0) (proxy/ERC1967/ERC1967Proxy.sol)\n\npragma solidity ^0.8.0;\n\nimport \"../Proxy.sol\";\nimport \"./ERC1967Upgrade.sol\";\n\n/**\n * @dev This contract implements an upgradeable proxy. It is upgradeable because calls are delegated to an\n * implementation address that can be changed. This address is stored in storage in the location specified by\n * https://eips.ethereum.org/EIPS/eip-1967[EIP1967], so that it doesn't conflict with the storage layout of the\n * implementation behind the proxy.\n */\ncontract ERC1967Proxy is Proxy, ERC1967Upgrade {\n /**\n * @dev Initializes the upgradeable proxy with an initial implementation specified by `_logic`.\n *\n * If `_data` is nonempty, it's used as data in a delegate call to `_logic`. This will typically be an encoded\n * function call, and allows initializing the storage of the proxy like a Solidity constructor.\n */\n constructor(address _logic, bytes memory _data) payable {\n _upgradeToAndCall(_logic, _data, false);\n }\n\n /**\n * @dev Returns the current implementation address.\n */\n function _implementation() internal view virtual override returns (address impl) {\n return ERC1967Upgrade._getImplementation();\n }\n}\n", - "sourcePath": "@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol", - "ast": { - "absolutePath": "@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol", - "exportedSymbols": { - "Address": [ - 2103 - ], - "ERC1967Proxy": [ - 948 - ], - "ERC1967Upgrade": [ - 1252 - ], - "IBeacon": [ - 1314 - ], - "IERC1822Proxiable": [ - 911 - ], - "IERC1967": [ - 901 - ], - "Proxy": [ - 1304 - ], - "StorageSlot": [ - 2243 - ] - }, - "id": 949, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 913, - "literals": [ - "solidity", - "^", - "0.8", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "114:23:8" - }, - { - "absolutePath": "@openzeppelin/contracts/proxy/Proxy.sol", - "file": "../Proxy.sol", - "id": 914, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 949, - "sourceUnit": 1305, - "src": "139:22:8", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "@openzeppelin/contracts/proxy/ERC1967/ERC1967Upgrade.sol", - "file": "./ERC1967Upgrade.sol", - "id": 915, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 949, - "sourceUnit": 1253, - "src": "162:30:8", - "symbolAliases": [], - "unitAlias": "" - }, - { - "abstract": false, - "baseContracts": [ - { - "baseName": { - "id": 917, - "name": "Proxy", - "nameLocations": [ - "592:5:8" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 1304, - "src": "592:5:8" - }, - "id": 918, - "nodeType": "InheritanceSpecifier", - "src": "592:5:8" - }, - { - "baseName": { - "id": 919, - "name": "ERC1967Upgrade", - "nameLocations": [ - "599:14:8" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 1252, - "src": "599:14:8" - }, - "id": 920, - "nodeType": "InheritanceSpecifier", - "src": "599:14:8" - } - ], - "canonicalName": "ERC1967Proxy", - "contractDependencies": [], - "contractKind": "contract", - "documentation": { - "id": 916, - "nodeType": "StructuredDocumentation", - "src": "194:372:8", - "text": " @dev This contract implements an upgradeable proxy. It is upgradeable because calls are delegated to an\n implementation address that can be changed. This address is stored in storage in the location specified by\n https://eips.ethereum.org/EIPS/eip-1967[EIP1967], so that it doesn't conflict with the storage layout of the\n implementation behind the proxy." - }, - "fullyImplemented": true, - "id": 948, - "linearizedBaseContracts": [ - 948, - 1252, - 901, - 1304 - ], - "name": "ERC1967Proxy", - "nameLocation": "576:12:8", - "nodeType": "ContractDefinition", - "nodes": [ - { - "body": { - "id": 934, - "nodeType": "Block", - "src": "1014:56:8", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 929, - "name": "_logic", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 923, - "src": "1042:6:8", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 930, - "name": "_data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 925, - "src": "1050:5:8", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "hexValue": "66616c7365", - "id": 931, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1057:5:8", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "false" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 928, - "name": "_upgradeToAndCall", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1047, - "src": "1024:17:8", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_bytes_memory_ptr_$_t_bool_$returns$__$", - "typeString": "function (address,bytes memory,bool)" - } - }, - "id": 932, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1024:39:8", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 933, - "nodeType": "ExpressionStatement", - "src": "1024:39:8" - } - ] - }, - "documentation": { - "id": 921, - "nodeType": "StructuredDocumentation", - "src": "620:333:8", - "text": " @dev Initializes the upgradeable proxy with an initial implementation specified by `_logic`.\n If `_data` is nonempty, it's used as data in a delegate call to `_logic`. This will typically be an encoded\n function call, and allows initializing the storage of the proxy like a Solidity constructor." - }, - "id": 935, - "implemented": true, - "kind": "constructor", - "modifiers": [], - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 926, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 923, - "mutability": "mutable", - "name": "_logic", - "nameLocation": "978:6:8", - "nodeType": "VariableDeclaration", - "scope": 935, - "src": "970:14:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 922, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "970:7:8", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 925, - "mutability": "mutable", - "name": "_data", - "nameLocation": "999:5:8", - "nodeType": "VariableDeclaration", - "scope": 935, - "src": "986:18:8", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 924, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "986:5:8", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "969:36:8" - }, - "returnParameters": { - "id": 927, - "nodeType": "ParameterList", - "parameters": [], - "src": "1014:0:8" - }, - "scope": 948, - "src": "958:112:8", - "stateMutability": "payable", - "virtual": false, - "visibility": "public" - }, - { - "baseFunctions": [ - 1269 - ], - "body": { - "id": 946, - "nodeType": "Block", - "src": "1229:59:8", - "statements": [ - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "expression": { - "id": 942, - "name": "ERC1967Upgrade", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1252, - "src": "1246:14:8", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ERC1967Upgrade_$1252_$", - "typeString": "type(contract ERC1967Upgrade)" - } - }, - "id": 943, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "1261:18:8", - "memberName": "_getImplementation", - "nodeType": "MemberAccess", - "referencedDeclaration": 978, - "src": "1246:33:8", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", - "typeString": "function () view returns (address)" - } - }, - "id": 944, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1246:35:8", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "functionReturnParameters": 941, - "id": 945, - "nodeType": "Return", - "src": "1239:42:8" - } - ] - }, - "documentation": { - "id": 936, - "nodeType": "StructuredDocumentation", - "src": "1076:67:8", - "text": " @dev Returns the current implementation address." - }, - "id": 947, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_implementation", - "nameLocation": "1157:15:8", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 938, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "1197:8:8" - }, - "parameters": { - "id": 937, - "nodeType": "ParameterList", - "parameters": [], - "src": "1172:2:8" - }, - "returnParameters": { - "id": 941, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 940, - "mutability": "mutable", - "name": "impl", - "nameLocation": "1223:4:8", - "nodeType": "VariableDeclaration", - "scope": 947, - "src": "1215:12:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 939, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1215:7:8", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "1214:14:8" - }, - "scope": 948, - "src": "1148:140:8", - "stateMutability": "view", - "virtual": true, - "visibility": "internal" - } - ], - "scope": 949, - "src": "567:723:8", - "usedErrors": [] - } - ], - "src": "114:1177:8" - }, - "compiler": { - "name": "solc", - "version": "0.8.18+commit.87f61d96.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "3.4.13", - "updatedAt": "2024-12-10T18:52:58.845Z", - "devdoc": { - "details": "This contract implements an upgradeable proxy. It is upgradeable because calls are delegated to an implementation address that can be changed. This address is stored in storage in the location specified by https://eips.ethereum.org/EIPS/eip-1967[EIP1967], so that it doesn't conflict with the storage layout of the implementation behind the proxy.", - "events": { - "AdminChanged(address,address)": { - "details": "Emitted when the admin account has changed." - }, - "BeaconUpgraded(address)": { - "details": "Emitted when the beacon is changed." - }, - "Upgraded(address)": { - "details": "Emitted when the implementation is upgraded." - } - }, - "kind": "dev", - "methods": { - "constructor": { - "details": "Initializes the upgradeable proxy with an initial implementation specified by `_logic`. If `_data` is nonempty, it's used as data in a delegate call to `_logic`. This will typically be an encoded function call, and allows initializing the storage of the proxy like a Solidity constructor." - } - }, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } -} \ No newline at end of file diff --git a/build/contracts/ERC1967Upgrade.json b/build/contracts/ERC1967Upgrade.json deleted file mode 100644 index 967ff27..0000000 --- a/build/contracts/ERC1967Upgrade.json +++ /dev/null @@ -1,3980 +0,0 @@ -{ - "contractName": "ERC1967Upgrade", - "abi": [ - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "previousAdmin", - "type": "address" - }, - { - "indexed": false, - "internalType": "address", - "name": "newAdmin", - "type": "address" - } - ], - "name": "AdminChanged", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "beacon", - "type": "address" - } - ], - "name": "BeaconUpgraded", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "implementation", - "type": "address" - } - ], - "name": "Upgraded", - "type": "event" - } - ], - "metadata": "{\"compiler\":{\"version\":\"0.8.18+commit.87f61d96\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"previousAdmin\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newAdmin\",\"type\":\"address\"}],\"name\":\"AdminChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"beacon\",\"type\":\"address\"}],\"name\":\"BeaconUpgraded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"implementation\",\"type\":\"address\"}],\"name\":\"Upgraded\",\"type\":\"event\"}],\"devdoc\":{\"details\":\"This abstract contract provides getters and event emitting update functions for https://eips.ethereum.org/EIPS/eip-1967[EIP1967] slots. _Available since v4.1._\",\"events\":{\"AdminChanged(address,address)\":{\"details\":\"Emitted when the admin account has changed.\"},\"BeaconUpgraded(address)\":{\"details\":\"Emitted when the beacon is changed.\"},\"Upgraded(address)\":{\"details\":\"Emitted when the implementation is upgraded.\"}},\"kind\":\"dev\",\"methods\":{},\"stateVariables\":{\"_ADMIN_SLOT\":{\"details\":\"Storage slot with the admin of the contract. This is the keccak-256 hash of \\\"eip1967.proxy.admin\\\" subtracted by 1, and is validated in the constructor.\"},\"_BEACON_SLOT\":{\"details\":\"The storage slot of the UpgradeableBeacon contract which defines the implementation for this proxy. This is bytes32(uint256(keccak256('eip1967.proxy.beacon')) - 1)) and is validated in the constructor.\"},\"_IMPLEMENTATION_SLOT\":{\"details\":\"Storage slot with the address of the current implementation. This is the keccak-256 hash of \\\"eip1967.proxy.implementation\\\" subtracted by 1, and is validated in the constructor.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@openzeppelin/contracts/proxy/ERC1967/ERC1967Upgrade.sol\":\"ERC1967Upgrade\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":1},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts/interfaces/IERC1967.sol\":{\"keccak256\":\"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263\",\"dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE\"]},\"@openzeppelin/contracts/interfaces/draft-IERC1822.sol\":{\"keccak256\":\"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688\",\"dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr\"]},\"@openzeppelin/contracts/proxy/ERC1967/ERC1967Upgrade.sol\":{\"keccak256\":\"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2\",\"dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82\"]},\"@openzeppelin/contracts/proxy/beacon/IBeacon.sol\":{\"keccak256\":\"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354\",\"dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce\"]},\"@openzeppelin/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]},\"@openzeppelin/contracts/utils/StorageSlot.sol\":{\"keccak256\":\"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da\",\"dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q\"]}},\"version\":1}", - "bytecode": "0x", - "deployedBytecode": "0x", - "immutableReferences": {}, - "generatedSources": [], - "deployedGeneratedSources": [], - "sourceMap": "", - "deployedSourceMap": "", - "source": "// SPDX-License-Identifier: MIT\n// OpenZeppelin Contracts (last updated v4.9.0) (proxy/ERC1967/ERC1967Upgrade.sol)\n\npragma solidity ^0.8.2;\n\nimport \"../beacon/IBeacon.sol\";\nimport \"../../interfaces/IERC1967.sol\";\nimport \"../../interfaces/draft-IERC1822.sol\";\nimport \"../../utils/Address.sol\";\nimport \"../../utils/StorageSlot.sol\";\n\n/**\n * @dev This abstract contract provides getters and event emitting update functions for\n * https://eips.ethereum.org/EIPS/eip-1967[EIP1967] slots.\n *\n * _Available since v4.1._\n */\nabstract contract ERC1967Upgrade is IERC1967 {\n // This is the keccak-256 hash of \"eip1967.proxy.rollback\" subtracted by 1\n bytes32 private constant _ROLLBACK_SLOT = 0x4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd9143;\n\n /**\n * @dev Storage slot with the address of the current implementation.\n * This is the keccak-256 hash of \"eip1967.proxy.implementation\" subtracted by 1, and is\n * validated in the constructor.\n */\n bytes32 internal constant _IMPLEMENTATION_SLOT = 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc;\n\n /**\n * @dev Returns the current implementation address.\n */\n function _getImplementation() internal view returns (address) {\n return StorageSlot.getAddressSlot(_IMPLEMENTATION_SLOT).value;\n }\n\n /**\n * @dev Stores a new address in the EIP1967 implementation slot.\n */\n function _setImplementation(address newImplementation) private {\n require(Address.isContract(newImplementation), \"ERC1967: new implementation is not a contract\");\n StorageSlot.getAddressSlot(_IMPLEMENTATION_SLOT).value = newImplementation;\n }\n\n /**\n * @dev Perform implementation upgrade\n *\n * Emits an {Upgraded} event.\n */\n function _upgradeTo(address newImplementation) internal {\n _setImplementation(newImplementation);\n emit Upgraded(newImplementation);\n }\n\n /**\n * @dev Perform implementation upgrade with additional setup call.\n *\n * Emits an {Upgraded} event.\n */\n function _upgradeToAndCall(address newImplementation, bytes memory data, bool forceCall) internal {\n _upgradeTo(newImplementation);\n if (data.length > 0 || forceCall) {\n Address.functionDelegateCall(newImplementation, data);\n }\n }\n\n /**\n * @dev Perform implementation upgrade with security checks for UUPS proxies, and additional setup call.\n *\n * Emits an {Upgraded} event.\n */\n function _upgradeToAndCallUUPS(address newImplementation, bytes memory data, bool forceCall) internal {\n // Upgrades from old implementations will perform a rollback test. This test requires the new\n // implementation to upgrade back to the old, non-ERC1822 compliant, implementation. Removing\n // this special case will break upgrade paths from old UUPS implementation to new ones.\n if (StorageSlot.getBooleanSlot(_ROLLBACK_SLOT).value) {\n _setImplementation(newImplementation);\n } else {\n try IERC1822Proxiable(newImplementation).proxiableUUID() returns (bytes32 slot) {\n require(slot == _IMPLEMENTATION_SLOT, \"ERC1967Upgrade: unsupported proxiableUUID\");\n } catch {\n revert(\"ERC1967Upgrade: new implementation is not UUPS\");\n }\n _upgradeToAndCall(newImplementation, data, forceCall);\n }\n }\n\n /**\n * @dev Storage slot with the admin of the contract.\n * This is the keccak-256 hash of \"eip1967.proxy.admin\" subtracted by 1, and is\n * validated in the constructor.\n */\n bytes32 internal constant _ADMIN_SLOT = 0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103;\n\n /**\n * @dev Returns the current admin.\n */\n function _getAdmin() internal view returns (address) {\n return StorageSlot.getAddressSlot(_ADMIN_SLOT).value;\n }\n\n /**\n * @dev Stores a new address in the EIP1967 admin slot.\n */\n function _setAdmin(address newAdmin) private {\n require(newAdmin != address(0), \"ERC1967: new admin is the zero address\");\n StorageSlot.getAddressSlot(_ADMIN_SLOT).value = newAdmin;\n }\n\n /**\n * @dev Changes the admin of the proxy.\n *\n * Emits an {AdminChanged} event.\n */\n function _changeAdmin(address newAdmin) internal {\n emit AdminChanged(_getAdmin(), newAdmin);\n _setAdmin(newAdmin);\n }\n\n /**\n * @dev The storage slot of the UpgradeableBeacon contract which defines the implementation for this proxy.\n * This is bytes32(uint256(keccak256('eip1967.proxy.beacon')) - 1)) and is validated in the constructor.\n */\n bytes32 internal constant _BEACON_SLOT = 0xa3f0ad74e5423aebfd80d3ef4346578335a9a72aeaee59ff6cb3582b35133d50;\n\n /**\n * @dev Returns the current beacon.\n */\n function _getBeacon() internal view returns (address) {\n return StorageSlot.getAddressSlot(_BEACON_SLOT).value;\n }\n\n /**\n * @dev Stores a new beacon in the EIP1967 beacon slot.\n */\n function _setBeacon(address newBeacon) private {\n require(Address.isContract(newBeacon), \"ERC1967: new beacon is not a contract\");\n require(\n Address.isContract(IBeacon(newBeacon).implementation()),\n \"ERC1967: beacon implementation is not a contract\"\n );\n StorageSlot.getAddressSlot(_BEACON_SLOT).value = newBeacon;\n }\n\n /**\n * @dev Perform beacon upgrade with additional setup call. Note: This upgrades the address of the beacon, it does\n * not upgrade the implementation contained in the beacon (see {UpgradeableBeacon-_setImplementation} for that).\n *\n * Emits a {BeaconUpgraded} event.\n */\n function _upgradeBeaconToAndCall(address newBeacon, bytes memory data, bool forceCall) internal {\n _setBeacon(newBeacon);\n emit BeaconUpgraded(newBeacon);\n if (data.length > 0 || forceCall) {\n Address.functionDelegateCall(IBeacon(newBeacon).implementation(), data);\n }\n }\n}\n", - "sourcePath": "@openzeppelin/contracts/proxy/ERC1967/ERC1967Upgrade.sol", - "ast": { - "absolutePath": "@openzeppelin/contracts/proxy/ERC1967/ERC1967Upgrade.sol", - "exportedSymbols": { - "Address": [ - 2103 - ], - "ERC1967Upgrade": [ - 1252 - ], - "IBeacon": [ - 1314 - ], - "IERC1822Proxiable": [ - 911 - ], - "IERC1967": [ - 901 - ], - "StorageSlot": [ - 2243 - ] - }, - "id": 1253, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 950, - "literals": [ - "solidity", - "^", - "0.8", - ".2" - ], - "nodeType": "PragmaDirective", - "src": "116:23:9" - }, - { - "absolutePath": "@openzeppelin/contracts/proxy/beacon/IBeacon.sol", - "file": "../beacon/IBeacon.sol", - "id": 951, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 1253, - "sourceUnit": 1315, - "src": "141:31:9", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "@openzeppelin/contracts/interfaces/IERC1967.sol", - "file": "../../interfaces/IERC1967.sol", - "id": 952, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 1253, - "sourceUnit": 902, - "src": "173:39:9", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "@openzeppelin/contracts/interfaces/draft-IERC1822.sol", - "file": "../../interfaces/draft-IERC1822.sol", - "id": 953, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 1253, - "sourceUnit": 912, - "src": "213:45:9", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "@openzeppelin/contracts/utils/Address.sol", - "file": "../../utils/Address.sol", - "id": 954, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 1253, - "sourceUnit": 2104, - "src": "259:33:9", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "@openzeppelin/contracts/utils/StorageSlot.sol", - "file": "../../utils/StorageSlot.sol", - "id": 955, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 1253, - "sourceUnit": 2244, - "src": "293:37:9", - "symbolAliases": [], - "unitAlias": "" - }, - { - "abstract": true, - "baseContracts": [ - { - "baseName": { - "id": 957, - "name": "IERC1967", - "nameLocations": [ - "553:8:9" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 901, - "src": "553:8:9" - }, - "id": 958, - "nodeType": "InheritanceSpecifier", - "src": "553:8:9" - } - ], - "canonicalName": "ERC1967Upgrade", - "contractDependencies": [], - "contractKind": "contract", - "documentation": { - "id": 956, - "nodeType": "StructuredDocumentation", - "src": "332:184:9", - "text": " @dev This abstract contract provides getters and event emitting update functions for\n https://eips.ethereum.org/EIPS/eip-1967[EIP1967] slots.\n _Available since v4.1._" - }, - "fullyImplemented": true, - "id": 1252, - "linearizedBaseContracts": [ - 1252, - 901 - ], - "name": "ERC1967Upgrade", - "nameLocation": "535:14:9", - "nodeType": "ContractDefinition", - "nodes": [ - { - "constant": true, - "id": 961, - "mutability": "constant", - "name": "_ROLLBACK_SLOT", - "nameLocation": "672:14:9", - "nodeType": "VariableDeclaration", - "scope": 1252, - "src": "647:108:9", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 959, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "647:7:9", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": { - "hexValue": "307834393130666466613136666564333236306564306537313437663763633664613131613630323038623562393430366431326136333536313466666439313433", - "id": 960, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "689:66:9", - "typeDescriptions": { - "typeIdentifier": "t_rational_33048860383849004559742813297059419343339852917517107368639918720169455489347_by_1", - "typeString": "int_const 3304...(69 digits omitted)...9347" - }, - "value": "0x4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd9143" - }, - "visibility": "private" - }, - { - "constant": true, - "documentation": { - "id": 962, - "nodeType": "StructuredDocumentation", - "src": "762:214:9", - "text": " @dev Storage slot with the address of the current implementation.\n This is the keccak-256 hash of \"eip1967.proxy.implementation\" subtracted by 1, and is\n validated in the constructor." - }, - "id": 965, - "mutability": "constant", - "name": "_IMPLEMENTATION_SLOT", - "nameLocation": "1007:20:9", - "nodeType": "VariableDeclaration", - "scope": 1252, - "src": "981:115:9", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 963, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "981:7:9", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": { - "hexValue": "307833363038393461313362613161333231303636376338323834393264623938646361336532303736636333373335613932306133636135303564333832626263", - "id": 964, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1030:66:9", - "typeDescriptions": { - "typeIdentifier": "t_rational_24440054405305269366569402256811496959409073762505157381672968839269610695612_by_1", - "typeString": "int_const 2444...(69 digits omitted)...5612" - }, - "value": "0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc" - }, - "visibility": "internal" - }, - { - "body": { - "id": 977, - "nodeType": "Block", - "src": "1237:78:9", - "statements": [ - { - "expression": { - "expression": { - "arguments": [ - { - "id": 973, - "name": "_IMPLEMENTATION_SLOT", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 965, - "src": "1281:20:9", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "expression": { - "id": 971, - "name": "StorageSlot", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2243, - "src": "1254:11:9", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_StorageSlot_$2243_$", - "typeString": "type(library StorageSlot)" - } - }, - "id": 972, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "1266:14:9", - "memberName": "getAddressSlot", - "nodeType": "MemberAccess", - "referencedDeclaration": 2165, - "src": "1254:26:9", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_bytes32_$returns$_t_struct$_AddressSlot_$2139_storage_ptr_$", - "typeString": "function (bytes32) pure returns (struct StorageSlot.AddressSlot storage pointer)" - } - }, - "id": 974, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1254:48:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_struct$_AddressSlot_$2139_storage_ptr", - "typeString": "struct StorageSlot.AddressSlot storage pointer" - } - }, - "id": 975, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "1303:5:9", - "memberName": "value", - "nodeType": "MemberAccess", - "referencedDeclaration": 2138, - "src": "1254:54:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "functionReturnParameters": 970, - "id": 976, - "nodeType": "Return", - "src": "1247:61:9" - } - ] - }, - "documentation": { - "id": 966, - "nodeType": "StructuredDocumentation", - "src": "1103:67:9", - "text": " @dev Returns the current implementation address." - }, - "id": 978, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_getImplementation", - "nameLocation": "1184:18:9", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 967, - "nodeType": "ParameterList", - "parameters": [], - "src": "1202:2:9" - }, - "returnParameters": { - "id": 970, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 969, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 978, - "src": "1228:7:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 968, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1228:7:9", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "1227:9:9" - }, - "scope": 1252, - "src": "1175:140:9", - "stateMutability": "view", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 1001, - "nodeType": "Block", - "src": "1469:196:9", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "id": 987, - "name": "newImplementation", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 981, - "src": "1506:17:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "expression": { - "id": 985, - "name": "Address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2103, - "src": "1487:7:9", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_Address_$2103_$", - "typeString": "type(library Address)" - } - }, - "id": 986, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "1495:10:9", - "memberName": "isContract", - "nodeType": "MemberAccess", - "referencedDeclaration": 1791, - "src": "1487:18:9", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", - "typeString": "function (address) view returns (bool)" - } - }, - "id": 988, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1487:37:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "455243313936373a206e657720696d706c656d656e746174696f6e206973206e6f74206120636f6e7472616374", - "id": 989, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1526:47:9", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_972b7028e8de0bff0d553b3264eba2312ec98a552add05e58853b313f9f4ac65", - "typeString": "literal_string \"ERC1967: new implementation is not a contract\"" - }, - "value": "ERC1967: new implementation is not a contract" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_972b7028e8de0bff0d553b3264eba2312ec98a552add05e58853b313f9f4ac65", - "typeString": "literal_string \"ERC1967: new implementation is not a contract\"" - } - ], - "id": 984, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "1479:7:9", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 990, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1479:95:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 991, - "nodeType": "ExpressionStatement", - "src": "1479:95:9" - }, - { - "expression": { - "id": 999, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "arguments": [ - { - "id": 995, - "name": "_IMPLEMENTATION_SLOT", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 965, - "src": "1611:20:9", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "expression": { - "id": 992, - "name": "StorageSlot", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2243, - "src": "1584:11:9", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_StorageSlot_$2243_$", - "typeString": "type(library StorageSlot)" - } - }, - "id": 994, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "1596:14:9", - "memberName": "getAddressSlot", - "nodeType": "MemberAccess", - "referencedDeclaration": 2165, - "src": "1584:26:9", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_bytes32_$returns$_t_struct$_AddressSlot_$2139_storage_ptr_$", - "typeString": "function (bytes32) pure returns (struct StorageSlot.AddressSlot storage pointer)" - } - }, - "id": 996, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1584:48:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_struct$_AddressSlot_$2139_storage_ptr", - "typeString": "struct StorageSlot.AddressSlot storage pointer" - } - }, - "id": 997, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberLocation": "1633:5:9", - "memberName": "value", - "nodeType": "MemberAccess", - "referencedDeclaration": 2138, - "src": "1584:54:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 998, - "name": "newImplementation", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 981, - "src": "1641:17:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "1584:74:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1000, - "nodeType": "ExpressionStatement", - "src": "1584:74:9" - } - ] - }, - "documentation": { - "id": 979, - "nodeType": "StructuredDocumentation", - "src": "1321:80:9", - "text": " @dev Stores a new address in the EIP1967 implementation slot." - }, - "id": 1002, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_setImplementation", - "nameLocation": "1415:18:9", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 982, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 981, - "mutability": "mutable", - "name": "newImplementation", - "nameLocation": "1442:17:9", - "nodeType": "VariableDeclaration", - "scope": 1002, - "src": "1434:25:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 980, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1434:7:9", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "1433:27:9" - }, - "returnParameters": { - "id": 983, - "nodeType": "ParameterList", - "parameters": [], - "src": "1469:0:9" - }, - "scope": 1252, - "src": "1406:259:9", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 1016, - "nodeType": "Block", - "src": "1827:96:9", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 1009, - "name": "newImplementation", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1005, - "src": "1856:17:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 1008, - "name": "_setImplementation", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1002, - "src": "1837:18:9", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$__$", - "typeString": "function (address)" - } - }, - "id": 1010, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1837:37:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1011, - "nodeType": "ExpressionStatement", - "src": "1837:37:9" - }, - { - "eventCall": { - "arguments": [ - { - "id": 1013, - "name": "newImplementation", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1005, - "src": "1898:17:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 1012, - "name": "Upgraded", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 888, - "src": "1889:8:9", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$returns$__$", - "typeString": "function (address)" - } - }, - "id": 1014, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1889:27:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1015, - "nodeType": "EmitStatement", - "src": "1884:32:9" - } - ] - }, - "documentation": { - "id": 1003, - "nodeType": "StructuredDocumentation", - "src": "1671:95:9", - "text": " @dev Perform implementation upgrade\n Emits an {Upgraded} event." - }, - "id": 1017, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_upgradeTo", - "nameLocation": "1780:10:9", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1006, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1005, - "mutability": "mutable", - "name": "newImplementation", - "nameLocation": "1799:17:9", - "nodeType": "VariableDeclaration", - "scope": 1017, - "src": "1791:25:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1004, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1791:7:9", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "1790:27:9" - }, - "returnParameters": { - "id": 1007, - "nodeType": "ParameterList", - "parameters": [], - "src": "1827:0:9" - }, - "scope": 1252, - "src": "1771:152:9", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 1046, - "nodeType": "Block", - "src": "2155:167:9", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 1028, - "name": "newImplementation", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1020, - "src": "2176:17:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 1027, - "name": "_upgradeTo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1017, - "src": "2165:10:9", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$__$", - "typeString": "function (address)" - } - }, - "id": 1029, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2165:29:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1030, - "nodeType": "ExpressionStatement", - "src": "2165:29:9" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1036, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1034, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 1031, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1022, - "src": "2208:4:9", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 1032, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "2213:6:9", - "memberName": "length", - "nodeType": "MemberAccess", - "src": "2208:11:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 1033, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2222:1:9", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "2208:15:9", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "id": 1035, - "name": "forceCall", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1024, - "src": "2227:9:9", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "2208:28:9", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1045, - "nodeType": "IfStatement", - "src": "2204:112:9", - "trueBody": { - "id": 1044, - "nodeType": "Block", - "src": "2238:78:9", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 1040, - "name": "newImplementation", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1020, - "src": "2281:17:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 1041, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1022, - "src": "2300:4:9", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "id": 1037, - "name": "Address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2103, - "src": "2252:7:9", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_Address_$2103_$", - "typeString": "type(library Address)" - } - }, - "id": 1039, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "2260:20:9", - "memberName": "functionDelegateCall", - "nodeType": "MemberAccess", - "referencedDeclaration": 1990, - "src": "2252:28:9", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_bytes_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (address,bytes memory) returns (bytes memory)" - } - }, - "id": 1042, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2252:53:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 1043, - "nodeType": "ExpressionStatement", - "src": "2252:53:9" - } - ] - } - } - ] - }, - "documentation": { - "id": 1018, - "nodeType": "StructuredDocumentation", - "src": "1929:123:9", - "text": " @dev Perform implementation upgrade with additional setup call.\n Emits an {Upgraded} event." - }, - "id": 1047, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_upgradeToAndCall", - "nameLocation": "2066:17:9", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1025, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1020, - "mutability": "mutable", - "name": "newImplementation", - "nameLocation": "2092:17:9", - "nodeType": "VariableDeclaration", - "scope": 1047, - "src": "2084:25:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1019, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2084:7:9", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1022, - "mutability": "mutable", - "name": "data", - "nameLocation": "2124:4:9", - "nodeType": "VariableDeclaration", - "scope": 1047, - "src": "2111:17:9", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1021, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "2111:5:9", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1024, - "mutability": "mutable", - "name": "forceCall", - "nameLocation": "2135:9:9", - "nodeType": "VariableDeclaration", - "scope": 1047, - "src": "2130:14:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1023, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "2130:4:9", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "2083:62:9" - }, - "returnParameters": { - "id": 1026, - "nodeType": "ParameterList", - "parameters": [], - "src": "2155:0:9" - }, - "scope": 1252, - "src": "2057:265:9", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 1099, - "nodeType": "Block", - "src": "2596:820:9", - "statements": [ - { - "condition": { - "expression": { - "arguments": [ - { - "id": 1059, - "name": "_ROLLBACK_SLOT", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 961, - "src": "2937:14:9", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "expression": { - "id": 1057, - "name": "StorageSlot", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2243, - "src": "2910:11:9", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_StorageSlot_$2243_$", - "typeString": "type(library StorageSlot)" - } - }, - "id": 1058, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "2922:14:9", - "memberName": "getBooleanSlot", - "nodeType": "MemberAccess", - "referencedDeclaration": 2176, - "src": "2910:26:9", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_bytes32_$returns$_t_struct$_BooleanSlot_$2142_storage_ptr_$", - "typeString": "function (bytes32) pure returns (struct StorageSlot.BooleanSlot storage pointer)" - } - }, - "id": 1060, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2910:42:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_struct$_BooleanSlot_$2142_storage_ptr", - "typeString": "struct StorageSlot.BooleanSlot storage pointer" - } - }, - "id": 1061, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "2953:5:9", - "memberName": "value", - "nodeType": "MemberAccess", - "referencedDeclaration": 2141, - "src": "2910:48:9", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 1097, - "nodeType": "Block", - "src": "3028:382:9", - "statements": [ - { - "clauses": [ - { - "block": { - "id": 1082, - "nodeType": "Block", - "src": "3122:115:9", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "id": 1078, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1076, - "name": "slot", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1073, - "src": "3148:4:9", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "id": 1077, - "name": "_IMPLEMENTATION_SLOT", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 965, - "src": "3156:20:9", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "src": "3148:28:9", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "45524331393637557067726164653a20756e737570706f727465642070726f786961626c6555554944", - "id": 1079, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3178:43:9", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_76b6b6debfc5febf101145a79ecf0b0d2e89e397dfdab2bca99888370411152c", - "typeString": "literal_string \"ERC1967Upgrade: unsupported proxiableUUID\"" - }, - "value": "ERC1967Upgrade: unsupported proxiableUUID" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_76b6b6debfc5febf101145a79ecf0b0d2e89e397dfdab2bca99888370411152c", - "typeString": "literal_string \"ERC1967Upgrade: unsupported proxiableUUID\"" - } - ], - "id": 1075, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "3140:7:9", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1080, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "3140:82:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1081, - "nodeType": "ExpressionStatement", - "src": "3140:82:9" - } - ] - }, - "errorName": "", - "id": 1083, - "nodeType": "TryCatchClause", - "parameters": { - "id": 1074, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1073, - "mutability": "mutable", - "name": "slot", - "nameLocation": "3116:4:9", - "nodeType": "VariableDeclaration", - "scope": 1083, - "src": "3108:12:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 1072, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "3108:7:9", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "3107:14:9" - }, - "src": "3099:138:9" - }, - { - "block": { - "id": 1088, - "nodeType": "Block", - "src": "3244:89:9", - "statements": [ - { - "expression": { - "arguments": [ - { - "hexValue": "45524331393637557067726164653a206e657720696d706c656d656e746174696f6e206973206e6f742055555053", - "id": 1085, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3269:48:9", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_8e8e2fbcb586f700b5b14e2c4a650c8d83b9773c31c5fe8962070ea544e11f24", - "typeString": "literal_string \"ERC1967Upgrade: new implementation is not UUPS\"" - }, - "value": "ERC1967Upgrade: new implementation is not UUPS" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_8e8e2fbcb586f700b5b14e2c4a650c8d83b9773c31c5fe8962070ea544e11f24", - "typeString": "literal_string \"ERC1967Upgrade: new implementation is not UUPS\"" - } - ], - "id": 1084, - "name": "revert", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967277, - 4294967277 - ], - "referencedDeclaration": 4294967277, - "src": "3262:6:9", - "typeDescriptions": { - "typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory) pure" - } - }, - "id": 1086, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "3262:56:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1087, - "nodeType": "ExpressionStatement", - "src": "3262:56:9" - } - ] - }, - "errorName": "", - "id": 1089, - "nodeType": "TryCatchClause", - "src": "3238:95:9" - } - ], - "externalCall": { - "arguments": [], - "expression": { - "argumentTypes": [], - "expression": { - "arguments": [ - { - "id": 1068, - "name": "newImplementation", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1050, - "src": "3064:17:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 1067, - "name": "IERC1822Proxiable", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 911, - "src": "3046:17:9", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC1822Proxiable_$911_$", - "typeString": "type(contract IERC1822Proxiable)" - } - }, - "id": 1069, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "3046:36:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC1822Proxiable_$911", - "typeString": "contract IERC1822Proxiable" - } - }, - "id": 1070, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "3083:13:9", - "memberName": "proxiableUUID", - "nodeType": "MemberAccess", - "referencedDeclaration": 910, - "src": "3046:50:9", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$__$returns$_t_bytes32_$", - "typeString": "function () view external returns (bytes32)" - } - }, - "id": 1071, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "3046:52:9", - "tryCall": true, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "id": 1090, - "nodeType": "TryStatement", - "src": "3042:291:9" - }, - { - "expression": { - "arguments": [ - { - "id": 1092, - "name": "newImplementation", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1050, - "src": "3364:17:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 1093, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1052, - "src": "3383:4:9", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "id": 1094, - "name": "forceCall", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1054, - "src": "3389:9:9", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 1091, - "name": "_upgradeToAndCall", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1047, - "src": "3346:17:9", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_bytes_memory_ptr_$_t_bool_$returns$__$", - "typeString": "function (address,bytes memory,bool)" - } - }, - "id": 1095, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "3346:53:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1096, - "nodeType": "ExpressionStatement", - "src": "3346:53:9" - } - ] - }, - "id": 1098, - "nodeType": "IfStatement", - "src": "2906:504:9", - "trueBody": { - "id": 1066, - "nodeType": "Block", - "src": "2960:62:9", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 1063, - "name": "newImplementation", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1050, - "src": "2993:17:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 1062, - "name": "_setImplementation", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1002, - "src": "2974:18:9", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$__$", - "typeString": "function (address)" - } - }, - "id": 1064, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2974:37:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1065, - "nodeType": "ExpressionStatement", - "src": "2974:37:9" - } - ] - } - } - ] - }, - "documentation": { - "id": 1048, - "nodeType": "StructuredDocumentation", - "src": "2328:161:9", - "text": " @dev Perform implementation upgrade with security checks for UUPS proxies, and additional setup call.\n Emits an {Upgraded} event." - }, - "id": 1100, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_upgradeToAndCallUUPS", - "nameLocation": "2503:21:9", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1055, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1050, - "mutability": "mutable", - "name": "newImplementation", - "nameLocation": "2533:17:9", - "nodeType": "VariableDeclaration", - "scope": 1100, - "src": "2525:25:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1049, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2525:7:9", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1052, - "mutability": "mutable", - "name": "data", - "nameLocation": "2565:4:9", - "nodeType": "VariableDeclaration", - "scope": 1100, - "src": "2552:17:9", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1051, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "2552:5:9", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1054, - "mutability": "mutable", - "name": "forceCall", - "nameLocation": "2576:9:9", - "nodeType": "VariableDeclaration", - "scope": 1100, - "src": "2571:14:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1053, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "2571:4:9", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "2524:62:9" - }, - "returnParameters": { - "id": 1056, - "nodeType": "ParameterList", - "parameters": [], - "src": "2596:0:9" - }, - "scope": 1252, - "src": "2494:922:9", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "constant": true, - "documentation": { - "id": 1101, - "nodeType": "StructuredDocumentation", - "src": "3422:189:9", - "text": " @dev Storage slot with the admin of the contract.\n This is the keccak-256 hash of \"eip1967.proxy.admin\" subtracted by 1, and is\n validated in the constructor." - }, - "id": 1104, - "mutability": "constant", - "name": "_ADMIN_SLOT", - "nameLocation": "3642:11:9", - "nodeType": "VariableDeclaration", - "scope": 1252, - "src": "3616:106:9", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 1102, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "3616:7:9", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": { - "hexValue": "307862353331323736383461353638623331373361653133623966386136303136653234336536336236653865653131373864366137313738353062356436313033", - "id": 1103, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3656:66:9", - "typeDescriptions": { - "typeIdentifier": "t_rational_81955473079516046949633743016697847541294818689821282749996681496272635257091_by_1", - "typeString": "int_const 8195...(69 digits omitted)...7091" - }, - "value": "0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103" - }, - "visibility": "internal" - }, - { - "body": { - "id": 1116, - "nodeType": "Block", - "src": "3837:69:9", - "statements": [ - { - "expression": { - "expression": { - "arguments": [ - { - "id": 1112, - "name": "_ADMIN_SLOT", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1104, - "src": "3881:11:9", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "expression": { - "id": 1110, - "name": "StorageSlot", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2243, - "src": "3854:11:9", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_StorageSlot_$2243_$", - "typeString": "type(library StorageSlot)" - } - }, - "id": 1111, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "3866:14:9", - "memberName": "getAddressSlot", - "nodeType": "MemberAccess", - "referencedDeclaration": 2165, - "src": "3854:26:9", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_bytes32_$returns$_t_struct$_AddressSlot_$2139_storage_ptr_$", - "typeString": "function (bytes32) pure returns (struct StorageSlot.AddressSlot storage pointer)" - } - }, - "id": 1113, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "3854:39:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_struct$_AddressSlot_$2139_storage_ptr", - "typeString": "struct StorageSlot.AddressSlot storage pointer" - } - }, - "id": 1114, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "3894:5:9", - "memberName": "value", - "nodeType": "MemberAccess", - "referencedDeclaration": 2138, - "src": "3854:45:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "functionReturnParameters": 1109, - "id": 1115, - "nodeType": "Return", - "src": "3847:52:9" - } - ] - }, - "documentation": { - "id": 1105, - "nodeType": "StructuredDocumentation", - "src": "3729:50:9", - "text": " @dev Returns the current admin." - }, - "id": 1117, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_getAdmin", - "nameLocation": "3793:9:9", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1106, - "nodeType": "ParameterList", - "parameters": [], - "src": "3802:2:9" - }, - "returnParameters": { - "id": 1109, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1108, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1117, - "src": "3828:7:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1107, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3828:7:9", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "3827:9:9" - }, - "scope": 1252, - "src": "3784:122:9", - "stateMutability": "view", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 1142, - "nodeType": "Block", - "src": "4033:156:9", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 1129, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1124, - "name": "newAdmin", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1120, - "src": "4051:8:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "arguments": [ - { - "hexValue": "30", - "id": 1127, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4071:1:9", - "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": 1126, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "4063:7:9", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 1125, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "4063:7:9", - "typeDescriptions": {} - } - }, - "id": 1128, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4063:10:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "4051:22:9", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "455243313936373a206e65772061646d696e20697320746865207a65726f2061646472657373", - "id": 1130, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4075:40:9", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_3820e16891102c1360a787e6e648431097d92537f969d458f5c94b56f8318be5", - "typeString": "literal_string \"ERC1967: new admin is the zero address\"" - }, - "value": "ERC1967: new admin is the zero address" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_3820e16891102c1360a787e6e648431097d92537f969d458f5c94b56f8318be5", - "typeString": "literal_string \"ERC1967: new admin is the zero address\"" - } - ], - "id": 1123, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "4043:7:9", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1131, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4043:73:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1132, - "nodeType": "ExpressionStatement", - "src": "4043:73:9" - }, - { - "expression": { - "id": 1140, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "arguments": [ - { - "id": 1136, - "name": "_ADMIN_SLOT", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1104, - "src": "4153:11:9", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "expression": { - "id": 1133, - "name": "StorageSlot", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2243, - "src": "4126:11:9", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_StorageSlot_$2243_$", - "typeString": "type(library StorageSlot)" - } - }, - "id": 1135, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "4138:14:9", - "memberName": "getAddressSlot", - "nodeType": "MemberAccess", - "referencedDeclaration": 2165, - "src": "4126:26:9", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_bytes32_$returns$_t_struct$_AddressSlot_$2139_storage_ptr_$", - "typeString": "function (bytes32) pure returns (struct StorageSlot.AddressSlot storage pointer)" - } - }, - "id": 1137, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4126:39:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_struct$_AddressSlot_$2139_storage_ptr", - "typeString": "struct StorageSlot.AddressSlot storage pointer" - } - }, - "id": 1138, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberLocation": "4166:5:9", - "memberName": "value", - "nodeType": "MemberAccess", - "referencedDeclaration": 2138, - "src": "4126:45:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 1139, - "name": "newAdmin", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1120, - "src": "4174:8:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "4126:56:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1141, - "nodeType": "ExpressionStatement", - "src": "4126:56:9" - } - ] - }, - "documentation": { - "id": 1118, - "nodeType": "StructuredDocumentation", - "src": "3912:71:9", - "text": " @dev Stores a new address in the EIP1967 admin slot." - }, - "id": 1143, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_setAdmin", - "nameLocation": "3997:9:9", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1121, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1120, - "mutability": "mutable", - "name": "newAdmin", - "nameLocation": "4015:8:9", - "nodeType": "VariableDeclaration", - "scope": 1143, - "src": "4007:16:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1119, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "4007:7:9", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "4006:18:9" - }, - "returnParameters": { - "id": 1122, - "nodeType": "ParameterList", - "parameters": [], - "src": "4033:0:9" - }, - "scope": 1252, - "src": "3988:201:9", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 1159, - "nodeType": "Block", - "src": "4349:86:9", - "statements": [ - { - "eventCall": { - "arguments": [ - { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1150, - "name": "_getAdmin", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1117, - "src": "4377:9:9", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", - "typeString": "function () view returns (address)" - } - }, - "id": 1151, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4377:11:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 1152, - "name": "newAdmin", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1146, - "src": "4390:8:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 1149, - "name": "AdminChanged", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 895, - "src": "4364:12:9", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$returns$__$", - "typeString": "function (address,address)" - } - }, - "id": 1153, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4364:35:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1154, - "nodeType": "EmitStatement", - "src": "4359:40:9" - }, - { - "expression": { - "arguments": [ - { - "id": 1156, - "name": "newAdmin", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1146, - "src": "4419:8:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 1155, - "name": "_setAdmin", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1143, - "src": "4409:9:9", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$__$", - "typeString": "function (address)" - } - }, - "id": 1157, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4409:19:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1158, - "nodeType": "ExpressionStatement", - "src": "4409:19:9" - } - ] - }, - "documentation": { - "id": 1144, - "nodeType": "StructuredDocumentation", - "src": "4195:100:9", - "text": " @dev Changes the admin of the proxy.\n Emits an {AdminChanged} event." - }, - "id": 1160, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_changeAdmin", - "nameLocation": "4309:12:9", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1147, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1146, - "mutability": "mutable", - "name": "newAdmin", - "nameLocation": "4330:8:9", - "nodeType": "VariableDeclaration", - "scope": 1160, - "src": "4322:16:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1145, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "4322:7:9", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "4321:18:9" - }, - "returnParameters": { - "id": 1148, - "nodeType": "ParameterList", - "parameters": [], - "src": "4349:0:9" - }, - "scope": 1252, - "src": "4300:135:9", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "constant": true, - "documentation": { - "id": 1161, - "nodeType": "StructuredDocumentation", - "src": "4441:232:9", - "text": " @dev The storage slot of the UpgradeableBeacon contract which defines the implementation for this proxy.\n This is bytes32(uint256(keccak256('eip1967.proxy.beacon')) - 1)) and is validated in the constructor." - }, - "id": 1164, - "mutability": "constant", - "name": "_BEACON_SLOT", - "nameLocation": "4704:12:9", - "nodeType": "VariableDeclaration", - "scope": 1252, - "src": "4678:107:9", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 1162, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "4678:7:9", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "value": { - "hexValue": "307861336630616437346535343233616562666438306433656634333436353738333335613961373261656165653539666636636233353832623335313333643530", - "id": 1163, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4719:66:9", - "typeDescriptions": { - "typeIdentifier": "t_rational_74152234768234802001998023604048924213078445070507226371336425913862612794704_by_1", - "typeString": "int_const 7415...(69 digits omitted)...4704" - }, - "value": "0xa3f0ad74e5423aebfd80d3ef4346578335a9a72aeaee59ff6cb3582b35133d50" - }, - "visibility": "internal" - }, - { - "body": { - "id": 1176, - "nodeType": "Block", - "src": "4902:70:9", - "statements": [ - { - "expression": { - "expression": { - "arguments": [ - { - "id": 1172, - "name": "_BEACON_SLOT", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1164, - "src": "4946:12:9", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "expression": { - "id": 1170, - "name": "StorageSlot", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2243, - "src": "4919:11:9", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_StorageSlot_$2243_$", - "typeString": "type(library StorageSlot)" - } - }, - "id": 1171, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "4931:14:9", - "memberName": "getAddressSlot", - "nodeType": "MemberAccess", - "referencedDeclaration": 2165, - "src": "4919:26:9", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_bytes32_$returns$_t_struct$_AddressSlot_$2139_storage_ptr_$", - "typeString": "function (bytes32) pure returns (struct StorageSlot.AddressSlot storage pointer)" - } - }, - "id": 1173, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4919:40:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_struct$_AddressSlot_$2139_storage_ptr", - "typeString": "struct StorageSlot.AddressSlot storage pointer" - } - }, - "id": 1174, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "4960:5:9", - "memberName": "value", - "nodeType": "MemberAccess", - "referencedDeclaration": 2138, - "src": "4919:46:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "functionReturnParameters": 1169, - "id": 1175, - "nodeType": "Return", - "src": "4912:53:9" - } - ] - }, - "documentation": { - "id": 1165, - "nodeType": "StructuredDocumentation", - "src": "4792:51:9", - "text": " @dev Returns the current beacon." - }, - "id": 1177, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_getBeacon", - "nameLocation": "4857:10:9", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1166, - "nodeType": "ParameterList", - "parameters": [], - "src": "4867:2:9" - }, - "returnParameters": { - "id": 1169, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1168, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1177, - "src": "4893:7:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1167, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "4893:7:9", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "4892:9:9" - }, - "scope": 1252, - "src": "4848:124:9", - "stateMutability": "view", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 1212, - "nodeType": "Block", - "src": "5101:324:9", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "id": 1186, - "name": "newBeacon", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1180, - "src": "5138:9:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "expression": { - "id": 1184, - "name": "Address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2103, - "src": "5119:7:9", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_Address_$2103_$", - "typeString": "type(library Address)" - } - }, - "id": 1185, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "5127:10:9", - "memberName": "isContract", - "nodeType": "MemberAccess", - "referencedDeclaration": 1791, - "src": "5119:18:9", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", - "typeString": "function (address) view returns (bool)" - } - }, - "id": 1187, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5119:29:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "455243313936373a206e657720626561636f6e206973206e6f74206120636f6e7472616374", - "id": 1188, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5150:39:9", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_9589b7809634e4928033de18bb696e9af4ef71b703652af5245f2dbebf2f4470", - "typeString": "literal_string \"ERC1967: new beacon is not a contract\"" - }, - "value": "ERC1967: new beacon is not a contract" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_9589b7809634e4928033de18bb696e9af4ef71b703652af5245f2dbebf2f4470", - "typeString": "literal_string \"ERC1967: new beacon is not a contract\"" - } - ], - "id": 1183, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "5111:7:9", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1189, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5111:79:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1190, - "nodeType": "ExpressionStatement", - "src": "5111:79:9" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "arguments": [], - "expression": { - "argumentTypes": [], - "expression": { - "arguments": [ - { - "id": 1195, - "name": "newBeacon", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1180, - "src": "5248:9:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 1194, - "name": "IBeacon", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1314, - "src": "5240:7:9", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IBeacon_$1314_$", - "typeString": "type(contract IBeacon)" - } - }, - "id": 1196, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5240:18:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_contract$_IBeacon_$1314", - "typeString": "contract IBeacon" - } - }, - "id": 1197, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "5259:14:9", - "memberName": "implementation", - "nodeType": "MemberAccess", - "referencedDeclaration": 1313, - "src": "5240:33:9", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", - "typeString": "function () view external returns (address)" - } - }, - "id": 1198, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5240:35:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "expression": { - "id": 1192, - "name": "Address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2103, - "src": "5221:7:9", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_Address_$2103_$", - "typeString": "type(library Address)" - } - }, - "id": 1193, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "5229:10:9", - "memberName": "isContract", - "nodeType": "MemberAccess", - "referencedDeclaration": 1791, - "src": "5221:18:9", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", - "typeString": "function (address) view returns (bool)" - } - }, - "id": 1199, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5221:55:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "455243313936373a20626561636f6e20696d706c656d656e746174696f6e206973206e6f74206120636f6e7472616374", - "id": 1200, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5290:50:9", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_f95fd1f5b5578816eb23f6ca0f2439b4b5e4094dc16e99c3b8e91603a83f93c8", - "typeString": "literal_string \"ERC1967: beacon implementation is not a contract\"" - }, - "value": "ERC1967: beacon implementation is not a contract" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_f95fd1f5b5578816eb23f6ca0f2439b4b5e4094dc16e99c3b8e91603a83f93c8", - "typeString": "literal_string \"ERC1967: beacon implementation is not a contract\"" - } - ], - "id": 1191, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "5200:7:9", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1201, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5200:150:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1202, - "nodeType": "ExpressionStatement", - "src": "5200:150:9" - }, - { - "expression": { - "id": 1210, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "arguments": [ - { - "id": 1206, - "name": "_BEACON_SLOT", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1164, - "src": "5387:12:9", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "expression": { - "id": 1203, - "name": "StorageSlot", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2243, - "src": "5360:11:9", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_StorageSlot_$2243_$", - "typeString": "type(library StorageSlot)" - } - }, - "id": 1205, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "5372:14:9", - "memberName": "getAddressSlot", - "nodeType": "MemberAccess", - "referencedDeclaration": 2165, - "src": "5360:26:9", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_bytes32_$returns$_t_struct$_AddressSlot_$2139_storage_ptr_$", - "typeString": "function (bytes32) pure returns (struct StorageSlot.AddressSlot storage pointer)" - } - }, - "id": 1207, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5360:40:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_struct$_AddressSlot_$2139_storage_ptr", - "typeString": "struct StorageSlot.AddressSlot storage pointer" - } - }, - "id": 1208, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberLocation": "5401:5:9", - "memberName": "value", - "nodeType": "MemberAccess", - "referencedDeclaration": 2138, - "src": "5360:46:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 1209, - "name": "newBeacon", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1180, - "src": "5409:9:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "5360:58:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1211, - "nodeType": "ExpressionStatement", - "src": "5360:58:9" - } - ] - }, - "documentation": { - "id": 1178, - "nodeType": "StructuredDocumentation", - "src": "4978:71:9", - "text": " @dev Stores a new beacon in the EIP1967 beacon slot." - }, - "id": 1213, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_setBeacon", - "nameLocation": "5063:10:9", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1181, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1180, - "mutability": "mutable", - "name": "newBeacon", - "nameLocation": "5082:9:9", - "nodeType": "VariableDeclaration", - "scope": 1213, - "src": "5074:17:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1179, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "5074:7:9", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "5073:19:9" - }, - "returnParameters": { - "id": 1182, - "nodeType": "ParameterList", - "parameters": [], - "src": "5101:0:9" - }, - "scope": 1252, - "src": "5054:371:9", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 1250, - "nodeType": "Block", - "src": "5824:217:9", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 1224, - "name": "newBeacon", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1216, - "src": "5845:9:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 1223, - "name": "_setBeacon", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1213, - "src": "5834:10:9", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$__$", - "typeString": "function (address)" - } - }, - "id": 1225, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5834:21:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1226, - "nodeType": "ExpressionStatement", - "src": "5834:21:9" - }, - { - "eventCall": { - "arguments": [ - { - "id": 1228, - "name": "newBeacon", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1216, - "src": "5885:9:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 1227, - "name": "BeaconUpgraded", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 900, - "src": "5870:14:9", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$returns$__$", - "typeString": "function (address)" - } - }, - "id": 1229, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5870:25:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1230, - "nodeType": "EmitStatement", - "src": "5865:30:9" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1236, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1234, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 1231, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1218, - "src": "5909:4:9", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 1232, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "5914:6:9", - "memberName": "length", - "nodeType": "MemberAccess", - "src": "5909:11:9", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 1233, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5923:1:9", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "5909:15:9", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "id": 1235, - "name": "forceCall", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1220, - "src": "5928:9:9", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "5909:28:9", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1249, - "nodeType": "IfStatement", - "src": "5905:130:9", - "trueBody": { - "id": 1248, - "nodeType": "Block", - "src": "5939:96:9", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [], - "expression": { - "argumentTypes": [], - "expression": { - "arguments": [ - { - "id": 1241, - "name": "newBeacon", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1216, - "src": "5990:9:9", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 1240, - "name": "IBeacon", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1314, - "src": "5982:7:9", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IBeacon_$1314_$", - "typeString": "type(contract IBeacon)" - } - }, - "id": 1242, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5982:18:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_contract$_IBeacon_$1314", - "typeString": "contract IBeacon" - } - }, - "id": 1243, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "6001:14:9", - "memberName": "implementation", - "nodeType": "MemberAccess", - "referencedDeclaration": 1313, - "src": "5982:33:9", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", - "typeString": "function () view external returns (address)" - } - }, - "id": 1244, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5982:35:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 1245, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1218, - "src": "6019:4:9", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "id": 1237, - "name": "Address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2103, - "src": "5953:7:9", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_Address_$2103_$", - "typeString": "type(library Address)" - } - }, - "id": 1239, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "5961:20:9", - "memberName": "functionDelegateCall", - "nodeType": "MemberAccess", - "referencedDeclaration": 1990, - "src": "5953:28:9", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_bytes_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (address,bytes memory) returns (bytes memory)" - } - }, - "id": 1246, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5953:71:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 1247, - "nodeType": "ExpressionStatement", - "src": "5953:71:9" - } - ] - } - } - ] - }, - "documentation": { - "id": 1214, - "nodeType": "StructuredDocumentation", - "src": "5431:292:9", - "text": " @dev Perform beacon upgrade with additional setup call. Note: This upgrades the address of the beacon, it does\n not upgrade the implementation contained in the beacon (see {UpgradeableBeacon-_setImplementation} for that).\n Emits a {BeaconUpgraded} event." - }, - "id": 1251, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_upgradeBeaconToAndCall", - "nameLocation": "5737:23:9", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1221, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1216, - "mutability": "mutable", - "name": "newBeacon", - "nameLocation": "5769:9:9", - "nodeType": "VariableDeclaration", - "scope": 1251, - "src": "5761:17:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1215, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "5761:7:9", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1218, - "mutability": "mutable", - "name": "data", - "nameLocation": "5793:4:9", - "nodeType": "VariableDeclaration", - "scope": 1251, - "src": "5780:17:9", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1217, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "5780:5:9", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1220, - "mutability": "mutable", - "name": "forceCall", - "nameLocation": "5804:9:9", - "nodeType": "VariableDeclaration", - "scope": 1251, - "src": "5799:14:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1219, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "5799:4:9", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "5760:54:9" - }, - "returnParameters": { - "id": 1222, - "nodeType": "ParameterList", - "parameters": [], - "src": "5824:0:9" - }, - "scope": 1252, - "src": "5728:313:9", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - } - ], - "scope": 1253, - "src": "517:5526:9", - "usedErrors": [] - } - ], - "src": "116:5928:9" - }, - "compiler": { - "name": "solc", - "version": "0.8.18+commit.87f61d96.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "3.4.13", - "updatedAt": "2024-12-10T18:52:58.845Z", - "devdoc": { - "details": "This abstract contract provides getters and event emitting update functions for https://eips.ethereum.org/EIPS/eip-1967[EIP1967] slots. _Available since v4.1._", - "events": { - "AdminChanged(address,address)": { - "details": "Emitted when the admin account has changed." - }, - "BeaconUpgraded(address)": { - "details": "Emitted when the beacon is changed." - }, - "Upgraded(address)": { - "details": "Emitted when the implementation is upgraded." - } - }, - "kind": "dev", - "methods": {}, - "stateVariables": { - "_ADMIN_SLOT": { - "details": "Storage slot with the admin of the contract. This is the keccak-256 hash of \"eip1967.proxy.admin\" subtracted by 1, and is validated in the constructor." - }, - "_BEACON_SLOT": { - "details": "The storage slot of the UpgradeableBeacon contract which defines the implementation for this proxy. This is bytes32(uint256(keccak256('eip1967.proxy.beacon')) - 1)) and is validated in the constructor." - }, - "_IMPLEMENTATION_SLOT": { - "details": "Storage slot with the address of the current implementation. This is the keccak-256 hash of \"eip1967.proxy.implementation\" subtracted by 1, and is validated in the constructor." - } - }, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } -} \ No newline at end of file diff --git a/build/contracts/IBeacon.json b/build/contracts/IBeacon.json deleted file mode 100644 index 4d01c8f..0000000 --- a/build/contracts/IBeacon.json +++ /dev/null @@ -1,163 +0,0 @@ -{ - "contractName": "IBeacon", - "abi": [ - { - "inputs": [], - "name": "implementation", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - } - ], - "metadata": "{\"compiler\":{\"version\":\"0.8.18+commit.87f61d96\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"implementation\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"This is the interface that {BeaconProxy} expects of its beacon.\",\"kind\":\"dev\",\"methods\":{\"implementation()\":{\"details\":\"Must return an address that can be used as a delegate call target. {BeaconProxy} will check that this address is a contract.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@openzeppelin/contracts/proxy/beacon/IBeacon.sol\":\"IBeacon\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":1},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts/proxy/beacon/IBeacon.sol\":{\"keccak256\":\"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354\",\"dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce\"]}},\"version\":1}", - "bytecode": "0x", - "deployedBytecode": "0x", - "immutableReferences": {}, - "generatedSources": [], - "deployedGeneratedSources": [], - "sourceMap": "", - "deployedSourceMap": "", - "source": "// SPDX-License-Identifier: MIT\n// OpenZeppelin Contracts v4.4.1 (proxy/beacon/IBeacon.sol)\n\npragma solidity ^0.8.0;\n\n/**\n * @dev This is the interface that {BeaconProxy} expects of its beacon.\n */\ninterface IBeacon {\n /**\n * @dev Must return an address that can be used as a delegate call target.\n *\n * {BeaconProxy} will check that this address is a contract.\n */\n function implementation() external view returns (address);\n}\n", - "sourcePath": "@openzeppelin/contracts/proxy/beacon/IBeacon.sol", - "ast": { - "absolutePath": "@openzeppelin/contracts/proxy/beacon/IBeacon.sol", - "exportedSymbols": { - "IBeacon": [ - 1314 - ] - }, - "id": 1315, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1306, - "literals": [ - "solidity", - "^", - "0.8", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "93:23:11" - }, - { - "abstract": false, - "baseContracts": [], - "canonicalName": "IBeacon", - "contractDependencies": [], - "contractKind": "interface", - "documentation": { - "id": 1307, - "nodeType": "StructuredDocumentation", - "src": "118:79:11", - "text": " @dev This is the interface that {BeaconProxy} expects of its beacon." - }, - "fullyImplemented": false, - "id": 1314, - "linearizedBaseContracts": [ - 1314 - ], - "name": "IBeacon", - "nameLocation": "208:7:11", - "nodeType": "ContractDefinition", - "nodes": [ - { - "documentation": { - "id": 1308, - "nodeType": "StructuredDocumentation", - "src": "222:162:11", - "text": " @dev Must return an address that can be used as a delegate call target.\n {BeaconProxy} will check that this address is a contract." - }, - "functionSelector": "5c60da1b", - "id": 1313, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "implementation", - "nameLocation": "398:14:11", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1309, - "nodeType": "ParameterList", - "parameters": [], - "src": "412:2:11" - }, - "returnParameters": { - "id": 1312, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1311, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1313, - "src": "438:7:11", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1310, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "438:7:11", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "437:9:11" - }, - "scope": 1314, - "src": "389:58:11", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - } - ], - "scope": 1315, - "src": "198:251:11", - "usedErrors": [] - } - ], - "src": "93:357:11" - }, - "compiler": { - "name": "solc", - "version": "0.8.18+commit.87f61d96.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "3.4.13", - "updatedAt": "2024-12-10T18:52:58.846Z", - "devdoc": { - "details": "This is the interface that {BeaconProxy} expects of its beacon.", - "kind": "dev", - "methods": { - "implementation()": { - "details": "Must return an address that can be used as a delegate call target. {BeaconProxy} will check that this address is a contract." - } - }, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } -} \ No newline at end of file diff --git a/build/contracts/IERC1822Proxiable.json b/build/contracts/IERC1822Proxiable.json deleted file mode 100644 index 93fa097..0000000 --- a/build/contracts/IERC1822Proxiable.json +++ /dev/null @@ -1,162 +0,0 @@ -{ - "contractName": "IERC1822Proxiable", - "abi": [ - { - "inputs": [], - "name": "proxiableUUID", - "outputs": [ - { - "internalType": "bytes32", - "name": "", - "type": "bytes32" - } - ], - "stateMutability": "view", - "type": "function" - } - ], - "metadata": "{\"compiler\":{\"version\":\"0.8.18+commit.87f61d96\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"proxiableUUID\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"ERC1822: Universal Upgradeable Proxy Standard (UUPS) documents a method for upgradeability through a simplified proxy whose upgrades are fully controlled by the current implementation.\",\"kind\":\"dev\",\"methods\":{\"proxiableUUID()\":{\"details\":\"Returns the storage slot that the proxiable contract assumes is being used to store the implementation address. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@openzeppelin/contracts/interfaces/draft-IERC1822.sol\":\"IERC1822Proxiable\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":1},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts/interfaces/draft-IERC1822.sol\":{\"keccak256\":\"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688\",\"dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr\"]}},\"version\":1}", - "bytecode": "0x", - "deployedBytecode": "0x", - "immutableReferences": {}, - "generatedSources": [], - "deployedGeneratedSources": [], - "sourceMap": "", - "deployedSourceMap": "", - "source": "// SPDX-License-Identifier: MIT\n// OpenZeppelin Contracts (last updated v4.5.0) (interfaces/draft-IERC1822.sol)\n\npragma solidity ^0.8.0;\n\n/**\n * @dev ERC1822: Universal Upgradeable Proxy Standard (UUPS) documents a method for upgradeability through a simplified\n * proxy whose upgrades are fully controlled by the current implementation.\n */\ninterface IERC1822Proxiable {\n /**\n * @dev Returns the storage slot that the proxiable contract assumes is being used to store the implementation\n * address.\n *\n * IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks\n * bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this\n * function revert if invoked through a proxy.\n */\n function proxiableUUID() external view returns (bytes32);\n}\n", - "sourcePath": "@openzeppelin/contracts/interfaces/draft-IERC1822.sol", - "ast": { - "absolutePath": "@openzeppelin/contracts/interfaces/draft-IERC1822.sol", - "exportedSymbols": { - "IERC1822Proxiable": [ - 911 - ] - }, - "id": 912, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 903, - "literals": [ - "solidity", - "^", - "0.8", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "113:23:7" - }, - { - "abstract": false, - "baseContracts": [], - "canonicalName": "IERC1822Proxiable", - "contractDependencies": [], - "contractKind": "interface", - "documentation": { - "id": 904, - "nodeType": "StructuredDocumentation", - "src": "138:203:7", - "text": " @dev ERC1822: Universal Upgradeable Proxy Standard (UUPS) documents a method for upgradeability through a simplified\n proxy whose upgrades are fully controlled by the current implementation." - }, - "fullyImplemented": false, - "id": 911, - "linearizedBaseContracts": [ - 911 - ], - "name": "IERC1822Proxiable", - "nameLocation": "352:17:7", - "nodeType": "ContractDefinition", - "nodes": [ - { - "documentation": { - "id": 905, - "nodeType": "StructuredDocumentation", - "src": "376:438:7", - "text": " @dev Returns the storage slot that the proxiable contract assumes is being used to store the implementation\n address.\n IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks\n bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this\n function revert if invoked through a proxy." - }, - "functionSelector": "52d1902d", - "id": 910, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "proxiableUUID", - "nameLocation": "828:13:7", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 906, - "nodeType": "ParameterList", - "parameters": [], - "src": "841:2:7" - }, - "returnParameters": { - "id": 909, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 908, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 910, - "src": "867:7:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 907, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "867:7:7", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "866:9:7" - }, - "scope": 911, - "src": "819:57:7", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - } - ], - "scope": 912, - "src": "342:536:7", - "usedErrors": [] - } - ], - "src": "113:766:7" - }, - "compiler": { - "name": "solc", - "version": "0.8.18+commit.87f61d96.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "3.4.13", - "updatedAt": "2024-12-10T18:52:58.844Z", - "devdoc": { - "details": "ERC1822: Universal Upgradeable Proxy Standard (UUPS) documents a method for upgradeability through a simplified proxy whose upgrades are fully controlled by the current implementation.", - "kind": "dev", - "methods": { - "proxiableUUID()": { - "details": "Returns the storage slot that the proxiable contract assumes is being used to store the implementation address. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy." - } - }, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } -} \ No newline at end of file diff --git a/build/contracts/IERC1967.json b/build/contracts/IERC1967.json deleted file mode 100644 index 45a5c33..0000000 --- a/build/contracts/IERC1967.json +++ /dev/null @@ -1,322 +0,0 @@ -{ - "contractName": "IERC1967", - "abi": [ - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "previousAdmin", - "type": "address" - }, - { - "indexed": false, - "internalType": "address", - "name": "newAdmin", - "type": "address" - } - ], - "name": "AdminChanged", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "beacon", - "type": "address" - } - ], - "name": "BeaconUpgraded", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "implementation", - "type": "address" - } - ], - "name": "Upgraded", - "type": "event" - } - ], - "metadata": "{\"compiler\":{\"version\":\"0.8.18+commit.87f61d96\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"previousAdmin\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newAdmin\",\"type\":\"address\"}],\"name\":\"AdminChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"beacon\",\"type\":\"address\"}],\"name\":\"BeaconUpgraded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"implementation\",\"type\":\"address\"}],\"name\":\"Upgraded\",\"type\":\"event\"}],\"devdoc\":{\"details\":\"ERC-1967: Proxy Storage Slots. This interface contains the events defined in the ERC. _Available since v4.8.3._\",\"events\":{\"AdminChanged(address,address)\":{\"details\":\"Emitted when the admin account has changed.\"},\"BeaconUpgraded(address)\":{\"details\":\"Emitted when the beacon is changed.\"},\"Upgraded(address)\":{\"details\":\"Emitted when the implementation is upgraded.\"}},\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@openzeppelin/contracts/interfaces/IERC1967.sol\":\"IERC1967\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":1},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts/interfaces/IERC1967.sol\":{\"keccak256\":\"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263\",\"dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE\"]}},\"version\":1}", - "bytecode": "0x", - "deployedBytecode": "0x", - "immutableReferences": {}, - "generatedSources": [], - "deployedGeneratedSources": [], - "sourceMap": "", - "deployedSourceMap": "", - "source": "// SPDX-License-Identifier: MIT\n// OpenZeppelin Contracts (last updated v4.9.0) (interfaces/IERC1967.sol)\n\npragma solidity ^0.8.0;\n\n/**\n * @dev ERC-1967: Proxy Storage Slots. This interface contains the events defined in the ERC.\n *\n * _Available since v4.8.3._\n */\ninterface IERC1967 {\n /**\n * @dev Emitted when the implementation is upgraded.\n */\n event Upgraded(address indexed implementation);\n\n /**\n * @dev Emitted when the admin account has changed.\n */\n event AdminChanged(address previousAdmin, address newAdmin);\n\n /**\n * @dev Emitted when the beacon is changed.\n */\n event BeaconUpgraded(address indexed beacon);\n}\n", - "sourcePath": "@openzeppelin/contracts/interfaces/IERC1967.sol", - "ast": { - "absolutePath": "@openzeppelin/contracts/interfaces/IERC1967.sol", - "exportedSymbols": { - "IERC1967": [ - 901 - ] - }, - "id": 902, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 882, - "literals": [ - "solidity", - "^", - "0.8", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "107:23:6" - }, - { - "abstract": false, - "baseContracts": [], - "canonicalName": "IERC1967", - "contractDependencies": [], - "contractKind": "interface", - "documentation": { - "id": 883, - "nodeType": "StructuredDocumentation", - "src": "132:133:6", - "text": " @dev ERC-1967: Proxy Storage Slots. This interface contains the events defined in the ERC.\n _Available since v4.8.3._" - }, - "fullyImplemented": true, - "id": 901, - "linearizedBaseContracts": [ - 901 - ], - "name": "IERC1967", - "nameLocation": "276:8:6", - "nodeType": "ContractDefinition", - "nodes": [ - { - "anonymous": false, - "documentation": { - "id": 884, - "nodeType": "StructuredDocumentation", - "src": "291:68:6", - "text": " @dev Emitted when the implementation is upgraded." - }, - "eventSelector": "bc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b", - "id": 888, - "name": "Upgraded", - "nameLocation": "370:8:6", - "nodeType": "EventDefinition", - "parameters": { - "id": 887, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 886, - "indexed": true, - "mutability": "mutable", - "name": "implementation", - "nameLocation": "395:14:6", - "nodeType": "VariableDeclaration", - "scope": 888, - "src": "379:30:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 885, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "379:7:6", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "378:32:6" - }, - "src": "364:47:6" - }, - { - "anonymous": false, - "documentation": { - "id": 889, - "nodeType": "StructuredDocumentation", - "src": "417:67:6", - "text": " @dev Emitted when the admin account has changed." - }, - "eventSelector": "7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f", - "id": 895, - "name": "AdminChanged", - "nameLocation": "495:12:6", - "nodeType": "EventDefinition", - "parameters": { - "id": 894, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 891, - "indexed": false, - "mutability": "mutable", - "name": "previousAdmin", - "nameLocation": "516:13:6", - "nodeType": "VariableDeclaration", - "scope": 895, - "src": "508:21:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 890, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "508:7:6", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 893, - "indexed": false, - "mutability": "mutable", - "name": "newAdmin", - "nameLocation": "539:8:6", - "nodeType": "VariableDeclaration", - "scope": 895, - "src": "531:16:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 892, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "531:7:6", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "507:41:6" - }, - "src": "489:60:6" - }, - { - "anonymous": false, - "documentation": { - "id": 896, - "nodeType": "StructuredDocumentation", - "src": "555:59:6", - "text": " @dev Emitted when the beacon is changed." - }, - "eventSelector": "1cf3b03a6cf19fa2baba4df148e9dcabedea7f8a5c07840e207e5c089be95d3e", - "id": 900, - "name": "BeaconUpgraded", - "nameLocation": "625:14:6", - "nodeType": "EventDefinition", - "parameters": { - "id": 899, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 898, - "indexed": true, - "mutability": "mutable", - "name": "beacon", - "nameLocation": "656:6:6", - "nodeType": "VariableDeclaration", - "scope": 900, - "src": "640:22:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 897, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "640:7:6", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "639:24:6" - }, - "src": "619:45:6" - } - ], - "scope": 902, - "src": "266:400:6", - "usedErrors": [] - } - ], - "src": "107:560:6" - }, - "compiler": { - "name": "solc", - "version": "0.8.18+commit.87f61d96.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "3.4.13", - "updatedAt": "2024-12-10T18:52:58.844Z", - "devdoc": { - "details": "ERC-1967: Proxy Storage Slots. This interface contains the events defined in the ERC. _Available since v4.8.3._", - "events": { - "AdminChanged(address,address)": { - "details": "Emitted when the admin account has changed." - }, - "BeaconUpgraded(address)": { - "details": "Emitted when the beacon is changed." - }, - "Upgraded(address)": { - "details": "Emitted when the implementation is upgraded." - } - }, - "kind": "dev", - "methods": {}, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } -} \ No newline at end of file diff --git a/build/contracts/ITransparentUpgradeableProxy.json b/build/contracts/ITransparentUpgradeableProxy.json deleted file mode 100644 index 2128d32..0000000 --- a/build/contracts/ITransparentUpgradeableProxy.json +++ /dev/null @@ -1,4150 +0,0 @@ -{ - "contractName": "ITransparentUpgradeableProxy", - "abi": [ - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "previousAdmin", - "type": "address" - }, - { - "indexed": false, - "internalType": "address", - "name": "newAdmin", - "type": "address" - } - ], - "name": "AdminChanged", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "beacon", - "type": "address" - } - ], - "name": "BeaconUpgraded", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "implementation", - "type": "address" - } - ], - "name": "Upgraded", - "type": "event" - }, - { - "inputs": [], - "name": "admin", - "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": "address", - "name": "", - "type": "address" - } - ], - "name": "changeAdmin", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "name": "upgradeTo", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - }, - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "name": "upgradeToAndCall", - "outputs": [], - "stateMutability": "payable", - "type": "function" - } - ], - "metadata": "{\"compiler\":{\"version\":\"0.8.18+commit.87f61d96\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"previousAdmin\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newAdmin\",\"type\":\"address\"}],\"name\":\"AdminChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"beacon\",\"type\":\"address\"}],\"name\":\"BeaconUpgraded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"implementation\",\"type\":\"address\"}],\"name\":\"Upgraded\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"admin\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"changeAdmin\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"implementation\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"upgradeTo\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"upgradeToAndCall\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"Interface for {TransparentUpgradeableProxy}. In order to implement transparency, {TransparentUpgradeableProxy} does not implement this interface directly, and some of its functions are implemented by an internal dispatch mechanism. The compiler is unaware that these functions are implemented by {TransparentUpgradeableProxy} and will not include them in the ABI so this interface must be used to interact with it.\",\"events\":{\"AdminChanged(address,address)\":{\"details\":\"Emitted when the admin account has changed.\"},\"BeaconUpgraded(address)\":{\"details\":\"Emitted when the beacon is changed.\"},\"Upgraded(address)\":{\"details\":\"Emitted when the implementation is upgraded.\"}},\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol\":\"ITransparentUpgradeableProxy\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":1},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts/interfaces/IERC1967.sol\":{\"keccak256\":\"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263\",\"dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE\"]},\"@openzeppelin/contracts/interfaces/draft-IERC1822.sol\":{\"keccak256\":\"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688\",\"dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr\"]},\"@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol\":{\"keccak256\":\"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5\",\"dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn\"]},\"@openzeppelin/contracts/proxy/ERC1967/ERC1967Upgrade.sol\":{\"keccak256\":\"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2\",\"dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82\"]},\"@openzeppelin/contracts/proxy/Proxy.sol\":{\"keccak256\":\"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472\",\"dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN\"]},\"@openzeppelin/contracts/proxy/beacon/IBeacon.sol\":{\"keccak256\":\"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354\",\"dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce\"]},\"@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol\":{\"keccak256\":\"0x168e36d7e616bd41f6abab4a83009da64513ae9e638aa6d5980066e2a92db689\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a45c64b97311fabbcbe8dad7e94fa89e06a7f96060d5565326ef706f5f239017\",\"dweb:/ipfs/QmeU2jiBGbHhz9DqRotjbpAx5s2xExDSRQtSD5ENjuHzDq\"]},\"@openzeppelin/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]},\"@openzeppelin/contracts/utils/StorageSlot.sol\":{\"keccak256\":\"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da\",\"dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q\"]}},\"version\":1}", - "bytecode": "0x", - "deployedBytecode": "0x", - "immutableReferences": {}, - "generatedSources": [], - "deployedGeneratedSources": [], - "sourceMap": "", - "deployedSourceMap": "", - "source": "// SPDX-License-Identifier: MIT\n// OpenZeppelin Contracts (last updated v4.9.0) (proxy/transparent/TransparentUpgradeableProxy.sol)\n\npragma solidity ^0.8.0;\n\nimport \"../ERC1967/ERC1967Proxy.sol\";\n\n/**\n * @dev Interface for {TransparentUpgradeableProxy}. In order to implement transparency, {TransparentUpgradeableProxy}\n * does not implement this interface directly, and some of its functions are implemented by an internal dispatch\n * mechanism. The compiler is unaware that these functions are implemented by {TransparentUpgradeableProxy} and will not\n * include them in the ABI so this interface must be used to interact with it.\n */\ninterface ITransparentUpgradeableProxy is IERC1967 {\n function admin() external view returns (address);\n\n function implementation() external view returns (address);\n\n function changeAdmin(address) external;\n\n function upgradeTo(address) external;\n\n function upgradeToAndCall(address, bytes memory) external payable;\n}\n\n/**\n * @dev This contract implements a proxy that is upgradeable by an admin.\n *\n * To avoid https://medium.com/nomic-labs-blog/malicious-backdoors-in-ethereum-proxies-62629adf3357[proxy selector\n * clashing], which can potentially be used in an attack, this contract uses the\n * https://blog.openzeppelin.com/the-transparent-proxy-pattern/[transparent proxy pattern]. This pattern implies two\n * things that go hand in hand:\n *\n * 1. If any account other than the admin calls the proxy, the call will be forwarded to the implementation, even if\n * that call matches one of the admin functions exposed by the proxy itself.\n * 2. If the admin calls the proxy, it can access the admin functions, but its calls will never be forwarded to the\n * implementation. If the admin tries to call a function on the implementation it will fail with an error that says\n * \"admin cannot fallback to proxy target\".\n *\n * These properties mean that the admin account can only be used for admin actions like upgrading the proxy or changing\n * the admin, so it's best if it's a dedicated account that is not used for anything else. This will avoid headaches due\n * to sudden errors when trying to call a function from the proxy implementation.\n *\n * Our recommendation is for the dedicated account to be an instance of the {ProxyAdmin} contract. If set up this way,\n * you should think of the `ProxyAdmin` instance as the real administrative interface of your proxy.\n *\n * NOTE: The real interface of this proxy is that defined in `ITransparentUpgradeableProxy`. This contract does not\n * inherit from that interface, and instead the admin functions are implicitly implemented using a custom dispatch\n * mechanism in `_fallback`. Consequently, the compiler will not produce an ABI for this contract. This is necessary to\n * fully implement transparency without decoding reverts caused by selector clashes between the proxy and the\n * implementation.\n *\n * WARNING: It is not recommended to extend this contract to add additional external functions. If you do so, the compiler\n * will not check that there are no selector conflicts, due to the note above. A selector clash between any new function\n * and the functions declared in {ITransparentUpgradeableProxy} will be resolved in favor of the new one. This could\n * render the admin operations inaccessible, which could prevent upgradeability. Transparency may also be compromised.\n */\ncontract TransparentUpgradeableProxy is ERC1967Proxy {\n /**\n * @dev Initializes an upgradeable proxy managed by `_admin`, backed by the implementation at `_logic`, and\n * optionally initialized with `_data` as explained in {ERC1967Proxy-constructor}.\n */\n constructor(address _logic, address admin_, bytes memory _data) payable ERC1967Proxy(_logic, _data) {\n _changeAdmin(admin_);\n }\n\n /**\n * @dev Modifier used internally that will delegate the call to the implementation unless the sender is the admin.\n *\n * CAUTION: This modifier is deprecated, as it could cause issues if the modified function has arguments, and the\n * implementation provides a function with the same selector.\n */\n modifier ifAdmin() {\n if (msg.sender == _getAdmin()) {\n _;\n } else {\n _fallback();\n }\n }\n\n /**\n * @dev If caller is the admin process the call internally, otherwise transparently fallback to the proxy behavior\n */\n function _fallback() internal virtual override {\n if (msg.sender == _getAdmin()) {\n bytes memory ret;\n bytes4 selector = msg.sig;\n if (selector == ITransparentUpgradeableProxy.upgradeTo.selector) {\n ret = _dispatchUpgradeTo();\n } else if (selector == ITransparentUpgradeableProxy.upgradeToAndCall.selector) {\n ret = _dispatchUpgradeToAndCall();\n } else if (selector == ITransparentUpgradeableProxy.changeAdmin.selector) {\n ret = _dispatchChangeAdmin();\n } else if (selector == ITransparentUpgradeableProxy.admin.selector) {\n ret = _dispatchAdmin();\n } else if (selector == ITransparentUpgradeableProxy.implementation.selector) {\n ret = _dispatchImplementation();\n } else {\n revert(\"TransparentUpgradeableProxy: admin cannot fallback to proxy target\");\n }\n assembly {\n return(add(ret, 0x20), mload(ret))\n }\n } else {\n super._fallback();\n }\n }\n\n /**\n * @dev Returns the current admin.\n *\n * TIP: To get this value clients can read directly from the storage slot shown below (specified by EIP1967) using the\n * https://eth.wiki/json-rpc/API#eth_getstorageat[`eth_getStorageAt`] RPC call.\n * `0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103`\n */\n function _dispatchAdmin() private returns (bytes memory) {\n _requireZeroValue();\n\n address admin = _getAdmin();\n return abi.encode(admin);\n }\n\n /**\n * @dev Returns the current implementation.\n *\n * TIP: To get this value clients can read directly from the storage slot shown below (specified by EIP1967) using the\n * https://eth.wiki/json-rpc/API#eth_getstorageat[`eth_getStorageAt`] RPC call.\n * `0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc`\n */\n function _dispatchImplementation() private returns (bytes memory) {\n _requireZeroValue();\n\n address implementation = _implementation();\n return abi.encode(implementation);\n }\n\n /**\n * @dev Changes the admin of the proxy.\n *\n * Emits an {AdminChanged} event.\n */\n function _dispatchChangeAdmin() private returns (bytes memory) {\n _requireZeroValue();\n\n address newAdmin = abi.decode(msg.data[4:], (address));\n _changeAdmin(newAdmin);\n\n return \"\";\n }\n\n /**\n * @dev Upgrade the implementation of the proxy.\n */\n function _dispatchUpgradeTo() private returns (bytes memory) {\n _requireZeroValue();\n\n address newImplementation = abi.decode(msg.data[4:], (address));\n _upgradeToAndCall(newImplementation, bytes(\"\"), false);\n\n return \"\";\n }\n\n /**\n * @dev Upgrade the implementation of the proxy, and then call a function from the new implementation as specified\n * by `data`, which should be an encoded function call. This is useful to initialize new storage variables in the\n * proxied contract.\n */\n function _dispatchUpgradeToAndCall() private returns (bytes memory) {\n (address newImplementation, bytes memory data) = abi.decode(msg.data[4:], (address, bytes));\n _upgradeToAndCall(newImplementation, data, true);\n\n return \"\";\n }\n\n /**\n * @dev Returns the current admin.\n *\n * CAUTION: This function is deprecated. Use {ERC1967Upgrade-_getAdmin} instead.\n */\n function _admin() internal view virtual returns (address) {\n return _getAdmin();\n }\n\n /**\n * @dev To keep this contract fully transparent, all `ifAdmin` functions must be payable. This helper is here to\n * emulate some proxy functions being non-payable while still allowing value to pass through.\n */\n function _requireZeroValue() private {\n require(msg.value == 0);\n }\n}\n", - "sourcePath": "@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", - "ast": { - "absolutePath": "@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", - "exportedSymbols": { - "Address": [ - 2103 - ], - "ERC1967Proxy": [ - 948 - ], - "ERC1967Upgrade": [ - 1252 - ], - "IBeacon": [ - 1314 - ], - "IERC1822Proxiable": [ - 911 - ], - "IERC1967": [ - 901 - ], - "ITransparentUpgradeableProxy": [ - 1484 - ], - "Proxy": [ - 1304 - ], - "StorageSlot": [ - 2243 - ], - "TransparentUpgradeableProxy": [ - 1773 - ] - }, - "id": 1774, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1452, - "literals": [ - "solidity", - "^", - "0.8", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "133:23:13" - }, - { - "absolutePath": "@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol", - "file": "../ERC1967/ERC1967Proxy.sol", - "id": 1453, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 1774, - "sourceUnit": 949, - "src": "158:37:13", - "symbolAliases": [], - "unitAlias": "" - }, - { - "abstract": false, - "baseContracts": [ - { - "baseName": { - "id": 1455, - "name": "IERC1967", - "nameLocations": [ - "679:8:13" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 901, - "src": "679:8:13" - }, - "id": 1456, - "nodeType": "InheritanceSpecifier", - "src": "679:8:13" - } - ], - "canonicalName": "ITransparentUpgradeableProxy", - "contractDependencies": [], - "contractKind": "interface", - "documentation": { - "id": 1454, - "nodeType": "StructuredDocumentation", - "src": "197:439:13", - "text": " @dev Interface for {TransparentUpgradeableProxy}. In order to implement transparency, {TransparentUpgradeableProxy}\n does not implement this interface directly, and some of its functions are implemented by an internal dispatch\n mechanism. The compiler is unaware that these functions are implemented by {TransparentUpgradeableProxy} and will not\n include them in the ABI so this interface must be used to interact with it." - }, - "fullyImplemented": false, - "id": 1484, - "linearizedBaseContracts": [ - 1484, - 901 - ], - "name": "ITransparentUpgradeableProxy", - "nameLocation": "647:28:13", - "nodeType": "ContractDefinition", - "nodes": [ - { - "functionSelector": "f851a440", - "id": 1461, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "admin", - "nameLocation": "703:5:13", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1457, - "nodeType": "ParameterList", - "parameters": [], - "src": "708:2:13" - }, - "returnParameters": { - "id": 1460, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1459, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1461, - "src": "734:7:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1458, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "734:7:13", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "733:9:13" - }, - "scope": 1484, - "src": "694:49:13", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "5c60da1b", - "id": 1466, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "implementation", - "nameLocation": "758:14:13", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1462, - "nodeType": "ParameterList", - "parameters": [], - "src": "772:2:13" - }, - "returnParameters": { - "id": 1465, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1464, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1466, - "src": "798:7:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1463, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "798:7:13", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "797:9:13" - }, - "scope": 1484, - "src": "749:58:13", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "8f283970", - "id": 1471, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "changeAdmin", - "nameLocation": "822:11:13", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1469, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1468, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1471, - "src": "834:7:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1467, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "834:7:13", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "833:9:13" - }, - "returnParameters": { - "id": 1470, - "nodeType": "ParameterList", - "parameters": [], - "src": "851:0:13" - }, - "scope": 1484, - "src": "813:39:13", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "3659cfe6", - "id": 1476, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "upgradeTo", - "nameLocation": "867:9:13", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1474, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1473, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1476, - "src": "877:7:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1472, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "877:7:13", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "876:9:13" - }, - "returnParameters": { - "id": 1475, - "nodeType": "ParameterList", - "parameters": [], - "src": "894:0:13" - }, - "scope": 1484, - "src": "858:37:13", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "4f1ef286", - "id": 1483, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "upgradeToAndCall", - "nameLocation": "910:16:13", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1481, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1478, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1483, - "src": "927:7:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1477, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "927:7:13", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1480, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1483, - "src": "936:12:13", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1479, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "936:5:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "926:23:13" - }, - "returnParameters": { - "id": 1482, - "nodeType": "ParameterList", - "parameters": [], - "src": "966:0:13" - }, - "scope": 1484, - "src": "901:66:13", - "stateMutability": "payable", - "virtual": false, - "visibility": "external" - } - ], - "scope": 1774, - "src": "637:332:13", - "usedErrors": [] - }, - { - "abstract": false, - "baseContracts": [ - { - "baseName": { - "id": 1486, - "name": "ERC1967Proxy", - "nameLocations": [ - "3429:12:13" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 948, - "src": "3429:12:13" - }, - "id": 1487, - "nodeType": "InheritanceSpecifier", - "src": "3429:12:13" - } - ], - "canonicalName": "TransparentUpgradeableProxy", - "contractDependencies": [], - "contractKind": "contract", - "documentation": { - "id": 1485, - "nodeType": "StructuredDocumentation", - "src": "971:2417:13", - "text": " @dev This contract implements a proxy that is upgradeable by an admin.\n To avoid https://medium.com/nomic-labs-blog/malicious-backdoors-in-ethereum-proxies-62629adf3357[proxy selector\n clashing], which can potentially be used in an attack, this contract uses the\n https://blog.openzeppelin.com/the-transparent-proxy-pattern/[transparent proxy pattern]. This pattern implies two\n things that go hand in hand:\n 1. If any account other than the admin calls the proxy, the call will be forwarded to the implementation, even if\n that call matches one of the admin functions exposed by the proxy itself.\n 2. If the admin calls the proxy, it can access the admin functions, but its calls will never be forwarded to the\n implementation. If the admin tries to call a function on the implementation it will fail with an error that says\n \"admin cannot fallback to proxy target\".\n These properties mean that the admin account can only be used for admin actions like upgrading the proxy or changing\n the admin, so it's best if it's a dedicated account that is not used for anything else. This will avoid headaches due\n to sudden errors when trying to call a function from the proxy implementation.\n Our recommendation is for the dedicated account to be an instance of the {ProxyAdmin} contract. If set up this way,\n you should think of the `ProxyAdmin` instance as the real administrative interface of your proxy.\n NOTE: The real interface of this proxy is that defined in `ITransparentUpgradeableProxy`. This contract does not\n inherit from that interface, and instead the admin functions are implicitly implemented using a custom dispatch\n mechanism in `_fallback`. Consequently, the compiler will not produce an ABI for this contract. This is necessary to\n fully implement transparency without decoding reverts caused by selector clashes between the proxy and the\n implementation.\n WARNING: It is not recommended to extend this contract to add additional external functions. If you do so, the compiler\n will not check that there are no selector conflicts, due to the note above. A selector clash between any new function\n and the functions declared in {ITransparentUpgradeableProxy} will be resolved in favor of the new one. This could\n render the admin operations inaccessible, which could prevent upgradeability. Transparency may also be compromised." - }, - "fullyImplemented": true, - "id": 1773, - "linearizedBaseContracts": [ - 1773, - 948, - 1252, - 901, - 1304 - ], - "name": "TransparentUpgradeableProxy", - "nameLocation": "3398:27:13", - "nodeType": "ContractDefinition", - "nodes": [ - { - "body": { - "id": 1505, - "nodeType": "Block", - "src": "3763:37:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 1502, - "name": "admin_", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1492, - "src": "3786:6:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 1501, - "name": "_changeAdmin", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1160, - "src": "3773:12:13", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$__$", - "typeString": "function (address)" - } - }, - "id": 1503, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "3773:20:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1504, - "nodeType": "ExpressionStatement", - "src": "3773:20:13" - } - ] - }, - "documentation": { - "id": 1488, - "nodeType": "StructuredDocumentation", - "src": "3448:210:13", - "text": " @dev Initializes an upgradeable proxy managed by `_admin`, backed by the implementation at `_logic`, and\n optionally initialized with `_data` as explained in {ERC1967Proxy-constructor}." - }, - "id": 1506, - "implemented": true, - "kind": "constructor", - "modifiers": [ - { - "arguments": [ - { - "id": 1497, - "name": "_logic", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1490, - "src": "3748:6:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 1498, - "name": "_data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1494, - "src": "3756:5:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "id": 1499, - "kind": "baseConstructorSpecifier", - "modifierName": { - "id": 1496, - "name": "ERC1967Proxy", - "nameLocations": [ - "3735:12:13" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 948, - "src": "3735:12:13" - }, - "nodeType": "ModifierInvocation", - "src": "3735:27:13" - } - ], - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1495, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1490, - "mutability": "mutable", - "name": "_logic", - "nameLocation": "3683:6:13", - "nodeType": "VariableDeclaration", - "scope": 1506, - "src": "3675:14:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1489, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3675:7:13", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1492, - "mutability": "mutable", - "name": "admin_", - "nameLocation": "3699:6:13", - "nodeType": "VariableDeclaration", - "scope": 1506, - "src": "3691:14:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1491, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3691:7:13", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1494, - "mutability": "mutable", - "name": "_data", - "nameLocation": "3720:5:13", - "nodeType": "VariableDeclaration", - "scope": 1506, - "src": "3707:18:13", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1493, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "3707:5:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "3674:52:13" - }, - "returnParameters": { - "id": 1500, - "nodeType": "ParameterList", - "parameters": [], - "src": "3763:0:13" - }, - "scope": 1773, - "src": "3663:137:13", - "stateMutability": "payable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 1521, - "nodeType": "Block", - "src": "4151:115:13", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 1513, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 1509, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "4165:3:13", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1510, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "4169:6:13", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "4165:10:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1511, - "name": "_getAdmin", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1117, - "src": "4179:9:13", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", - "typeString": "function () view returns (address)" - } - }, - "id": 1512, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4179:11:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "4165:25:13", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 1519, - "nodeType": "Block", - "src": "4224:36:13", - "statements": [ - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1516, - "name": "_fallback", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 1615 - ], - "referencedDeclaration": 1615, - "src": "4238:9:13", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", - "typeString": "function ()" - } - }, - "id": 1517, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4238:11:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1518, - "nodeType": "ExpressionStatement", - "src": "4238:11:13" - } - ] - }, - "id": 1520, - "nodeType": "IfStatement", - "src": "4161:99:13", - "trueBody": { - "id": 1515, - "nodeType": "Block", - "src": "4192:26:13", - "statements": [ - { - "id": 1514, - "nodeType": "PlaceholderStatement", - "src": "4206:1:13" - } - ] - } - } - ] - }, - "documentation": { - "id": 1507, - "nodeType": "StructuredDocumentation", - "src": "3806:321:13", - "text": " @dev Modifier used internally that will delegate the call to the implementation unless the sender is the admin.\n CAUTION: This modifier is deprecated, as it could cause issues if the modified function has arguments, and the\n implementation provides a function with the same selector." - }, - "id": 1522, - "name": "ifAdmin", - "nameLocation": "4141:7:13", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 1508, - "nodeType": "ParameterList", - "parameters": [], - "src": "4148:2:13" - }, - "src": "4132:134:13", - "virtual": false, - "visibility": "internal" - }, - { - "baseFunctions": [ - 1282 - ], - "body": { - "id": 1614, - "nodeType": "Block", - "src": "4454:1055:13", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 1531, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 1527, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "4468:3:13", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1528, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "4472:6:13", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "4468:10:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1529, - "name": "_getAdmin", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1117, - "src": "4482:9:13", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", - "typeString": "function () view returns (address)" - } - }, - "id": 1530, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4482:11:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "4468:25:13", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 1612, - "nodeType": "Block", - "src": "5461:42:13", - "statements": [ - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "expression": { - "id": 1607, - "name": "super", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967271, - "src": "5475:5:13", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_super$_TransparentUpgradeableProxy_$1773_$", - "typeString": "type(contract super TransparentUpgradeableProxy)" - } - }, - "id": 1609, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "5481:9:13", - "memberName": "_fallback", - "nodeType": "MemberAccess", - "referencedDeclaration": 1282, - "src": "5475:15:13", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", - "typeString": "function ()" - } - }, - "id": 1610, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5475:17:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1611, - "nodeType": "ExpressionStatement", - "src": "5475:17:13" - } - ] - }, - "id": 1613, - "nodeType": "IfStatement", - "src": "4464:1039:13", - "trueBody": { - "id": 1606, - "nodeType": "Block", - "src": "4495:960:13", - "statements": [ - { - "assignments": [ - 1533 - ], - "declarations": [ - { - "constant": false, - "id": 1533, - "mutability": "mutable", - "name": "ret", - "nameLocation": "4522:3:13", - "nodeType": "VariableDeclaration", - "scope": 1606, - "src": "4509:16:13", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1532, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "4509:5:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 1534, - "nodeType": "VariableDeclarationStatement", - "src": "4509:16:13" - }, - { - "assignments": [ - 1536 - ], - "declarations": [ - { - "constant": false, - "id": 1536, - "mutability": "mutable", - "name": "selector", - "nameLocation": "4546:8:13", - "nodeType": "VariableDeclaration", - "scope": 1606, - "src": "4539:15:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "typeName": { - "id": 1535, - "name": "bytes4", - "nodeType": "ElementaryTypeName", - "src": "4539:6:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "visibility": "internal" - } - ], - "id": 1539, - "initialValue": { - "expression": { - "id": 1537, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "4557:3:13", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1538, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "4561:3:13", - "memberName": "sig", - "nodeType": "MemberAccess", - "src": "4557:7:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "4539:25:13" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1544, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1540, - "name": "selector", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1536, - "src": "4582:8:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1541, - "name": "ITransparentUpgradeableProxy", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1484, - "src": "4594:28:13", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ITransparentUpgradeableProxy_$1484_$", - "typeString": "type(contract ITransparentUpgradeableProxy)" - } - }, - "id": 1542, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "4623:9:13", - "memberName": "upgradeTo", - "nodeType": "MemberAccess", - "referencedDeclaration": 1476, - "src": "4594:38:13", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$returns$__$", - "typeString": "function ITransparentUpgradeableProxy.upgradeTo(address)" - } - }, - "id": 1543, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "4633:8:13", - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "4594:47:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "4582:59:13", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "condition": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1555, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1551, - "name": "selector", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1536, - "src": "4712:8:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1552, - "name": "ITransparentUpgradeableProxy", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1484, - "src": "4724:28:13", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ITransparentUpgradeableProxy_$1484_$", - "typeString": "type(contract ITransparentUpgradeableProxy)" - } - }, - "id": 1553, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "4753:16:13", - "memberName": "upgradeToAndCall", - "nodeType": "MemberAccess", - "referencedDeclaration": 1483, - "src": "4724:45:13", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_payable$_t_address_$_t_bytes_memory_ptr_$returns$__$", - "typeString": "function ITransparentUpgradeableProxy.upgradeToAndCall(address,bytes memory) payable" - } - }, - "id": 1554, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "4770:8:13", - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "4724:54:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "4712:66:13", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "condition": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1566, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1562, - "name": "selector", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1536, - "src": "4856:8:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1563, - "name": "ITransparentUpgradeableProxy", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1484, - "src": "4868:28:13", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ITransparentUpgradeableProxy_$1484_$", - "typeString": "type(contract ITransparentUpgradeableProxy)" - } - }, - "id": 1564, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "4897:11:13", - "memberName": "changeAdmin", - "nodeType": "MemberAccess", - "referencedDeclaration": 1471, - "src": "4868:40:13", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$returns$__$", - "typeString": "function ITransparentUpgradeableProxy.changeAdmin(address)" - } - }, - "id": 1565, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "4909:8:13", - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "4868:49:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "4856:61:13", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "condition": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1577, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1573, - "name": "selector", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1536, - "src": "4990:8:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1574, - "name": "ITransparentUpgradeableProxy", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1484, - "src": "5002:28:13", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ITransparentUpgradeableProxy_$1484_$", - "typeString": "type(contract ITransparentUpgradeableProxy)" - } - }, - "id": 1575, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "5031:5:13", - "memberName": "admin", - "nodeType": "MemberAccess", - "referencedDeclaration": 1461, - "src": "5002:34:13", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_view$__$returns$_t_address_$", - "typeString": "function ITransparentUpgradeableProxy.admin() view returns (address)" - } - }, - "id": 1576, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "5037:8:13", - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "5002:43:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "4990:55:13", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "condition": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1588, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1584, - "name": "selector", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1536, - "src": "5112:8:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1585, - "name": "ITransparentUpgradeableProxy", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1484, - "src": "5124:28:13", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ITransparentUpgradeableProxy_$1484_$", - "typeString": "type(contract ITransparentUpgradeableProxy)" - } - }, - "id": 1586, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "5153:14:13", - "memberName": "implementation", - "nodeType": "MemberAccess", - "referencedDeclaration": 1466, - "src": "5124:43:13", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_view$__$returns$_t_address_$", - "typeString": "function ITransparentUpgradeableProxy.implementation() view returns (address)" - } - }, - "id": 1587, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "5168:8:13", - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "5124:52:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "5112:64:13", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 1599, - "nodeType": "Block", - "src": "5248:109:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "hexValue": "5472616e73706172656e745570677261646561626c6550726f78793a2061646d696e2063616e6e6f742066616c6c6261636b20746f2070726f787920746172676574", - "id": 1596, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5273:68:13", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_f5d2ea39d7e6c7d19dc32ccc2bd7ca26b7aa4a603ef4aa6f2b205c93c3ffe43d", - "typeString": "literal_string \"TransparentUpgradeableProxy: admin cannot fallback to proxy target\"" - }, - "value": "TransparentUpgradeableProxy: admin cannot fallback to proxy target" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_f5d2ea39d7e6c7d19dc32ccc2bd7ca26b7aa4a603ef4aa6f2b205c93c3ffe43d", - "typeString": "literal_string \"TransparentUpgradeableProxy: admin cannot fallback to proxy target\"" - } - ], - "id": 1595, - "name": "revert", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967277, - 4294967277 - ], - "referencedDeclaration": 4294967277, - "src": "5266:6:13", - "typeDescriptions": { - "typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory) pure" - } - }, - "id": 1597, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5266:76:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1598, - "nodeType": "ExpressionStatement", - "src": "5266:76:13" - } - ] - }, - "id": 1600, - "nodeType": "IfStatement", - "src": "5108:249:13", - "trueBody": { - "id": 1594, - "nodeType": "Block", - "src": "5178:64:13", - "statements": [ - { - "expression": { - "id": 1592, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1589, - "name": "ret", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1533, - "src": "5196:3:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1590, - "name": "_dispatchImplementation", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1655, - "src": "5202:23:13", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () returns (bytes memory)" - } - }, - "id": 1591, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5202:25:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "src": "5196:31:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 1593, - "nodeType": "ExpressionStatement", - "src": "5196:31:13" - } - ] - } - }, - "id": 1601, - "nodeType": "IfStatement", - "src": "4986:371:13", - "trueBody": { - "id": 1583, - "nodeType": "Block", - "src": "5047:55:13", - "statements": [ - { - "expression": { - "id": 1581, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1578, - "name": "ret", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1533, - "src": "5065:3:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1579, - "name": "_dispatchAdmin", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1635, - "src": "5071:14:13", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () returns (bytes memory)" - } - }, - "id": 1580, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5071:16:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "src": "5065:22:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 1582, - "nodeType": "ExpressionStatement", - "src": "5065:22:13" - } - ] - } - }, - "id": 1602, - "nodeType": "IfStatement", - "src": "4852:505:13", - "trueBody": { - "id": 1572, - "nodeType": "Block", - "src": "4919:61:13", - "statements": [ - { - "expression": { - "id": 1570, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1567, - "name": "ret", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1533, - "src": "4937:3:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1568, - "name": "_dispatchChangeAdmin", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1684, - "src": "4943:20:13", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () returns (bytes memory)" - } - }, - "id": 1569, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4943:22:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "src": "4937:28:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 1571, - "nodeType": "ExpressionStatement", - "src": "4937:28:13" - } - ] - } - }, - "id": 1603, - "nodeType": "IfStatement", - "src": "4708:649:13", - "trueBody": { - "id": 1561, - "nodeType": "Block", - "src": "4780:66:13", - "statements": [ - { - "expression": { - "id": 1559, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1556, - "name": "ret", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1533, - "src": "4798:3:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1557, - "name": "_dispatchUpgradeToAndCall", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1750, - "src": "4804:25:13", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () returns (bytes memory)" - } - }, - "id": 1558, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4804:27:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "src": "4798:33:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 1560, - "nodeType": "ExpressionStatement", - "src": "4798:33:13" - } - ] - } - }, - "id": 1604, - "nodeType": "IfStatement", - "src": "4578:779:13", - "trueBody": { - "id": 1550, - "nodeType": "Block", - "src": "4643:59:13", - "statements": [ - { - "expression": { - "id": 1548, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1545, - "name": "ret", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1533, - "src": "4661:3:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1546, - "name": "_dispatchUpgradeTo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1718, - "src": "4667:18:13", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () returns (bytes memory)" - } - }, - "id": 1547, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4667:20:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "src": "4661:26:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 1549, - "nodeType": "ExpressionStatement", - "src": "4661:26:13" - } - ] - } - }, - { - "AST": { - "nodeType": "YulBlock", - "src": "5379:66:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "ret", - "nodeType": "YulIdentifier", - "src": "5408:3:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5413:4:13", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5404:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "5404:14:13" - }, - { - "arguments": [ - { - "name": "ret", - "nodeType": "YulIdentifier", - "src": "5426:3:13" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "5420:5:13" - }, - "nodeType": "YulFunctionCall", - "src": "5420:10:13" - } - ], - "functionName": { - "name": "return", - "nodeType": "YulIdentifier", - "src": "5397:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "5397:34:13" - }, - "nodeType": "YulExpressionStatement", - "src": "5397:34:13" - } - ] - }, - "evmVersion": "paris", - "externalReferences": [ - { - "declaration": 1533, - "isOffset": false, - "isSlot": false, - "src": "5408:3:13", - "valueSize": 1 - }, - { - "declaration": 1533, - "isOffset": false, - "isSlot": false, - "src": "5426:3:13", - "valueSize": 1 - } - ], - "id": 1605, - "nodeType": "InlineAssembly", - "src": "5370:75:13" - } - ] - } - } - ] - }, - "documentation": { - "id": 1523, - "nodeType": "StructuredDocumentation", - "src": "4272:130:13", - "text": " @dev If caller is the admin process the call internally, otherwise transparently fallback to the proxy behavior" - }, - "id": 1615, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_fallback", - "nameLocation": "4416:9:13", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 1525, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "4445:8:13" - }, - "parameters": { - "id": 1524, - "nodeType": "ParameterList", - "parameters": [], - "src": "4425:2:13" - }, - "returnParameters": { - "id": 1526, - "nodeType": "ParameterList", - "parameters": [], - "src": "4454:0:13" - }, - "scope": 1773, - "src": "4407:1102:13", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "internal" - }, - { - "body": { - "id": 1634, - "nodeType": "Block", - "src": "5917:108:13", - "statements": [ - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1621, - "name": "_requireZeroValue", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1772, - "src": "5927:17:13", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", - "typeString": "function ()" - } - }, - "id": 1622, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5927:19:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1623, - "nodeType": "ExpressionStatement", - "src": "5927:19:13" - }, - { - "assignments": [ - 1625 - ], - "declarations": [ - { - "constant": false, - "id": 1625, - "mutability": "mutable", - "name": "admin", - "nameLocation": "5965:5:13", - "nodeType": "VariableDeclaration", - "scope": 1634, - "src": "5957:13:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1624, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "5957:7:13", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "id": 1628, - "initialValue": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1626, - "name": "_getAdmin", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1117, - "src": "5973:9:13", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", - "typeString": "function () view returns (address)" - } - }, - "id": 1627, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5973:11:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "5957:27:13" - }, - { - "expression": { - "arguments": [ - { - "id": 1631, - "name": "admin", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1625, - "src": "6012:5:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "expression": { - "id": 1629, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "6001:3:13", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 1630, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "6005:6:13", - "memberName": "encode", - "nodeType": "MemberAccess", - "src": "6001:10:13", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 1632, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "6001:17:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 1620, - "id": 1633, - "nodeType": "Return", - "src": "5994:24:13" - } - ] - }, - "documentation": { - "id": 1616, - "nodeType": "StructuredDocumentation", - "src": "5515:340:13", - "text": " @dev Returns the current admin.\n TIP: To get this value clients can read directly from the storage slot shown below (specified by EIP1967) using the\n https://eth.wiki/json-rpc/API#eth_getstorageat[`eth_getStorageAt`] RPC call.\n `0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103`" - }, - "id": 1635, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_dispatchAdmin", - "nameLocation": "5869:14:13", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1617, - "nodeType": "ParameterList", - "parameters": [], - "src": "5883:2:13" - }, - "returnParameters": { - "id": 1620, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1619, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1635, - "src": "5903:12:13", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1618, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "5903:5:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "5902:14:13" - }, - "scope": 1773, - "src": "5860:165:13", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 1654, - "nodeType": "Block", - "src": "6451:132:13", - "statements": [ - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1641, - "name": "_requireZeroValue", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1772, - "src": "6461:17:13", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", - "typeString": "function ()" - } - }, - "id": 1642, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "6461:19:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1643, - "nodeType": "ExpressionStatement", - "src": "6461:19:13" - }, - { - "assignments": [ - 1645 - ], - "declarations": [ - { - "constant": false, - "id": 1645, - "mutability": "mutable", - "name": "implementation", - "nameLocation": "6499:14:13", - "nodeType": "VariableDeclaration", - "scope": 1654, - "src": "6491:22:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1644, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "6491:7:13", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "id": 1648, - "initialValue": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1646, - "name": "_implementation", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 947 - ], - "referencedDeclaration": 947, - "src": "6516:15:13", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", - "typeString": "function () view returns (address)" - } - }, - "id": 1647, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "6516:17:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "6491:42:13" - }, - { - "expression": { - "arguments": [ - { - "id": 1651, - "name": "implementation", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1645, - "src": "6561:14:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "expression": { - "id": 1649, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "6550:3:13", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 1650, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "6554:6:13", - "memberName": "encode", - "nodeType": "MemberAccess", - "src": "6550:10:13", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 1652, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "6550:26:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 1640, - "id": 1653, - "nodeType": "Return", - "src": "6543:33:13" - } - ] - }, - "documentation": { - "id": 1636, - "nodeType": "StructuredDocumentation", - "src": "6031:349:13", - "text": " @dev Returns the current implementation.\n TIP: To get this value clients can read directly from the storage slot shown below (specified by EIP1967) using the\n https://eth.wiki/json-rpc/API#eth_getstorageat[`eth_getStorageAt`] RPC call.\n `0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc`" - }, - "id": 1655, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_dispatchImplementation", - "nameLocation": "6394:23:13", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1637, - "nodeType": "ParameterList", - "parameters": [], - "src": "6417:2:13" - }, - "returnParameters": { - "id": 1640, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1639, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1655, - "src": "6437:12:13", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1638, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "6437:5:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "6436:14:13" - }, - "scope": 1773, - "src": "6385:198:13", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 1683, - "nodeType": "Block", - "src": "6757:153:13", - "statements": [ - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1661, - "name": "_requireZeroValue", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1772, - "src": "6767:17:13", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", - "typeString": "function ()" - } - }, - "id": 1662, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "6767:19:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1663, - "nodeType": "ExpressionStatement", - "src": "6767:19:13" - }, - { - "assignments": [ - 1665 - ], - "declarations": [ - { - "constant": false, - "id": 1665, - "mutability": "mutable", - "name": "newAdmin", - "nameLocation": "6805:8:13", - "nodeType": "VariableDeclaration", - "scope": 1683, - "src": "6797:16:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1664, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "6797:7:13", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "id": 1676, - "initialValue": { - "arguments": [ - { - "baseExpression": { - "expression": { - "id": 1668, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "6827:3:13", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1669, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "6831:4:13", - "memberName": "data", - "nodeType": "MemberAccess", - "src": "6827:8:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "id": 1671, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexRangeAccess", - "src": "6827:12:13", - "startExpression": { - "hexValue": "34", - "id": 1670, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6836:1:13", - "typeDescriptions": { - "typeIdentifier": "t_rational_4_by_1", - "typeString": "int_const 4" - }, - "value": "4" - }, - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr_slice", - "typeString": "bytes calldata slice" - } - }, - { - "components": [ - { - "id": 1673, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "6842:7:13", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 1672, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "6842:7:13", - "typeDescriptions": {} - } - } - ], - "id": 1674, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "6841:9:13", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_calldata_ptr_slice", - "typeString": "bytes calldata slice" - }, - { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - } - ], - "expression": { - "id": 1666, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "6816:3:13", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 1667, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "6820:6:13", - "memberName": "decode", - "nodeType": "MemberAccess", - "src": "6816:10:13", - "typeDescriptions": { - "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 1675, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "6816:35:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "6797:54:13" - }, - { - "expression": { - "arguments": [ - { - "id": 1678, - "name": "newAdmin", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1665, - "src": "6874:8:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 1677, - "name": "_changeAdmin", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1160, - "src": "6861:12:13", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$__$", - "typeString": "function (address)" - } - }, - "id": 1679, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "6861:22:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1680, - "nodeType": "ExpressionStatement", - "src": "6861:22:13" - }, - { - "expression": { - "hexValue": "", - "id": 1681, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6901:2:13", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - }, - "value": "" - }, - "functionReturnParameters": 1660, - "id": 1682, - "nodeType": "Return", - "src": "6894:9:13" - } - ] - }, - "documentation": { - "id": 1656, - "nodeType": "StructuredDocumentation", - "src": "6589:100:13", - "text": " @dev Changes the admin of the proxy.\n Emits an {AdminChanged} event." - }, - "id": 1684, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_dispatchChangeAdmin", - "nameLocation": "6703:20:13", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1657, - "nodeType": "ParameterList", - "parameters": [], - "src": "6723:2:13" - }, - "returnParameters": { - "id": 1660, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1659, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1684, - "src": "6743:12:13", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1658, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "6743:5:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "6742:14:13" - }, - "scope": 1773, - "src": "6694:216:13", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 1717, - "nodeType": "Block", - "src": "7046:194:13", - "statements": [ - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1690, - "name": "_requireZeroValue", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1772, - "src": "7056:17:13", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", - "typeString": "function ()" - } - }, - "id": 1691, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "7056:19:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1692, - "nodeType": "ExpressionStatement", - "src": "7056:19:13" - }, - { - "assignments": [ - 1694 - ], - "declarations": [ - { - "constant": false, - "id": 1694, - "mutability": "mutable", - "name": "newImplementation", - "nameLocation": "7094:17:13", - "nodeType": "VariableDeclaration", - "scope": 1717, - "src": "7086:25:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1693, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "7086:7:13", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "id": 1705, - "initialValue": { - "arguments": [ - { - "baseExpression": { - "expression": { - "id": 1697, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "7125:3:13", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1698, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "7129:4:13", - "memberName": "data", - "nodeType": "MemberAccess", - "src": "7125:8:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "id": 1700, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexRangeAccess", - "src": "7125:12:13", - "startExpression": { - "hexValue": "34", - "id": 1699, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7134:1:13", - "typeDescriptions": { - "typeIdentifier": "t_rational_4_by_1", - "typeString": "int_const 4" - }, - "value": "4" - }, - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr_slice", - "typeString": "bytes calldata slice" - } - }, - { - "components": [ - { - "id": 1702, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "7140:7:13", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 1701, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "7140:7:13", - "typeDescriptions": {} - } - } - ], - "id": 1703, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "7139:9:13", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_calldata_ptr_slice", - "typeString": "bytes calldata slice" - }, - { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - } - ], - "expression": { - "id": 1695, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "7114:3:13", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 1696, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "7118:6:13", - "memberName": "decode", - "nodeType": "MemberAccess", - "src": "7114:10:13", - "typeDescriptions": { - "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 1704, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "7114:35:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "7086:63:13" - }, - { - "expression": { - "arguments": [ - { - "id": 1707, - "name": "newImplementation", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1694, - "src": "7177:17:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "arguments": [ - { - "hexValue": "", - "id": 1710, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7202:2:13", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - }, - "value": "" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - } - ], - "id": 1709, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "7196:5:13", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": { - "id": 1708, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "7196:5:13", - "typeDescriptions": {} - } - }, - "id": 1711, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "7196:9:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "hexValue": "66616c7365", - "id": 1712, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7207:5:13", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "false" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 1706, - "name": "_upgradeToAndCall", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1047, - "src": "7159:17:13", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_bytes_memory_ptr_$_t_bool_$returns$__$", - "typeString": "function (address,bytes memory,bool)" - } - }, - "id": 1713, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "7159:54:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1714, - "nodeType": "ExpressionStatement", - "src": "7159:54:13" - }, - { - "expression": { - "hexValue": "", - "id": 1715, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7231:2:13", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - }, - "value": "" - }, - "functionReturnParameters": 1689, - "id": 1716, - "nodeType": "Return", - "src": "7224:9:13" - } - ] - }, - "documentation": { - "id": 1685, - "nodeType": "StructuredDocumentation", - "src": "6916:64:13", - "text": " @dev Upgrade the implementation of the proxy." - }, - "id": 1718, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_dispatchUpgradeTo", - "nameLocation": "6994:18:13", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1686, - "nodeType": "ParameterList", - "parameters": [], - "src": "7012:2:13" - }, - "returnParameters": { - "id": 1689, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1688, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1718, - "src": "7032:12:13", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1687, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "7032:5:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "7031:14:13" - }, - "scope": 1773, - "src": "6985:255:13", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 1749, - "nodeType": "Block", - "src": "7592:186:13", - "statements": [ - { - "assignments": [ - 1725, - 1727 - ], - "declarations": [ - { - "constant": false, - "id": 1725, - "mutability": "mutable", - "name": "newImplementation", - "nameLocation": "7611:17:13", - "nodeType": "VariableDeclaration", - "scope": 1749, - "src": "7603:25:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1724, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "7603:7:13", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1727, - "mutability": "mutable", - "name": "data", - "nameLocation": "7643:4:13", - "nodeType": "VariableDeclaration", - "scope": 1749, - "src": "7630:17:13", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1726, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "7630:5:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 1740, - "initialValue": { - "arguments": [ - { - "baseExpression": { - "expression": { - "id": 1730, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "7662:3:13", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1731, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "7666:4:13", - "memberName": "data", - "nodeType": "MemberAccess", - "src": "7662:8:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "id": 1733, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexRangeAccess", - "src": "7662:12:13", - "startExpression": { - "hexValue": "34", - "id": 1732, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7671:1:13", - "typeDescriptions": { - "typeIdentifier": "t_rational_4_by_1", - "typeString": "int_const 4" - }, - "value": "4" - }, - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr_slice", - "typeString": "bytes calldata slice" - } - }, - { - "components": [ - { - "id": 1735, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "7677:7:13", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 1734, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "7677:7:13", - "typeDescriptions": {} - } - }, - { - "id": 1737, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "7686:5:13", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": { - "id": 1736, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "7686:5:13", - "typeDescriptions": {} - } - } - ], - "id": 1738, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "7676:16:13", - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_type$_t_address_$_$_t_type$_t_bytes_storage_ptr_$_$", - "typeString": "tuple(type(address),type(bytes storage pointer))" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_calldata_ptr_slice", - "typeString": "bytes calldata slice" - }, - { - "typeIdentifier": "t_tuple$_t_type$_t_address_$_$_t_type$_t_bytes_storage_ptr_$_$", - "typeString": "tuple(type(address),type(bytes storage pointer))" - } - ], - "expression": { - "id": 1728, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "7651:3:13", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 1729, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "7655:6:13", - "memberName": "decode", - "nodeType": "MemberAccess", - "src": "7651:10:13", - "typeDescriptions": { - "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 1739, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "7651:42:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_address_payable_$_t_bytes_memory_ptr_$", - "typeString": "tuple(address payable,bytes memory)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "7602:91:13" - }, - { - "expression": { - "arguments": [ - { - "id": 1742, - "name": "newImplementation", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1725, - "src": "7721:17:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 1743, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1727, - "src": "7740:4:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "hexValue": "74727565", - "id": 1744, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7746:4:13", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 1741, - "name": "_upgradeToAndCall", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1047, - "src": "7703:17:13", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_bytes_memory_ptr_$_t_bool_$returns$__$", - "typeString": "function (address,bytes memory,bool)" - } - }, - "id": 1745, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "7703:48:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1746, - "nodeType": "ExpressionStatement", - "src": "7703:48:13" - }, - { - "expression": { - "hexValue": "", - "id": 1747, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7769:2:13", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - }, - "value": "" - }, - "functionReturnParameters": 1723, - "id": 1748, - "nodeType": "Return", - "src": "7762:9:13" - } - ] - }, - "documentation": { - "id": 1719, - "nodeType": "StructuredDocumentation", - "src": "7246:273:13", - "text": " @dev Upgrade the implementation of the proxy, and then call a function from the new implementation as specified\n by `data`, which should be an encoded function call. This is useful to initialize new storage variables in the\n proxied contract." - }, - "id": 1750, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_dispatchUpgradeToAndCall", - "nameLocation": "7533:25:13", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1720, - "nodeType": "ParameterList", - "parameters": [], - "src": "7558:2:13" - }, - "returnParameters": { - "id": 1723, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1722, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1750, - "src": "7578:12:13", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1721, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "7578:5:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "7577:14:13" - }, - "scope": 1773, - "src": "7524:254:13", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 1759, - "nodeType": "Block", - "src": "7989:35:13", - "statements": [ - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1756, - "name": "_getAdmin", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1117, - "src": "8006:9:13", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", - "typeString": "function () view returns (address)" - } - }, - "id": 1757, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "8006:11:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "functionReturnParameters": 1755, - "id": 1758, - "nodeType": "Return", - "src": "7999:18:13" - } - ] - }, - "documentation": { - "id": 1751, - "nodeType": "StructuredDocumentation", - "src": "7784:142:13", - "text": " @dev Returns the current admin.\n CAUTION: This function is deprecated. Use {ERC1967Upgrade-_getAdmin} instead." - }, - "id": 1760, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_admin", - "nameLocation": "7940:6:13", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1752, - "nodeType": "ParameterList", - "parameters": [], - "src": "7946:2:13" - }, - "returnParameters": { - "id": 1755, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1754, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1760, - "src": "7980:7:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1753, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "7980:7:13", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "7979:9:13" - }, - "scope": 1773, - "src": "7931:93:13", - "stateMutability": "view", - "virtual": true, - "visibility": "internal" - }, - { - "body": { - "id": 1771, - "nodeType": "Block", - "src": "8298:40:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1768, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 1765, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "8316:3:13", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1766, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "8320:5:13", - "memberName": "value", - "nodeType": "MemberAccess", - "src": "8316:9:13", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 1767, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "8329:1:13", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "8316:14:13", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 1764, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "8308:7:13", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 1769, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "8308:23:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1770, - "nodeType": "ExpressionStatement", - "src": "8308:23:13" - } - ] - }, - "documentation": { - "id": 1761, - "nodeType": "StructuredDocumentation", - "src": "8030:226:13", - "text": " @dev To keep this contract fully transparent, all `ifAdmin` functions must be payable. This helper is here to\n emulate some proxy functions being non-payable while still allowing value to pass through." - }, - "id": 1772, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_requireZeroValue", - "nameLocation": "8270:17:13", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1762, - "nodeType": "ParameterList", - "parameters": [], - "src": "8287:2:13" - }, - "returnParameters": { - "id": 1763, - "nodeType": "ParameterList", - "parameters": [], - "src": "8298:0:13" - }, - "scope": 1773, - "src": "8261:77:13", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "private" - } - ], - "scope": 1774, - "src": "3389:4951:13", - "usedErrors": [] - } - ], - "src": "133:8208:13" - }, - "compiler": { - "name": "solc", - "version": "0.8.18+commit.87f61d96.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "3.4.13", - "updatedAt": "2024-12-10T18:52:58.848Z", - "devdoc": { - "details": "Interface for {TransparentUpgradeableProxy}. In order to implement transparency, {TransparentUpgradeableProxy} does not implement this interface directly, and some of its functions are implemented by an internal dispatch mechanism. The compiler is unaware that these functions are implemented by {TransparentUpgradeableProxy} and will not include them in the ABI so this interface must be used to interact with it.", - "events": { - "AdminChanged(address,address)": { - "details": "Emitted when the admin account has changed." - }, - "BeaconUpgraded(address)": { - "details": "Emitted when the beacon is changed." - }, - "Upgraded(address)": { - "details": "Emitted when the implementation is upgraded." - } - }, - "kind": "dev", - "methods": {}, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } -} \ No newline at end of file diff --git a/build/contracts/Initializable.json b/build/contracts/Initializable.json deleted file mode 100644 index ae445c2..0000000 --- a/build/contracts/Initializable.json +++ /dev/null @@ -1,2113 +0,0 @@ -{ - "contractName": "Initializable", - "abi": [ - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint8", - "name": "version", - "type": "uint8" - } - ], - "name": "Initialized", - "type": "event" - } - ], - "metadata": "{\"compiler\":{\"version\":\"0.8.18+commit.87f61d96\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"}],\"devdoc\":{\"custom:oz-upgrades-unsafe-allow\":\"constructor constructor() { _disableInitializers(); } ``` ====\",\"details\":\"This is a base contract to aid in writing upgradeable contracts, or any kind of contract that will be deployed behind a proxy. Since proxied contracts do not make use of a constructor, it's common to move constructor logic to an external initializer function, usually called `initialize`. It then becomes necessary to protect this initializer function so it can only be called once. The {initializer} modifier provided by this contract will have this effect. The initialization functions use a version number. Once a version number is used, it is consumed and cannot be reused. This mechanism prevents re-execution of each \\\"step\\\" but allows the creation of new initialization steps in case an upgrade adds a module that needs to be initialized. For example: [.hljs-theme-light.nopadding] ```solidity contract MyToken is ERC20Upgradeable { function initialize() initializer public { __ERC20_init(\\\"MyToken\\\", \\\"MTK\\\"); } } contract MyTokenV2 is MyToken, ERC20PermitUpgradeable { function initializeV2() reinitializer(2) public { __ERC20Permit_init(\\\"MyToken\\\"); } } ``` TIP: To avoid leaving the proxy in an uninitialized state, the initializer function should be called as early as possible by providing the encoded function call as the `_data` argument to {ERC1967Proxy-constructor}. CAUTION: When used with inheritance, manual care must be taken to not invoke a parent initializer twice, or to ensure that all initializers are idempotent. This is not verified automatically as constructors are by Solidity. [CAUTION] ==== Avoid leaving a contract uninitialized. An uninitialized contract can be taken over by an attacker. This applies to both a proxy and its implementation contract, which may impact the proxy. To prevent the implementation contract from being used, you should invoke the {_disableInitializers} function in the constructor to automatically lock it when it is deployed: [.hljs-theme-light.nopadding] ```\",\"events\":{\"Initialized(uint8)\":{\"details\":\"Triggered when the contract has been initialized or reinitialized.\"}},\"kind\":\"dev\",\"methods\":{},\"stateVariables\":{\"_initialized\":{\"custom:oz-retyped-from\":\"bool\",\"details\":\"Indicates that the contract has been initialized.\"},\"_initializing\":{\"details\":\"Indicates that the contract is in the process of being initialized.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol\":\"Initializable\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":1},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]}},\"version\":1}", - "bytecode": "0x", - "deployedBytecode": "0x", - "immutableReferences": {}, - "generatedSources": [], - "deployedGeneratedSources": [], - "sourceMap": "", - "deployedSourceMap": "", - "source": "// SPDX-License-Identifier: MIT\n// OpenZeppelin Contracts (last updated v4.9.0) (proxy/utils/Initializable.sol)\n\npragma solidity ^0.8.2;\n\nimport \"../../utils/AddressUpgradeable.sol\";\n\n/**\n * @dev This is a base contract to aid in writing upgradeable contracts, or any kind of contract that will be deployed\n * behind a proxy. Since proxied contracts do not make use of a constructor, it's common to move constructor logic to an\n * external initializer function, usually called `initialize`. It then becomes necessary to protect this initializer\n * function so it can only be called once. The {initializer} modifier provided by this contract will have this effect.\n *\n * The initialization functions use a version number. Once a version number is used, it is consumed and cannot be\n * reused. This mechanism prevents re-execution of each \"step\" but allows the creation of new initialization steps in\n * case an upgrade adds a module that needs to be initialized.\n *\n * For example:\n *\n * [.hljs-theme-light.nopadding]\n * ```solidity\n * contract MyToken is ERC20Upgradeable {\n * function initialize() initializer public {\n * __ERC20_init(\"MyToken\", \"MTK\");\n * }\n * }\n *\n * contract MyTokenV2 is MyToken, ERC20PermitUpgradeable {\n * function initializeV2() reinitializer(2) public {\n * __ERC20Permit_init(\"MyToken\");\n * }\n * }\n * ```\n *\n * TIP: To avoid leaving the proxy in an uninitialized state, the initializer function should be called as early as\n * possible by providing the encoded function call as the `_data` argument to {ERC1967Proxy-constructor}.\n *\n * CAUTION: When used with inheritance, manual care must be taken to not invoke a parent initializer twice, or to ensure\n * that all initializers are idempotent. This is not verified automatically as constructors are by Solidity.\n *\n * [CAUTION]\n * ====\n * Avoid leaving a contract uninitialized.\n *\n * An uninitialized contract can be taken over by an attacker. This applies to both a proxy and its implementation\n * contract, which may impact the proxy. To prevent the implementation contract from being used, you should invoke\n * the {_disableInitializers} function in the constructor to automatically lock it when it is deployed:\n *\n * [.hljs-theme-light.nopadding]\n * ```\n * /// @custom:oz-upgrades-unsafe-allow constructor\n * constructor() {\n * _disableInitializers();\n * }\n * ```\n * ====\n */\nabstract contract Initializable {\n /**\n * @dev Indicates that the contract has been initialized.\n * @custom:oz-retyped-from bool\n */\n uint8 private _initialized;\n\n /**\n * @dev Indicates that the contract is in the process of being initialized.\n */\n bool private _initializing;\n\n /**\n * @dev Triggered when the contract has been initialized or reinitialized.\n */\n event Initialized(uint8 version);\n\n /**\n * @dev A modifier that defines a protected initializer function that can be invoked at most once. In its scope,\n * `onlyInitializing` functions can be used to initialize parent contracts.\n *\n * Similar to `reinitializer(1)`, except that functions marked with `initializer` can be nested in the context of a\n * constructor.\n *\n * Emits an {Initialized} event.\n */\n modifier initializer() {\n bool isTopLevelCall = !_initializing;\n require(\n (isTopLevelCall && _initialized < 1) || (!AddressUpgradeable.isContract(address(this)) && _initialized == 1),\n \"Initializable: contract is already initialized\"\n );\n _initialized = 1;\n if (isTopLevelCall) {\n _initializing = true;\n }\n _;\n if (isTopLevelCall) {\n _initializing = false;\n emit Initialized(1);\n }\n }\n\n /**\n * @dev A modifier that defines a protected reinitializer function that can be invoked at most once, and only if the\n * contract hasn't been initialized to a greater version before. In its scope, `onlyInitializing` functions can be\n * used to initialize parent contracts.\n *\n * A reinitializer may be used after the original initialization step. This is essential to configure modules that\n * are added through upgrades and that require initialization.\n *\n * When `version` is 1, this modifier is similar to `initializer`, except that functions marked with `reinitializer`\n * cannot be nested. If one is invoked in the context of another, execution will revert.\n *\n * Note that versions can jump in increments greater than 1; this implies that if multiple reinitializers coexist in\n * a contract, executing them in the right order is up to the developer or operator.\n *\n * WARNING: setting the version to 255 will prevent any future reinitialization.\n *\n * Emits an {Initialized} event.\n */\n modifier reinitializer(uint8 version) {\n require(!_initializing && _initialized < version, \"Initializable: contract is already initialized\");\n _initialized = version;\n _initializing = true;\n _;\n _initializing = false;\n emit Initialized(version);\n }\n\n /**\n * @dev Modifier to protect an initialization function so that it can only be invoked by functions with the\n * {initializer} and {reinitializer} modifiers, directly or indirectly.\n */\n modifier onlyInitializing() {\n require(_initializing, \"Initializable: contract is not initializing\");\n _;\n }\n\n /**\n * @dev Locks the contract, preventing any future reinitialization. This cannot be part of an initializer call.\n * Calling this in the constructor of a contract will prevent that contract from being initialized or reinitialized\n * to any version. It is recommended to use this to lock implementation contracts that are designed to be called\n * through proxies.\n *\n * Emits an {Initialized} event the first time it is successfully executed.\n */\n function _disableInitializers() internal virtual {\n require(!_initializing, \"Initializable: contract is initializing\");\n if (_initialized != type(uint8).max) {\n _initialized = type(uint8).max;\n emit Initialized(type(uint8).max);\n }\n }\n\n /**\n * @dev Returns the highest version that has been initialized. See {reinitializer}.\n */\n function _getInitializedVersion() internal view returns (uint8) {\n return _initialized;\n }\n\n /**\n * @dev Returns `true` if the contract is currently initializing. See {onlyInitializing}.\n */\n function _isInitializing() internal view returns (bool) {\n return _initializing;\n }\n}\n", - "sourcePath": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol", - "ast": { - "absolutePath": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol", - "exportedSymbols": { - "AddressUpgradeable": [ - 716 - ], - "Initializable": [ - 301 - ] - }, - "id": 302, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 134, - "literals": [ - "solidity", - "^", - "0.8", - ".2" - ], - "nodeType": "PragmaDirective", - "src": "113:23:1" - }, - { - "absolutePath": "@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", - "file": "../../utils/AddressUpgradeable.sol", - "id": 135, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 302, - "sourceUnit": 717, - "src": "138:44:1", - "symbolAliases": [], - "unitAlias": "" - }, - { - "abstract": true, - "baseContracts": [], - "canonicalName": "Initializable", - "contractDependencies": [], - "contractKind": "contract", - "documentation": { - "id": 136, - "nodeType": "StructuredDocumentation", - "src": "184:2209:1", - "text": " @dev This is a base contract to aid in writing upgradeable contracts, or any kind of contract that will be deployed\n behind a proxy. Since proxied contracts do not make use of a constructor, it's common to move constructor logic to an\n external initializer function, usually called `initialize`. It then becomes necessary to protect this initializer\n function so it can only be called once. The {initializer} modifier provided by this contract will have this effect.\n The initialization functions use a version number. Once a version number is used, it is consumed and cannot be\n reused. This mechanism prevents re-execution of each \"step\" but allows the creation of new initialization steps in\n case an upgrade adds a module that needs to be initialized.\n For example:\n [.hljs-theme-light.nopadding]\n ```solidity\n contract MyToken is ERC20Upgradeable {\n function initialize() initializer public {\n __ERC20_init(\"MyToken\", \"MTK\");\n }\n }\n contract MyTokenV2 is MyToken, ERC20PermitUpgradeable {\n function initializeV2() reinitializer(2) public {\n __ERC20Permit_init(\"MyToken\");\n }\n }\n ```\n TIP: To avoid leaving the proxy in an uninitialized state, the initializer function should be called as early as\n possible by providing the encoded function call as the `_data` argument to {ERC1967Proxy-constructor}.\n CAUTION: When used with inheritance, manual care must be taken to not invoke a parent initializer twice, or to ensure\n that all initializers are idempotent. This is not verified automatically as constructors are by Solidity.\n [CAUTION]\n ====\n Avoid leaving a contract uninitialized.\n An uninitialized contract can be taken over by an attacker. This applies to both a proxy and its implementation\n contract, which may impact the proxy. To prevent the implementation contract from being used, you should invoke\n the {_disableInitializers} function in the constructor to automatically lock it when it is deployed:\n [.hljs-theme-light.nopadding]\n ```\n /// @custom:oz-upgrades-unsafe-allow constructor\n constructor() {\n _disableInitializers();\n }\n ```\n ====" - }, - "fullyImplemented": true, - "id": 301, - "linearizedBaseContracts": [ - 301 - ], - "name": "Initializable", - "nameLocation": "2412:13:1", - "nodeType": "ContractDefinition", - "nodes": [ - { - "constant": false, - "documentation": { - "id": 137, - "nodeType": "StructuredDocumentation", - "src": "2432:109:1", - "text": " @dev Indicates that the contract has been initialized.\n @custom:oz-retyped-from bool" - }, - "id": 139, - "mutability": "mutable", - "name": "_initialized", - "nameLocation": "2560:12:1", - "nodeType": "VariableDeclaration", - "scope": 301, - "src": "2546:26:1", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "typeName": { - "id": 138, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "2546:5:1", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "visibility": "private" - }, - { - "constant": false, - "documentation": { - "id": 140, - "nodeType": "StructuredDocumentation", - "src": "2579:91:1", - "text": " @dev Indicates that the contract is in the process of being initialized." - }, - "id": 142, - "mutability": "mutable", - "name": "_initializing", - "nameLocation": "2688:13:1", - "nodeType": "VariableDeclaration", - "scope": 301, - "src": "2675:26:1", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 141, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "2675:4:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "private" - }, - { - "anonymous": false, - "documentation": { - "id": 143, - "nodeType": "StructuredDocumentation", - "src": "2708:90:1", - "text": " @dev Triggered when the contract has been initialized or reinitialized." - }, - "eventSelector": "7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498", - "id": 147, - "name": "Initialized", - "nameLocation": "2809:11:1", - "nodeType": "EventDefinition", - "parameters": { - "id": 146, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 145, - "indexed": false, - "mutability": "mutable", - "name": "version", - "nameLocation": "2827:7:1", - "nodeType": "VariableDeclaration", - "scope": 147, - "src": "2821:13:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "typeName": { - "id": 144, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "2821:5:1", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "visibility": "internal" - } - ], - "src": "2820:15:1" - }, - "src": "2803:33:1" - }, - { - "body": { - "id": 202, - "nodeType": "Block", - "src": "3269:483:1", - "statements": [ - { - "assignments": [ - 151 - ], - "declarations": [ - { - "constant": false, - "id": 151, - "mutability": "mutable", - "name": "isTopLevelCall", - "nameLocation": "3284:14:1", - "nodeType": "VariableDeclaration", - "scope": 202, - "src": "3279:19:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 150, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "3279:4:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "id": 154, - "initialValue": { - "id": 153, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "!", - "prefix": true, - "src": "3301:14:1", - "subExpression": { - "id": 152, - "name": "_initializing", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 142, - "src": "3302:13:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "3279:36:1" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 175, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "components": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 160, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 156, - "name": "isTopLevelCall", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 151, - "src": "3347:14:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "id": 159, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 157, - "name": "_initialized", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 139, - "src": "3365:12:1", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "hexValue": "31", - "id": 158, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3380:1:1", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "3365:16:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "3347:34:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "id": 161, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "3346:36:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "components": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 173, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 169, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "!", - "prefix": true, - "src": "3387:45:1", - "subExpression": { - "arguments": [ - { - "arguments": [ - { - "id": 166, - "name": "this", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967268, - "src": "3426:4:1", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Initializable_$301", - "typeString": "contract Initializable" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_Initializable_$301", - "typeString": "contract Initializable" - } - ], - "id": 165, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "3418:7:1", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 164, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3418:7:1", - "typeDescriptions": {} - } - }, - "id": 167, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "3418:13:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "expression": { - "id": 162, - "name": "AddressUpgradeable", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 716, - "src": "3388:18:1", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_AddressUpgradeable_$716_$", - "typeString": "type(library AddressUpgradeable)" - } - }, - "id": 163, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "3407:10:1", - "memberName": "isContract", - "nodeType": "MemberAccess", - "referencedDeclaration": 404, - "src": "3388:29:1", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", - "typeString": "function (address) view returns (bool)" - } - }, - "id": 168, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "3388:44:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "id": 172, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 170, - "name": "_initialized", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 139, - "src": "3436:12:1", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "31", - "id": 171, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3452:1:1", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "3436:17:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "3387:66:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "id": 174, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "3386:68:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "3346:108:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a6564", - "id": 176, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3468:48:1", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_7a2a4e26842155ea933fe6eb6e3137eb5a296dcdf55721c552be7b4c3cc23759", - "typeString": "literal_string \"Initializable: contract is already initialized\"" - }, - "value": "Initializable: contract is already initialized" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_7a2a4e26842155ea933fe6eb6e3137eb5a296dcdf55721c552be7b4c3cc23759", - "typeString": "literal_string \"Initializable: contract is already initialized\"" - } - ], - "id": 155, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "3325:7:1", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 177, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "3325:201:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 178, - "nodeType": "ExpressionStatement", - "src": "3325:201:1" - }, - { - "expression": { - "id": 181, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 179, - "name": "_initialized", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 139, - "src": "3536:12:1", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "hexValue": "31", - "id": 180, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3551:1:1", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "3536:16:1", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "id": 182, - "nodeType": "ExpressionStatement", - "src": "3536:16:1" - }, - { - "condition": { - "id": 183, - "name": "isTopLevelCall", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 151, - "src": "3566:14:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 189, - "nodeType": "IfStatement", - "src": "3562:65:1", - "trueBody": { - "id": 188, - "nodeType": "Block", - "src": "3582:45:1", - "statements": [ - { - "expression": { - "id": 186, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 184, - "name": "_initializing", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 142, - "src": "3596:13:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "hexValue": "74727565", - "id": 185, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3612:4:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "src": "3596:20:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 187, - "nodeType": "ExpressionStatement", - "src": "3596:20:1" - } - ] - } - }, - { - "id": 190, - "nodeType": "PlaceholderStatement", - "src": "3636:1:1" - }, - { - "condition": { - "id": 191, - "name": "isTopLevelCall", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 151, - "src": "3651:14:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 201, - "nodeType": "IfStatement", - "src": "3647:99:1", - "trueBody": { - "id": 200, - "nodeType": "Block", - "src": "3667:79:1", - "statements": [ - { - "expression": { - "id": 194, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 192, - "name": "_initializing", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 142, - "src": "3681:13:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "hexValue": "66616c7365", - "id": 193, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3697:5:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "false" - }, - "src": "3681:21:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 195, - "nodeType": "ExpressionStatement", - "src": "3681:21:1" - }, - { - "eventCall": { - "arguments": [ - { - "hexValue": "31", - "id": 197, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3733:1:1", - "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": 196, - "name": "Initialized", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 147, - "src": "3721:11:1", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_uint8_$returns$__$", - "typeString": "function (uint8)" - } - }, - "id": 198, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "3721:14:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 199, - "nodeType": "EmitStatement", - "src": "3716:19:1" - } - ] - } - } - ] - }, - "documentation": { - "id": 148, - "nodeType": "StructuredDocumentation", - "src": "2842:399:1", - "text": " @dev A modifier that defines a protected initializer function that can be invoked at most once. In its scope,\n `onlyInitializing` functions can be used to initialize parent contracts.\n Similar to `reinitializer(1)`, except that functions marked with `initializer` can be nested in the context of a\n constructor.\n Emits an {Initialized} event." - }, - "id": 203, - "name": "initializer", - "nameLocation": "3255:11:1", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 149, - "nodeType": "ParameterList", - "parameters": [], - "src": "3266:2:1" - }, - "src": "3246:506:1", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 235, - "nodeType": "Block", - "src": "4863:255:1", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 214, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 210, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "!", - "prefix": true, - "src": "4881:14:1", - "subExpression": { - "id": 209, - "name": "_initializing", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 142, - "src": "4882:13:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "id": 213, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 211, - "name": "_initialized", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 139, - "src": "4899:12:1", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "id": 212, - "name": "version", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 206, - "src": "4914:7:1", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "src": "4899:22:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "4881:40:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a6564", - "id": 215, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4923:48:1", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_7a2a4e26842155ea933fe6eb6e3137eb5a296dcdf55721c552be7b4c3cc23759", - "typeString": "literal_string \"Initializable: contract is already initialized\"" - }, - "value": "Initializable: contract is already initialized" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_7a2a4e26842155ea933fe6eb6e3137eb5a296dcdf55721c552be7b4c3cc23759", - "typeString": "literal_string \"Initializable: contract is already initialized\"" - } - ], - "id": 208, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "4873:7:1", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 216, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4873:99:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 217, - "nodeType": "ExpressionStatement", - "src": "4873:99:1" - }, - { - "expression": { - "id": 220, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 218, - "name": "_initialized", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 139, - "src": "4982:12:1", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 219, - "name": "version", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 206, - "src": "4997:7:1", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "src": "4982:22:1", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "id": 221, - "nodeType": "ExpressionStatement", - "src": "4982:22:1" - }, - { - "expression": { - "id": 224, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 222, - "name": "_initializing", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 142, - "src": "5014:13:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "hexValue": "74727565", - "id": 223, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5030:4:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "src": "5014:20:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 225, - "nodeType": "ExpressionStatement", - "src": "5014:20:1" - }, - { - "id": 226, - "nodeType": "PlaceholderStatement", - "src": "5044:1:1" - }, - { - "expression": { - "id": 229, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 227, - "name": "_initializing", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 142, - "src": "5055:13:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "hexValue": "66616c7365", - "id": 228, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5071:5:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "false" - }, - "src": "5055:21:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 230, - "nodeType": "ExpressionStatement", - "src": "5055:21:1" - }, - { - "eventCall": { - "arguments": [ - { - "id": 232, - "name": "version", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 206, - "src": "5103:7:1", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - ], - "id": 231, - "name": "Initialized", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 147, - "src": "5091:11:1", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_uint8_$returns$__$", - "typeString": "function (uint8)" - } - }, - "id": 233, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5091:20:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 234, - "nodeType": "EmitStatement", - "src": "5086:25:1" - } - ] - }, - "documentation": { - "id": 204, - "nodeType": "StructuredDocumentation", - "src": "3758:1062:1", - "text": " @dev A modifier that defines a protected reinitializer function that can be invoked at most once, and only if the\n contract hasn't been initialized to a greater version before. In its scope, `onlyInitializing` functions can be\n used to initialize parent contracts.\n A reinitializer may be used after the original initialization step. This is essential to configure modules that\n are added through upgrades and that require initialization.\n When `version` is 1, this modifier is similar to `initializer`, except that functions marked with `reinitializer`\n cannot be nested. If one is invoked in the context of another, execution will revert.\n Note that versions can jump in increments greater than 1; this implies that if multiple reinitializers coexist in\n a contract, executing them in the right order is up to the developer or operator.\n WARNING: setting the version to 255 will prevent any future reinitialization.\n Emits an {Initialized} event." - }, - "id": 236, - "name": "reinitializer", - "nameLocation": "4834:13:1", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 207, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 206, - "mutability": "mutable", - "name": "version", - "nameLocation": "4854:7:1", - "nodeType": "VariableDeclaration", - "scope": 236, - "src": "4848:13:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "typeName": { - "id": 205, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "4848:5:1", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "visibility": "internal" - } - ], - "src": "4847:15:1" - }, - "src": "4825:293:1", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 245, - "nodeType": "Block", - "src": "5356:97:1", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 240, - "name": "_initializing", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 142, - "src": "5374:13:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "496e697469616c697a61626c653a20636f6e7472616374206973206e6f7420696e697469616c697a696e67", - "id": 241, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5389:45:1", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_d688db918bb9dd50354922faa108595679886fe9ff08046ad1ffe30aaea55f8b", - "typeString": "literal_string \"Initializable: contract is not initializing\"" - }, - "value": "Initializable: contract is not initializing" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_d688db918bb9dd50354922faa108595679886fe9ff08046ad1ffe30aaea55f8b", - "typeString": "literal_string \"Initializable: contract is not initializing\"" - } - ], - "id": 239, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "5366:7:1", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 242, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5366:69:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 243, - "nodeType": "ExpressionStatement", - "src": "5366:69:1" - }, - { - "id": 244, - "nodeType": "PlaceholderStatement", - "src": "5445:1:1" - } - ] - }, - "documentation": { - "id": 237, - "nodeType": "StructuredDocumentation", - "src": "5124:199:1", - "text": " @dev Modifier to protect an initialization function so that it can only be invoked by functions with the\n {initializer} and {reinitializer} modifiers, directly or indirectly." - }, - "id": 246, - "name": "onlyInitializing", - "nameLocation": "5337:16:1", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 238, - "nodeType": "ParameterList", - "parameters": [], - "src": "5353:2:1" - }, - "src": "5328:125:1", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 281, - "nodeType": "Block", - "src": "5988:231:1", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 252, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "!", - "prefix": true, - "src": "6006:14:1", - "subExpression": { - "id": 251, - "name": "_initializing", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 142, - "src": "6007:13:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "496e697469616c697a61626c653a20636f6e747261637420697320696e697469616c697a696e67", - "id": 253, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6022:41:1", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_a53f5879e7518078ff19b2e3d6b41e757a87364ec6872787feb45bfc41131d1a", - "typeString": "literal_string \"Initializable: contract is initializing\"" - }, - "value": "Initializable: contract is initializing" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_a53f5879e7518078ff19b2e3d6b41e757a87364ec6872787feb45bfc41131d1a", - "typeString": "literal_string \"Initializable: contract is initializing\"" - } - ], - "id": 250, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "5998:7:1", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 254, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5998:66:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 255, - "nodeType": "ExpressionStatement", - "src": "5998:66:1" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "id": 262, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 256, - "name": "_initialized", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 139, - "src": "6078:12:1", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "expression": { - "arguments": [ - { - "id": 259, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "6099:5:1", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint8_$", - "typeString": "type(uint8)" - }, - "typeName": { - "id": 258, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "6099:5:1", - "typeDescriptions": {} - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_type$_t_uint8_$", - "typeString": "type(uint8)" - } - ], - "id": 257, - "name": "type", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967269, - "src": "6094:4:1", - "typeDescriptions": { - "typeIdentifier": "t_function_metatype_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 260, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "6094:11:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_magic_meta_type_t_uint8", - "typeString": "type(uint8)" - } - }, - "id": 261, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "6106:3:1", - "memberName": "max", - "nodeType": "MemberAccess", - "src": "6094:15:1", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "src": "6078:31:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 280, - "nodeType": "IfStatement", - "src": "6074:139:1", - "trueBody": { - "id": 279, - "nodeType": "Block", - "src": "6111:102:1", - "statements": [ - { - "expression": { - "id": 269, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 263, - "name": "_initialized", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 139, - "src": "6125:12:1", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "expression": { - "arguments": [ - { - "id": 266, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "6145:5:1", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint8_$", - "typeString": "type(uint8)" - }, - "typeName": { - "id": 265, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "6145:5:1", - "typeDescriptions": {} - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_type$_t_uint8_$", - "typeString": "type(uint8)" - } - ], - "id": 264, - "name": "type", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967269, - "src": "6140:4:1", - "typeDescriptions": { - "typeIdentifier": "t_function_metatype_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 267, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "6140:11:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_magic_meta_type_t_uint8", - "typeString": "type(uint8)" - } - }, - "id": 268, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "6152:3:1", - "memberName": "max", - "nodeType": "MemberAccess", - "src": "6140:15:1", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "src": "6125:30:1", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "id": 270, - "nodeType": "ExpressionStatement", - "src": "6125:30:1" - }, - { - "eventCall": { - "arguments": [ - { - "expression": { - "arguments": [ - { - "id": 274, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "6191:5:1", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint8_$", - "typeString": "type(uint8)" - }, - "typeName": { - "id": 273, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "6191:5:1", - "typeDescriptions": {} - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_type$_t_uint8_$", - "typeString": "type(uint8)" - } - ], - "id": 272, - "name": "type", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967269, - "src": "6186:4:1", - "typeDescriptions": { - "typeIdentifier": "t_function_metatype_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 275, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "6186:11:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_magic_meta_type_t_uint8", - "typeString": "type(uint8)" - } - }, - "id": 276, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "6198:3:1", - "memberName": "max", - "nodeType": "MemberAccess", - "src": "6186:15:1", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - ], - "id": 271, - "name": "Initialized", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 147, - "src": "6174:11:1", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_uint8_$returns$__$", - "typeString": "function (uint8)" - } - }, - "id": 277, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "6174:28:1", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 278, - "nodeType": "EmitStatement", - "src": "6169:33:1" - } - ] - } - } - ] - }, - "documentation": { - "id": 247, - "nodeType": "StructuredDocumentation", - "src": "5459:475:1", - "text": " @dev Locks the contract, preventing any future reinitialization. This cannot be part of an initializer call.\n Calling this in the constructor of a contract will prevent that contract from being initialized or reinitialized\n to any version. It is recommended to use this to lock implementation contracts that are designed to be called\n through proxies.\n Emits an {Initialized} event the first time it is successfully executed." - }, - "id": 282, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_disableInitializers", - "nameLocation": "5948:20:1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 248, - "nodeType": "ParameterList", - "parameters": [], - "src": "5968:2:1" - }, - "returnParameters": { - "id": 249, - "nodeType": "ParameterList", - "parameters": [], - "src": "5988:0:1" - }, - "scope": 301, - "src": "5939:280:1", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "internal" - }, - { - "body": { - "id": 290, - "nodeType": "Block", - "src": "6393:36:1", - "statements": [ - { - "expression": { - "id": 288, - "name": "_initialized", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 139, - "src": "6410:12:1", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "functionReturnParameters": 287, - "id": 289, - "nodeType": "Return", - "src": "6403:19:1" - } - ] - }, - "documentation": { - "id": 283, - "nodeType": "StructuredDocumentation", - "src": "6225:99:1", - "text": " @dev Returns the highest version that has been initialized. See {reinitializer}." - }, - "id": 291, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_getInitializedVersion", - "nameLocation": "6338:22:1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 284, - "nodeType": "ParameterList", - "parameters": [], - "src": "6360:2:1" - }, - "returnParameters": { - "id": 287, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 286, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 291, - "src": "6386:5:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "typeName": { - "id": 285, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "6386:5:1", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "visibility": "internal" - } - ], - "src": "6385:7:1" - }, - "scope": 301, - "src": "6329:100:1", - "stateMutability": "view", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 299, - "nodeType": "Block", - "src": "6601:37:1", - "statements": [ - { - "expression": { - "id": 297, - "name": "_initializing", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 142, - "src": "6618:13:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 296, - "id": 298, - "nodeType": "Return", - "src": "6611:20:1" - } - ] - }, - "documentation": { - "id": 292, - "nodeType": "StructuredDocumentation", - "src": "6435:105:1", - "text": " @dev Returns `true` if the contract is currently initializing. See {onlyInitializing}." - }, - "id": 300, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_isInitializing", - "nameLocation": "6554:15:1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 293, - "nodeType": "ParameterList", - "parameters": [], - "src": "6569:2:1" - }, - "returnParameters": { - "id": 296, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 295, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 300, - "src": "6595:4:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 294, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "6595:4:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "6594:6:1" - }, - "scope": 301, - "src": "6545:93:1", - "stateMutability": "view", - "virtual": false, - "visibility": "internal" - } - ], - "scope": 302, - "src": "2394:4246:1", - "usedErrors": [] - } - ], - "src": "113:6528:1" - }, - "compiler": { - "name": "solc", - "version": "0.8.18+commit.87f61d96.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "3.4.13", - "updatedAt": "2024-12-10T18:52:58.842Z", - "devdoc": { - "custom:oz-upgrades-unsafe-allow": "constructor constructor() { _disableInitializers(); } ``` ====", - "details": "This is a base contract to aid in writing upgradeable contracts, or any kind of contract that will be deployed behind a proxy. Since proxied contracts do not make use of a constructor, it's common to move constructor logic to an external initializer function, usually called `initialize`. It then becomes necessary to protect this initializer function so it can only be called once. The {initializer} modifier provided by this contract will have this effect. The initialization functions use a version number. Once a version number is used, it is consumed and cannot be reused. This mechanism prevents re-execution of each \"step\" but allows the creation of new initialization steps in case an upgrade adds a module that needs to be initialized. For example: [.hljs-theme-light.nopadding] ```solidity contract MyToken is ERC20Upgradeable { function initialize() initializer public { __ERC20_init(\"MyToken\", \"MTK\"); } } contract MyTokenV2 is MyToken, ERC20PermitUpgradeable { function initializeV2() reinitializer(2) public { __ERC20Permit_init(\"MyToken\"); } } ``` TIP: To avoid leaving the proxy in an uninitialized state, the initializer function should be called as early as possible by providing the encoded function call as the `_data` argument to {ERC1967Proxy-constructor}. CAUTION: When used with inheritance, manual care must be taken to not invoke a parent initializer twice, or to ensure that all initializers are idempotent. This is not verified automatically as constructors are by Solidity. [CAUTION] ==== Avoid leaving a contract uninitialized. An uninitialized contract can be taken over by an attacker. This applies to both a proxy and its implementation contract, which may impact the proxy. To prevent the implementation contract from being used, you should invoke the {_disableInitializers} function in the constructor to automatically lock it when it is deployed: [.hljs-theme-light.nopadding] ```", - "events": { - "Initialized(uint8)": { - "details": "Triggered when the contract has been initialized or reinitialized." - } - }, - "kind": "dev", - "methods": {}, - "stateVariables": { - "_initialized": { - "custom:oz-retyped-from": "bool", - "details": "Indicates that the contract has been initialized." - }, - "_initializing": { - "details": "Indicates that the contract is in the process of being initialized." - } - }, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } -} \ No newline at end of file diff --git a/build/contracts/LiquidityBridgeContract.json b/build/contracts/LiquidityBridgeContract.json deleted file mode 100644 index d6b6145..0000000 --- a/build/contracts/LiquidityBridgeContract.json +++ /dev/null @@ -1,87949 +0,0 @@ -{ - "contractName": "LiquidityBridgeContract", - "abi": [ - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "dest", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "BalanceDecrease", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "dest", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "BalanceIncrease", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "bytes32", - "name": "quoteHash", - "type": "bytes32" - }, - { - "indexed": false, - "internalType": "int256", - "name": "errorCode", - "type": "int256" - } - ], - "name": "BridgeCapExceeded", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "from", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "dest", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "gasLimit", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "value", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "bytes", - "name": "data", - "type": "bytes" - }, - { - "indexed": false, - "internalType": "bool", - "name": "success", - "type": "bool" - }, - { - "indexed": false, - "internalType": "bytes32", - "name": "quoteHash", - "type": "bytes32" - } - ], - "name": "CallForUser", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "from", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "CollateralIncrease", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "from", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "Deposit", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint8", - "name": "version", - "type": "uint8" - } - ], - "name": "Initialized", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "previousOwner", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "newOwner", - "type": "address" - } - ], - "name": "OwnershipTransferred", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "bytes32", - "name": "quoteHash", - "type": "bytes32" - }, - { - "indexed": false, - "internalType": "int256", - "name": "transferredAmount", - "type": "int256" - } - ], - "name": "PegInRegistered", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "from", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "bytes32", - "name": "quotehash", - "type": "bytes32" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "processed", - "type": "uint256" - } - ], - "name": "PegOut", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "bytes32", - "name": "quoteHash", - "type": "bytes32" - }, - { - "indexed": true, - "internalType": "address", - "name": "sender", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "timestamp", - "type": "uint256" - } - ], - "name": "PegOutDeposit", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "bytes32", - "name": "quoteHash", - "type": "bytes32" - } - ], - "name": "PegOutRefunded", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "bytes32", - "name": "quoteHash", - "type": "bytes32" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "value", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "address", - "name": "userAddress", - "type": "address" - } - ], - "name": "PegOutUserRefunded", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "from", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "PegoutCollateralIncrease", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "from", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "PegoutWithdrawCollateral", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "liquidityProvider", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "penalty", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "bytes32", - "name": "quoteHash", - "type": "bytes32" - } - ], - "name": "Penalized", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "dest", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "bool", - "name": "success", - "type": "bool" - }, - { - "indexed": false, - "internalType": "bytes32", - "name": "quoteHash", - "type": "bytes32" - } - ], - "name": "Refund", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint256", - "name": "id", - "type": "uint256" - }, - { - "indexed": true, - "internalType": "address", - "name": "from", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "Register", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "from", - "type": "address" - } - ], - "name": "Resigned", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "from", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "WithdrawCollateral", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "from", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "Withdrawal", - "type": "event" - }, - { - "inputs": [], - "name": "BRIDGE_GENERIC_ERROR", - "outputs": [ - { - "internalType": "int16", - "name": "", - "type": "int16" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "BRIDGE_REFUNDED_LP_ERROR_CODE", - "outputs": [ - { - "internalType": "int16", - "name": "", - "type": "int16" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "BRIDGE_REFUNDED_USER_ERROR_CODE", - "outputs": [ - { - "internalType": "int16", - "name": "", - "type": "int16" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "BRIDGE_UNPROCESSABLE_TX_ALREADY_PROCESSED_ERROR_CODE", - "outputs": [ - { - "internalType": "int16", - "name": "", - "type": "int16" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "BRIDGE_UNPROCESSABLE_TX_INVALID_SENDER_ERROR_CODE", - "outputs": [ - { - "internalType": "int16", - "name": "", - "type": "int16" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "BRIDGE_UNPROCESSABLE_TX_NOT_CONTRACT_ERROR_CODE", - "outputs": [ - { - "internalType": "int16", - "name": "", - "type": "int16" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "BRIDGE_UNPROCESSABLE_TX_UTXO_AMOUNT_SENT_BELOW_MINIMUM_ERROR", - "outputs": [ - { - "internalType": "int16", - "name": "", - "type": "int16" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "BRIDGE_UNPROCESSABLE_TX_VALIDATIONS_ERROR", - "outputs": [ - { - "internalType": "int16", - "name": "", - "type": "int16" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "BRIDGE_UNPROCESSABLE_TX_VALUE_ZERO_ERROR", - "outputs": [ - { - "internalType": "int16", - "name": "", - "type": "int16" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "CALL_DONE_CODE", - "outputs": [ - { - "internalType": "uint8", - "name": "", - "type": "uint8" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "MAX_CALL_GAS_COST", - "outputs": [ - { - "internalType": "uint16", - "name": "", - "type": "uint16" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "MAX_REFUND_GAS_LIMIT", - "outputs": [ - { - "internalType": "uint16", - "name": "", - "type": "uint16" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "MAX_UINT", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "PAY_TO_ADDRESS_OUTPUT", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "PROCESSED_QUOTE_CODE", - "outputs": [ - { - "internalType": "uint8", - "name": "", - "type": "uint8" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "QUOTE_HASH_OUTPUT", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "UNPROCESSED_QUOTE_CODE", - "outputs": [ - { - "internalType": "uint8", - "name": "", - "type": "uint8" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "bridge", - "outputs": [ - { - "internalType": "contract Bridge", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "owner", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "providerId", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "renounceOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "newOwner", - "type": "address" - } - ], - "name": "transferOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "stateMutability": "payable", - "type": "receive" - }, - { - "inputs": [ - { - "internalType": "address payable", - "name": "_bridgeAddress", - "type": "address" - }, - { - "internalType": "uint256", - "name": "_minimumCollateral", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "_minimumPegIn", - "type": "uint256" - }, - { - "internalType": "uint32", - "name": "_rewardPercentage", - "type": "uint32" - }, - { - "internalType": "uint32", - "name": "_resignDelayBlocks", - "type": "uint32" - }, - { - "internalType": "uint256", - "name": "_dustThreshold", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "_btcBlockTime", - "type": "uint256" - }, - { - "internalType": "bool", - "name": "_mainnet", - "type": "bool" - } - ], - "name": "initialize", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "_providerId", - "type": "uint256" - }, - { - "internalType": "bool", - "name": "status", - "type": "bool" - } - ], - "name": "setProviderStatus", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "getProviderIds", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getBridgeAddress", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getMinCollateral", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getMinPegIn", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getRewardPercentage", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getResignDelayBlocks", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getDustThreshold", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "quoteHash", - "type": "bytes32" - } - ], - "name": "getRegisteredPegOutQuote", - "outputs": [ - { - "components": [ - { - "internalType": "address", - "name": "lbcAddress", - "type": "address" - }, - { - "internalType": "address", - "name": "lpRskAddress", - "type": "address" - }, - { - "internalType": "bytes", - "name": "btcRefundAddress", - "type": "bytes" - }, - { - "internalType": "address", - "name": "rskRefundAddress", - "type": "address" - }, - { - "internalType": "bytes", - "name": "lpBtcAddress", - "type": "bytes" - }, - { - "internalType": "uint256", - "name": "callFee", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "penaltyFee", - "type": "uint256" - }, - { - "internalType": "int64", - "name": "nonce", - "type": "int64" - }, - { - "internalType": "bytes", - "name": "deposityAddress", - "type": "bytes" - }, - { - "internalType": "uint256", - "name": "value", - "type": "uint256" - }, - { - "internalType": "uint32", - "name": "agreementTimestamp", - "type": "uint32" - }, - { - "internalType": "uint32", - "name": "depositDateLimit", - "type": "uint32" - }, - { - "internalType": "uint16", - "name": "depositConfirmations", - "type": "uint16" - }, - { - "internalType": "uint16", - "name": "transferConfirmations", - "type": "uint16" - }, - { - "internalType": "uint32", - "name": "transferTime", - "type": "uint32" - }, - { - "internalType": "uint32", - "name": "expireDate", - "type": "uint32" - }, - { - "internalType": "uint32", - "name": "expireBlock", - "type": "uint32" - } - ], - "internalType": "struct Quotes.PegOutQuote", - "name": "", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "quoteHash", - "type": "bytes32" - } - ], - "name": "isPegOutQuoteCompleted", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "addr", - "type": "address" - } - ], - "name": "isOperational", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "addr", - "type": "address" - } - ], - "name": "isOperationalForPegout", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "_name", - "type": "string" - }, - { - "internalType": "string", - "name": "_apiBaseUrl", - "type": "string" - }, - { - "internalType": "bool", - "name": "_status", - "type": "bool" - }, - { - "internalType": "string", - "name": "_providerType", - "type": "string" - } - ], - "name": "register", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256[]", - "name": "providerIds", - "type": "uint256[]" - } - ], - "name": "getProviders", - "outputs": [ - { - "components": [ - { - "internalType": "uint256", - "name": "id", - "type": "uint256" - }, - { - "internalType": "address", - "name": "provider", - "type": "address" - }, - { - "internalType": "string", - "name": "name", - "type": "string" - }, - { - "internalType": "string", - "name": "apiBaseUrl", - "type": "string" - }, - { - "internalType": "bool", - "name": "status", - "type": "bool" - }, - { - "internalType": "string", - "name": "providerType", - "type": "string" - } - ], - "internalType": "struct LiquidityBridgeContract.LiquidityProvider[]", - "name": "", - "type": "tuple[]" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "addCollateral", - "outputs": [], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [], - "name": "addPegoutCollateral", - "outputs": [], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [], - "name": "deposit", - "outputs": [], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "withdraw", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "withdrawCollateral", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "withdrawPegoutCollateral", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "resign", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "addr", - "type": "address" - } - ], - "name": "getCollateral", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "addr", - "type": "address" - } - ], - "name": "getPegoutCollateral", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "addr", - "type": "address" - } - ], - "name": "getBalance", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "components": [ - { - "internalType": "bytes20", - "name": "fedBtcAddress", - "type": "bytes20" - }, - { - "internalType": "address", - "name": "lbcAddress", - "type": "address" - }, - { - "internalType": "address", - "name": "liquidityProviderRskAddress", - "type": "address" - }, - { - "internalType": "bytes", - "name": "btcRefundAddress", - "type": "bytes" - }, - { - "internalType": "address payable", - "name": "rskRefundAddress", - "type": "address" - }, - { - "internalType": "bytes", - "name": "liquidityProviderBtcAddress", - "type": "bytes" - }, - { - "internalType": "uint256", - "name": "callFee", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "penaltyFee", - "type": "uint256" - }, - { - "internalType": "address", - "name": "contractAddress", - "type": "address" - }, - { - "internalType": "bytes", - "name": "data", - "type": "bytes" - }, - { - "internalType": "uint32", - "name": "gasLimit", - "type": "uint32" - }, - { - "internalType": "int64", - "name": "nonce", - "type": "int64" - }, - { - "internalType": "uint256", - "name": "value", - "type": "uint256" - }, - { - "internalType": "uint32", - "name": "agreementTimestamp", - "type": "uint32" - }, - { - "internalType": "uint32", - "name": "timeForDeposit", - "type": "uint32" - }, - { - "internalType": "uint32", - "name": "callTime", - "type": "uint32" - }, - { - "internalType": "uint16", - "name": "depositConfirmations", - "type": "uint16" - }, - { - "internalType": "bool", - "name": "callOnRegister", - "type": "bool" - } - ], - "internalType": "struct Quotes.PeginQuote", - "name": "quote", - "type": "tuple" - } - ], - "name": "callForUser", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [ - { - "components": [ - { - "internalType": "bytes20", - "name": "fedBtcAddress", - "type": "bytes20" - }, - { - "internalType": "address", - "name": "lbcAddress", - "type": "address" - }, - { - "internalType": "address", - "name": "liquidityProviderRskAddress", - "type": "address" - }, - { - "internalType": "bytes", - "name": "btcRefundAddress", - "type": "bytes" - }, - { - "internalType": "address payable", - "name": "rskRefundAddress", - "type": "address" - }, - { - "internalType": "bytes", - "name": "liquidityProviderBtcAddress", - "type": "bytes" - }, - { - "internalType": "uint256", - "name": "callFee", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "penaltyFee", - "type": "uint256" - }, - { - "internalType": "address", - "name": "contractAddress", - "type": "address" - }, - { - "internalType": "bytes", - "name": "data", - "type": "bytes" - }, - { - "internalType": "uint32", - "name": "gasLimit", - "type": "uint32" - }, - { - "internalType": "int64", - "name": "nonce", - "type": "int64" - }, - { - "internalType": "uint256", - "name": "value", - "type": "uint256" - }, - { - "internalType": "uint32", - "name": "agreementTimestamp", - "type": "uint32" - }, - { - "internalType": "uint32", - "name": "timeForDeposit", - "type": "uint32" - }, - { - "internalType": "uint32", - "name": "callTime", - "type": "uint32" - }, - { - "internalType": "uint16", - "name": "depositConfirmations", - "type": "uint16" - }, - { - "internalType": "bool", - "name": "callOnRegister", - "type": "bool" - } - ], - "internalType": "struct Quotes.PeginQuote", - "name": "quote", - "type": "tuple" - }, - { - "internalType": "bytes", - "name": "signature", - "type": "bytes" - }, - { - "internalType": "bytes", - "name": "btcRawTransaction", - "type": "bytes" - }, - { - "internalType": "bytes", - "name": "partialMerkleTree", - "type": "bytes" - }, - { - "internalType": "uint256", - "name": "height", - "type": "uint256" - } - ], - "name": "registerPegIn", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "components": [ - { - "internalType": "address", - "name": "lbcAddress", - "type": "address" - }, - { - "internalType": "address", - "name": "lpRskAddress", - "type": "address" - }, - { - "internalType": "bytes", - "name": "btcRefundAddress", - "type": "bytes" - }, - { - "internalType": "address", - "name": "rskRefundAddress", - "type": "address" - }, - { - "internalType": "bytes", - "name": "lpBtcAddress", - "type": "bytes" - }, - { - "internalType": "uint256", - "name": "callFee", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "penaltyFee", - "type": "uint256" - }, - { - "internalType": "int64", - "name": "nonce", - "type": "int64" - }, - { - "internalType": "bytes", - "name": "deposityAddress", - "type": "bytes" - }, - { - "internalType": "uint256", - "name": "value", - "type": "uint256" - }, - { - "internalType": "uint32", - "name": "agreementTimestamp", - "type": "uint32" - }, - { - "internalType": "uint32", - "name": "depositDateLimit", - "type": "uint32" - }, - { - "internalType": "uint16", - "name": "depositConfirmations", - "type": "uint16" - }, - { - "internalType": "uint16", - "name": "transferConfirmations", - "type": "uint16" - }, - { - "internalType": "uint32", - "name": "transferTime", - "type": "uint32" - }, - { - "internalType": "uint32", - "name": "expireDate", - "type": "uint32" - }, - { - "internalType": "uint32", - "name": "expireBlock", - "type": "uint32" - } - ], - "internalType": "struct Quotes.PegOutQuote", - "name": "quote", - "type": "tuple" - }, - { - "internalType": "bytes", - "name": "signature", - "type": "bytes" - } - ], - "name": "depositPegout", - "outputs": [], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "quoteHash", - "type": "bytes32" - } - ], - "name": "refundUserPegOut", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "quoteHash", - "type": "bytes32" - }, - { - "internalType": "bytes", - "name": "btcTx", - "type": "bytes" - }, - { - "internalType": "bytes32", - "name": "btcBlockHeaderHash", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "partialMerkleTree", - "type": "uint256" - }, - { - "internalType": "bytes32[]", - "name": "merkleBranchHashes", - "type": "bytes32[]" - } - ], - "name": "refundPegOut", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "components": [ - { - "internalType": "bytes20", - "name": "fedBtcAddress", - "type": "bytes20" - }, - { - "internalType": "address", - "name": "lbcAddress", - "type": "address" - }, - { - "internalType": "address", - "name": "liquidityProviderRskAddress", - "type": "address" - }, - { - "internalType": "bytes", - "name": "btcRefundAddress", - "type": "bytes" - }, - { - "internalType": "address payable", - "name": "rskRefundAddress", - "type": "address" - }, - { - "internalType": "bytes", - "name": "liquidityProviderBtcAddress", - "type": "bytes" - }, - { - "internalType": "uint256", - "name": "callFee", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "penaltyFee", - "type": "uint256" - }, - { - "internalType": "address", - "name": "contractAddress", - "type": "address" - }, - { - "internalType": "bytes", - "name": "data", - "type": "bytes" - }, - { - "internalType": "uint32", - "name": "gasLimit", - "type": "uint32" - }, - { - "internalType": "int64", - "name": "nonce", - "type": "int64" - }, - { - "internalType": "uint256", - "name": "value", - "type": "uint256" - }, - { - "internalType": "uint32", - "name": "agreementTimestamp", - "type": "uint32" - }, - { - "internalType": "uint32", - "name": "timeForDeposit", - "type": "uint32" - }, - { - "internalType": "uint32", - "name": "callTime", - "type": "uint32" - }, - { - "internalType": "uint16", - "name": "depositConfirmations", - "type": "uint16" - }, - { - "internalType": "bool", - "name": "callOnRegister", - "type": "bool" - } - ], - "internalType": "struct Quotes.PeginQuote", - "name": "quote", - "type": "tuple" - }, - { - "internalType": "bytes", - "name": "depositAddress", - "type": "bytes" - } - ], - "name": "validatePeginDepositAddress", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "components": [ - { - "internalType": "bytes20", - "name": "fedBtcAddress", - "type": "bytes20" - }, - { - "internalType": "address", - "name": "lbcAddress", - "type": "address" - }, - { - "internalType": "address", - "name": "liquidityProviderRskAddress", - "type": "address" - }, - { - "internalType": "bytes", - "name": "btcRefundAddress", - "type": "bytes" - }, - { - "internalType": "address payable", - "name": "rskRefundAddress", - "type": "address" - }, - { - "internalType": "bytes", - "name": "liquidityProviderBtcAddress", - "type": "bytes" - }, - { - "internalType": "uint256", - "name": "callFee", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "penaltyFee", - "type": "uint256" - }, - { - "internalType": "address", - "name": "contractAddress", - "type": "address" - }, - { - "internalType": "bytes", - "name": "data", - "type": "bytes" - }, - { - "internalType": "uint32", - "name": "gasLimit", - "type": "uint32" - }, - { - "internalType": "int64", - "name": "nonce", - "type": "int64" - }, - { - "internalType": "uint256", - "name": "value", - "type": "uint256" - }, - { - "internalType": "uint32", - "name": "agreementTimestamp", - "type": "uint32" - }, - { - "internalType": "uint32", - "name": "timeForDeposit", - "type": "uint32" - }, - { - "internalType": "uint32", - "name": "callTime", - "type": "uint32" - }, - { - "internalType": "uint16", - "name": "depositConfirmations", - "type": "uint16" - }, - { - "internalType": "bool", - "name": "callOnRegister", - "type": "bool" - } - ], - "internalType": "struct Quotes.PeginQuote", - "name": "quote", - "type": "tuple" - } - ], - "name": "hashQuote", - "outputs": [ - { - "internalType": "bytes32", - "name": "", - "type": "bytes32" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "components": [ - { - "internalType": "address", - "name": "lbcAddress", - "type": "address" - }, - { - "internalType": "address", - "name": "lpRskAddress", - "type": "address" - }, - { - "internalType": "bytes", - "name": "btcRefundAddress", - "type": "bytes" - }, - { - "internalType": "address", - "name": "rskRefundAddress", - "type": "address" - }, - { - "internalType": "bytes", - "name": "lpBtcAddress", - "type": "bytes" - }, - { - "internalType": "uint256", - "name": "callFee", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "penaltyFee", - "type": "uint256" - }, - { - "internalType": "int64", - "name": "nonce", - "type": "int64" - }, - { - "internalType": "bytes", - "name": "deposityAddress", - "type": "bytes" - }, - { - "internalType": "uint256", - "name": "value", - "type": "uint256" - }, - { - "internalType": "uint32", - "name": "agreementTimestamp", - "type": "uint32" - }, - { - "internalType": "uint32", - "name": "depositDateLimit", - "type": "uint32" - }, - { - "internalType": "uint16", - "name": "depositConfirmations", - "type": "uint16" - }, - { - "internalType": "uint16", - "name": "transferConfirmations", - "type": "uint16" - }, - { - "internalType": "uint32", - "name": "transferTime", - "type": "uint32" - }, - { - "internalType": "uint32", - "name": "expireDate", - "type": "uint32" - }, - { - "internalType": "uint32", - "name": "expireBlock", - "type": "uint32" - } - ], - "internalType": "struct Quotes.PegOutQuote", - "name": "quote", - "type": "tuple" - } - ], - "name": "hashPegoutQuote", - "outputs": [ - { - "internalType": "bytes32", - "name": "", - "type": "bytes32" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes", - "name": "header", - "type": "bytes" - } - ], - "name": "getBtcBlockTimestamp", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "pure", - "type": "function" - } - ], - "metadata": "{\"compiler\":{\"version\":\"0.8.18+commit.87f61d96\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"dest\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"BalanceDecrease\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"dest\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"BalanceIncrease\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"errorCode\",\"type\":\"int256\"}],\"name\":\"BridgeCapExceeded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"dest\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"gasLimit\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"}],\"name\":\"CallForUser\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"CollateralIncrease\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"Deposit\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"transferredAmount\",\"type\":\"int256\"}],\"name\":\"PegInRegistered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"quotehash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"processed\",\"type\":\"uint256\"}],\"name\":\"PegOut\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"timestamp\",\"type\":\"uint256\"}],\"name\":\"PegOutDeposit\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"}],\"name\":\"PegOutRefunded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"userAddress\",\"type\":\"address\"}],\"name\":\"PegOutUserRefunded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"PegoutCollateralIncrease\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"PegoutWithdrawCollateral\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"liquidityProvider\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"penalty\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"}],\"name\":\"Penalized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"dest\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"}],\"name\":\"Refund\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"Register\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"}],\"name\":\"Resigned\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"WithdrawCollateral\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"Withdrawal\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"BRIDGE_GENERIC_ERROR\",\"outputs\":[{\"internalType\":\"int16\",\"name\":\"\",\"type\":\"int16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"BRIDGE_REFUNDED_LP_ERROR_CODE\",\"outputs\":[{\"internalType\":\"int16\",\"name\":\"\",\"type\":\"int16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"BRIDGE_REFUNDED_USER_ERROR_CODE\",\"outputs\":[{\"internalType\":\"int16\",\"name\":\"\",\"type\":\"int16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"BRIDGE_UNPROCESSABLE_TX_ALREADY_PROCESSED_ERROR_CODE\",\"outputs\":[{\"internalType\":\"int16\",\"name\":\"\",\"type\":\"int16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"BRIDGE_UNPROCESSABLE_TX_INVALID_SENDER_ERROR_CODE\",\"outputs\":[{\"internalType\":\"int16\",\"name\":\"\",\"type\":\"int16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"BRIDGE_UNPROCESSABLE_TX_NOT_CONTRACT_ERROR_CODE\",\"outputs\":[{\"internalType\":\"int16\",\"name\":\"\",\"type\":\"int16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"BRIDGE_UNPROCESSABLE_TX_UTXO_AMOUNT_SENT_BELOW_MINIMUM_ERROR\",\"outputs\":[{\"internalType\":\"int16\",\"name\":\"\",\"type\":\"int16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"BRIDGE_UNPROCESSABLE_TX_VALIDATIONS_ERROR\",\"outputs\":[{\"internalType\":\"int16\",\"name\":\"\",\"type\":\"int16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"BRIDGE_UNPROCESSABLE_TX_VALUE_ZERO_ERROR\",\"outputs\":[{\"internalType\":\"int16\",\"name\":\"\",\"type\":\"int16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"CALL_DONE_CODE\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MAX_CALL_GAS_COST\",\"outputs\":[{\"internalType\":\"uint16\",\"name\":\"\",\"type\":\"uint16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MAX_REFUND_GAS_LIMIT\",\"outputs\":[{\"internalType\":\"uint16\",\"name\":\"\",\"type\":\"uint16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MAX_UINT\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"PAY_TO_ADDRESS_OUTPUT\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"PROCESSED_QUOTE_CODE\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"QUOTE_HASH_OUTPUT\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"UNPROCESSED_QUOTE_CODE\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"addCollateral\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"addPegoutCollateral\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"bridge\",\"outputs\":[{\"internalType\":\"contract Bridge\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bytes20\",\"name\":\"fedBtcAddress\",\"type\":\"bytes20\"},{\"internalType\":\"address\",\"name\":\"lbcAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"liquidityProviderRskAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"btcRefundAddress\",\"type\":\"bytes\"},{\"internalType\":\"address payable\",\"name\":\"rskRefundAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"liquidityProviderBtcAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"callFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"penaltyFee\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"gasLimit\",\"type\":\"uint32\"},{\"internalType\":\"int64\",\"name\":\"nonce\",\"type\":\"int64\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"agreementTimestamp\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"timeForDeposit\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"callTime\",\"type\":\"uint32\"},{\"internalType\":\"uint16\",\"name\":\"depositConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"bool\",\"name\":\"callOnRegister\",\"type\":\"bool\"}],\"internalType\":\"struct Quotes.PeginQuote\",\"name\":\"quote\",\"type\":\"tuple\"}],\"name\":\"callForUser\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"deposit\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"lbcAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"lpRskAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"btcRefundAddress\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"rskRefundAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"lpBtcAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"callFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"penaltyFee\",\"type\":\"uint256\"},{\"internalType\":\"int64\",\"name\":\"nonce\",\"type\":\"int64\"},{\"internalType\":\"bytes\",\"name\":\"deposityAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"agreementTimestamp\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"depositDateLimit\",\"type\":\"uint32\"},{\"internalType\":\"uint16\",\"name\":\"depositConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"uint16\",\"name\":\"transferConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"uint32\",\"name\":\"transferTime\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"expireDate\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"expireBlock\",\"type\":\"uint32\"}],\"internalType\":\"struct Quotes.PegOutQuote\",\"name\":\"quote\",\"type\":\"tuple\"},{\"internalType\":\"bytes\",\"name\":\"signature\",\"type\":\"bytes\"}],\"name\":\"depositPegout\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"}],\"name\":\"getBalance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getBridgeAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"header\",\"type\":\"bytes\"}],\"name\":\"getBtcBlockTimestamp\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"}],\"name\":\"getCollateral\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getDustThreshold\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getMinCollateral\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getMinPegIn\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"}],\"name\":\"getPegoutCollateral\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getProviderIds\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256[]\",\"name\":\"providerIds\",\"type\":\"uint256[]\"}],\"name\":\"getProviders\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"provider\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"apiBaseUrl\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"status\",\"type\":\"bool\"},{\"internalType\":\"string\",\"name\":\"providerType\",\"type\":\"string\"}],\"internalType\":\"struct LiquidityBridgeContract.LiquidityProvider[]\",\"name\":\"\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"}],\"name\":\"getRegisteredPegOutQuote\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"lbcAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"lpRskAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"btcRefundAddress\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"rskRefundAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"lpBtcAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"callFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"penaltyFee\",\"type\":\"uint256\"},{\"internalType\":\"int64\",\"name\":\"nonce\",\"type\":\"int64\"},{\"internalType\":\"bytes\",\"name\":\"deposityAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"agreementTimestamp\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"depositDateLimit\",\"type\":\"uint32\"},{\"internalType\":\"uint16\",\"name\":\"depositConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"uint16\",\"name\":\"transferConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"uint32\",\"name\":\"transferTime\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"expireDate\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"expireBlock\",\"type\":\"uint32\"}],\"internalType\":\"struct Quotes.PegOutQuote\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getResignDelayBlocks\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRewardPercentage\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"lbcAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"lpRskAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"btcRefundAddress\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"rskRefundAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"lpBtcAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"callFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"penaltyFee\",\"type\":\"uint256\"},{\"internalType\":\"int64\",\"name\":\"nonce\",\"type\":\"int64\"},{\"internalType\":\"bytes\",\"name\":\"deposityAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"agreementTimestamp\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"depositDateLimit\",\"type\":\"uint32\"},{\"internalType\":\"uint16\",\"name\":\"depositConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"uint16\",\"name\":\"transferConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"uint32\",\"name\":\"transferTime\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"expireDate\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"expireBlock\",\"type\":\"uint32\"}],\"internalType\":\"struct Quotes.PegOutQuote\",\"name\":\"quote\",\"type\":\"tuple\"}],\"name\":\"hashPegoutQuote\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bytes20\",\"name\":\"fedBtcAddress\",\"type\":\"bytes20\"},{\"internalType\":\"address\",\"name\":\"lbcAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"liquidityProviderRskAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"btcRefundAddress\",\"type\":\"bytes\"},{\"internalType\":\"address payable\",\"name\":\"rskRefundAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"liquidityProviderBtcAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"callFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"penaltyFee\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"gasLimit\",\"type\":\"uint32\"},{\"internalType\":\"int64\",\"name\":\"nonce\",\"type\":\"int64\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"agreementTimestamp\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"timeForDeposit\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"callTime\",\"type\":\"uint32\"},{\"internalType\":\"uint16\",\"name\":\"depositConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"bool\",\"name\":\"callOnRegister\",\"type\":\"bool\"}],\"internalType\":\"struct Quotes.PeginQuote\",\"name\":\"quote\",\"type\":\"tuple\"}],\"name\":\"hashQuote\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address payable\",\"name\":\"_bridgeAddress\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_minimumCollateral\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_minimumPegIn\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"_rewardPercentage\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"_resignDelayBlocks\",\"type\":\"uint32\"},{\"internalType\":\"uint256\",\"name\":\"_dustThreshold\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_btcBlockTime\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"_mainnet\",\"type\":\"bool\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"}],\"name\":\"isOperational\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"}],\"name\":\"isOperationalForPegout\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"}],\"name\":\"isPegOutQuoteCompleted\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"providerId\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"btcTx\",\"type\":\"bytes\"},{\"internalType\":\"bytes32\",\"name\":\"btcBlockHeaderHash\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"partialMerkleTree\",\"type\":\"uint256\"},{\"internalType\":\"bytes32[]\",\"name\":\"merkleBranchHashes\",\"type\":\"bytes32[]\"}],\"name\":\"refundPegOut\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"}],\"name\":\"refundUserPegOut\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"_name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"_apiBaseUrl\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"_status\",\"type\":\"bool\"},{\"internalType\":\"string\",\"name\":\"_providerType\",\"type\":\"string\"}],\"name\":\"register\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bytes20\",\"name\":\"fedBtcAddress\",\"type\":\"bytes20\"},{\"internalType\":\"address\",\"name\":\"lbcAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"liquidityProviderRskAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"btcRefundAddress\",\"type\":\"bytes\"},{\"internalType\":\"address payable\",\"name\":\"rskRefundAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"liquidityProviderBtcAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"callFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"penaltyFee\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"gasLimit\",\"type\":\"uint32\"},{\"internalType\":\"int64\",\"name\":\"nonce\",\"type\":\"int64\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"agreementTimestamp\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"timeForDeposit\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"callTime\",\"type\":\"uint32\"},{\"internalType\":\"uint16\",\"name\":\"depositConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"bool\",\"name\":\"callOnRegister\",\"type\":\"bool\"}],\"internalType\":\"struct Quotes.PeginQuote\",\"name\":\"quote\",\"type\":\"tuple\"},{\"internalType\":\"bytes\",\"name\":\"signature\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"btcRawTransaction\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"partialMerkleTree\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"height\",\"type\":\"uint256\"}],\"name\":\"registerPegIn\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"resign\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_providerId\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"status\",\"type\":\"bool\"}],\"name\":\"setProviderStatus\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bytes20\",\"name\":\"fedBtcAddress\",\"type\":\"bytes20\"},{\"internalType\":\"address\",\"name\":\"lbcAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"liquidityProviderRskAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"btcRefundAddress\",\"type\":\"bytes\"},{\"internalType\":\"address payable\",\"name\":\"rskRefundAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"liquidityProviderBtcAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"callFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"penaltyFee\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"gasLimit\",\"type\":\"uint32\"},{\"internalType\":\"int64\",\"name\":\"nonce\",\"type\":\"int64\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"agreementTimestamp\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"timeForDeposit\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"callTime\",\"type\":\"uint32\"},{\"internalType\":\"uint16\",\"name\":\"depositConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"bool\",\"name\":\"callOnRegister\",\"type\":\"bool\"}],\"internalType\":\"struct Quotes.PeginQuote\",\"name\":\"quote\",\"type\":\"tuple\"},{\"internalType\":\"bytes\",\"name\":\"depositAddress\",\"type\":\"bytes\"}],\"name\":\"validatePeginDepositAddress\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"withdraw\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"withdrawCollateral\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"withdrawPegoutCollateral\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}],\"devdoc\":{\"events\":{\"Initialized(uint8)\":{\"details\":\"Triggered when the contract has been initialized or reinitialized.\"}},\"kind\":\"dev\",\"methods\":{\"addCollateral()\":{\"details\":\"Increases the amount of collateral of the sender\"},\"callForUser((bytes20,address,address,bytes,address,bytes,uint256,uint256,address,bytes,uint32,int64,uint256,uint32,uint32,uint32,uint16,bool))\":{\"details\":\"Performs a call on behalf of a user\",\"params\":{\"quote\":\"The quote that identifies the service\"},\"returns\":{\"_0\":\"Boolean indicating whether the call was successful\"}},\"deposit()\":{\"details\":\"Increases the balance of the sender\"},\"getBalance(address)\":{\"details\":\"Returns the amount of funds of a liquidity provider\",\"params\":{\"addr\":\"The address of the liquidity provider\"},\"returns\":{\"_0\":\"The balance of the liquidity provider\"}},\"getBtcBlockTimestamp(bytes)\":{\"details\":\"Gets the timestamp of a Bitcoin block header\",\"params\":{\"header\":\"The block header\"},\"returns\":{\"_0\":\"The timestamp of the block header\"}},\"getCollateral(address)\":{\"details\":\"Returns the amount of collateral of a liquidity provider\",\"params\":{\"addr\":\"The address of the liquidity provider\"},\"returns\":{\"_0\":\"The amount of locked collateral\"}},\"hashQuote((bytes20,address,address,bytes,address,bytes,uint256,uint256,address,bytes,uint32,int64,uint256,uint32,uint32,uint32,uint16,bool))\":{\"details\":\"Calculates hash of a quote. Note: besides calculation this function also validates the quote.\",\"params\":{\"quote\":\"The quote of the service\"},\"returns\":{\"_0\":\"The hash of a quote\"}},\"initialize(address,uint256,uint256,uint32,uint32,uint256,uint256,bool)\":{\"params\":{\"_bridgeAddress\":\"The address of the bridge contract\",\"_dustThreshold\":\"Amount that is considered dust\",\"_minimumCollateral\":\"The minimum required collateral for liquidity providers\",\"_minimumPegIn\":\"The minimum peg-in amount\",\"_resignDelayBlocks\":\"The number of block confirmations that a liquidity // provider needs to wait before it can withdraw its collateral\",\"_rewardPercentage\":\"The percentage of the penalty fee that an honest party // receives when calling registerPegIn in case of a liquidity provider misbehaving\"}},\"isOperational(address)\":{\"details\":\"Checks whether a liquidity provider can deliver a pegin service\",\"returns\":{\"_0\":\"Whether the liquidity provider is registered and has enough locked collateral\"}},\"isOperationalForPegout(address)\":{\"details\":\"Checks whether a liquidity provider can deliver a pegout service\",\"returns\":{\"_0\":\"Whether the liquidity provider is registered and has enough locked collateral\"}},\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"register(string,string,bool,string)\":{\"details\":\"Registers msg.sender as a liquidity provider with msg.value as collateral\"},\"registerPegIn((bytes20,address,address,bytes,address,bytes,uint256,uint256,address,bytes,uint32,int64,uint256,uint32,uint32,uint32,uint16,bool),bytes,bytes,bytes,uint256)\":{\"details\":\"Registers a peg-in transaction with the bridge and pays to the involved parties\",\"params\":{\"btcRawTransaction\":\"The peg-in transaction\",\"height\":\"The block that contains the peg-in transaction\",\"partialMerkleTree\":\"The merkle tree path that proves transaction inclusion\",\"quote\":\"The quote of the service\",\"signature\":\"The signature of the quote\"},\"returns\":{\"_0\":\"The total peg-in amount received from the bridge contract or an error code\"}},\"renounceOwnership()\":{\"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.\"},\"resign()\":{\"details\":\"Used to resign as a liquidity provider\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"},\"withdraw(uint256)\":{\"details\":\"Used to withdraw funds\",\"params\":{\"amount\":\"The amount to withdraw\"}},\"withdrawCollateral()\":{\"details\":\"Used to withdraw the locked collateral\"}},\"title\":\"Contract that assists with the Flyover protocol\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"project:/contracts/LiquidityBridgeContract.sol\":\"LiquidityBridgeContract\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":1},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol\":{\"keccak256\":\"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c\",\"dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16\"]},\"@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.sol\":{\"keccak256\":\"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f\",\"dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC\"]},\"@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]},\"@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95\",\"dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx\"]},\"@rsksmart/btc-transaction-solidity-helper/contracts/BtcUtils.sol\":{\"keccak256\":\"0x7237a22e0d518b3499d81ca4918c038a168882e57a35af17d57afd61234c8512\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8df4acd5a0609e279ddad58d0532a77fdc959688144e5bb7ccfc782db9236251\",\"dweb:/ipfs/QmbjJFBRm6JFPx9Jh34hX8N5rkgBxJ5kbdZsoJ3Tb4UyCa\"]},\"@rsksmart/btc-transaction-solidity-helper/contracts/OpCodes.sol\":{\"keccak256\":\"0x5996186b53b109f592341cfe164c6673346eafda66a2a496e6d5fcec5c74de5a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8d3073328ce73163fe8088b14bf39ba03f5f233604a0eb329bb64f2be73ff411\",\"dweb:/ipfs/QmScVLft2AL48D1Z93e3TDQbfZNh7sxJaeS23U4KPGsjTY\"]},\"project:/contracts/Bridge.sol\":{\"keccak256\":\"0x1eb986f1f28ace76b72425a2617eaeb89a54c765dc7b16689cb1105a7e6c0f2f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://255860b4bfb0bed73723349493307106fb54fcaf5839a7b0c012fc1a03d0b8ce\",\"dweb:/ipfs/QmUoWjWVkXpUWjaiWQXQVNKEJmCnPtKXXTgFq7kkcTuGMs\"]},\"project:/contracts/LiquidityBridgeContract.sol\":{\"keccak256\":\"0xffd1e9632f97e8d0a1daac7a5db03b7f5c345e80e08ecc2d2a113d36969fef7a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d95ff6c407622ceab5e821eb0ae0e1984812e5e517180c56f57f2891840d79a3\",\"dweb:/ipfs/QmS9sYi998BahXLHLW74qrf45icdLGmxXuNm7Y2SN9VZnF\"]},\"project:/contracts/Quotes.sol\":{\"keccak256\":\"0x28948b37d73f110d9cfc6cc3505fa7f2309b2d8d588d90c4069df45b4acbe399\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f2a824971a2421b56127e048a6b8a2d4ef4945b13e5f40cb266a19462c954e7f\",\"dweb:/ipfs/QmWm8YpQUwvqu4erUbsUZ1xz4PoVtJQiAX1Kh5Gezi32c1\"]},\"project:/contracts/SignatureValidator.sol\":{\"keccak256\":\"0x9d72920dd5ff2891c8dd3b3a814c1b108e82fcc6dfd849c96842e88c01d25b2c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8df1167e9def35ced4a620e3fa1e6d148bc7c1fb995378bf12dabef250b3be65\",\"dweb:/ipfs/QmZJJchWvzUeMb68VPHFGnMXBx7aMhK5GqJy8ECDx2rf58\"]}},\"version\":1}", - "bytecode": "0x608060405234801561001057600080fd5b50615eee80620000216000396000f3fe60806040526004361061027f5760003560e01c806304ade855146102d35780630a7bf57a146102ff5780630a9cb4a7146103145780631b032188146103335780632e1a7d4d1461035357806333f07ad31461037357806335510a7d14610388578063417055181461039d578063418663a2146103b05780634198687e146103da5780634533ac1c146103e2578063457385f2146104025780634d0ec9711461043257806354015ee01461045257806359c153be14610485578063668dbd831461049a57806369023235146104c757806369652fcf146104e75780636e2e8c70146104fc578063715018a61461051c57806372cbf4e8146105315780637b78837f146105515780638490a8df146105645780638d5979391461057a5780638da5cb5b146105915780638f91797d146105b35780639b56d6c9146105d35780639cd6557f146106095780639d79b59b1461061e5780639e81699914610647578063a0cd70fc1461064f578063a0d250371461066f578063a4a5ba501461068f578063a93bb247146106a4578063ac29d744146106bb578063ae76ce86146106ce578063ae93b67b146106e5578063bd519eff146106fc578063bd5798c314610732578063be6de4eb14610754578063c525cdd814610769578063c721316314610780578063cfb92f0a1461079b578063d0e30db0146107b2578063d6c70de8146107ba578063e1de16c6146107da578063e30e6ea3146107f0578063e5b5019a14610806578063e78cea921461081c578063e830b6901461083c578063e8fcce7114610851578063e90d2ddb14610867578063f2fde38b14610894578063f8b2cb4f146108b4578063fa88dcde146108ea578063fb32c508146108ff57600080fd5b366102ce576097546001600160a01b031633146102cc5760405162461bcd60e51b81526020600482015260066024820152654c424330303760d01b60448201526064015b60405180910390fd5b005b600080fd5b3480156102df57600080fd5b506102e8600181565b60405160ff90911681526020015b60405180910390f35b34801561030b57600080fd5b506102e8600281565b34801561032057600080fd5b5060a2545b6040519081526020016102f6565b34801561033f57600080fd5b5061032561034e366004614ae9565b61091d565b34801561035f57600080fd5b506102cc61036e366004614b1d565b61092e565b34801561037f57600080fd5b5060a154610325565b34801561039457600080fd5b506102cc610a26565b6103256103ab366004614b36565b610b54565b3480156103bc57600080fd5b506103c76101301981565b60405160019190910b81526020016102f6565b6102cc610eef565b3480156103ee57600080fd5b506102cc6103fd366004614bd2565b610f74565b34801561040e57600080fd5b5061042261041d366004614c53565b6111b3565b60405190151581526020016102f6565b34801561043e57600080fd5b5061042261044d366004614c53565b6111e9565b34801561045e57600080fd5b5061042261046d366004614b1d565b600090815260a7602052604090206001015460ff1690565b34801561049157600080fd5b506102cc61121f565b3480156104a657600080fd5b506104ba6104b5366004614c93565b61134d565b6040516102f69190614d80565b3480156104d357600080fd5b506103256104e2366004614fbd565b6116ce565b3480156104f357600080fd5b506102cc6116d9565b34801561050857600080fd5b50610325610517366004614ff1565b611784565b34801561052857600080fd5b506102cc611f6b565b34801561053d57600080fd5b506102cc61054c3660046150a5565b611f7f565b6102cc61055f3660046150d5565b612019565b34801561057057600080fd5b5061032560a25481565b34801561058657600080fd5b506103c761012c1981565b34801561059d57600080fd5b506105a661249f565b6040516102f69190615138565b3480156105bf57600080fd5b506102cc6105ce366004614b1d565b6124ae565b3480156105df57600080fd5b506103256105ee366004614c53565b6001600160a01b031660009081526099602052604090205490565b34801561061557600080fd5b506102e8600081565b34801561062a57600080fd5b506106346188b881565b60405161ffff90911681526020016102f6565b6102cc6127af565b34801561065b57600080fd5b5061032561066a36600461514c565b61282a565b34801561067b57600080fd5b5061042261068a366004615180565b61287d565b34801561069b57600080fd5b50610325600181565b3480156106b057600080fd5b506103c761012d1981565b6104226106c9366004614ae9565b6129e9565b3480156106da57600080fd5b506103c761012b1981565b3480156106f157600080fd5b506103c76103831981565b34801561070857600080fd5b50610325610717366004614c53565b6001600160a01b03166000908152609a602052604090205490565b34801561073e57600080fd5b5060a054600160201b900463ffffffff16610325565b34801561076057600080fd5b50610325600081565b34801561077557600080fd5b506103c761012e1981565b34801561078c57600080fd5b5060a05463ffffffff16610325565b3480156107a757600080fd5b506103c761012f1981565b6102cc612cfb565b3480156107c657600080fd5b506102cc6107d53660046151b6565b612d2a565b3480156107e657600080fd5b506106346108fc81565b3480156107fc57600080fd5b506103c760c71981565b34801561081257600080fd5b5061032560001981565b34801561082857600080fd5b506097546105a6906001600160a01b031681565b34801561084857600080fd5b50609e54610325565b34801561085d57600080fd5b506103c760631981565b34801561087357600080fd5b50610887610882366004614b1d565b6136f6565b6040516102f6919061528c565b3480156108a057600080fd5b506102cc6108af366004614c53565b613a21565b3480156108c057600080fd5b506103256108cf366004614c53565b6001600160a01b031660009081526098602052604090205490565b3480156108f657600080fd5b50609f54610325565b34801561090b57600080fd5b506097546001600160a01b03166105a6565b600061092882613a97565b92915050565b3360009081526098602052604090205481111561095d5760405162461bcd60e51b81526004016102c39061540b565b336000908152609860205260408120805483929061097c908490615441565b9091555050604051600090339083908381818185875af1925050503d80600081146109c3576040519150601f19603f3d011682016040523d82523d6000602084013e6109c8565b606091505b50509050806109e95760405162461bcd60e51b81526004016102c390615454565b7f7fcf532c15f0a6db0bd6d0e038bea71d30d808c7d98cb3bf7268a95bf5081b653383604051610a1a929190615474565b60405180910390a15050565b336000908152609d6020526040902054610a525760405162461bcd60e51b81526004016102c39061548d565b60a054336000908152609d6020526040902054600160201b90910463ffffffff1690610a7e9043615441565b1015610a9c5760405162461bcd60e51b81526004016102c3906154ad565b336000818152609a60209081526040808320805490849055609d9092528083208390555190929083908381818185875af1925050503d8060008114610afd576040519150601f19603f3d011682016040523d82523d6000602084013e610b02565b606091505b5050905080610b235760405162461bcd60e51b81526004016102c390615454565b7ffc72299650b405e7b0480ca8fb0fb3948fb10a77ac02f797cc9de1f4aaa55db73383604051610a1a929190615474565b6000323314610b8e5760405162461bcd60e51b81526020600482015260066024820152654c424330303360d01b60448201526064016102c3565b610b99858584613cff565b33600090815260996020526040902054158015610bc35750336000908152609a6020526040902054155b610bf85760405162461bcd60e51b815260206004820152600660248201526504c42433037360d41b60448201526064016102c3565b336000908152609d602052604090205415610c3e5760405162461bcd60e51b81526020600482015260066024820152654c424330303960d01b60448201526064016102c3565b604051602001610c4d906154cd565b6040516020818303038152906040528051906020012082604051602001610c7491906154de565b6040516020818303038152906040528051906020012003610cc857609e54341015610cb15760405162461bcd60e51b81526004016102c3906154fa565b336000908152609960205260409020349055610dcd565b604051602001610cd79061551a565b6040516020818303038152906040528051906020012082604051602001610cfe91906154de565b6040516020818303038152906040528051906020012003610d5257609e54341015610d3b5760405162461bcd60e51b81526004016102c3906154fa565b336000908152609a60205260409020349055610dcd565b609e54610d6090600261552c565b341015610d7f5760405162461bcd60e51b81526004016102c3906154fa565b6000610d8c600234615559565b9050610d9960023461556d565b15610dae57610da9816001615581565b610db0565b805b33600090815260996020908152604080832093909355609a905220555b60a28054906000610ddd83615594565b90915550506040805160c08101825260a2548082523360208084019182528385018a8152606085018a9052881515608086015260a085018890526000938452609b909152939091208251815590516001820180546001600160a01b0319166001600160a01b0390921691909117905591519091906002820190610e609082615635565b5060608201516003820190610e759082615635565b50608082015160048201805460ff191691151591909117905560a08201516005820190610ea29082615635565b505060a254604080519182523460208301523392507fa9d44d6e13bb3fee938c3f66d1103e91f8dc6b12d4405a55eea558e8f275aa6e910160405180910390a25060a2545b949350505050565b610ef833613ea6565b610f145760405162461bcd60e51b81526004016102c3906156f4565b336000908152609a602052604081208054349290610f33908490615581565b90915550506040517f873d5a2949567203ad4f0cceef41c2813c87b9a397ee777d87a8acdaec2c6fa990610f6a9033903490615474565b60405180910390a1565b600054610100900460ff1615808015610f945750600054600160ff909116105b80610fae5750303b158015610fae575060005460ff166001145b6110115760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016102c3565b6000805460ff191660011790558015611034576000805461ff0019166101001790555b60648663ffffffff1611156110745760405162461bcd60e51b8152602060048201526006602482015265131090cc0c0d60d21b60448201526064016102c3565b666a94d74f4300008810156110b45760405162461bcd60e51b8152602060048201526006602482015265262121981b9960d11b60448201526064016102c3565b603c8563ffffffff1610156110f45760405162461bcd60e51b81526020600482015260066024820152654c424330373360d01b60448201526064016102c3565b6110fc613ee5565b609780546001600160a01b038b166001600160a01b0319909116179055609e889055609f87905560a0805463ffffffff878116600160201b026001600160401b03199092169089161717905560a184905560a383905560a4805483151560ff1990911617905580156111a8576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050505050505050565b60006111be82613f59565b80156109285750609e546001600160a01b038316600090815260996020526040902054101592915050565b60006111f482613ea6565b80156109285750609e546001600160a01b0383166000908152609a6020526040902054101592915050565b336000908152609d602052604090205461124b5760405162461bcd60e51b81526004016102c39061548d565b60a054336000908152609d6020526040902054600160201b90910463ffffffff16906112779043615441565b10156112955760405162461bcd60e51b81526004016102c3906154ad565b336000818152609960209081526040808320805490849055609d9092528083208390555190929083908381818185875af1925050503d80600081146112f6576040519150601f19603f3d011682016040523d82523d6000602084013e6112fb565b606091505b505090508061131c5760405162461bcd60e51b81526004016102c390615454565b7fa8e76b822fc682be77f3b1c822ea81f6bda5aed92ba82e6873bfd889f328d1d23383604051610a1a929190615474565b6060600082516001600160401b0381111561136a5761136a6147a4565b6040519080825280602002602001820160405280156113df57816020015b6113cc6040518060c001604052806000815260200160006001600160a01b031681526020016060815260200160608152602001600015158152602001606081525090565b8152602001906001900390816113885790505b5090506000805b84518110156116c557600085828151811061140357611403615714565b6020908102919091018101516000818152609b909252604090912060010154909150611437906001600160a01b0316613f59565b8061146157506000818152609b6020526040902060010154611461906001600160a01b0316613ea6565b801561147e57506000818152609b602052604090206004015460ff165b156116b2576000818152609b6020908152604091829020825160c0810184528154815260018201546001600160a01b03169281019290925260028101805492939192918401916114cd906155ad565b80601f01602080910402602001604051908101604052809291908181526020018280546114f9906155ad565b80156115465780601f1061151b57610100808354040283529160200191611546565b820191906000526020600020905b81548152906001019060200180831161152957829003601f168201915b5050505050815260200160038201805461155f906155ad565b80601f016020809104026020016040519081016040528092919081815260200182805461158b906155ad565b80156115d85780601f106115ad576101008083540402835291602001916115d8565b820191906000526020600020905b8154815290600101906020018083116115bb57829003601f168201915b5050509183525050600482015460ff1615156020820152600582018054604090920191611604906155ad565b80601f0160208091040260200160405190810160405280929190818152602001828054611630906155ad565b801561167d5780601f106116525761010080835404028352916020019161167d565b820191906000526020600020905b81548152906001019060200180831161166057829003601f168201915b50505050508152505084848151811061169857611698615714565b602002602001018190525082806116ae90615594565b9350505b50806116bd81615594565b9150506113e6565b50909392505050565b600061092882613f98565b6116e233613f59565b6116fe5760405162461bcd60e51b81526004016102c3906156f4565b336000908152609d6020526040902054156117445760405162461bcd60e51b81526020600482015260066024820152654c424330323360d01b60448201526064016102c3565b336000818152609d602052604090819020439055517fa6674aa33cd1b7435474751667707bf05fde99e537d67043ec5f907782577d8691610f6a91615138565b600061178e614014565b600061179987613a97565b600081815260a56020526040902054909150600160ff90911611156117d05760405162461bcd60e51b81526004016102c39061572a565b60408088015190516301a86b5560e41b815273__SignatureValidator____________________91631a86b5509161180f919085908b9060040161574a565b602060405180830381865af415801561182c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118509190615771565b61186c5760405162461bcd60e51b81526004016102c39061578e565b637fffffff83106118a85760405162461bcd60e51b815260206004820152600660248201526504c42433033360d41b60448201526064016102c3565b60006118b7888787878661406d565b905061012f81016118f35760405162461bcd60e51b81526020600482015260066024820152654c424330333160d01b60448201526064016102c3565b61012e810161192d5760405162461bcd60e51b815260206004820152600660248201526526212198199960d11b60448201526064016102c3565b61013081016119675760405162461bcd60e51b81526020600482015260066024820152654c424330333360d01b60448201526064016102c3565b61013181016119a15760405162461bcd60e51b8152602060048201526006602482015265131090cc0ccd60d21b60448201526064016102c3565b61038481016119db5760405162461bcd60e51b81526020600482015260066024820152654c424330333560d01b60448201526064016102c3565b60008113806119eb575060c71981145b806119f7575060631981145b611a2c5760405162461bcd60e51b815260206004820152600660248201526526212198199b60d11b60448201526064016102c3565b6000828152609c6020526040902054611a4f908990839063ffffffff168761413f565b15611b205760e08801516040808a01516001600160a01b031660009081526099602052908120549091611a81916143a0565b905080609960008b604001516001600160a01b03166001600160a01b031681526020019081526020016000206000828254611abc9190615441565b90915550506040808a01519051600080516020615e7983398151915291611ae691849087906157ae565b60405180910390a160a054600090606490611b079063ffffffff168461552c565b611b119190615559565b9050611b1d33826143b8565b50505b60c719811480611b31575060631981145b15611ba557600082815260a560209081526040808320805460ff19166002179055609c825291829020805464ffffffffff1916905581518481529081018390527ffb209329d5ab5b7bcb2e92f45f4534814b6e68fa5ad1f171dabc1d17d26f0ebe910160405180910390a19150611f589050565b60405162e7a37960e21b8152819073__Quotes________________________________9063039e8de490611bdf908c908590600401615923565b60006040518083038186803b158015611bf757600080fd5b505af4158015611c0b573d6000803e3d6000fd5b5050506000848152609c602052604090205463ffffffff16159050611d4c576000838152609c6020526040812054600160201b900460ff1615611c6d57611c66828b60c001518c6101800151611c619190615581565b6143a0565b9050611c7e565b611c7b828b60c001516143a0565b90505b611c8c8a60400151826143b8565b6000611c988284615441565b905060a154811115611d455760808b01516040516000916001600160a01b0316906108fc90849084818181858888f193505050503d8060008114611cf8576040519150601f19603f3d011682016040523d82523d6000602084013e611cfd565b606091505b50509050600080516020615e598339815191528c60800151838389604051611d289493929190615945565b60405180910390a180611d4357611d438c60400151836143b8565b505b5050611ef1565b61022089015181908015611d6557508961018001518110155b15611e575760008a61010001516001600160a01b03168b610140015163ffffffff168c61018001518d6101200151604051611da091906154de565b600060405180830381858888f193505050503d8060008114611dde576040519150601f19603f3d011682016040523d82523d6000602084013e611de3565b606091505b505090508a61010001516001600160a01b0316336001600160a01b0316600080516020615e998339815191528d61014001518e61018001518f6101200151868b604051611e3495949392919061596d565b60405180910390a38015611e55576101808b0151611e529083615441565b91505b505b60a154811115611eef5760808a01516040516000916001600160a01b0316906108fc90849084818181858888f193505050503d8060008114611eb5576040519150601f19603f3d011682016040523d82523d6000602084013e611eba565b606091505b50509050600080516020615e598339815191528b60800151838388604051611ee59493929190615945565b60405180910390a1505b505b600083815260a560209081526040808320805460ff19166002179055609c825291829020805464ffffffffff19169055905183815284917f0629ae9d1dc61501b0ca90670a9a9b88daaf7504b54537b53e1219de794c63d2910160405180910390a2509150505b611f626001606555565b95945050505050565b611f73614417565b611f7d6000614476565b565b81611f8861249f565b6001600160a01b0316336001600160a01b03161480611fc057506000818152609b60205260409020600101546001600160a01b031633145b611ff55760405162461bcd60e51b81526020600482015260066024820152654c424330303560d01b60448201526064016102c3565b506000918252609b6020526040909120600401805460ff1916911515919091179055565b6120268260200151613ea6565b61205b5760405162461bcd60e51b81526020600482015260066024820152654c424330333760d01b60448201526064016102c3565b348260a001518361012001516120719190615581565b11156120a85760405162461bcd60e51b81526020600482015260066024820152654c424330363360d01b60448201526064016102c3565b81610160015163ffffffff164211156120ec5760405162461bcd60e51b81526020600482015260066024820152654c424330363560d01b60448201526064016102c3565b816101e0015163ffffffff164211156121305760405162461bcd60e51b8152602060048201526006602482015265262121981a1b60d11b60448201526064016102c3565b81610200015163ffffffff164311156121745760405162461bcd60e51b81526020600482015260066024820152654c424330343760d01b60448201526064016102c3565b600061217f836116ce565b60208401516040516301a86b5560e41b815291925073__SignatureValidator____________________91631a86b550916121c0918590879060040161574a565b602060405180830381865af41580156121dd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122019190615771565b61221d5760405162461bcd60e51b81526004016102c39061578e565b600081815260a66020908152604080832060a79092529091206001015460ff161561225a5760405162461bcd60e51b81526004016102c3906159a6565b80546001600160a01b0316156122825760405162461bcd60e51b81526004016102c39061572a565b600082815260a66020908152604091829020865181546001600160a01b03199081166001600160a01b03928316178355928801516001830180549094169116179091559085015185919060028201906122db9082615635565b5060608201516003820180546001600160a01b0319166001600160a01b03909216919091179055608082015160048201906123169082615635565b5060a0820151600582015560c0820151600682015560e08201516007820180546001600160401b0319166001600160401b0390921691909117905561010082015160088201906123669082615635565b506101208201516009820155610140820151600a90910180546101608401516101808501516101a08601516101c08701516101e08801516102009098015163ffffffff9788166001600160401b031990961695909517600160201b948816949094029390931763ffffffff60401b1916600160401b61ffff9384160261ffff60501b191617600160501b929091169190910217600160601b600160a01b031916600160601b9185169190910263ffffffff60801b191617600160801b948416949094029390931763ffffffff60a01b1916600160a01b9290931691909102919091179055600082815260a760209081526040918290204290819055825134815291820152339184917fb1bc7bfc0dab19777eb03aa0a5643378fc9f186c8fc5a36620d21136fbea570f910160405180910390a350505050565b6033546001600160a01b031690565b6124b6614014565b600081815260a66020526040902080546001600160a01b03166124eb5760405162461bcd60e51b81526004016102c3906159c6565b600a810154600160801b900463ffffffff164211801561251b5750600a810154600160a01b900463ffffffff1643115b6125505760405162461bcd60e51b81526020600482015260066024820152654c424330343160d01b60448201526064016102c3565b6000816005015482600901546125669190615581565b6003830154600684015460018501546001600160a01b039081166000908152609a602052604081205494955092169261259f91906143a0565b60018501546001600160a01b03166000908152609a60205260408120805492935083929091906125d0908490615441565b90915550506001840154604051600080516020615e7983398151915291612606916001600160a01b0390911690849089906157ae565b60405180910390a16003840154604080518581526001600160a01b03909216602083015286917f9ccbeffc442024e2a6ade18ff0978af9a4c4d6562ae38adb51ccf8256cf42b41910160405180910390a2600085815260a66020526040812080546001600160a01b0319908116825560018201805490911690559061268e6002830182614756565b6003820180546001600160a01b03191690556126ae600483016000614756565b600060058301819055600683018190556007830180546001600160401b03191690556126de906008840190614756565b50600060098201819055600a90910180546001600160c01b031916905585815260a760205260408082206001908101805460ff19169091179055516001600160a01b0384169085908381818185875af1925050503d806000811461275e576040519150601f19603f3d011682016040523d82523d6000602084013e612763565b606091505b505090508061279d5760405162461bcd60e51b8152602060048201526006602482015265131090cc0d0d60d21b60448201526064016102c3565b50505050506127ac6001606555565b50565b6127b833613f59565b6127d45760405162461bcd60e51b81526004016102c3906156f4565b33600090815260996020526040812080543492906127f3908490615581565b90915550506040517f456e0f4ea86ac283092c750200e8c877f6ad8901ae575f90e02081acd455af8490610f6a9033903490615474565b600081516050146128665760405162461bcd60e51b81526020600482015260066024820152654c424330363160d01b60448201526064016102c3565b6128718260446144c8565b63ffffffff1692915050565b6000806128898461091d565b8460600151856020015160601b8660a001516040516020016128ae94939291906159e6565b604051602081830303815290604052805190602001209050600081609760009054906101000a90046001600160a01b03166001600160a01b0316631d73d5dd6040518163ffffffff1660e01b8152600401600060405180830381865afa15801561291c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526129449190810190615a78565b604051602001612955929190615aac565b60408051601f198184030181529082905260a454639b02794b60e01b835290925073__BtcUtils______________________________91639b02794b916129a8918891869160ff90911690600401615ae6565b602060405180830381865af41580156129c5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f629190615771565b60006129f433613f59565b612a105760405162461bcd60e51b81526004016102c3906156f4565b612a18614014565b81604001516001600160a01b0316336001600160a01b031614612a665760405162461bcd60e51b8152602060048201526006602482015265131090cc0c8d60d21b60448201526064016102c3565b6101808201516040808401516001600160a01b0316600090815260986020522054612a92903490615581565b1015612ab05760405162461bcd60e51b81526004016102c39061540b565b6000612abb83613a97565b600081815260a5602052604090205490915060ff1615612b065760405162461bcd60e51b81526020600482015260066024820152654c424330323560d01b60448201526064016102c3565b612b148360400151346143b8565b610140830151612b27906188b890615b1e565b63ffffffff165a1015612b655760405162461bcd60e51b815260206004820152600660248201526526212198191b60d11b60448201526064016102c3565b60008361010001516001600160a01b031684610140015163ffffffff16856101800151866101200151604051612b9b91906154de565b600060405180830381858888f193505050503d8060008114612bd9576040519150601f19603f3d011682016040523d82523d6000602084013e612bde565b606091505b509091505063ffffffff421115612c205760405162461bcd60e51b81526020600482015260066024820152654c424330323760d01b60448201526064016102c3565b6000828152609c60205260409020805463ffffffff19164263ffffffff161790558015612c7b576000828152609c602052604090819020805460ff60201b1916600160201b179055840151610180850151612c7b91906145b2565b8361010001516001600160a01b0316336001600160a01b0316600080516020615e998339815191528661014001518761018001518861012001518688604051612cc895949392919061596d565b60405180910390a3600091825260a56020526040909120805460ff191660011790559050612cf66001606555565b919050565b612d0433613f59565b612d205760405162461bcd60e51b81526004016102c3906156f4565b611f7d33346143b8565b612d32614014565b612d3b33613ea6565b612d575760405162461bcd60e51b81526004016102c3906156f4565b600085815260a7602052604090206001015460ff1615612d895760405162461bcd60e51b81526004016102c3906159a6565b600085815260a66020526040902080546001600160a01b0316612dbe5760405162461bcd60e51b81526004016102c3906159c6565b60405162f5b49160e01b815260009073__BtcUtils______________________________9062f5b49190612df6908990600401615b42565b600060405180830381865af4158015612e13573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612e3b9190810190615b55565b9050600073__BtcUtils______________________________632d56f32383600181518110612e6c57612e6c615714565b6020026020010151602001516040518263ffffffff1660e01b8152600401612e949190615b42565b600060405180830381865af4158015612eb1573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612ed99190810190615a78565b806020019051810190612eec9190615c68565b9050808814612f265760405162461bcd60e51b81526020600482015260066024820152654c424330363960d01b60448201526064016102c3565b60018301546001600160a01b03163314612f6b5760405162461bcd60e51b815260206004820152600660248201526509884866068760d31b60448201526064016102c3565b600a83015460975460405163fea8ba6360e01b8152600160501b90920461ffff16916001600160a01b0390911690635b6445879073__BtcUtils______________________________9063fea8ba6390612fc9908d90600401615b42565b602060405180830381865af4158015612fe6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061300a9190615c68565b8989896040518563ffffffff1660e01b815260040161302c9493929190615c81565b602060405180830381865afa158015613049573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061306d9190615c68565b12156130a45760405162461bcd60e51b81526020600482015260066024820152654c424330343960d01b60448201526064016102c3565b816000815181106130b7576130b7615714565b6020026020010151600001516402540be4006130d39190615cdd565b6001600160401b0316836009015411156131185760405162461bcd60e51b81526020600482015260066024820152654c424330363760d01b60448201526064016102c3565b600073__BtcUtils______________________________634c03fe598460008151811061314757613147615714565b602090810291909101810151015160a4546040516001600160e01b031960e085901b16815261317d929160ff1690600401615d08565b600060405180830381865af415801561319a573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526131c29190810190615a78565b90508080519060200120846008016040516131dd9190615d2c565b60405180910390201461321b5760405162461bcd60e51b81526020600482015260066024820152650988486606c760d31b60448201526064016102c3565b604080516102208101825285546001600160a01b03908116825260018701541660208201526002860180546134b693889290840191613259906155ad565b80601f0160208091040260200160405190810160405280929190818152602001828054613285906155ad565b80156132d25780601f106132a7576101008083540402835291602001916132d2565b820191906000526020600020905b8154815290600101906020018083116132b557829003601f168201915b505050918352505060038201546001600160a01b03166020820152600482018054604090920191613302906155ad565b80601f016020809104026020016040519081016040528092919081815260200182805461332e906155ad565b801561337b5780601f106133505761010080835404028352916020019161337b565b820191906000526020600020905b81548152906001019060200180831161335e57829003601f168201915b50505091835250506005820154602082015260068201546040820152600780830154900b60608201526008820180546080909201916133b9906155ad565b80601f01602080910402602001604051908101604052809291908181526020018280546133e5906155ad565b80156134325780601f1061340757610100808354040283529160200191613432565b820191906000526020600020905b81548152906001019060200180831161341557829003601f168201915b505050918352505060098201546020820152600a9091015463ffffffff8082166040840152600160201b82048116606084015261ffff600160401b830481166080850152600160501b83041660a0840152600160601b8204811660c0840152600160801b8204811660e0840152600160a01b90910416610100909101528389614611565b1561355957600684015460018501546001600160a01b03166000908152609a602052604081205490916134e8916143a0565b60018601546001600160a01b03166000908152609a6020526040812080549293508392909190613519908490615441565b90915550506001850154604051600080516020615e798339815191529161354f916001600160a01b0390911690849087906157ae565b60405180910390a1505b6001840154600585015460098601546000926001600160a01b03169161357e91615581565b604051600081818185875af1925050503d80600081146135ba576040519150601f19603f3d011682016040523d82523d6000602084013e6135bf565b606091505b50509050806135f95760405162461bcd60e51b815260206004820152600660248201526504c42433035360d41b60448201526064016102c3565b600083815260a66020526040812080546001600160a01b031990811682556001820180549091169055906136306002830182614756565b6003820180546001600160a01b0319169055613650600483016000614756565b600060058301819055600683018190556007830180546001600160401b0319169055613680906008840190614756565b50600060098201819055600a90910180546001600160c01b031916905583815260a760205260408082206001908101805460ff191690911790555184917fb781856ec73fd0dc39351043d1634ea22cd3277b0866ab93e7ec1801766bb38491a250505050506136ef6001606555565b5050505050565b6040805161022080820183526000808352602080840182905260608486018190528085018390526080850181905260a0850183905260c0850183905260e0850183905261010085015261012084018290526101408401829052610160840182905261018084018290526101a084018290526101c084018290526101e08401829052610200840182905285825260a68152908490208451928301855280546001600160a01b039081168452600182015416918301919091526002810180549394929391928401916137c5906155ad565b80601f01602080910402602001604051908101604052809291908181526020018280546137f1906155ad565b801561383e5780601f106138135761010080835404028352916020019161383e565b820191906000526020600020905b81548152906001019060200180831161382157829003601f168201915b505050918352505060038201546001600160a01b0316602082015260048201805460409092019161386e906155ad565b80601f016020809104026020016040519081016040528092919081815260200182805461389a906155ad565b80156138e75780601f106138bc576101008083540402835291602001916138e7565b820191906000526020600020905b8154815290600101906020018083116138ca57829003601f168201915b50505091835250506005820154602082015260068201546040820152600780830154900b6060820152600882018054608090920191613925906155ad565b80601f0160208091040260200160405190810160405280929190818152602001828054613951906155ad565b801561399e5780601f106139735761010080835404028352916020019161399e565b820191906000526020600020905b81548152906001019060200180831161398157829003601f168201915b505050918352505060098201546020820152600a9091015463ffffffff8082166040840152600160201b82048116606084015261ffff600160401b830481166080850152600160501b83041660a0840152600160601b8204811660c0840152600160801b8204811660e0840152600160a01b909104166101009091015292915050565b613a29614417565b6001600160a01b038116613a8e5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016102c3565b6127ac81614476565b600081602001516001600160a01b0316306001600160a01b031614613ae75760405162461bcd60e51b81526020600482015260066024820152654c424330353160d01b60448201526064016102c3565b6101008201516097546001600160a01b03918216911603613b335760405162461bcd60e51b8152602060048201526006602482015265262121981a9960d11b60448201526064016102c3565b81606001515160151480613b4c57508160600151516021145b613b815760405162461bcd60e51b81526020600482015260066024820152654c424330353360d01b60448201526064016102c3565b8160a0015151601514613bbf5760405162461bcd60e51b8152602060048201526006602482015265131090cc0d4d60d21b60448201526064016102c3565b609f548260c00151836101800151613bd79190615581565b1015613c0e5760405162461bcd60e51b81526020600482015260066024820152654c424330353560d01b60448201526064016102c3565b816101c0015163ffffffff16826101a0015163ffffffff16613c309190615da2565b6001600160401b031663ffffffff1015613c755760405162461bcd60e51b81526020600482015260066024820152654c424330373160d01b60448201526064016102c3565b604051630fdeb30b60e21b815273__Quotes________________________________90633f7acc2c90613cac908590600401615dc2565b600060405180830381865af4158015613cc9573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052613cf19190810190615a78565b805190602001209050919050565b6000835111613d395760405162461bcd60e51b815260206004820152600660248201526504c42433031360d41b60448201526064016102c3565b6000825111613d735760405162461bcd60e51b81526020600482015260066024820152654c424330313760d01b60448201526064016102c3565b604051602001613d82906154cd565b6040516020818303038152906040528051906020012081604051602001613da991906154de565b604051602081830303815290604052805190602001201480613e145750604051602001613dd59061551a565b6040516020818303038152906040528051906020012081604051602001613dfc91906154de565b60405160208183030381529060405280519060200120145b80613e6c5750604051630c4dee8d60e31b60208201526024016040516020818303038152906040528051906020012081604051602001613e5491906154de565b60405160208183030381529060405280519060200120145b613ea15760405162461bcd60e51b815260206004820152600660248201526509884866062760d31b60448201526064016102c3565b505050565b6001600160a01b0381166000908152609a6020526040812054158015906109285750506001600160a01b03166000908152609d60205260409020541590565b600054610100900460ff16613f505760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b60648201526084016102c3565b611f7d33614476565b6001600160a01b038116600090815260996020526040812054158015906109285750506001600160a01b03166000908152609d60205260409020541590565b80516000906001600160a01b03163014613fdd5760405162461bcd60e51b8152602060048201526006602482015265262121981a9b60d11b60448201526064016102c3565b60405163fb19b88b60e01b815273__Quotes________________________________9063fb19b88b90613cac90859060040161528c565b6002606554036140665760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016102c3565b6002606555565b609754606086015160a08701516000848152609c602052604081205490936001600160a01b031692636adc013392899288928a92899230919063ffffffff16158015906140cf575060008b8152609c6020526040902054600160201b900460ff165b6040518963ffffffff1660e01b81526004016140f2989796959493929190615dd5565b6020604051808303816000875af1158015614111573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906141359190615c68565b9695505050505050565b6000808413801561416357508460c001518561018001516141609190615581565b84105b1561417057506000610ee7565b60975460405163bd0c1fff60e01b8152600481018490526000916001600160a01b03169063bd0c1fff90602401600060405180830381865afa1580156141ba573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526141e29190810190615a78565b9050600081511161422c5760405162461bcd60e51b8152602060048201526014602482015273125b9d985b1a5908189b1bd8dac81a195a59da1d60621b60448201526064016102c3565b60006142378261282a565b90506000876101c00151886101a001516142519190615b1e565b63ffffffff1690508082111561426d5760009350505050610ee7565b856000036142815760019350505050610ee7565b6097546102008901516000916001600160a01b03169063bd0c1fff906001906142ae9061ffff168a615581565b6142b89190615441565b6040518263ffffffff1660e01b81526004016142d691815260200190565b600060405180830381865afa1580156142f3573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261431b9190810190615a78565b905060008151116143575760405162461bcd60e51b81526020600482015260066024820152650988486606a760d31b60448201526064016102c3565b60006143628261282a565b9050896101e0015163ffffffff168161437b9190615581565b88111561439057600195505050505050610ee7565b5060009998505050505050505050565b60008183106143af57816143b1565b825b9392505050565b6001600160a01b038216600090815260986020526040812080548392906143e0908490615581565b90915550506040517f42cfb81a915ac5a674852db250bf722637bee705a267633b68cab3a2dde06f5390610a1a9084908490615474565b3361442061249f565b6001600160a01b031614611f7d5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016102c3565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b60006144d5826004615581565b8351101561450e5760405162461bcd60e51b8152602060048201526006602482015265262121981b1960d11b60448201526064016102c3565b60188361451c846003615581565b8151811061452c5761452c615714565b016020015160f81c901b601084614544856002615581565b8151811061455457614554615714565b016020015160f81c901b60088561456c866001615581565b8151811061457c5761457c615714565b0160200151865160f89190911c90911b9086908690811061459f5761459f615714565b016020015160f81c171717905092915050565b6001600160a01b038216600090815260986020526040812080548392906145da908490615441565b90915550506040517f8e51a4493a6f66c76e13fd9e3b754eafbfe21343c04508deb61be8ccc006458790610a1a9084908490615474565b6097546040516339cf1b2560e11b81526004810183905260009182916001600160a01b039091169063739e364a90602401600060405180830381865afa15801561465f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526146879190810190615a78565b905060008151116146c35760405162461bcd60e51b81526020600482015260066024820152654c424330353960d01b60448201526064016102c3565b60006146ce8261282a565b60a3546101c0880151600088815260a7602052604090205492935090916146fb9163ffffffff1690615581565b6147059190615581565b811115614717576001925050506143b1565b856101e0015163ffffffff1642118061473a575085610200015163ffffffff1643115b1561474a576001925050506143b1565b50600095945050505050565b508054614762906155ad565b6000825580601f10614772575050565b601f0160209004906000526020600020908101906127ac91905b808211156147a0576000815560010161478c565b5090565b634e487b7160e01b600052604160045260246000fd5b60405161024081016001600160401b03811182821017156147dd576147dd6147a4565b60405290565b60405161022081016001600160401b03811182821017156147dd576147dd6147a4565b604051608081016001600160401b03811182821017156147dd576147dd6147a4565b604051601f8201601f191681016001600160401b0381118282101715614850576148506147a4565b604052919050565b80356001600160601b031981168114612cf657600080fd5b6001600160a01b03811681146127ac57600080fd5b8035612cf681614870565b60006001600160401b038211156148a9576148a96147a4565b50601f01601f191660200190565b600082601f8301126148c857600080fd5b81356148db6148d682614890565b614828565b8181528460208386010111156148f057600080fd5b816020850160208301376000918101602001919091529392505050565b803563ffffffff81168114612cf657600080fd5b8035600781900b8114612cf657600080fd5b803561ffff81168114612cf657600080fd5b80151581146127ac57600080fd5b8035612cf681614945565b6000610240828403121561497157600080fd5b6149796147ba565b905061498482614858565b815261499260208301614885565b60208201526149a360408301614885565b604082015260608201356001600160401b03808211156149c257600080fd5b6149ce858386016148b7565b60608401526149df60808501614885565b608084015260a08401359150808211156149f857600080fd5b614a04858386016148b7565b60a084015260c084013560c084015260e084013560e08401526101009150614a2d828501614885565b8284015261012091508184013581811115614a4757600080fd5b614a53868287016148b7565b83850152505050610140614a6881840161490d565b90820152610160614a7a838201614921565b9082015261018082810135908201526101a0614a9781840161490d565b908201526101c0614aa983820161490d565b908201526101e0614abb83820161490d565b90820152610200614acd838201614933565b90820152610220614adf838201614953565b9082015292915050565b600060208284031215614afb57600080fd5b81356001600160401b03811115614b1157600080fd5b610ee78482850161495e565b600060208284031215614b2f57600080fd5b5035919050565b60008060008060808587031215614b4c57600080fd5b84356001600160401b0380821115614b6357600080fd5b614b6f888389016148b7565b95506020870135915080821115614b8557600080fd5b614b91888389016148b7565b945060408701359150614ba382614945565b90925060608601359080821115614bb957600080fd5b50614bc6878288016148b7565b91505092959194509250565b600080600080600080600080610100898b031215614bef57600080fd5b8835614bfa81614870565b97506020890135965060408901359550614c1660608a0161490d565b9450614c2460808a0161490d565b935060a0890135925060c0890135915060e0890135614c4281614945565b809150509295985092959890939650565b600060208284031215614c6557600080fd5b81356143b181614870565b60006001600160401b03821115614c8957614c896147a4565b5060051b60200190565b60006020808385031215614ca657600080fd5b82356001600160401b03811115614cbc57600080fd5b8301601f81018513614ccd57600080fd5b8035614cdb6148d682614c70565b81815260059190911b82018301908381019087831115614cfa57600080fd5b928401925b82841015614d1857833582529284019290840190614cff565b979650505050505050565b6001600160a01b03169052565b60005b83811015614d4b578181015183820152602001614d33565b50506000910152565b60008151808452614d6c816020860160208601614d30565b601f01601f19169290920160200192915050565b60006020808301818452808551808352604092508286019150828160051b87010184880160005b83811015614e4157888303603f19018552815180518452878101516001600160a01b0316888501528681015160c088860181905290614de882870182614d54565b91505060608083015186830382880152614e028382614d54565b925050506080808301511515818701525060a08083015192508582038187015250614e2d8183614d54565b968901969450505090860190600101614da7565b509098975050505050505050565b60006102208284031215614e6257600080fd5b614e6a6147e3565b9050614e7582614885565b8152614e8360208301614885565b602082015260408201356001600160401b0380821115614ea257600080fd5b614eae858386016148b7565b6040840152614ebf60608501614885565b60608401526080840135915080821115614ed857600080fd5b614ee4858386016148b7565b608084015260a084013560a084015260c084013560c0840152614f0960e08501614921565b60e084015261010091508184013581811115614f2457600080fd5b614f30868287016148b7565b83850152505050610120808301358183015250610140614f5181840161490d565b90820152610160614f6383820161490d565b90820152610180614f75838201614933565b908201526101a0614f87838201614933565b908201526101c0614f9983820161490d565b908201526101e0614fab83820161490d565b90820152610200614adf83820161490d565b600060208284031215614fcf57600080fd5b81356001600160401b03811115614fe557600080fd5b610ee784828501614e4f565b600080600080600060a0868803121561500957600080fd5b85356001600160401b038082111561502057600080fd5b61502c89838a0161495e565b9650602088013591508082111561504257600080fd5b61504e89838a016148b7565b9550604088013591508082111561506457600080fd5b61507089838a016148b7565b9450606088013591508082111561508657600080fd5b50615093888289016148b7565b95989497509295608001359392505050565b600080604083850312156150b857600080fd5b8235915060208301356150ca81614945565b809150509250929050565b600080604083850312156150e857600080fd5b82356001600160401b03808211156150ff57600080fd5b61510b86838701614e4f565b9350602085013591508082111561512157600080fd5b5061512e858286016148b7565b9150509250929050565b6001600160a01b0391909116815260200190565b60006020828403121561515e57600080fd5b81356001600160401b0381111561517457600080fd5b610ee7848285016148b7565b6000806040838503121561519357600080fd5b82356001600160401b03808211156151aa57600080fd5b61510b8683870161495e565b600080600080600060a086880312156151ce57600080fd5b853594506020808701356001600160401b03808211156151ed57600080fd5b6151f98a838b016148b7565b96506040890135955060608901359450608089013591508082111561521d57600080fd5b508701601f8101891361522f57600080fd5b803561523d6148d682614c70565b81815260059190911b8201830190838101908b83111561525c57600080fd5b928401925b8284101561527a57833582529284019290840190615261565b80955050505050509295509295909350565b6020815261529e602082018351614d23565b600060208301516152b26040840182614d23565b5060408301516102208060608501526152cf610240850183614d54565b915060608501516152e36080860182614d23565b506080850151601f19808685030160a08701526153008483614d54565b935060a087015160c087015260c087015160e087015260e0870151915061010061532e8188018460070b9052565b8088015192505061012081878603018188015261534b8584614d54565b9088015161014088810191909152880151909450915061016090506153778187018363ffffffff169052565b86015190506101806153908682018363ffffffff169052565b86015190506101a06153a78682018361ffff169052565b86015190506101c06153be8682018361ffff169052565b86015190506101e06153d78682018363ffffffff169052565b86015190506102006153f08682018363ffffffff169052565b86015163ffffffff81168387015290505b5090949350505050565b6020808252600690820152654c424330313960d01b604082015260600190565b634e487b7160e01b600052601160045260246000fd5b818103818111156109285761092861542b565b60208082526006908201526504c42433032360d41b604082015260600190565b6001600160a01b03929092168252602082015260400190565b6020808252600690820152654c424330323160d01b604082015260600190565b60208082526006908201526526212198191960d11b604082015260600190565b643832b3b4b760d91b815260050190565b600082516154f0818460208701614d30565b9190910192915050565b60208082526006908201526509884866060760d31b604082015260600190565b651c1959dbdd5d60d21b815260060190565b80820281158282048414176109285761092861542b565b634e487b7160e01b600052601260045260246000fd5b60008261556857615568615543565b500490565b60008261557c5761557c615543565b500690565b808201808211156109285761092861542b565b6000600182016155a6576155a661542b565b5060010190565b600181811c908216806155c157607f821691505b6020821081036155e157634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115613ea157600081815260208120601f850160051c8101602086101561560e5750805b601f850160051c820191505b8181101561562d5782815560010161561a565b505050505050565b81516001600160401b0381111561564e5761564e6147a4565b6156628161565c84546155ad565b846155e7565b602080601f831160018114615697576000841561567f5750858301515b600019600386901b1c1916600185901b17855561562d565b600085815260208120601f198616915b828110156156c6578886015182559484019460019091019084016156a7565b50858210156156e45787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6020808252600690820152654c424330303160d01b604082015260600190565b634e487b7160e01b600052603260045260246000fd5b60208082526006908201526509884866064760d31b604082015260600190565b60018060a01b0384168152826020820152606060408201526000611f626060830184614d54565b60006020828403121561578357600080fd5b81516143b181614945565b6020808252600690820152654c424330323960d01b604082015260600190565b6001600160a01b039390931683526020830191909152604082015260600190565b80516001600160601b0319168252600061024060208301516157f46020860182614d23565b5060408301516158076040860182614d23565b50606083015181606086015261581f82860182614d54565b91505060808301516158346080860182614d23565b5060a083015184820360a086015261584c8282614d54565b91505060c083015160c085015260e083015160e08501526101008084015161587682870182614d23565b505061012080840151858303828701526158908382614d54565b92505050610140808401516158ac8287018263ffffffff169052565b5050610160808401516158c38287018260070b9052565b505061018083810151908501526101a08084015163ffffffff908116918601919091526101c0808501518216908601526101e080850151909116908501526102008084015161ffff16908501526102208084015180151582870152615401565b60408152600061593660408301856157cf565b90508260208301529392505050565b6001600160a01b03949094168452602084019290925215156040830152606082015260800190565b63ffffffff8616815284602082015260a06040820152600061599260a0830186614d54565b931515606083015250608001529392505050565b602080825260069082015265131090cc0d8d60d21b604082015260600190565b602080825260069082015265262121981a1960d11b604082015260600190565b848152600084516159fe816020850160208901614d30565b808301905060018060601b0319851660208201528351615a25816034840160208801614d30565b016034019695505050505050565b600082601f830112615a4457600080fd5b8151615a526148d682614890565b818152846020838601011115615a6757600080fd5b610ee7826020830160208701614d30565b600060208284031215615a8a57600080fd5b81516001600160401b03811115615aa057600080fd5b610ee784828501615a33565b600160fd1b8152826001820152607560f81b602182015260008251615ad8816022850160208701614d30565b919091016022019392505050565b606081526000615af96060830186614d54565b8281036020840152615b0b8186614d54565b9150508215156040830152949350505050565b63ffffffff818116838216019080821115615b3b57615b3b61542b565b5092915050565b6020815260006143b16020830184614d54565b60006020808385031215615b6857600080fd5b82516001600160401b0380821115615b7f57600080fd5b818501915085601f830112615b9357600080fd5b8151615ba16148d682614c70565b81815260059190911b83018401908481019088831115615bc057600080fd5b8585015b83811015615c5b57805185811115615bdc5760008081fd5b86016080818c03601f1901811315615bf45760008081fd5b615bfc614806565b898301518881168114615c0f5760008081fd5b815260408381015189811115615c255760008081fd5b615c338f8d83880101615a33565b838d015250606084810151918301919091529190920151908201528352918601918601615bc4565b5098975050505050505050565b600060208284031215615c7a57600080fd5b5051919050565b600060808201868352602086818501528560408501526080606085015281855180845260a086019150828701935060005b81811015615cce57845183529383019391830191600101615cb2565b50909998505050505050505050565b6001600160401b03818116838216028082169190828114615d0057615d0061542b565b505092915050565b604081526000615d1b6040830185614d54565b905082151560208301529392505050565b6000808354615d3a816155ad565b60018281168015615d525760018114615d6757615d96565b60ff1984168752821515830287019450615d96565b8760005260208060002060005b85811015615d8d5781548a820152908401908201615d74565b50505082870194505b50929695505050505050565b6001600160401b03818116838216019080821115615b3b57615b3b61542b565b6020815260006143b160208301846157cf565b6000610100808352615de98184018c614d54565b90508960208401528281036040840152615e03818a614d54565b90508760608401528281036080840152615e1d8188614d54565b6001600160a01b03871660a085015283810360c08501529050615e408186614d54565b91505082151560e0830152999850505050505050505056fe3052ea2f7e0d74fdc1c1e1f858ff1ae3d91ab1609717c3efedb95db603b255f69685484093cc596fdaeab51abf645b1753dbb7d869bfd2eb21e2c646e47a36f4bfc7404e6fe464f0646fe2c6ab942b92d56be722bb39f8c6bc4830d2d32fb80da2646970667358221220529ecc3983548e4c0de367c561e09d1b7592e7cde5b4e080f8f0ef92f43d315064736f6c63430008120033", - "deployedBytecode": "0x60806040526004361061027f5760003560e01c806304ade855146102d35780630a7bf57a146102ff5780630a9cb4a7146103145780631b032188146103335780632e1a7d4d1461035357806333f07ad31461037357806335510a7d14610388578063417055181461039d578063418663a2146103b05780634198687e146103da5780634533ac1c146103e2578063457385f2146104025780634d0ec9711461043257806354015ee01461045257806359c153be14610485578063668dbd831461049a57806369023235146104c757806369652fcf146104e75780636e2e8c70146104fc578063715018a61461051c57806372cbf4e8146105315780637b78837f146105515780638490a8df146105645780638d5979391461057a5780638da5cb5b146105915780638f91797d146105b35780639b56d6c9146105d35780639cd6557f146106095780639d79b59b1461061e5780639e81699914610647578063a0cd70fc1461064f578063a0d250371461066f578063a4a5ba501461068f578063a93bb247146106a4578063ac29d744146106bb578063ae76ce86146106ce578063ae93b67b146106e5578063bd519eff146106fc578063bd5798c314610732578063be6de4eb14610754578063c525cdd814610769578063c721316314610780578063cfb92f0a1461079b578063d0e30db0146107b2578063d6c70de8146107ba578063e1de16c6146107da578063e30e6ea3146107f0578063e5b5019a14610806578063e78cea921461081c578063e830b6901461083c578063e8fcce7114610851578063e90d2ddb14610867578063f2fde38b14610894578063f8b2cb4f146108b4578063fa88dcde146108ea578063fb32c508146108ff57600080fd5b366102ce576097546001600160a01b031633146102cc5760405162461bcd60e51b81526020600482015260066024820152654c424330303760d01b60448201526064015b60405180910390fd5b005b600080fd5b3480156102df57600080fd5b506102e8600181565b60405160ff90911681526020015b60405180910390f35b34801561030b57600080fd5b506102e8600281565b34801561032057600080fd5b5060a2545b6040519081526020016102f6565b34801561033f57600080fd5b5061032561034e366004614ae9565b61091d565b34801561035f57600080fd5b506102cc61036e366004614b1d565b61092e565b34801561037f57600080fd5b5060a154610325565b34801561039457600080fd5b506102cc610a26565b6103256103ab366004614b36565b610b54565b3480156103bc57600080fd5b506103c76101301981565b60405160019190910b81526020016102f6565b6102cc610eef565b3480156103ee57600080fd5b506102cc6103fd366004614bd2565b610f74565b34801561040e57600080fd5b5061042261041d366004614c53565b6111b3565b60405190151581526020016102f6565b34801561043e57600080fd5b5061042261044d366004614c53565b6111e9565b34801561045e57600080fd5b5061042261046d366004614b1d565b600090815260a7602052604090206001015460ff1690565b34801561049157600080fd5b506102cc61121f565b3480156104a657600080fd5b506104ba6104b5366004614c93565b61134d565b6040516102f69190614d80565b3480156104d357600080fd5b506103256104e2366004614fbd565b6116ce565b3480156104f357600080fd5b506102cc6116d9565b34801561050857600080fd5b50610325610517366004614ff1565b611784565b34801561052857600080fd5b506102cc611f6b565b34801561053d57600080fd5b506102cc61054c3660046150a5565b611f7f565b6102cc61055f3660046150d5565b612019565b34801561057057600080fd5b5061032560a25481565b34801561058657600080fd5b506103c761012c1981565b34801561059d57600080fd5b506105a661249f565b6040516102f69190615138565b3480156105bf57600080fd5b506102cc6105ce366004614b1d565b6124ae565b3480156105df57600080fd5b506103256105ee366004614c53565b6001600160a01b031660009081526099602052604090205490565b34801561061557600080fd5b506102e8600081565b34801561062a57600080fd5b506106346188b881565b60405161ffff90911681526020016102f6565b6102cc6127af565b34801561065b57600080fd5b5061032561066a36600461514c565b61282a565b34801561067b57600080fd5b5061042261068a366004615180565b61287d565b34801561069b57600080fd5b50610325600181565b3480156106b057600080fd5b506103c761012d1981565b6104226106c9366004614ae9565b6129e9565b3480156106da57600080fd5b506103c761012b1981565b3480156106f157600080fd5b506103c76103831981565b34801561070857600080fd5b50610325610717366004614c53565b6001600160a01b03166000908152609a602052604090205490565b34801561073e57600080fd5b5060a054600160201b900463ffffffff16610325565b34801561076057600080fd5b50610325600081565b34801561077557600080fd5b506103c761012e1981565b34801561078c57600080fd5b5060a05463ffffffff16610325565b3480156107a757600080fd5b506103c761012f1981565b6102cc612cfb565b3480156107c657600080fd5b506102cc6107d53660046151b6565b612d2a565b3480156107e657600080fd5b506106346108fc81565b3480156107fc57600080fd5b506103c760c71981565b34801561081257600080fd5b5061032560001981565b34801561082857600080fd5b506097546105a6906001600160a01b031681565b34801561084857600080fd5b50609e54610325565b34801561085d57600080fd5b506103c760631981565b34801561087357600080fd5b50610887610882366004614b1d565b6136f6565b6040516102f6919061528c565b3480156108a057600080fd5b506102cc6108af366004614c53565b613a21565b3480156108c057600080fd5b506103256108cf366004614c53565b6001600160a01b031660009081526098602052604090205490565b3480156108f657600080fd5b50609f54610325565b34801561090b57600080fd5b506097546001600160a01b03166105a6565b600061092882613a97565b92915050565b3360009081526098602052604090205481111561095d5760405162461bcd60e51b81526004016102c39061540b565b336000908152609860205260408120805483929061097c908490615441565b9091555050604051600090339083908381818185875af1925050503d80600081146109c3576040519150601f19603f3d011682016040523d82523d6000602084013e6109c8565b606091505b50509050806109e95760405162461bcd60e51b81526004016102c390615454565b7f7fcf532c15f0a6db0bd6d0e038bea71d30d808c7d98cb3bf7268a95bf5081b653383604051610a1a929190615474565b60405180910390a15050565b336000908152609d6020526040902054610a525760405162461bcd60e51b81526004016102c39061548d565b60a054336000908152609d6020526040902054600160201b90910463ffffffff1690610a7e9043615441565b1015610a9c5760405162461bcd60e51b81526004016102c3906154ad565b336000818152609a60209081526040808320805490849055609d9092528083208390555190929083908381818185875af1925050503d8060008114610afd576040519150601f19603f3d011682016040523d82523d6000602084013e610b02565b606091505b5050905080610b235760405162461bcd60e51b81526004016102c390615454565b7ffc72299650b405e7b0480ca8fb0fb3948fb10a77ac02f797cc9de1f4aaa55db73383604051610a1a929190615474565b6000323314610b8e5760405162461bcd60e51b81526020600482015260066024820152654c424330303360d01b60448201526064016102c3565b610b99858584613cff565b33600090815260996020526040902054158015610bc35750336000908152609a6020526040902054155b610bf85760405162461bcd60e51b815260206004820152600660248201526504c42433037360d41b60448201526064016102c3565b336000908152609d602052604090205415610c3e5760405162461bcd60e51b81526020600482015260066024820152654c424330303960d01b60448201526064016102c3565b604051602001610c4d906154cd565b6040516020818303038152906040528051906020012082604051602001610c7491906154de565b6040516020818303038152906040528051906020012003610cc857609e54341015610cb15760405162461bcd60e51b81526004016102c3906154fa565b336000908152609960205260409020349055610dcd565b604051602001610cd79061551a565b6040516020818303038152906040528051906020012082604051602001610cfe91906154de565b6040516020818303038152906040528051906020012003610d5257609e54341015610d3b5760405162461bcd60e51b81526004016102c3906154fa565b336000908152609a60205260409020349055610dcd565b609e54610d6090600261552c565b341015610d7f5760405162461bcd60e51b81526004016102c3906154fa565b6000610d8c600234615559565b9050610d9960023461556d565b15610dae57610da9816001615581565b610db0565b805b33600090815260996020908152604080832093909355609a905220555b60a28054906000610ddd83615594565b90915550506040805160c08101825260a2548082523360208084019182528385018a8152606085018a9052881515608086015260a085018890526000938452609b909152939091208251815590516001820180546001600160a01b0319166001600160a01b0390921691909117905591519091906002820190610e609082615635565b5060608201516003820190610e759082615635565b50608082015160048201805460ff191691151591909117905560a08201516005820190610ea29082615635565b505060a254604080519182523460208301523392507fa9d44d6e13bb3fee938c3f66d1103e91f8dc6b12d4405a55eea558e8f275aa6e910160405180910390a25060a2545b949350505050565b610ef833613ea6565b610f145760405162461bcd60e51b81526004016102c3906156f4565b336000908152609a602052604081208054349290610f33908490615581565b90915550506040517f873d5a2949567203ad4f0cceef41c2813c87b9a397ee777d87a8acdaec2c6fa990610f6a9033903490615474565b60405180910390a1565b600054610100900460ff1615808015610f945750600054600160ff909116105b80610fae5750303b158015610fae575060005460ff166001145b6110115760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016102c3565b6000805460ff191660011790558015611034576000805461ff0019166101001790555b60648663ffffffff1611156110745760405162461bcd60e51b8152602060048201526006602482015265131090cc0c0d60d21b60448201526064016102c3565b666a94d74f4300008810156110b45760405162461bcd60e51b8152602060048201526006602482015265262121981b9960d11b60448201526064016102c3565b603c8563ffffffff1610156110f45760405162461bcd60e51b81526020600482015260066024820152654c424330373360d01b60448201526064016102c3565b6110fc613ee5565b609780546001600160a01b038b166001600160a01b0319909116179055609e889055609f87905560a0805463ffffffff878116600160201b026001600160401b03199092169089161717905560a184905560a383905560a4805483151560ff1990911617905580156111a8576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050505050505050565b60006111be82613f59565b80156109285750609e546001600160a01b038316600090815260996020526040902054101592915050565b60006111f482613ea6565b80156109285750609e546001600160a01b0383166000908152609a6020526040902054101592915050565b336000908152609d602052604090205461124b5760405162461bcd60e51b81526004016102c39061548d565b60a054336000908152609d6020526040902054600160201b90910463ffffffff16906112779043615441565b10156112955760405162461bcd60e51b81526004016102c3906154ad565b336000818152609960209081526040808320805490849055609d9092528083208390555190929083908381818185875af1925050503d80600081146112f6576040519150601f19603f3d011682016040523d82523d6000602084013e6112fb565b606091505b505090508061131c5760405162461bcd60e51b81526004016102c390615454565b7fa8e76b822fc682be77f3b1c822ea81f6bda5aed92ba82e6873bfd889f328d1d23383604051610a1a929190615474565b6060600082516001600160401b0381111561136a5761136a6147a4565b6040519080825280602002602001820160405280156113df57816020015b6113cc6040518060c001604052806000815260200160006001600160a01b031681526020016060815260200160608152602001600015158152602001606081525090565b8152602001906001900390816113885790505b5090506000805b84518110156116c557600085828151811061140357611403615714565b6020908102919091018101516000818152609b909252604090912060010154909150611437906001600160a01b0316613f59565b8061146157506000818152609b6020526040902060010154611461906001600160a01b0316613ea6565b801561147e57506000818152609b602052604090206004015460ff165b156116b2576000818152609b6020908152604091829020825160c0810184528154815260018201546001600160a01b03169281019290925260028101805492939192918401916114cd906155ad565b80601f01602080910402602001604051908101604052809291908181526020018280546114f9906155ad565b80156115465780601f1061151b57610100808354040283529160200191611546565b820191906000526020600020905b81548152906001019060200180831161152957829003601f168201915b5050505050815260200160038201805461155f906155ad565b80601f016020809104026020016040519081016040528092919081815260200182805461158b906155ad565b80156115d85780601f106115ad576101008083540402835291602001916115d8565b820191906000526020600020905b8154815290600101906020018083116115bb57829003601f168201915b5050509183525050600482015460ff1615156020820152600582018054604090920191611604906155ad565b80601f0160208091040260200160405190810160405280929190818152602001828054611630906155ad565b801561167d5780601f106116525761010080835404028352916020019161167d565b820191906000526020600020905b81548152906001019060200180831161166057829003601f168201915b50505050508152505084848151811061169857611698615714565b602002602001018190525082806116ae90615594565b9350505b50806116bd81615594565b9150506113e6565b50909392505050565b600061092882613f98565b6116e233613f59565b6116fe5760405162461bcd60e51b81526004016102c3906156f4565b336000908152609d6020526040902054156117445760405162461bcd60e51b81526020600482015260066024820152654c424330323360d01b60448201526064016102c3565b336000818152609d602052604090819020439055517fa6674aa33cd1b7435474751667707bf05fde99e537d67043ec5f907782577d8691610f6a91615138565b600061178e614014565b600061179987613a97565b600081815260a56020526040902054909150600160ff90911611156117d05760405162461bcd60e51b81526004016102c39061572a565b60408088015190516301a86b5560e41b815273__SignatureValidator____________________91631a86b5509161180f919085908b9060040161574a565b602060405180830381865af415801561182c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118509190615771565b61186c5760405162461bcd60e51b81526004016102c39061578e565b637fffffff83106118a85760405162461bcd60e51b815260206004820152600660248201526504c42433033360d41b60448201526064016102c3565b60006118b7888787878661406d565b905061012f81016118f35760405162461bcd60e51b81526020600482015260066024820152654c424330333160d01b60448201526064016102c3565b61012e810161192d5760405162461bcd60e51b815260206004820152600660248201526526212198199960d11b60448201526064016102c3565b61013081016119675760405162461bcd60e51b81526020600482015260066024820152654c424330333360d01b60448201526064016102c3565b61013181016119a15760405162461bcd60e51b8152602060048201526006602482015265131090cc0ccd60d21b60448201526064016102c3565b61038481016119db5760405162461bcd60e51b81526020600482015260066024820152654c424330333560d01b60448201526064016102c3565b60008113806119eb575060c71981145b806119f7575060631981145b611a2c5760405162461bcd60e51b815260206004820152600660248201526526212198199b60d11b60448201526064016102c3565b6000828152609c6020526040902054611a4f908990839063ffffffff168761413f565b15611b205760e08801516040808a01516001600160a01b031660009081526099602052908120549091611a81916143a0565b905080609960008b604001516001600160a01b03166001600160a01b031681526020019081526020016000206000828254611abc9190615441565b90915550506040808a01519051600080516020615e7983398151915291611ae691849087906157ae565b60405180910390a160a054600090606490611b079063ffffffff168461552c565b611b119190615559565b9050611b1d33826143b8565b50505b60c719811480611b31575060631981145b15611ba557600082815260a560209081526040808320805460ff19166002179055609c825291829020805464ffffffffff1916905581518481529081018390527ffb209329d5ab5b7bcb2e92f45f4534814b6e68fa5ad1f171dabc1d17d26f0ebe910160405180910390a19150611f589050565b60405162e7a37960e21b8152819073__Quotes________________________________9063039e8de490611bdf908c908590600401615923565b60006040518083038186803b158015611bf757600080fd5b505af4158015611c0b573d6000803e3d6000fd5b5050506000848152609c602052604090205463ffffffff16159050611d4c576000838152609c6020526040812054600160201b900460ff1615611c6d57611c66828b60c001518c6101800151611c619190615581565b6143a0565b9050611c7e565b611c7b828b60c001516143a0565b90505b611c8c8a60400151826143b8565b6000611c988284615441565b905060a154811115611d455760808b01516040516000916001600160a01b0316906108fc90849084818181858888f193505050503d8060008114611cf8576040519150601f19603f3d011682016040523d82523d6000602084013e611cfd565b606091505b50509050600080516020615e598339815191528c60800151838389604051611d289493929190615945565b60405180910390a180611d4357611d438c60400151836143b8565b505b5050611ef1565b61022089015181908015611d6557508961018001518110155b15611e575760008a61010001516001600160a01b03168b610140015163ffffffff168c61018001518d6101200151604051611da091906154de565b600060405180830381858888f193505050503d8060008114611dde576040519150601f19603f3d011682016040523d82523d6000602084013e611de3565b606091505b505090508a61010001516001600160a01b0316336001600160a01b0316600080516020615e998339815191528d61014001518e61018001518f6101200151868b604051611e3495949392919061596d565b60405180910390a38015611e55576101808b0151611e529083615441565b91505b505b60a154811115611eef5760808a01516040516000916001600160a01b0316906108fc90849084818181858888f193505050503d8060008114611eb5576040519150601f19603f3d011682016040523d82523d6000602084013e611eba565b606091505b50509050600080516020615e598339815191528b60800151838388604051611ee59493929190615945565b60405180910390a1505b505b600083815260a560209081526040808320805460ff19166002179055609c825291829020805464ffffffffff19169055905183815284917f0629ae9d1dc61501b0ca90670a9a9b88daaf7504b54537b53e1219de794c63d2910160405180910390a2509150505b611f626001606555565b95945050505050565b611f73614417565b611f7d6000614476565b565b81611f8861249f565b6001600160a01b0316336001600160a01b03161480611fc057506000818152609b60205260409020600101546001600160a01b031633145b611ff55760405162461bcd60e51b81526020600482015260066024820152654c424330303560d01b60448201526064016102c3565b506000918252609b6020526040909120600401805460ff1916911515919091179055565b6120268260200151613ea6565b61205b5760405162461bcd60e51b81526020600482015260066024820152654c424330333760d01b60448201526064016102c3565b348260a001518361012001516120719190615581565b11156120a85760405162461bcd60e51b81526020600482015260066024820152654c424330363360d01b60448201526064016102c3565b81610160015163ffffffff164211156120ec5760405162461bcd60e51b81526020600482015260066024820152654c424330363560d01b60448201526064016102c3565b816101e0015163ffffffff164211156121305760405162461bcd60e51b8152602060048201526006602482015265262121981a1b60d11b60448201526064016102c3565b81610200015163ffffffff164311156121745760405162461bcd60e51b81526020600482015260066024820152654c424330343760d01b60448201526064016102c3565b600061217f836116ce565b60208401516040516301a86b5560e41b815291925073__SignatureValidator____________________91631a86b550916121c0918590879060040161574a565b602060405180830381865af41580156121dd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122019190615771565b61221d5760405162461bcd60e51b81526004016102c39061578e565b600081815260a66020908152604080832060a79092529091206001015460ff161561225a5760405162461bcd60e51b81526004016102c3906159a6565b80546001600160a01b0316156122825760405162461bcd60e51b81526004016102c39061572a565b600082815260a66020908152604091829020865181546001600160a01b03199081166001600160a01b03928316178355928801516001830180549094169116179091559085015185919060028201906122db9082615635565b5060608201516003820180546001600160a01b0319166001600160a01b03909216919091179055608082015160048201906123169082615635565b5060a0820151600582015560c0820151600682015560e08201516007820180546001600160401b0319166001600160401b0390921691909117905561010082015160088201906123669082615635565b506101208201516009820155610140820151600a90910180546101608401516101808501516101a08601516101c08701516101e08801516102009098015163ffffffff9788166001600160401b031990961695909517600160201b948816949094029390931763ffffffff60401b1916600160401b61ffff9384160261ffff60501b191617600160501b929091169190910217600160601b600160a01b031916600160601b9185169190910263ffffffff60801b191617600160801b948416949094029390931763ffffffff60a01b1916600160a01b9290931691909102919091179055600082815260a760209081526040918290204290819055825134815291820152339184917fb1bc7bfc0dab19777eb03aa0a5643378fc9f186c8fc5a36620d21136fbea570f910160405180910390a350505050565b6033546001600160a01b031690565b6124b6614014565b600081815260a66020526040902080546001600160a01b03166124eb5760405162461bcd60e51b81526004016102c3906159c6565b600a810154600160801b900463ffffffff164211801561251b5750600a810154600160a01b900463ffffffff1643115b6125505760405162461bcd60e51b81526020600482015260066024820152654c424330343160d01b60448201526064016102c3565b6000816005015482600901546125669190615581565b6003830154600684015460018501546001600160a01b039081166000908152609a602052604081205494955092169261259f91906143a0565b60018501546001600160a01b03166000908152609a60205260408120805492935083929091906125d0908490615441565b90915550506001840154604051600080516020615e7983398151915291612606916001600160a01b0390911690849089906157ae565b60405180910390a16003840154604080518581526001600160a01b03909216602083015286917f9ccbeffc442024e2a6ade18ff0978af9a4c4d6562ae38adb51ccf8256cf42b41910160405180910390a2600085815260a66020526040812080546001600160a01b0319908116825560018201805490911690559061268e6002830182614756565b6003820180546001600160a01b03191690556126ae600483016000614756565b600060058301819055600683018190556007830180546001600160401b03191690556126de906008840190614756565b50600060098201819055600a90910180546001600160c01b031916905585815260a760205260408082206001908101805460ff19169091179055516001600160a01b0384169085908381818185875af1925050503d806000811461275e576040519150601f19603f3d011682016040523d82523d6000602084013e612763565b606091505b505090508061279d5760405162461bcd60e51b8152602060048201526006602482015265131090cc0d0d60d21b60448201526064016102c3565b50505050506127ac6001606555565b50565b6127b833613f59565b6127d45760405162461bcd60e51b81526004016102c3906156f4565b33600090815260996020526040812080543492906127f3908490615581565b90915550506040517f456e0f4ea86ac283092c750200e8c877f6ad8901ae575f90e02081acd455af8490610f6a9033903490615474565b600081516050146128665760405162461bcd60e51b81526020600482015260066024820152654c424330363160d01b60448201526064016102c3565b6128718260446144c8565b63ffffffff1692915050565b6000806128898461091d565b8460600151856020015160601b8660a001516040516020016128ae94939291906159e6565b604051602081830303815290604052805190602001209050600081609760009054906101000a90046001600160a01b03166001600160a01b0316631d73d5dd6040518163ffffffff1660e01b8152600401600060405180830381865afa15801561291c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526129449190810190615a78565b604051602001612955929190615aac565b60408051601f198184030181529082905260a454639b02794b60e01b835290925073__BtcUtils______________________________91639b02794b916129a8918891869160ff90911690600401615ae6565b602060405180830381865af41580156129c5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f629190615771565b60006129f433613f59565b612a105760405162461bcd60e51b81526004016102c3906156f4565b612a18614014565b81604001516001600160a01b0316336001600160a01b031614612a665760405162461bcd60e51b8152602060048201526006602482015265131090cc0c8d60d21b60448201526064016102c3565b6101808201516040808401516001600160a01b0316600090815260986020522054612a92903490615581565b1015612ab05760405162461bcd60e51b81526004016102c39061540b565b6000612abb83613a97565b600081815260a5602052604090205490915060ff1615612b065760405162461bcd60e51b81526020600482015260066024820152654c424330323560d01b60448201526064016102c3565b612b148360400151346143b8565b610140830151612b27906188b890615b1e565b63ffffffff165a1015612b655760405162461bcd60e51b815260206004820152600660248201526526212198191b60d11b60448201526064016102c3565b60008361010001516001600160a01b031684610140015163ffffffff16856101800151866101200151604051612b9b91906154de565b600060405180830381858888f193505050503d8060008114612bd9576040519150601f19603f3d011682016040523d82523d6000602084013e612bde565b606091505b509091505063ffffffff421115612c205760405162461bcd60e51b81526020600482015260066024820152654c424330323760d01b60448201526064016102c3565b6000828152609c60205260409020805463ffffffff19164263ffffffff161790558015612c7b576000828152609c602052604090819020805460ff60201b1916600160201b179055840151610180850151612c7b91906145b2565b8361010001516001600160a01b0316336001600160a01b0316600080516020615e998339815191528661014001518761018001518861012001518688604051612cc895949392919061596d565b60405180910390a3600091825260a56020526040909120805460ff191660011790559050612cf66001606555565b919050565b612d0433613f59565b612d205760405162461bcd60e51b81526004016102c3906156f4565b611f7d33346143b8565b612d32614014565b612d3b33613ea6565b612d575760405162461bcd60e51b81526004016102c3906156f4565b600085815260a7602052604090206001015460ff1615612d895760405162461bcd60e51b81526004016102c3906159a6565b600085815260a66020526040902080546001600160a01b0316612dbe5760405162461bcd60e51b81526004016102c3906159c6565b60405162f5b49160e01b815260009073__BtcUtils______________________________9062f5b49190612df6908990600401615b42565b600060405180830381865af4158015612e13573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612e3b9190810190615b55565b9050600073__BtcUtils______________________________632d56f32383600181518110612e6c57612e6c615714565b6020026020010151602001516040518263ffffffff1660e01b8152600401612e949190615b42565b600060405180830381865af4158015612eb1573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612ed99190810190615a78565b806020019051810190612eec9190615c68565b9050808814612f265760405162461bcd60e51b81526020600482015260066024820152654c424330363960d01b60448201526064016102c3565b60018301546001600160a01b03163314612f6b5760405162461bcd60e51b815260206004820152600660248201526509884866068760d31b60448201526064016102c3565b600a83015460975460405163fea8ba6360e01b8152600160501b90920461ffff16916001600160a01b0390911690635b6445879073__BtcUtils______________________________9063fea8ba6390612fc9908d90600401615b42565b602060405180830381865af4158015612fe6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061300a9190615c68565b8989896040518563ffffffff1660e01b815260040161302c9493929190615c81565b602060405180830381865afa158015613049573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061306d9190615c68565b12156130a45760405162461bcd60e51b81526020600482015260066024820152654c424330343960d01b60448201526064016102c3565b816000815181106130b7576130b7615714565b6020026020010151600001516402540be4006130d39190615cdd565b6001600160401b0316836009015411156131185760405162461bcd60e51b81526020600482015260066024820152654c424330363760d01b60448201526064016102c3565b600073__BtcUtils______________________________634c03fe598460008151811061314757613147615714565b602090810291909101810151015160a4546040516001600160e01b031960e085901b16815261317d929160ff1690600401615d08565b600060405180830381865af415801561319a573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526131c29190810190615a78565b90508080519060200120846008016040516131dd9190615d2c565b60405180910390201461321b5760405162461bcd60e51b81526020600482015260066024820152650988486606c760d31b60448201526064016102c3565b604080516102208101825285546001600160a01b03908116825260018701541660208201526002860180546134b693889290840191613259906155ad565b80601f0160208091040260200160405190810160405280929190818152602001828054613285906155ad565b80156132d25780601f106132a7576101008083540402835291602001916132d2565b820191906000526020600020905b8154815290600101906020018083116132b557829003601f168201915b505050918352505060038201546001600160a01b03166020820152600482018054604090920191613302906155ad565b80601f016020809104026020016040519081016040528092919081815260200182805461332e906155ad565b801561337b5780601f106133505761010080835404028352916020019161337b565b820191906000526020600020905b81548152906001019060200180831161335e57829003601f168201915b50505091835250506005820154602082015260068201546040820152600780830154900b60608201526008820180546080909201916133b9906155ad565b80601f01602080910402602001604051908101604052809291908181526020018280546133e5906155ad565b80156134325780601f1061340757610100808354040283529160200191613432565b820191906000526020600020905b81548152906001019060200180831161341557829003601f168201915b505050918352505060098201546020820152600a9091015463ffffffff8082166040840152600160201b82048116606084015261ffff600160401b830481166080850152600160501b83041660a0840152600160601b8204811660c0840152600160801b8204811660e0840152600160a01b90910416610100909101528389614611565b1561355957600684015460018501546001600160a01b03166000908152609a602052604081205490916134e8916143a0565b60018601546001600160a01b03166000908152609a6020526040812080549293508392909190613519908490615441565b90915550506001850154604051600080516020615e798339815191529161354f916001600160a01b0390911690849087906157ae565b60405180910390a1505b6001840154600585015460098601546000926001600160a01b03169161357e91615581565b604051600081818185875af1925050503d80600081146135ba576040519150601f19603f3d011682016040523d82523d6000602084013e6135bf565b606091505b50509050806135f95760405162461bcd60e51b815260206004820152600660248201526504c42433035360d41b60448201526064016102c3565b600083815260a66020526040812080546001600160a01b031990811682556001820180549091169055906136306002830182614756565b6003820180546001600160a01b0319169055613650600483016000614756565b600060058301819055600683018190556007830180546001600160401b0319169055613680906008840190614756565b50600060098201819055600a90910180546001600160c01b031916905583815260a760205260408082206001908101805460ff191690911790555184917fb781856ec73fd0dc39351043d1634ea22cd3277b0866ab93e7ec1801766bb38491a250505050506136ef6001606555565b5050505050565b6040805161022080820183526000808352602080840182905260608486018190528085018390526080850181905260a0850183905260c0850183905260e0850183905261010085015261012084018290526101408401829052610160840182905261018084018290526101a084018290526101c084018290526101e08401829052610200840182905285825260a68152908490208451928301855280546001600160a01b039081168452600182015416918301919091526002810180549394929391928401916137c5906155ad565b80601f01602080910402602001604051908101604052809291908181526020018280546137f1906155ad565b801561383e5780601f106138135761010080835404028352916020019161383e565b820191906000526020600020905b81548152906001019060200180831161382157829003601f168201915b505050918352505060038201546001600160a01b0316602082015260048201805460409092019161386e906155ad565b80601f016020809104026020016040519081016040528092919081815260200182805461389a906155ad565b80156138e75780601f106138bc576101008083540402835291602001916138e7565b820191906000526020600020905b8154815290600101906020018083116138ca57829003601f168201915b50505091835250506005820154602082015260068201546040820152600780830154900b6060820152600882018054608090920191613925906155ad565b80601f0160208091040260200160405190810160405280929190818152602001828054613951906155ad565b801561399e5780601f106139735761010080835404028352916020019161399e565b820191906000526020600020905b81548152906001019060200180831161398157829003601f168201915b505050918352505060098201546020820152600a9091015463ffffffff8082166040840152600160201b82048116606084015261ffff600160401b830481166080850152600160501b83041660a0840152600160601b8204811660c0840152600160801b8204811660e0840152600160a01b909104166101009091015292915050565b613a29614417565b6001600160a01b038116613a8e5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016102c3565b6127ac81614476565b600081602001516001600160a01b0316306001600160a01b031614613ae75760405162461bcd60e51b81526020600482015260066024820152654c424330353160d01b60448201526064016102c3565b6101008201516097546001600160a01b03918216911603613b335760405162461bcd60e51b8152602060048201526006602482015265262121981a9960d11b60448201526064016102c3565b81606001515160151480613b4c57508160600151516021145b613b815760405162461bcd60e51b81526020600482015260066024820152654c424330353360d01b60448201526064016102c3565b8160a0015151601514613bbf5760405162461bcd60e51b8152602060048201526006602482015265131090cc0d4d60d21b60448201526064016102c3565b609f548260c00151836101800151613bd79190615581565b1015613c0e5760405162461bcd60e51b81526020600482015260066024820152654c424330353560d01b60448201526064016102c3565b816101c0015163ffffffff16826101a0015163ffffffff16613c309190615da2565b6001600160401b031663ffffffff1015613c755760405162461bcd60e51b81526020600482015260066024820152654c424330373160d01b60448201526064016102c3565b604051630fdeb30b60e21b815273__Quotes________________________________90633f7acc2c90613cac908590600401615dc2565b600060405180830381865af4158015613cc9573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052613cf19190810190615a78565b805190602001209050919050565b6000835111613d395760405162461bcd60e51b815260206004820152600660248201526504c42433031360d41b60448201526064016102c3565b6000825111613d735760405162461bcd60e51b81526020600482015260066024820152654c424330313760d01b60448201526064016102c3565b604051602001613d82906154cd565b6040516020818303038152906040528051906020012081604051602001613da991906154de565b604051602081830303815290604052805190602001201480613e145750604051602001613dd59061551a565b6040516020818303038152906040528051906020012081604051602001613dfc91906154de565b60405160208183030381529060405280519060200120145b80613e6c5750604051630c4dee8d60e31b60208201526024016040516020818303038152906040528051906020012081604051602001613e5491906154de565b60405160208183030381529060405280519060200120145b613ea15760405162461bcd60e51b815260206004820152600660248201526509884866062760d31b60448201526064016102c3565b505050565b6001600160a01b0381166000908152609a6020526040812054158015906109285750506001600160a01b03166000908152609d60205260409020541590565b600054610100900460ff16613f505760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b60648201526084016102c3565b611f7d33614476565b6001600160a01b038116600090815260996020526040812054158015906109285750506001600160a01b03166000908152609d60205260409020541590565b80516000906001600160a01b03163014613fdd5760405162461bcd60e51b8152602060048201526006602482015265262121981a9b60d11b60448201526064016102c3565b60405163fb19b88b60e01b815273__Quotes________________________________9063fb19b88b90613cac90859060040161528c565b6002606554036140665760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016102c3565b6002606555565b609754606086015160a08701516000848152609c602052604081205490936001600160a01b031692636adc013392899288928a92899230919063ffffffff16158015906140cf575060008b8152609c6020526040902054600160201b900460ff165b6040518963ffffffff1660e01b81526004016140f2989796959493929190615dd5565b6020604051808303816000875af1158015614111573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906141359190615c68565b9695505050505050565b6000808413801561416357508460c001518561018001516141609190615581565b84105b1561417057506000610ee7565b60975460405163bd0c1fff60e01b8152600481018490526000916001600160a01b03169063bd0c1fff90602401600060405180830381865afa1580156141ba573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526141e29190810190615a78565b9050600081511161422c5760405162461bcd60e51b8152602060048201526014602482015273125b9d985b1a5908189b1bd8dac81a195a59da1d60621b60448201526064016102c3565b60006142378261282a565b90506000876101c00151886101a001516142519190615b1e565b63ffffffff1690508082111561426d5760009350505050610ee7565b856000036142815760019350505050610ee7565b6097546102008901516000916001600160a01b03169063bd0c1fff906001906142ae9061ffff168a615581565b6142b89190615441565b6040518263ffffffff1660e01b81526004016142d691815260200190565b600060405180830381865afa1580156142f3573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261431b9190810190615a78565b905060008151116143575760405162461bcd60e51b81526020600482015260066024820152650988486606a760d31b60448201526064016102c3565b60006143628261282a565b9050896101e0015163ffffffff168161437b9190615581565b88111561439057600195505050505050610ee7565b5060009998505050505050505050565b60008183106143af57816143b1565b825b9392505050565b6001600160a01b038216600090815260986020526040812080548392906143e0908490615581565b90915550506040517f42cfb81a915ac5a674852db250bf722637bee705a267633b68cab3a2dde06f5390610a1a9084908490615474565b3361442061249f565b6001600160a01b031614611f7d5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016102c3565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b60006144d5826004615581565b8351101561450e5760405162461bcd60e51b8152602060048201526006602482015265262121981b1960d11b60448201526064016102c3565b60188361451c846003615581565b8151811061452c5761452c615714565b016020015160f81c901b601084614544856002615581565b8151811061455457614554615714565b016020015160f81c901b60088561456c866001615581565b8151811061457c5761457c615714565b0160200151865160f89190911c90911b9086908690811061459f5761459f615714565b016020015160f81c171717905092915050565b6001600160a01b038216600090815260986020526040812080548392906145da908490615441565b90915550506040517f8e51a4493a6f66c76e13fd9e3b754eafbfe21343c04508deb61be8ccc006458790610a1a9084908490615474565b6097546040516339cf1b2560e11b81526004810183905260009182916001600160a01b039091169063739e364a90602401600060405180830381865afa15801561465f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526146879190810190615a78565b905060008151116146c35760405162461bcd60e51b81526020600482015260066024820152654c424330353960d01b60448201526064016102c3565b60006146ce8261282a565b60a3546101c0880151600088815260a7602052604090205492935090916146fb9163ffffffff1690615581565b6147059190615581565b811115614717576001925050506143b1565b856101e0015163ffffffff1642118061473a575085610200015163ffffffff1643115b1561474a576001925050506143b1565b50600095945050505050565b508054614762906155ad565b6000825580601f10614772575050565b601f0160209004906000526020600020908101906127ac91905b808211156147a0576000815560010161478c565b5090565b634e487b7160e01b600052604160045260246000fd5b60405161024081016001600160401b03811182821017156147dd576147dd6147a4565b60405290565b60405161022081016001600160401b03811182821017156147dd576147dd6147a4565b604051608081016001600160401b03811182821017156147dd576147dd6147a4565b604051601f8201601f191681016001600160401b0381118282101715614850576148506147a4565b604052919050565b80356001600160601b031981168114612cf657600080fd5b6001600160a01b03811681146127ac57600080fd5b8035612cf681614870565b60006001600160401b038211156148a9576148a96147a4565b50601f01601f191660200190565b600082601f8301126148c857600080fd5b81356148db6148d682614890565b614828565b8181528460208386010111156148f057600080fd5b816020850160208301376000918101602001919091529392505050565b803563ffffffff81168114612cf657600080fd5b8035600781900b8114612cf657600080fd5b803561ffff81168114612cf657600080fd5b80151581146127ac57600080fd5b8035612cf681614945565b6000610240828403121561497157600080fd5b6149796147ba565b905061498482614858565b815261499260208301614885565b60208201526149a360408301614885565b604082015260608201356001600160401b03808211156149c257600080fd5b6149ce858386016148b7565b60608401526149df60808501614885565b608084015260a08401359150808211156149f857600080fd5b614a04858386016148b7565b60a084015260c084013560c084015260e084013560e08401526101009150614a2d828501614885565b8284015261012091508184013581811115614a4757600080fd5b614a53868287016148b7565b83850152505050610140614a6881840161490d565b90820152610160614a7a838201614921565b9082015261018082810135908201526101a0614a9781840161490d565b908201526101c0614aa983820161490d565b908201526101e0614abb83820161490d565b90820152610200614acd838201614933565b90820152610220614adf838201614953565b9082015292915050565b600060208284031215614afb57600080fd5b81356001600160401b03811115614b1157600080fd5b610ee78482850161495e565b600060208284031215614b2f57600080fd5b5035919050565b60008060008060808587031215614b4c57600080fd5b84356001600160401b0380821115614b6357600080fd5b614b6f888389016148b7565b95506020870135915080821115614b8557600080fd5b614b91888389016148b7565b945060408701359150614ba382614945565b90925060608601359080821115614bb957600080fd5b50614bc6878288016148b7565b91505092959194509250565b600080600080600080600080610100898b031215614bef57600080fd5b8835614bfa81614870565b97506020890135965060408901359550614c1660608a0161490d565b9450614c2460808a0161490d565b935060a0890135925060c0890135915060e0890135614c4281614945565b809150509295985092959890939650565b600060208284031215614c6557600080fd5b81356143b181614870565b60006001600160401b03821115614c8957614c896147a4565b5060051b60200190565b60006020808385031215614ca657600080fd5b82356001600160401b03811115614cbc57600080fd5b8301601f81018513614ccd57600080fd5b8035614cdb6148d682614c70565b81815260059190911b82018301908381019087831115614cfa57600080fd5b928401925b82841015614d1857833582529284019290840190614cff565b979650505050505050565b6001600160a01b03169052565b60005b83811015614d4b578181015183820152602001614d33565b50506000910152565b60008151808452614d6c816020860160208601614d30565b601f01601f19169290920160200192915050565b60006020808301818452808551808352604092508286019150828160051b87010184880160005b83811015614e4157888303603f19018552815180518452878101516001600160a01b0316888501528681015160c088860181905290614de882870182614d54565b91505060608083015186830382880152614e028382614d54565b925050506080808301511515818701525060a08083015192508582038187015250614e2d8183614d54565b968901969450505090860190600101614da7565b509098975050505050505050565b60006102208284031215614e6257600080fd5b614e6a6147e3565b9050614e7582614885565b8152614e8360208301614885565b602082015260408201356001600160401b0380821115614ea257600080fd5b614eae858386016148b7565b6040840152614ebf60608501614885565b60608401526080840135915080821115614ed857600080fd5b614ee4858386016148b7565b608084015260a084013560a084015260c084013560c0840152614f0960e08501614921565b60e084015261010091508184013581811115614f2457600080fd5b614f30868287016148b7565b83850152505050610120808301358183015250610140614f5181840161490d565b90820152610160614f6383820161490d565b90820152610180614f75838201614933565b908201526101a0614f87838201614933565b908201526101c0614f9983820161490d565b908201526101e0614fab83820161490d565b90820152610200614adf83820161490d565b600060208284031215614fcf57600080fd5b81356001600160401b03811115614fe557600080fd5b610ee784828501614e4f565b600080600080600060a0868803121561500957600080fd5b85356001600160401b038082111561502057600080fd5b61502c89838a0161495e565b9650602088013591508082111561504257600080fd5b61504e89838a016148b7565b9550604088013591508082111561506457600080fd5b61507089838a016148b7565b9450606088013591508082111561508657600080fd5b50615093888289016148b7565b95989497509295608001359392505050565b600080604083850312156150b857600080fd5b8235915060208301356150ca81614945565b809150509250929050565b600080604083850312156150e857600080fd5b82356001600160401b03808211156150ff57600080fd5b61510b86838701614e4f565b9350602085013591508082111561512157600080fd5b5061512e858286016148b7565b9150509250929050565b6001600160a01b0391909116815260200190565b60006020828403121561515e57600080fd5b81356001600160401b0381111561517457600080fd5b610ee7848285016148b7565b6000806040838503121561519357600080fd5b82356001600160401b03808211156151aa57600080fd5b61510b8683870161495e565b600080600080600060a086880312156151ce57600080fd5b853594506020808701356001600160401b03808211156151ed57600080fd5b6151f98a838b016148b7565b96506040890135955060608901359450608089013591508082111561521d57600080fd5b508701601f8101891361522f57600080fd5b803561523d6148d682614c70565b81815260059190911b8201830190838101908b83111561525c57600080fd5b928401925b8284101561527a57833582529284019290840190615261565b80955050505050509295509295909350565b6020815261529e602082018351614d23565b600060208301516152b26040840182614d23565b5060408301516102208060608501526152cf610240850183614d54565b915060608501516152e36080860182614d23565b506080850151601f19808685030160a08701526153008483614d54565b935060a087015160c087015260c087015160e087015260e0870151915061010061532e8188018460070b9052565b8088015192505061012081878603018188015261534b8584614d54565b9088015161014088810191909152880151909450915061016090506153778187018363ffffffff169052565b86015190506101806153908682018363ffffffff169052565b86015190506101a06153a78682018361ffff169052565b86015190506101c06153be8682018361ffff169052565b86015190506101e06153d78682018363ffffffff169052565b86015190506102006153f08682018363ffffffff169052565b86015163ffffffff81168387015290505b5090949350505050565b6020808252600690820152654c424330313960d01b604082015260600190565b634e487b7160e01b600052601160045260246000fd5b818103818111156109285761092861542b565b60208082526006908201526504c42433032360d41b604082015260600190565b6001600160a01b03929092168252602082015260400190565b6020808252600690820152654c424330323160d01b604082015260600190565b60208082526006908201526526212198191960d11b604082015260600190565b643832b3b4b760d91b815260050190565b600082516154f0818460208701614d30565b9190910192915050565b60208082526006908201526509884866060760d31b604082015260600190565b651c1959dbdd5d60d21b815260060190565b80820281158282048414176109285761092861542b565b634e487b7160e01b600052601260045260246000fd5b60008261556857615568615543565b500490565b60008261557c5761557c615543565b500690565b808201808211156109285761092861542b565b6000600182016155a6576155a661542b565b5060010190565b600181811c908216806155c157607f821691505b6020821081036155e157634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115613ea157600081815260208120601f850160051c8101602086101561560e5750805b601f850160051c820191505b8181101561562d5782815560010161561a565b505050505050565b81516001600160401b0381111561564e5761564e6147a4565b6156628161565c84546155ad565b846155e7565b602080601f831160018114615697576000841561567f5750858301515b600019600386901b1c1916600185901b17855561562d565b600085815260208120601f198616915b828110156156c6578886015182559484019460019091019084016156a7565b50858210156156e45787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6020808252600690820152654c424330303160d01b604082015260600190565b634e487b7160e01b600052603260045260246000fd5b60208082526006908201526509884866064760d31b604082015260600190565b60018060a01b0384168152826020820152606060408201526000611f626060830184614d54565b60006020828403121561578357600080fd5b81516143b181614945565b6020808252600690820152654c424330323960d01b604082015260600190565b6001600160a01b039390931683526020830191909152604082015260600190565b80516001600160601b0319168252600061024060208301516157f46020860182614d23565b5060408301516158076040860182614d23565b50606083015181606086015261581f82860182614d54565b91505060808301516158346080860182614d23565b5060a083015184820360a086015261584c8282614d54565b91505060c083015160c085015260e083015160e08501526101008084015161587682870182614d23565b505061012080840151858303828701526158908382614d54565b92505050610140808401516158ac8287018263ffffffff169052565b5050610160808401516158c38287018260070b9052565b505061018083810151908501526101a08084015163ffffffff908116918601919091526101c0808501518216908601526101e080850151909116908501526102008084015161ffff16908501526102208084015180151582870152615401565b60408152600061593660408301856157cf565b90508260208301529392505050565b6001600160a01b03949094168452602084019290925215156040830152606082015260800190565b63ffffffff8616815284602082015260a06040820152600061599260a0830186614d54565b931515606083015250608001529392505050565b602080825260069082015265131090cc0d8d60d21b604082015260600190565b602080825260069082015265262121981a1960d11b604082015260600190565b848152600084516159fe816020850160208901614d30565b808301905060018060601b0319851660208201528351615a25816034840160208801614d30565b016034019695505050505050565b600082601f830112615a4457600080fd5b8151615a526148d682614890565b818152846020838601011115615a6757600080fd5b610ee7826020830160208701614d30565b600060208284031215615a8a57600080fd5b81516001600160401b03811115615aa057600080fd5b610ee784828501615a33565b600160fd1b8152826001820152607560f81b602182015260008251615ad8816022850160208701614d30565b919091016022019392505050565b606081526000615af96060830186614d54565b8281036020840152615b0b8186614d54565b9150508215156040830152949350505050565b63ffffffff818116838216019080821115615b3b57615b3b61542b565b5092915050565b6020815260006143b16020830184614d54565b60006020808385031215615b6857600080fd5b82516001600160401b0380821115615b7f57600080fd5b818501915085601f830112615b9357600080fd5b8151615ba16148d682614c70565b81815260059190911b83018401908481019088831115615bc057600080fd5b8585015b83811015615c5b57805185811115615bdc5760008081fd5b86016080818c03601f1901811315615bf45760008081fd5b615bfc614806565b898301518881168114615c0f5760008081fd5b815260408381015189811115615c255760008081fd5b615c338f8d83880101615a33565b838d015250606084810151918301919091529190920151908201528352918601918601615bc4565b5098975050505050505050565b600060208284031215615c7a57600080fd5b5051919050565b600060808201868352602086818501528560408501526080606085015281855180845260a086019150828701935060005b81811015615cce57845183529383019391830191600101615cb2565b50909998505050505050505050565b6001600160401b03818116838216028082169190828114615d0057615d0061542b565b505092915050565b604081526000615d1b6040830185614d54565b905082151560208301529392505050565b6000808354615d3a816155ad565b60018281168015615d525760018114615d6757615d96565b60ff1984168752821515830287019450615d96565b8760005260208060002060005b85811015615d8d5781548a820152908401908201615d74565b50505082870194505b50929695505050505050565b6001600160401b03818116838216019080821115615b3b57615b3b61542b565b6020815260006143b160208301846157cf565b6000610100808352615de98184018c614d54565b90508960208401528281036040840152615e03818a614d54565b90508760608401528281036080840152615e1d8188614d54565b6001600160a01b03871660a085015283810360c08501529050615e408186614d54565b91505082151560e0830152999850505050505050505056fe3052ea2f7e0d74fdc1c1e1f858ff1ae3d91ab1609717c3efedb95db603b255f69685484093cc596fdaeab51abf645b1753dbb7d869bfd2eb21e2c646e47a36f4bfc7404e6fe464f0646fe2c6ab942b92d56be722bb39f8c6bc4830d2d32fb80da2646970667358221220529ecc3983548e4c0de367c561e09d1b7592e7cde5b4e080f8f0ef92f43d315064736f6c63430008120033", - "immutableReferences": {}, - "generatedSources": [], - "deployedGeneratedSources": [ - { - "ast": { - "nodeType": "YulBlock", - "src": "0:67795:32", - "statements": [ - { - "nodeType": "YulBlock", - "src": "6:3:32", - "statements": [] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "188:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "205:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "216:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "198:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "198:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "198:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "239:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "250:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "235:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "235:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "255:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "228:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "228:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "228:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "277:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "288:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "273:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "273:18:32" - }, - { - "hexValue": "4c4243303037", - "kind": "string", - "nodeType": "YulLiteral", - "src": "293:8:32", - "type": "", - "value": "LBC007" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "266:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "266:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "266:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "311:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "323:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "334:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "319:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "319:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "311:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_a23daf30bd1e42cc69e3bea751166702f08d640860ab6f4c84d6bacb970360da__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "165:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "179:4:32", - "type": "" - } - ], - "src": "14:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "445:87:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "455:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "467:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "478:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "463:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "463:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "455:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "497:9:32" - }, - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "512:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "520:4:32", - "type": "", - "value": "0xff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "508:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "508:17:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "490:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "490:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "490:36:32" - } - ] - }, - "name": "abi_encode_tuple_t_uint8__to_t_uint8__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "414:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "425:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "436:4:32", - "type": "" - } - ], - "src": "348:184:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "638:76:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "648:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "660:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "671:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "656:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "656:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "648:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "690:9:32" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "701:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "683:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "683:25:32" - }, - "nodeType": "YulExpressionStatement", - "src": "683:25:32" - } - ] - }, - "name": "abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "607:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "618:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "629:4:32", - "type": "" - } - ], - "src": "537:177:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "751:95:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "768:1:32", - "type": "", - "value": "0" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "775:3:32", - "type": "", - "value": "224" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "780:10:32", - "type": "", - "value": "0x4e487b71" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "771:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "771:20:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "761:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "761:31:32" - }, - "nodeType": "YulExpressionStatement", - "src": "761:31:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "808:1:32", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "811:4:32", - "type": "", - "value": "0x41" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "801:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "801:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "801:15:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "832:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "835:4:32", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "825:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "825:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "825:15:32" - } - ] - }, - "name": "panic_error_0x41", - "nodeType": "YulFunctionDefinition", - "src": "719:127:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "897:209:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "907:19:32", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "923:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "917:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "917:9:32" - }, - "variableNames": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "907:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "935:37:32", - "value": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "957:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "965:6:32", - "type": "", - "value": "0x0240" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "953:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "953:19:32" - }, - "variables": [ - { - "name": "newFreePtr", - "nodeType": "YulTypedName", - "src": "939:10:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1047:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "1049:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "1049:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1049:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "990:10:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1010:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1014:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "1006:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1006:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1018:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "1002:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1002:18:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "987:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "987:34:32" - }, - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "1026:10:32" - }, - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1038:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "1023:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "1023:22:32" - } - ], - "functionName": { - "name": "or", - "nodeType": "YulIdentifier", - "src": "984:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "984:62:32" - }, - "nodeType": "YulIf", - "src": "981:88:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1085:2:32", - "type": "", - "value": "64" - }, - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "1089:10:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1078:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1078:22:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1078:22:32" - } - ] - }, - "name": "allocate_memory_9157", - "nodeType": "YulFunctionDefinition", - "returnVariables": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "886:6:32", - "type": "" - } - ], - "src": "851:255:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1157:209:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "1167:19:32", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1183:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "1177:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "1177:9:32" - }, - "variableNames": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1167:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1195:37:32", - "value": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1217:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1225:6:32", - "type": "", - "value": "0x0220" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1213:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1213:19:32" - }, - "variables": [ - { - "name": "newFreePtr", - "nodeType": "YulTypedName", - "src": "1199:10:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1307:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "1309:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "1309:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1309:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "1250:10:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1270:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1274:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "1266:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1266:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1278:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "1262:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1262:18:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1247:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "1247:34:32" - }, - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "1286:10:32" - }, - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1298:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "1283:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "1283:22:32" - } - ], - "functionName": { - "name": "or", - "nodeType": "YulIdentifier", - "src": "1244:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "1244:62:32" - }, - "nodeType": "YulIf", - "src": "1241:88:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1345:2:32", - "type": "", - "value": "64" - }, - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "1349:10:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1338:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1338:22:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1338:22:32" - } - ] - }, - "name": "allocate_memory_9158", - "nodeType": "YulFunctionDefinition", - "returnVariables": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "1146:6:32", - "type": "" - } - ], - "src": "1111:255:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1417:207:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "1427:19:32", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1443:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "1437:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "1437:9:32" - }, - "variableNames": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1427:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1455:35:32", - "value": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1477:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1485:4:32", - "type": "", - "value": "0x80" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1473:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1473:17:32" - }, - "variables": [ - { - "name": "newFreePtr", - "nodeType": "YulTypedName", - "src": "1459:10:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1565:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "1567:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "1567:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1567:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "1508:10:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1528:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1532:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "1524:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1524:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1536:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "1520:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1520:18:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1505:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "1505:34:32" - }, - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "1544:10:32" - }, - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1556:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "1541:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "1541:22:32" - } - ], - "functionName": { - "name": "or", - "nodeType": "YulIdentifier", - "src": "1502:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "1502:62:32" - }, - "nodeType": "YulIf", - "src": "1499:88:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1603:2:32", - "type": "", - "value": "64" - }, - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "1607:10:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1596:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1596:22:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1596:22:32" - } - ] - }, - "name": "allocate_memory_9162", - "nodeType": "YulFunctionDefinition", - "returnVariables": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "1406:6:32", - "type": "" - } - ], - "src": "1371:253:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1674:230:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "1684:19:32", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1700:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "1694:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "1694:9:32" - }, - "variableNames": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1684:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1712:58:32", - "value": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1734:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "size", - "nodeType": "YulIdentifier", - "src": "1750:4:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1756:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1746:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1746:13:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1765:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "1761:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1761:7:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "1742:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1742:27:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1730:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1730:40:32" - }, - "variables": [ - { - "name": "newFreePtr", - "nodeType": "YulTypedName", - "src": "1716:10:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1845:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "1847:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "1847:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1847:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "1788:10:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1808:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1812:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "1804:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1804:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1816:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "1800:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1800:18:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1785:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "1785:34:32" - }, - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "1824:10:32" - }, - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1836:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "1821:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "1821:22:32" - } - ], - "functionName": { - "name": "or", - "nodeType": "YulIdentifier", - "src": "1782:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "1782:62:32" - }, - "nodeType": "YulIf", - "src": "1779:88:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1883:2:32", - "type": "", - "value": "64" - }, - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "1887:10:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1876:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1876:22:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1876:22:32" - } - ] - }, - "name": "allocate_memory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "size", - "nodeType": "YulTypedName", - "src": "1654:4:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "1663:6:32", - "type": "" - } - ], - "src": "1629:275:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1958:128:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "1968:29:32", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1990:6:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "1977:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "1977:20:32" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "1968:5:32" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2064:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2073:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2076:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "2066:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2066:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2066:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2019:5:32" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2030:5:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2049:2:32", - "type": "", - "value": "96" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2053:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "2045:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2045:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2057:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "2041:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2041:18:32" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "2037:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2037:23:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "2026:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2026:35:32" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "2016:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "2016:46:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "2009:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2009:54:32" - }, - "nodeType": "YulIf", - "src": "2006:74:32" - } - ] - }, - "name": "abi_decode_bytes20", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "1937:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "1948:5:32", - "type": "" - } - ], - "src": "1909:177:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2136:86:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "2200:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2209:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2212:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "2202:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2202:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2202:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2159:5:32" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2170:5:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2185:3:32", - "type": "", - "value": "160" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2190:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "2181:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2181:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2194:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "2177:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2177:19:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "2166:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2166:31:32" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "2156:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "2156:42:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "2149:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2149:50:32" - }, - "nodeType": "YulIf", - "src": "2146:70:32" - } - ] - }, - "name": "validator_revert_address", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "2125:5:32", - "type": "" - } - ], - "src": "2091:131:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2276:85:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "2286:29:32", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "2308:6:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "2295:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "2295:20:32" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2286:5:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2349:5:32" - } - ], - "functionName": { - "name": "validator_revert_address", - "nodeType": "YulIdentifier", - "src": "2324:24:32" - }, - "nodeType": "YulFunctionCall", - "src": "2324:31:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2324:31:32" - } - ] - }, - "name": "abi_decode_address", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "2255:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "2266:5:32", - "type": "" - } - ], - "src": "2227:134:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2423:129:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "2467:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "2469:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "2469:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2469:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "2439:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2455:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2459:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "2451:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2451:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2463:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "2447:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2447:18:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "2436:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "2436:30:32" - }, - "nodeType": "YulIf", - "src": "2433:56:32" - }, - { - "nodeType": "YulAssignment", - "src": "2498:48:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "2518:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2526:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2514:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2514:15:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2535:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "2531:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2531:7:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "2510:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2510:29:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2541:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2506:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2506:40:32" - }, - "variableNames": [ - { - "name": "size", - "nodeType": "YulIdentifier", - "src": "2498:4:32" - } - ] - } - ] - }, - "name": "array_allocation_size_bytes", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "2403:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "size", - "nodeType": "YulTypedName", - "src": "2414:4:32", - "type": "" - } - ], - "src": "2366:186:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2609:410:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "2658:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2667:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2670:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "2660:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2660:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2660:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "2637:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2645:4:32", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2633:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2633:17:32" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "2652:3:32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "2629:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2629:27:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "2622:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2622:35:32" - }, - "nodeType": "YulIf", - "src": "2619:55:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2683:30:32", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "2706:6:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "2693:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "2693:20:32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "2687:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2722:63:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "2781:2:32" - } - ], - "functionName": { - "name": "array_allocation_size_bytes", - "nodeType": "YulIdentifier", - "src": "2753:27:32" - }, - "nodeType": "YulFunctionCall", - "src": "2753:31:32" - } - ], - "functionName": { - "name": "allocate_memory", - "nodeType": "YulIdentifier", - "src": "2737:15:32" - }, - "nodeType": "YulFunctionCall", - "src": "2737:48:32" - }, - "variables": [ - { - "name": "array_1", - "nodeType": "YulTypedName", - "src": "2726:7:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "array_1", - "nodeType": "YulIdentifier", - "src": "2801:7:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "2810:2:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2794:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2794:19:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2794:19:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2861:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2870:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2873:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "2863:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2863:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2863:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "2836:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "2844:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2832:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2832:15:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2849:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2828:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2828:26:32" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "2856:3:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "2825:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "2825:35:32" - }, - "nodeType": "YulIf", - "src": "2822:55:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "array_1", - "nodeType": "YulIdentifier", - "src": "2903:7:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2912:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2899:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2899:18:32" - }, - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "2923:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2931:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2919:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2919:17:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "2938:2:32" - } - ], - "functionName": { - "name": "calldatacopy", - "nodeType": "YulIdentifier", - "src": "2886:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "2886:55:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2886:55:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "array_1", - "nodeType": "YulIdentifier", - "src": "2965:7:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "2974:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2961:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2961:16:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2979:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2957:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2957:27:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2986:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2950:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2950:38:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2950:38:32" - }, - { - "nodeType": "YulAssignment", - "src": "2997:16:32", - "value": { - "name": "array_1", - "nodeType": "YulIdentifier", - "src": "3006:7:32" - }, - "variableNames": [ - { - "name": "array", - "nodeType": "YulIdentifier", - "src": "2997:5:32" - } - ] - } - ] - }, - "name": "abi_decode_bytes", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "2583:6:32", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "2591:3:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "array", - "nodeType": "YulTypedName", - "src": "2599:5:32", - "type": "" - } - ], - "src": "2557:462:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3072:115:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "3082:29:32", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "3104:6:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "3091:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "3091:20:32" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3082:5:32" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3165:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3174:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3177:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "3167:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3167:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3167:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3133:5:32" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3144:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3151:10:32", - "type": "", - "value": "0xffffffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "3140:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3140:22:32" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "3130:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "3130:33:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "3123:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3123:41:32" - }, - "nodeType": "YulIf", - "src": "3120:61:32" - } - ] - }, - "name": "abi_decode_uint32", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "3051:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "3062:5:32", - "type": "" - } - ], - "src": "3024:163:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3239:113:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "3249:29:32", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "3271:6:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "3258:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "3258:20:32" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3249:5:32" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3330:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3339:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3342:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "3332:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3332:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3332:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3300:5:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3318:1:32", - "type": "", - "value": "7" - }, - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3321:5:32" - } - ], - "functionName": { - "name": "signextend", - "nodeType": "YulIdentifier", - "src": "3307:10:32" - }, - "nodeType": "YulFunctionCall", - "src": "3307:20:32" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "3297:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "3297:31:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "3290:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3290:39:32" - }, - "nodeType": "YulIf", - "src": "3287:59:32" - } - ] - }, - "name": "abi_decode_int64", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "3218:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "3229:5:32", - "type": "" - } - ], - "src": "3192:160:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3405:111:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "3415:29:32", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "3437:6:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "3424:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "3424:20:32" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3415:5:32" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3494:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3503:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3506:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "3496:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3496:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3496:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3466:5:32" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3477:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3484:6:32", - "type": "", - "value": "0xffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "3473:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3473:18:32" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "3463:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "3463:29:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "3456:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3456:37:32" - }, - "nodeType": "YulIf", - "src": "3453:57:32" - } - ] - }, - "name": "abi_decode_uint16", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "3384:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "3395:5:32", - "type": "" - } - ], - "src": "3357:159:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3563:76:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "3617:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3626:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3629:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "3619:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3619:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3619:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3586:5:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3607:5:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "3600:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3600:13:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "3593:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3593:21:32" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "3583:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "3583:32:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "3576:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3576:40:32" - }, - "nodeType": "YulIf", - "src": "3573:60:32" - } - ] - }, - "name": "validator_revert_bool", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "3552:5:32", - "type": "" - } - ], - "src": "3521:118:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3690:82:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "3700:29:32", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "3722:6:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "3709:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "3709:20:32" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3700:5:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3760:5:32" - } - ], - "functionName": { - "name": "validator_revert_bool", - "nodeType": "YulIdentifier", - "src": "3738:21:32" - }, - "nodeType": "YulFunctionCall", - "src": "3738:28:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3738:28:32" - } - ] - }, - "name": "abi_decode_bool", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "3669:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "3680:5:32", - "type": "" - } - ], - "src": "3644:128:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3844:1938:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "3890:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3899:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3902:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "3892:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3892:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3892:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "3865:3:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3870:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "3861:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3861:19:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3882:6:32", - "type": "", - "value": "0x0240" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "3857:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3857:32:32" - }, - "nodeType": "YulIf", - "src": "3854:52:32" - }, - { - "nodeType": "YulAssignment", - "src": "3915:31:32", - "value": { - "arguments": [], - "functionName": { - "name": "allocate_memory_9157", - "nodeType": "YulIdentifier", - "src": "3924:20:32" - }, - "nodeType": "YulFunctionCall", - "src": "3924:22:32" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3915:5:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3962:5:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3988:9:32" - } - ], - "functionName": { - "name": "abi_decode_bytes20", - "nodeType": "YulIdentifier", - "src": "3969:18:32" - }, - "nodeType": "YulFunctionCall", - "src": "3969:29:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3955:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3955:44:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3955:44:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "4019:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4026:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4015:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4015:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4054:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4065:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4050:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4050:18:32" - } - ], - "functionName": { - "name": "abi_decode_address", - "nodeType": "YulIdentifier", - "src": "4031:18:32" - }, - "nodeType": "YulFunctionCall", - "src": "4031:38:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4008:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4008:62:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4008:62:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "4090:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4097:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4086:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4086:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4125:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4136:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4121:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4121:18:32" - } - ], - "functionName": { - "name": "abi_decode_address", - "nodeType": "YulIdentifier", - "src": "4102:18:32" - }, - "nodeType": "YulFunctionCall", - "src": "4102:38:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4079:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4079:62:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4079:62:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "4150:46:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4181:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4192:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4177:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4177:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "4164:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "4164:32:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "4154:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "4205:28:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4223:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4227:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "4219:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4219:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4231:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "4215:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4215:18:32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "4209:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4260:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4269:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4272:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "4262:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4262:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4262:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "4248:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "4256:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "4245:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "4245:14:32" - }, - "nodeType": "YulIf", - "src": "4242:34:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "4296:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4303:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4292:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4292:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4329:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "4340:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4325:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4325:22:32" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "4349:3:32" - } - ], - "functionName": { - "name": "abi_decode_bytes", - "nodeType": "YulIdentifier", - "src": "4308:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "4308:45:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4285:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4285:69:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4285:69:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "4374:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4381:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4370:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4370:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4410:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4421:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4406:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4406:19:32" - } - ], - "functionName": { - "name": "abi_decode_address", - "nodeType": "YulIdentifier", - "src": "4387:18:32" - }, - "nodeType": "YulFunctionCall", - "src": "4387:39:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4363:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4363:64:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4363:64:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "4436:49:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4469:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4480:3:32", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4465:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4465:19:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "4452:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "4452:33:32" - }, - "variables": [ - { - "name": "offset_1", - "nodeType": "YulTypedName", - "src": "4440:8:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4514:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4523:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4526:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "4516:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4516:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4516:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "4500:8:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "4510:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "4497:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "4497:16:32" - }, - "nodeType": "YulIf", - "src": "4494:36:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "4550:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4557:3:32", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4546:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4546:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4584:9:32" - }, - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "4595:8:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4580:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4580:24:32" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "4606:3:32" - } - ], - "functionName": { - "name": "abi_decode_bytes", - "nodeType": "YulIdentifier", - "src": "4563:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "4563:47:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4539:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4539:72:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4539:72:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "4631:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4638:3:32", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4627:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4627:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4661:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4672:3:32", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4657:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4657:19:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "4644:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "4644:33:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4620:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4620:58:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4620:58:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "4698:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4705:3:32", - "type": "", - "value": "224" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4694:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4694:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4728:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4739:3:32", - "type": "", - "value": "224" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4724:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4724:19:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "4711:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "4711:33:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4687:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4687:58:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4687:58:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "4754:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4764:3:32", - "type": "", - "value": "256" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "4758:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "4787:5:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "4794:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4783:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4783:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4822:9:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "4833:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4818:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4818:18:32" - } - ], - "functionName": { - "name": "abi_decode_address", - "nodeType": "YulIdentifier", - "src": "4799:18:32" - }, - "nodeType": "YulFunctionCall", - "src": "4799:38:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4776:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4776:62:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4776:62:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "4847:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4857:3:32", - "type": "", - "value": "288" - }, - "variables": [ - { - "name": "_3", - "nodeType": "YulTypedName", - "src": "4851:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "4869:48:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4902:9:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "4913:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4898:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4898:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "4885:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "4885:32:32" - }, - "variables": [ - { - "name": "offset_2", - "nodeType": "YulTypedName", - "src": "4873:8:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4946:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4955:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4958:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "4948:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4948:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4948:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_2", - "nodeType": "YulIdentifier", - "src": "4932:8:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "4942:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "4929:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "4929:16:32" - }, - "nodeType": "YulIf", - "src": "4926:36:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "4982:5:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "4989:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4978:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4978:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5015:9:32" - }, - { - "name": "offset_2", - "nodeType": "YulIdentifier", - "src": "5026:8:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5011:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5011:24:32" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "5037:3:32" - } - ], - "functionName": { - "name": "abi_decode_bytes", - "nodeType": "YulIdentifier", - "src": "4994:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "4994:47:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4971:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4971:71:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4971:71:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "5051:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5061:3:32", - "type": "", - "value": "320" - }, - "variables": [ - { - "name": "_4", - "nodeType": "YulTypedName", - "src": "5055:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "5084:5:32" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "5091:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5080:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5080:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5118:9:32" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "5129:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5114:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5114:18:32" - } - ], - "functionName": { - "name": "abi_decode_uint32", - "nodeType": "YulIdentifier", - "src": "5096:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "5096:37:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5073:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "5073:61:32" - }, - "nodeType": "YulExpressionStatement", - "src": "5073:61:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "5143:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5153:3:32", - "type": "", - "value": "352" - }, - "variables": [ - { - "name": "_5", - "nodeType": "YulTypedName", - "src": "5147:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "5176:5:32" - }, - { - "name": "_5", - "nodeType": "YulIdentifier", - "src": "5183:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5172:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5172:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5209:9:32" - }, - { - "name": "_5", - "nodeType": "YulIdentifier", - "src": "5220:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5205:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5205:18:32" - } - ], - "functionName": { - "name": "abi_decode_int64", - "nodeType": "YulIdentifier", - "src": "5188:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "5188:36:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5165:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "5165:60:32" - }, - "nodeType": "YulExpressionStatement", - "src": "5165:60:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "5234:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5244:3:32", - "type": "", - "value": "384" - }, - "variables": [ - { - "name": "_6", - "nodeType": "YulTypedName", - "src": "5238:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "5267:5:32" - }, - { - "name": "_6", - "nodeType": "YulIdentifier", - "src": "5274:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5263:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5263:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5296:9:32" - }, - { - "name": "_6", - "nodeType": "YulIdentifier", - "src": "5307:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5292:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5292:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "5279:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "5279:32:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5256:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "5256:56:32" - }, - "nodeType": "YulExpressionStatement", - "src": "5256:56:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "5321:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5331:3:32", - "type": "", - "value": "416" - }, - "variables": [ - { - "name": "_7", - "nodeType": "YulTypedName", - "src": "5325:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "5354:5:32" - }, - { - "name": "_7", - "nodeType": "YulIdentifier", - "src": "5361:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5350:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5350:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5388:9:32" - }, - { - "name": "_7", - "nodeType": "YulIdentifier", - "src": "5399:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5384:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5384:18:32" - } - ], - "functionName": { - "name": "abi_decode_uint32", - "nodeType": "YulIdentifier", - "src": "5366:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "5366:37:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5343:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "5343:61:32" - }, - "nodeType": "YulExpressionStatement", - "src": "5343:61:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "5413:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5423:3:32", - "type": "", - "value": "448" - }, - "variables": [ - { - "name": "_8", - "nodeType": "YulTypedName", - "src": "5417:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "5446:5:32" - }, - { - "name": "_8", - "nodeType": "YulIdentifier", - "src": "5453:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5442:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5442:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5480:9:32" - }, - { - "name": "_8", - "nodeType": "YulIdentifier", - "src": "5491:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5476:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5476:18:32" - } - ], - "functionName": { - "name": "abi_decode_uint32", - "nodeType": "YulIdentifier", - "src": "5458:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "5458:37:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5435:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "5435:61:32" - }, - "nodeType": "YulExpressionStatement", - "src": "5435:61:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "5505:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5515:3:32", - "type": "", - "value": "480" - }, - "variables": [ - { - "name": "_9", - "nodeType": "YulTypedName", - "src": "5509:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "5538:5:32" - }, - { - "name": "_9", - "nodeType": "YulIdentifier", - "src": "5545:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5534:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5534:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5572:9:32" - }, - { - "name": "_9", - "nodeType": "YulIdentifier", - "src": "5583:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5568:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5568:18:32" - } - ], - "functionName": { - "name": "abi_decode_uint32", - "nodeType": "YulIdentifier", - "src": "5550:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "5550:37:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5527:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "5527:61:32" - }, - "nodeType": "YulExpressionStatement", - "src": "5527:61:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "5597:14:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5608:3:32", - "type": "", - "value": "512" - }, - "variables": [ - { - "name": "_10", - "nodeType": "YulTypedName", - "src": "5601:3:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "5631:5:32" - }, - { - "name": "_10", - "nodeType": "YulIdentifier", - "src": "5638:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5627:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5627:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5666:9:32" - }, - { - "name": "_10", - "nodeType": "YulIdentifier", - "src": "5677:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5662:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5662:19:32" - } - ], - "functionName": { - "name": "abi_decode_uint16", - "nodeType": "YulIdentifier", - "src": "5644:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "5644:38:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5620:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "5620:63:32" - }, - "nodeType": "YulExpressionStatement", - "src": "5620:63:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "5692:14:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5703:3:32", - "type": "", - "value": "544" - }, - "variables": [ - { - "name": "_11", - "nodeType": "YulTypedName", - "src": "5696:3:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "5726:5:32" - }, - { - "name": "_11", - "nodeType": "YulIdentifier", - "src": "5733:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5722:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5722:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5759:9:32" - }, - { - "name": "_11", - "nodeType": "YulIdentifier", - "src": "5770:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5755:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5755:19:32" - } - ], - "functionName": { - "name": "abi_decode_bool", - "nodeType": "YulIdentifier", - "src": "5739:15:32" - }, - "nodeType": "YulFunctionCall", - "src": "5739:36:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5715:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "5715:61:32" - }, - "nodeType": "YulExpressionStatement", - "src": "5715:61:32" - } - ] - }, - "name": "abi_decode_struct_PeginQuote", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "3815:9:32", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "3826:3:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "3834:5:32", - "type": "" - } - ], - "src": "3777:2005:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5886:253:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "5932:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5941:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5944:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "5934:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "5934:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "5934:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "5907:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5916:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "5903:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5903:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5928:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "5899:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5899:32:32" - }, - "nodeType": "YulIf", - "src": "5896:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "5957:37:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5984:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "5971:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "5971:23:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "5961:6:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6037:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6046:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6049:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "6039:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "6039:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "6039:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "6009:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6025:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6029:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "6021:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6021:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6033:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "6017:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6017:18:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "6006:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "6006:30:32" - }, - "nodeType": "YulIf", - "src": "6003:50:32" - }, - { - "nodeType": "YulAssignment", - "src": "6062:71:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6105:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "6116:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6101:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6101:22:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "6125:7:32" - } - ], - "functionName": { - "name": "abi_decode_struct_PeginQuote", - "nodeType": "YulIdentifier", - "src": "6072:28:32" - }, - "nodeType": "YulFunctionCall", - "src": "6072:61:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "6062:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_struct$_PeginQuote_$10962_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "5852:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "5863:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "5875:6:32", - "type": "" - } - ], - "src": "5787:352:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6245:76:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "6255:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6267:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6278:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6263:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6263:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "6255:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6297:9:32" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "6308:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "6290:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "6290:25:32" - }, - "nodeType": "YulExpressionStatement", - "src": "6290:25:32" - } - ] - }, - "name": "abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "6214:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "6225:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "6236:4:32", - "type": "" - } - ], - "src": "6144:177:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6396:110:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "6442:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6451:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6454:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "6444:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "6444:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "6444:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "6417:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6426:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "6413:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6413:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6438:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "6409:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6409:32:32" - }, - "nodeType": "YulIf", - "src": "6406:52:32" - }, - { - "nodeType": "YulAssignment", - "src": "6467:33:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6490:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "6477:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "6477:23:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "6467:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "6362:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "6373:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "6385:6:32", - "type": "" - } - ], - "src": "6326:180:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6659:722:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "6706:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6715:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6718:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "6708:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "6708:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "6708:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "6680:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6689:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "6676:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6676:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6701:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "6672:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6672:33:32" - }, - "nodeType": "YulIf", - "src": "6669:53:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "6731:37:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6758:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "6745:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "6745:23:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "6735:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "6777:28:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6795:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6799:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "6791:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6791:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6803:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "6787:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6787:18:32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "6781:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6832:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6841:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6844:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "6834:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "6834:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "6834:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "6820:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "6828:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "6817:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "6817:14:32" - }, - "nodeType": "YulIf", - "src": "6814:34:32" - }, - { - "nodeType": "YulAssignment", - "src": "6857:59:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6888:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "6899:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6884:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6884:22:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "6908:7:32" - } - ], - "functionName": { - "name": "abi_decode_bytes", - "nodeType": "YulIdentifier", - "src": "6867:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "6867:49:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "6857:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "6925:48:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6958:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6969:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6954:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6954:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "6941:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "6941:32:32" - }, - "variables": [ - { - "name": "offset_1", - "nodeType": "YulTypedName", - "src": "6929:8:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7002:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7011:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7014:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "7004:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "7004:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "7004:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "6988:8:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "6998:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "6985:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "6985:16:32" - }, - "nodeType": "YulIf", - "src": "6982:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "7027:61:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7058:9:32" - }, - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "7069:8:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7054:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7054:24:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "7080:7:32" - } - ], - "functionName": { - "name": "abi_decode_bytes", - "nodeType": "YulIdentifier", - "src": "7037:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "7037:51:32" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "7027:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "7097:45:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7127:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7138:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7123:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7123:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "7110:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "7110:32:32" - }, - "variables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "7101:5:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "7173:5:32" - } - ], - "functionName": { - "name": "validator_revert_bool", - "nodeType": "YulIdentifier", - "src": "7151:21:32" - }, - "nodeType": "YulFunctionCall", - "src": "7151:28:32" - }, - "nodeType": "YulExpressionStatement", - "src": "7151:28:32" - }, - { - "nodeType": "YulAssignment", - "src": "7188:15:32", - "value": { - "name": "value", - "nodeType": "YulIdentifier", - "src": "7198:5:32" - }, - "variableNames": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "7188:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "7212:48:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7245:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7256:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7241:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7241:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "7228:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "7228:32:32" - }, - "variables": [ - { - "name": "offset_2", - "nodeType": "YulTypedName", - "src": "7216:8:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7289:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7298:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7301:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "7291:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "7291:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "7291:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_2", - "nodeType": "YulIdentifier", - "src": "7275:8:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "7285:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "7272:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "7272:16:32" - }, - "nodeType": "YulIf", - "src": "7269:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "7314:61:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7345:9:32" - }, - { - "name": "offset_2", - "nodeType": "YulIdentifier", - "src": "7356:8:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7341:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7341:24:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "7367:7:32" - } - ], - "functionName": { - "name": "abi_decode_bytes", - "nodeType": "YulIdentifier", - "src": "7324:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "7324:51:32" - }, - "variableNames": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "7314:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_string_memory_ptrt_string_memory_ptrt_boolt_string_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "6601:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "6612:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "6624:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "6632:6:32", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "6640:6:32", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "6648:6:32", - "type": "" - } - ], - "src": "6511:870:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7483:91:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "7493:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7505:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7516:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7501:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7501:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "7493:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7535:9:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7557:1:32", - "type": "", - "value": "1" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "7560:6:32" - } - ], - "functionName": { - "name": "signextend", - "nodeType": "YulIdentifier", - "src": "7546:10:32" - }, - "nodeType": "YulFunctionCall", - "src": "7546:21:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "7528:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "7528:40:32" - }, - "nodeType": "YulExpressionStatement", - "src": "7528:40:32" - } - ] - }, - "name": "abi_encode_tuple_t_int16__to_t_int16__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "7452:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "7463:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "7474:4:32", - "type": "" - } - ], - "src": "7386:188:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7771:619:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "7818:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7827:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7830:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "7820:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "7820:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "7820:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "7792:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7801:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "7788:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7788:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7813:3:32", - "type": "", - "value": "256" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "7784:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7784:33:32" - }, - "nodeType": "YulIf", - "src": "7781:53:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "7843:36:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7869:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "7856:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "7856:23:32" - }, - "variables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "7847:5:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "7913:5:32" - } - ], - "functionName": { - "name": "validator_revert_address", - "nodeType": "YulIdentifier", - "src": "7888:24:32" - }, - "nodeType": "YulFunctionCall", - "src": "7888:31:32" - }, - "nodeType": "YulExpressionStatement", - "src": "7888:31:32" - }, - { - "nodeType": "YulAssignment", - "src": "7928:15:32", - "value": { - "name": "value", - "nodeType": "YulIdentifier", - "src": "7938:5:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "7928:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "7952:42:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7979:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7990:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7975:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7975:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "7962:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "7962:32:32" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "7952:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "8003:42:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8030:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8041:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8026:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8026:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "8013:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "8013:32:32" - }, - "variableNames": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "8003:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "8054:47:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8086:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8097:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8082:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8082:18:32" - } - ], - "functionName": { - "name": "abi_decode_uint32", - "nodeType": "YulIdentifier", - "src": "8064:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "8064:37:32" - }, - "variableNames": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "8054:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "8110:48:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8142:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8153:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8138:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8138:19:32" - } - ], - "functionName": { - "name": "abi_decode_uint32", - "nodeType": "YulIdentifier", - "src": "8120:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "8120:38:32" - }, - "variableNames": [ - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "8110:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "8167:43:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8194:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8205:3:32", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8190:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8190:19:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "8177:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "8177:33:32" - }, - "variableNames": [ - { - "name": "value5", - "nodeType": "YulIdentifier", - "src": "8167:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "8219:43:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8246:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8257:3:32", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8242:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8242:19:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "8229:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "8229:33:32" - }, - "variableNames": [ - { - "name": "value6", - "nodeType": "YulIdentifier", - "src": "8219:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "8271:48:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8303:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8314:3:32", - "type": "", - "value": "224" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8299:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8299:19:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "8286:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "8286:33:32" - }, - "variables": [ - { - "name": "value_1", - "nodeType": "YulTypedName", - "src": "8275:7:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value_1", - "nodeType": "YulIdentifier", - "src": "8350:7:32" - } - ], - "functionName": { - "name": "validator_revert_bool", - "nodeType": "YulIdentifier", - "src": "8328:21:32" - }, - "nodeType": "YulFunctionCall", - "src": "8328:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "8328:30:32" - }, - { - "nodeType": "YulAssignment", - "src": "8367:17:32", - "value": { - "name": "value_1", - "nodeType": "YulIdentifier", - "src": "8377:7:32" - }, - "variableNames": [ - { - "name": "value7", - "nodeType": "YulIdentifier", - "src": "8367:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_address_payablet_uint256t_uint256t_uint32t_uint32t_uint256t_uint256t_bool", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "7681:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "7692:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "7704:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "7712:6:32", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "7720:6:32", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "7728:6:32", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "7736:6:32", - "type": "" - }, - { - "name": "value5", - "nodeType": "YulTypedName", - "src": "7744:6:32", - "type": "" - }, - { - "name": "value6", - "nodeType": "YulTypedName", - "src": "7752:6:32", - "type": "" - }, - { - "name": "value7", - "nodeType": "YulTypedName", - "src": "7760:6:32", - "type": "" - } - ], - "src": "7579:811:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8465:177:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "8511:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8520:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8523:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "8513:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "8513:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "8513:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "8486:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8495:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "8482:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8482:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8507:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "8478:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8478:32:32" - }, - "nodeType": "YulIf", - "src": "8475:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "8536:36:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8562:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "8549:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "8549:23:32" - }, - "variables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "8540:5:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "8606:5:32" - } - ], - "functionName": { - "name": "validator_revert_address", - "nodeType": "YulIdentifier", - "src": "8581:24:32" - }, - "nodeType": "YulFunctionCall", - "src": "8581:31:32" - }, - "nodeType": "YulExpressionStatement", - "src": "8581:31:32" - }, - { - "nodeType": "YulAssignment", - "src": "8621:15:32", - "value": { - "name": "value", - "nodeType": "YulIdentifier", - "src": "8631:5:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "8621:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_address", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "8431:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "8442:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "8454:6:32", - "type": "" - } - ], - "src": "8395:247:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8688:50:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "8705:3:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "8724:5:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "8717:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "8717:13:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "8710:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "8710:21:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "8698:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "8698:34:32" - }, - "nodeType": "YulExpressionStatement", - "src": "8698:34:32" - } - ] - }, - "name": "abi_encode_bool", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "8672:5:32", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "8679:3:32", - "type": "" - } - ], - "src": "8647:91:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8838:92:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "8848:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8860:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8871:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8856:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8856:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "8848:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8890:9:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "8915:6:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "8908:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "8908:14:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "8901:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "8901:22:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "8883:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "8883:41:32" - }, - "nodeType": "YulExpressionStatement", - "src": "8883:41:32" - } - ] - }, - "name": "abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "8807:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "8818:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "8829:4:32", - "type": "" - } - ], - "src": "8743:187:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9005:110:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "9051:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9060:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9063:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "9053:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "9053:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "9053:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "9026:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9035:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "9022:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9022:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9047:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "9018:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9018:32:32" - }, - "nodeType": "YulIf", - "src": "9015:52:32" - }, - { - "nodeType": "YulAssignment", - "src": "9076:33:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9099:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "9086:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "9086:23:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "9076:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bytes32", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "8971:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "8982:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "8994:6:32", - "type": "" - } - ], - "src": "8935:180:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9189:114:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "9233:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "9235:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "9235:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "9235:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "9205:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9221:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9225:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "9217:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9217:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9229:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "9213:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9213:18:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "9202:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "9202:30:32" - }, - "nodeType": "YulIf", - "src": "9199:56:32" - }, - { - "nodeType": "YulAssignment", - "src": "9264:33:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9280:1:32", - "type": "", - "value": "5" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "9283:6:32" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "9276:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9276:14:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9292:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9272:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9272:25:32" - }, - "variableNames": [ - { - "name": "size", - "nodeType": "YulIdentifier", - "src": "9264:4:32" - } - ] - } - ] - }, - "name": "array_allocation_size_array_uint256_dyn", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "9169:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "size", - "nodeType": "YulTypedName", - "src": "9180:4:32", - "type": "" - } - ], - "src": "9120:183:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9403:796:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "9413:12:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9423:2:32", - "type": "", - "value": "32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "9417:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9470:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9479:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9482:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "9472:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "9472:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "9472:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "9445:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9454:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "9441:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9441:23:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "9466:2:32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "9437:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9437:32:32" - }, - "nodeType": "YulIf", - "src": "9434:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "9495:37:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9522:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "9509:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "9509:23:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "9499:6:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9575:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9584:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9587:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "9577:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "9577:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "9577:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "9547:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9563:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9567:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "9559:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9559:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9571:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "9555:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9555:18:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "9544:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "9544:30:32" - }, - "nodeType": "YulIf", - "src": "9541:50:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "9600:32:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9614:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "9625:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9610:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9610:22:32" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "9604:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9680:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9689:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9692:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "9682:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "9682:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "9682:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "9659:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9663:4:32", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9655:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9655:13:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "9670:7:32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "9651:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9651:27:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "9644:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "9644:35:32" - }, - "nodeType": "YulIf", - "src": "9641:55:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "9705:26:32", - "value": { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "9728:2:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "9715:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "9715:16:32" - }, - "variables": [ - { - "name": "_3", - "nodeType": "YulTypedName", - "src": "9709:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "9740:71:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "9807:2:32" - } - ], - "functionName": { - "name": "array_allocation_size_array_uint256_dyn", - "nodeType": "YulIdentifier", - "src": "9767:39:32" - }, - "nodeType": "YulFunctionCall", - "src": "9767:43:32" - } - ], - "functionName": { - "name": "allocate_memory", - "nodeType": "YulIdentifier", - "src": "9751:15:32" - }, - "nodeType": "YulFunctionCall", - "src": "9751:60:32" - }, - "variables": [ - { - "name": "dst", - "nodeType": "YulTypedName", - "src": "9744:3:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "9820:16:32", - "value": { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "9833:3:32" - }, - "variables": [ - { - "name": "dst_1", - "nodeType": "YulTypedName", - "src": "9824:5:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "9852:3:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "9857:2:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "9845:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "9845:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "9845:15:32" - }, - { - "nodeType": "YulAssignment", - "src": "9869:19:32", - "value": { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "9880:3:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "9885:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9876:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9876:12:32" - }, - "variableNames": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "9869:3:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "9897:42:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "9919:2:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9927:1:32", - "type": "", - "value": "5" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "9930:2:32" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "9923:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9923:10:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9915:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9915:19:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "9936:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9911:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9911:28:32" - }, - "variables": [ - { - "name": "srcEnd", - "nodeType": "YulTypedName", - "src": "9901:6:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9971:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9980:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9983:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "9973:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "9973:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "9973:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "srcEnd", - "nodeType": "YulIdentifier", - "src": "9954:6:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "9962:7:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "9951:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "9951:19:32" - }, - "nodeType": "YulIf", - "src": "9948:39:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "9996:22:32", - "value": { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "10011:2:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "10015:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10007:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10007:11:32" - }, - "variables": [ - { - "name": "src", - "nodeType": "YulTypedName", - "src": "10000:3:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10083:86:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "10104:3:32" - }, - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "10122:3:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "10109:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "10109:17:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "10097:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "10097:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "10097:30:32" - }, - { - "nodeType": "YulAssignment", - "src": "10140:19:32", - "value": { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "10151:3:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "10156:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10147:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10147:12:32" - }, - "variableNames": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "10140:3:32" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "10038:3:32" - }, - { - "name": "srcEnd", - "nodeType": "YulIdentifier", - "src": "10043:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "10035:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "10035:15:32" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "10051:23:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "10053:19:32", - "value": { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "10064:3:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "10069:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10060:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10060:12:32" - }, - "variableNames": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "10053:3:32" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "10031:3:32", - "statements": [] - }, - "src": "10027:142:32" - }, - { - "nodeType": "YulAssignment", - "src": "10178:15:32", - "value": { - "name": "dst_1", - "nodeType": "YulIdentifier", - "src": "10188:5:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "10178:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_array$_t_uint256_$dyn_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "9369:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "9380:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "9392:6:32", - "type": "" - } - ], - "src": "9308:891:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10248:60:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "10265:3:32" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "10274:5:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10289:3:32", - "type": "", - "value": "160" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10294:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "10285:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10285:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10298:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "10281:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10281:19:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "10270:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10270:31:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "10258:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "10258:44:32" - }, - "nodeType": "YulExpressionStatement", - "src": "10258:44:32" - } - ] - }, - "name": "abi_encode_address", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "10232:5:32", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "10239:3:32", - "type": "" - } - ], - "src": "10204:104:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10379:184:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "10389:10:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10398:1:32", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "i", - "nodeType": "YulTypedName", - "src": "10393:1:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10458:63:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "10483:3:32" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "10488:1:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10479:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10479:11:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "10502:3:32" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "10507:1:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10498:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10498:11:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "10492:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "10492:18:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "10472:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "10472:39:32" - }, - "nodeType": "YulExpressionStatement", - "src": "10472:39:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "10419:1:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "10422:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "10416:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "10416:13:32" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "10430:19:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "10432:15:32", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "10441:1:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10444:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10437:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10437:10:32" - }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "10432:1:32" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "10412:3:32", - "statements": [] - }, - "src": "10408:113:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "10541:3:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "10546:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10537:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10537:16:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10555:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "10530:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "10530:27:32" - }, - "nodeType": "YulExpressionStatement", - "src": "10530:27:32" - } - ] - }, - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "src", - "nodeType": "YulTypedName", - "src": "10357:3:32", - "type": "" - }, - { - "name": "dst", - "nodeType": "YulTypedName", - "src": "10362:3:32", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "10367:6:32", - "type": "" - } - ], - "src": "10313:250:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10618:221:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "10628:26:32", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "10648:5:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "10642:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "10642:12:32" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "10632:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "10670:3:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "10675:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "10663:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "10663:19:32" - }, - "nodeType": "YulExpressionStatement", - "src": "10663:19:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "10730:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10737:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10726:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10726:16:32" - }, - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "10748:3:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10753:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10744:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10744:14:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "10760:6:32" - } - ], - "functionName": { - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulIdentifier", - "src": "10691:34:32" - }, - "nodeType": "YulFunctionCall", - "src": "10691:76:32" - }, - "nodeType": "YulExpressionStatement", - "src": "10691:76:32" - }, - { - "nodeType": "YulAssignment", - "src": "10776:57:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "10791:3:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "10804:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10812:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10800:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10800:15:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10821:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "10817:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10817:7:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "10796:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10796:29:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10787:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10787:39:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10828:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10783:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10783:50:32" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "10776:3:32" - } - ] - } - ] - }, - "name": "abi_encode_string", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "10595:5:32", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "10602:3:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "10610:3:32", - "type": "" - } - ], - "src": "10568:271:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "11065:1444:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "11075:12:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11085:2:32", - "type": "", - "value": "32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "11079:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "11096:32:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11114:9:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "11125:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11110:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11110:18:32" - }, - "variables": [ - { - "name": "tail_1", - "nodeType": "YulTypedName", - "src": "11100:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11144:9:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "11155:2:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "11137:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "11137:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "11137:21:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "11167:17:32", - "value": { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "11178:6:32" - }, - "variables": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "11171:3:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "11193:27:32", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "11213:6:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "11207:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "11207:13:32" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "11197:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "11236:6:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "11244:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "11229:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "11229:22:32" - }, - "nodeType": "YulExpressionStatement", - "src": "11229:22:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "11260:12:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11270:2:32", - "type": "", - "value": "64" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "11264:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "11281:25:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11292:9:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "11303:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11288:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11288:18:32" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "11281:3:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "11315:53:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11337:9:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11352:1:32", - "type": "", - "value": "5" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "11355:6:32" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "11348:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11348:14:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11333:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11333:30:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "11365:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11329:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11329:39:32" - }, - "variables": [ - { - "name": "tail_2", - "nodeType": "YulTypedName", - "src": "11319:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "11377:29:32", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "11395:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "11403:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11391:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11391:15:32" - }, - "variables": [ - { - "name": "srcPtr", - "nodeType": "YulTypedName", - "src": "11381:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "11415:10:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11424:1:32", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "i", - "nodeType": "YulTypedName", - "src": "11419:1:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "11483:997:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "11504:3:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "11517:6:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11525:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "11513:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11513:22:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11541:2:32", - "type": "", - "value": "63" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "11537:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11537:7:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11509:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11509:36:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "11497:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "11497:49:32" - }, - "nodeType": "YulExpressionStatement", - "src": "11497:49:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "11559:23:32", - "value": { - "arguments": [ - { - "name": "srcPtr", - "nodeType": "YulIdentifier", - "src": "11575:6:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "11569:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "11569:13:32" - }, - "variables": [ - { - "name": "_3", - "nodeType": "YulTypedName", - "src": "11563:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "11595:14:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11605:4:32", - "type": "", - "value": "0xc0" - }, - "variables": [ - { - "name": "_4", - "nodeType": "YulTypedName", - "src": "11599:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "11629:6:32" - }, - { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "11643:2:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "11637:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "11637:9:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "11622:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "11622:25:32" - }, - "nodeType": "YulExpressionStatement", - "src": "11622:25:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "11671:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "11679:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11667:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11667:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "11698:2:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "11702:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11694:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11694:11:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "11688:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "11688:18:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11716:3:32", - "type": "", - "value": "160" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11721:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "11712:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11712:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11725:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "11708:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11708:19:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "11684:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11684:44:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "11660:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "11660:69:32" - }, - "nodeType": "YulExpressionStatement", - "src": "11660:69:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "11742:38:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "11772:2:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "11776:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11768:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11768:11:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "11762:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "11762:18:32" - }, - "variables": [ - { - "name": "memberValue0", - "nodeType": "YulTypedName", - "src": "11746:12:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "11804:6:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "11812:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11800:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11800:15:32" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "11817:2:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "11793:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "11793:27:32" - }, - "nodeType": "YulExpressionStatement", - "src": "11793:27:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "11833:62:32", - "value": { - "arguments": [ - { - "name": "memberValue0", - "nodeType": "YulIdentifier", - "src": "11865:12:32" - }, - { - "arguments": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "11883:6:32" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "11891:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11879:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11879:15:32" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "11847:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "11847:48:32" - }, - "variables": [ - { - "name": "tail_3", - "nodeType": "YulTypedName", - "src": "11837:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "11908:14:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11918:4:32", - "type": "", - "value": "0x60" - }, - "variables": [ - { - "name": "_5", - "nodeType": "YulTypedName", - "src": "11912:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "11935:40:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "11967:2:32" - }, - { - "name": "_5", - "nodeType": "YulIdentifier", - "src": "11971:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11963:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11963:11:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "11957:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "11957:18:32" - }, - "variables": [ - { - "name": "memberValue0_1", - "nodeType": "YulTypedName", - "src": "11939:14:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "11999:6:32" - }, - { - "name": "_5", - "nodeType": "YulIdentifier", - "src": "12007:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11995:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11995:15:32" - }, - { - "arguments": [ - { - "name": "tail_3", - "nodeType": "YulIdentifier", - "src": "12016:6:32" - }, - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "12024:6:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "12012:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12012:19:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "11988:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "11988:44:32" - }, - "nodeType": "YulExpressionStatement", - "src": "11988:44:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "12045:55:32", - "value": { - "arguments": [ - { - "name": "memberValue0_1", - "nodeType": "YulIdentifier", - "src": "12077:14:32" - }, - { - "name": "tail_3", - "nodeType": "YulIdentifier", - "src": "12093:6:32" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "12059:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "12059:41:32" - }, - "variables": [ - { - "name": "tail_4", - "nodeType": "YulTypedName", - "src": "12049:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "12113:14:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12123:4:32", - "type": "", - "value": "0x80" - }, - "variables": [ - { - "name": "_6", - "nodeType": "YulTypedName", - "src": "12117:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "12151:6:32" - }, - { - "name": "_6", - "nodeType": "YulIdentifier", - "src": "12159:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12147:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12147:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "12188:2:32" - }, - { - "name": "_6", - "nodeType": "YulIdentifier", - "src": "12192:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12184:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12184:11:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "12178:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "12178:18:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "12171:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "12171:26:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "12164:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "12164:34:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12140:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "12140:59:32" - }, - "nodeType": "YulExpressionStatement", - "src": "12140:59:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "12212:14:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12222:4:32", - "type": "", - "value": "0xa0" - }, - "variables": [ - { - "name": "_7", - "nodeType": "YulTypedName", - "src": "12216:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "12239:40:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "12271:2:32" - }, - { - "name": "_7", - "nodeType": "YulIdentifier", - "src": "12275:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12267:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12267:11:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "12261:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "12261:18:32" - }, - "variables": [ - { - "name": "memberValue0_2", - "nodeType": "YulTypedName", - "src": "12243:14:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "12303:6:32" - }, - { - "name": "_7", - "nodeType": "YulIdentifier", - "src": "12311:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12299:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12299:15:32" - }, - { - "arguments": [ - { - "name": "tail_4", - "nodeType": "YulIdentifier", - "src": "12320:6:32" - }, - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "12328:6:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "12316:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12316:19:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12292:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "12292:44:32" - }, - "nodeType": "YulExpressionStatement", - "src": "12292:44:32" - }, - { - "nodeType": "YulAssignment", - "src": "12349:51:32", - "value": { - "arguments": [ - { - "name": "memberValue0_2", - "nodeType": "YulIdentifier", - "src": "12377:14:32" - }, - { - "name": "tail_4", - "nodeType": "YulIdentifier", - "src": "12393:6:32" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "12359:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "12359:41:32" - }, - "variableNames": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "12349:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "12413:25:32", - "value": { - "arguments": [ - { - "name": "srcPtr", - "nodeType": "YulIdentifier", - "src": "12427:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "12435:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12423:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12423:15:32" - }, - "variableNames": [ - { - "name": "srcPtr", - "nodeType": "YulIdentifier", - "src": "12413:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "12451:19:32", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "12462:3:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "12467:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12458:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12458:12:32" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "12451:3:32" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "11445:1:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "11448:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "11442:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "11442:13:32" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "11456:18:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "11458:14:32", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "11467:1:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11470:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11463:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11463:9:32" - }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "11458:1:32" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "11438:3:32", - "statements": [] - }, - "src": "11434:1046:32" - }, - { - "nodeType": "YulAssignment", - "src": "12489:14:32", - "value": { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "12497:6:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "12489:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_array$_t_struct$_LiquidityProvider_$5134_memory_ptr_$dyn_memory_ptr__to_t_array$_t_struct$_LiquidityProvider_$5134_memory_ptr_$dyn_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "11034:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "11045:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "11056:4:32", - "type": "" - } - ], - "src": "10844:1665:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12582:1843:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "12628:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12637:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12640:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "12630:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "12630:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "12630:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "12603:3:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12608:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "12599:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12599:19:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12620:6:32", - "type": "", - "value": "0x0220" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "12595:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12595:32:32" - }, - "nodeType": "YulIf", - "src": "12592:52:32" - }, - { - "nodeType": "YulAssignment", - "src": "12653:31:32", - "value": { - "arguments": [], - "functionName": { - "name": "allocate_memory_9158", - "nodeType": "YulIdentifier", - "src": "12662:20:32" - }, - "nodeType": "YulFunctionCall", - "src": "12662:22:32" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "12653:5:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "12700:5:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12726:9:32" - } - ], - "functionName": { - "name": "abi_decode_address", - "nodeType": "YulIdentifier", - "src": "12707:18:32" - }, - "nodeType": "YulFunctionCall", - "src": "12707:29:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12693:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "12693:44:32" - }, - "nodeType": "YulExpressionStatement", - "src": "12693:44:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "12757:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12764:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12753:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12753:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12792:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12803:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12788:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12788:18:32" - } - ], - "functionName": { - "name": "abi_decode_address", - "nodeType": "YulIdentifier", - "src": "12769:18:32" - }, - "nodeType": "YulFunctionCall", - "src": "12769:38:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12746:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "12746:62:32" - }, - "nodeType": "YulExpressionStatement", - "src": "12746:62:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "12817:46:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12848:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12859:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12844:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12844:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "12831:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "12831:32:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "12821:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "12872:28:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12890:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12894:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "12886:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12886:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12898:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "12882:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12882:18:32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "12876:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12927:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12936:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12939:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "12929:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "12929:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "12929:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "12915:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "12923:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "12912:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "12912:14:32" - }, - "nodeType": "YulIf", - "src": "12909:34:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "12963:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12970:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12959:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12959:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12996:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "13007:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12992:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12992:22:32" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "13016:3:32" - } - ], - "functionName": { - "name": "abi_decode_bytes", - "nodeType": "YulIdentifier", - "src": "12975:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "12975:45:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12952:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "12952:69:32" - }, - "nodeType": "YulExpressionStatement", - "src": "12952:69:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "13041:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13048:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13037:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13037:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "13076:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13087:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13072:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13072:18:32" - } - ], - "functionName": { - "name": "abi_decode_address", - "nodeType": "YulIdentifier", - "src": "13053:18:32" - }, - "nodeType": "YulFunctionCall", - "src": "13053:38:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13030:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "13030:62:32" - }, - "nodeType": "YulExpressionStatement", - "src": "13030:62:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "13101:49:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "13134:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13145:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13130:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13130:19:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "13117:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "13117:33:32" - }, - "variables": [ - { - "name": "offset_1", - "nodeType": "YulTypedName", - "src": "13105:8:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "13179:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13188:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13191:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "13181:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "13181:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "13181:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "13165:8:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "13175:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "13162:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "13162:16:32" - }, - "nodeType": "YulIf", - "src": "13159:36:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "13215:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13222:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13211:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13211:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "13249:9:32" - }, - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "13260:8:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13245:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13245:24:32" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "13271:3:32" - } - ], - "functionName": { - "name": "abi_decode_bytes", - "nodeType": "YulIdentifier", - "src": "13228:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "13228:47:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13204:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "13204:72:32" - }, - "nodeType": "YulExpressionStatement", - "src": "13204:72:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "13296:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13303:3:32", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13292:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13292:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "13326:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13337:3:32", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13322:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13322:19:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "13309:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "13309:33:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13285:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "13285:58:32" - }, - "nodeType": "YulExpressionStatement", - "src": "13285:58:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "13363:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13370:3:32", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13359:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13359:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "13393:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13404:3:32", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13389:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13389:19:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "13376:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "13376:33:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13352:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "13352:58:32" - }, - "nodeType": "YulExpressionStatement", - "src": "13352:58:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "13430:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13437:3:32", - "type": "", - "value": "224" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13426:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13426:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "13464:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13475:3:32", - "type": "", - "value": "224" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13460:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13460:19:32" - } - ], - "functionName": { - "name": "abi_decode_int64", - "nodeType": "YulIdentifier", - "src": "13443:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "13443:37:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13419:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "13419:62:32" - }, - "nodeType": "YulExpressionStatement", - "src": "13419:62:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "13490:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13500:3:32", - "type": "", - "value": "256" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "13494:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "13512:48:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "13545:9:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "13556:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13541:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13541:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "13528:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "13528:32:32" - }, - "variables": [ - { - "name": "offset_2", - "nodeType": "YulTypedName", - "src": "13516:8:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "13589:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13598:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13601:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "13591:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "13591:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "13591:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_2", - "nodeType": "YulIdentifier", - "src": "13575:8:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "13585:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "13572:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "13572:16:32" - }, - "nodeType": "YulIf", - "src": "13569:36:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "13625:5:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "13632:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13621:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13621:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "13658:9:32" - }, - { - "name": "offset_2", - "nodeType": "YulIdentifier", - "src": "13669:8:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13654:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13654:24:32" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "13680:3:32" - } - ], - "functionName": { - "name": "abi_decode_bytes", - "nodeType": "YulIdentifier", - "src": "13637:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "13637:47:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13614:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "13614:71:32" - }, - "nodeType": "YulExpressionStatement", - "src": "13614:71:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "13694:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13704:3:32", - "type": "", - "value": "288" - }, - "variables": [ - { - "name": "_3", - "nodeType": "YulTypedName", - "src": "13698:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "13727:5:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "13734:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13723:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13723:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "13756:9:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "13767:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13752:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13752:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "13739:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "13739:32:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13716:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "13716:56:32" - }, - "nodeType": "YulExpressionStatement", - "src": "13716:56:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "13781:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13791:3:32", - "type": "", - "value": "320" - }, - "variables": [ - { - "name": "_4", - "nodeType": "YulTypedName", - "src": "13785:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "13814:5:32" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "13821:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13810:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13810:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "13848:9:32" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "13859:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13844:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13844:18:32" - } - ], - "functionName": { - "name": "abi_decode_uint32", - "nodeType": "YulIdentifier", - "src": "13826:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "13826:37:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13803:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "13803:61:32" - }, - "nodeType": "YulExpressionStatement", - "src": "13803:61:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "13873:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13883:3:32", - "type": "", - "value": "352" - }, - "variables": [ - { - "name": "_5", - "nodeType": "YulTypedName", - "src": "13877:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "13906:5:32" - }, - { - "name": "_5", - "nodeType": "YulIdentifier", - "src": "13913:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13902:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13902:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "13940:9:32" - }, - { - "name": "_5", - "nodeType": "YulIdentifier", - "src": "13951:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13936:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13936:18:32" - } - ], - "functionName": { - "name": "abi_decode_uint32", - "nodeType": "YulIdentifier", - "src": "13918:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "13918:37:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13895:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "13895:61:32" - }, - "nodeType": "YulExpressionStatement", - "src": "13895:61:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "13965:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13975:3:32", - "type": "", - "value": "384" - }, - "variables": [ - { - "name": "_6", - "nodeType": "YulTypedName", - "src": "13969:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "13998:5:32" - }, - { - "name": "_6", - "nodeType": "YulIdentifier", - "src": "14005:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13994:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13994:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "14032:9:32" - }, - { - "name": "_6", - "nodeType": "YulIdentifier", - "src": "14043:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14028:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14028:18:32" - } - ], - "functionName": { - "name": "abi_decode_uint16", - "nodeType": "YulIdentifier", - "src": "14010:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "14010:37:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13987:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "13987:61:32" - }, - "nodeType": "YulExpressionStatement", - "src": "13987:61:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "14057:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14067:3:32", - "type": "", - "value": "416" - }, - "variables": [ - { - "name": "_7", - "nodeType": "YulTypedName", - "src": "14061:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "14090:5:32" - }, - { - "name": "_7", - "nodeType": "YulIdentifier", - "src": "14097:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14086:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14086:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "14124:9:32" - }, - { - "name": "_7", - "nodeType": "YulIdentifier", - "src": "14135:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14120:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14120:18:32" - } - ], - "functionName": { - "name": "abi_decode_uint16", - "nodeType": "YulIdentifier", - "src": "14102:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "14102:37:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "14079:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "14079:61:32" - }, - "nodeType": "YulExpressionStatement", - "src": "14079:61:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "14149:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14159:3:32", - "type": "", - "value": "448" - }, - "variables": [ - { - "name": "_8", - "nodeType": "YulTypedName", - "src": "14153:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "14182:5:32" - }, - { - "name": "_8", - "nodeType": "YulIdentifier", - "src": "14189:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14178:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14178:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "14216:9:32" - }, - { - "name": "_8", - "nodeType": "YulIdentifier", - "src": "14227:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14212:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14212:18:32" - } - ], - "functionName": { - "name": "abi_decode_uint32", - "nodeType": "YulIdentifier", - "src": "14194:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "14194:37:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "14171:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "14171:61:32" - }, - "nodeType": "YulExpressionStatement", - "src": "14171:61:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "14241:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14251:3:32", - "type": "", - "value": "480" - }, - "variables": [ - { - "name": "_9", - "nodeType": "YulTypedName", - "src": "14245:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "14274:5:32" - }, - { - "name": "_9", - "nodeType": "YulIdentifier", - "src": "14281:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14270:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14270:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "14308:9:32" - }, - { - "name": "_9", - "nodeType": "YulIdentifier", - "src": "14319:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14304:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14304:18:32" - } - ], - "functionName": { - "name": "abi_decode_uint32", - "nodeType": "YulIdentifier", - "src": "14286:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "14286:37:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "14263:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "14263:61:32" - }, - "nodeType": "YulExpressionStatement", - "src": "14263:61:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "14333:14:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14344:3:32", - "type": "", - "value": "512" - }, - "variables": [ - { - "name": "_10", - "nodeType": "YulTypedName", - "src": "14337:3:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "14367:5:32" - }, - { - "name": "_10", - "nodeType": "YulIdentifier", - "src": "14374:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14363:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14363:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "14402:9:32" - }, - { - "name": "_10", - "nodeType": "YulIdentifier", - "src": "14413:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14398:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14398:19:32" - } - ], - "functionName": { - "name": "abi_decode_uint32", - "nodeType": "YulIdentifier", - "src": "14380:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "14380:38:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "14356:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "14356:63:32" - }, - "nodeType": "YulExpressionStatement", - "src": "14356:63:32" - } - ] - }, - "name": "abi_decode_struct_PegOutQuote", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "12553:9:32", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "12564:3:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "12572:5:32", - "type": "" - } - ], - "src": "12514:1911:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "14530:254:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "14576:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14585:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14588:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "14578:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "14578:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "14578:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "14551:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "14560:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "14547:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14547:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14572:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "14543:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14543:32:32" - }, - "nodeType": "YulIf", - "src": "14540:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "14601:37:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "14628:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "14615:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "14615:23:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "14605:6:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "14681:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14690:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14693:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "14683:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "14683:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "14683:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "14653:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14669:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14673:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "14665:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14665:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14677:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "14661:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14661:18:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "14650:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "14650:30:32" - }, - "nodeType": "YulIf", - "src": "14647:50:32" - }, - { - "nodeType": "YulAssignment", - "src": "14706:72:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "14750:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "14761:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14746:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14746:22:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "14770:7:32" - } - ], - "functionName": { - "name": "abi_decode_struct_PegOutQuote", - "nodeType": "YulIdentifier", - "src": "14716:29:32" - }, - "nodeType": "YulFunctionCall", - "src": "14716:62:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "14706:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_struct$_PegOutQuote_$10997_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "14496:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "14507:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "14519:6:32", - "type": "" - } - ], - "src": "14430:354:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "14983:843:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "15030:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15039:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15042:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "15032:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "15032:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "15032:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "15004:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "15013:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "15000:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15000:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15025:3:32", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "14996:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14996:33:32" - }, - "nodeType": "YulIf", - "src": "14993:53:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "15055:37:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "15082:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "15069:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "15069:23:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "15059:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "15101:28:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15119:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15123:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "15115:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15115:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15127:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "15111:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15111:18:32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "15105:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "15156:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15165:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15168:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "15158:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "15158:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "15158:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "15144:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "15152:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "15141:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "15141:14:32" - }, - "nodeType": "YulIf", - "src": "15138:34:32" - }, - { - "nodeType": "YulAssignment", - "src": "15181:71:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "15224:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "15235:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15220:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15220:22:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "15244:7:32" - } - ], - "functionName": { - "name": "abi_decode_struct_PeginQuote", - "nodeType": "YulIdentifier", - "src": "15191:28:32" - }, - "nodeType": "YulFunctionCall", - "src": "15191:61:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "15181:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "15261:48:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "15294:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15305:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15290:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15290:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "15277:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "15277:32:32" - }, - "variables": [ - { - "name": "offset_1", - "nodeType": "YulTypedName", - "src": "15265:8:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "15338:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15347:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15350:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "15340:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "15340:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "15340:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "15324:8:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "15334:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "15321:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "15321:16:32" - }, - "nodeType": "YulIf", - "src": "15318:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "15363:61:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "15394:9:32" - }, - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "15405:8:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15390:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15390:24:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "15416:7:32" - } - ], - "functionName": { - "name": "abi_decode_bytes", - "nodeType": "YulIdentifier", - "src": "15373:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "15373:51:32" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "15363:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "15433:48:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "15466:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15477:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15462:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15462:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "15449:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "15449:32:32" - }, - "variables": [ - { - "name": "offset_2", - "nodeType": "YulTypedName", - "src": "15437:8:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "15510:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15519:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15522:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "15512:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "15512:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "15512:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_2", - "nodeType": "YulIdentifier", - "src": "15496:8:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "15506:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "15493:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "15493:16:32" - }, - "nodeType": "YulIf", - "src": "15490:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "15535:61:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "15566:9:32" - }, - { - "name": "offset_2", - "nodeType": "YulIdentifier", - "src": "15577:8:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15562:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15562:24:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "15588:7:32" - } - ], - "functionName": { - "name": "abi_decode_bytes", - "nodeType": "YulIdentifier", - "src": "15545:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "15545:51:32" - }, - "variableNames": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "15535:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "15605:48:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "15638:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15649:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15634:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15634:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "15621:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "15621:32:32" - }, - "variables": [ - { - "name": "offset_3", - "nodeType": "YulTypedName", - "src": "15609:8:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "15682:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15691:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15694:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "15684:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "15684:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "15684:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_3", - "nodeType": "YulIdentifier", - "src": "15668:8:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "15678:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "15665:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "15665:16:32" - }, - "nodeType": "YulIf", - "src": "15662:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "15707:61:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "15738:9:32" - }, - { - "name": "offset_3", - "nodeType": "YulIdentifier", - "src": "15749:8:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15734:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15734:24:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "15760:7:32" - } - ], - "functionName": { - "name": "abi_decode_bytes", - "nodeType": "YulIdentifier", - "src": "15717:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "15717:51:32" - }, - "variableNames": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "15707:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "15777:43:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "15804:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15815:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15800:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15800:19:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "15787:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "15787:33:32" - }, - "variableNames": [ - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "15777:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_struct$_PeginQuote_$10962_memory_ptrt_bytes_memory_ptrt_bytes_memory_ptrt_bytes_memory_ptrt_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "14917:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "14928:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "14940:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "14948:6:32", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "14956:6:32", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "14964:6:32", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "14972:6:32", - "type": "" - } - ], - "src": "14789:1037:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "15930:76:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "15940:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "15952:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15963:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15948:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15948:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "15940:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "15982:9:32" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "15993:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "15975:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "15975:25:32" - }, - "nodeType": "YulExpressionStatement", - "src": "15975:25:32" - } - ] - }, - "name": "abi_encode_tuple_t_int256__to_t_int256__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "15899:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "15910:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "15921:4:32", - "type": "" - } - ], - "src": "15831:175:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "16095:225:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "16141:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16150:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16153:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "16143:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "16143:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "16143:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "16116:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "16125:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "16112:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "16112:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16137:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "16108:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "16108:32:32" - }, - "nodeType": "YulIf", - "src": "16105:52:32" - }, - { - "nodeType": "YulAssignment", - "src": "16166:33:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "16189:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "16176:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "16176:23:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "16166:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "16208:45:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "16238:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16249:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "16234:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "16234:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "16221:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "16221:32:32" - }, - "variables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "16212:5:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "16284:5:32" - } - ], - "functionName": { - "name": "validator_revert_bool", - "nodeType": "YulIdentifier", - "src": "16262:21:32" - }, - "nodeType": "YulFunctionCall", - "src": "16262:28:32" - }, - "nodeType": "YulExpressionStatement", - "src": "16262:28:32" - }, - { - "nodeType": "YulAssignment", - "src": "16299:15:32", - "value": { - "name": "value", - "nodeType": "YulIdentifier", - "src": "16309:5:32" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "16299:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_uint256t_bool", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "16053:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "16064:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "16076:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "16084:6:32", - "type": "" - } - ], - "src": "16011:309:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "16451:447:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "16497:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16506:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16509:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "16499:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "16499:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "16499:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "16472:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "16481:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "16468:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "16468:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16493:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "16464:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "16464:32:32" - }, - "nodeType": "YulIf", - "src": "16461:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "16522:37:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "16549:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "16536:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "16536:23:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "16526:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "16568:28:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16586:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16590:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "16582:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "16582:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16594:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "16578:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "16578:18:32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "16572:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "16623:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16632:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16635:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "16625:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "16625:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "16625:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "16611:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "16619:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "16608:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "16608:14:32" - }, - "nodeType": "YulIf", - "src": "16605:34:32" - }, - { - "nodeType": "YulAssignment", - "src": "16648:72:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "16692:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "16703:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "16688:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "16688:22:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "16712:7:32" - } - ], - "functionName": { - "name": "abi_decode_struct_PegOutQuote", - "nodeType": "YulIdentifier", - "src": "16658:29:32" - }, - "nodeType": "YulFunctionCall", - "src": "16658:62:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "16648:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "16729:48:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "16762:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16773:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "16758:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "16758:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "16745:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "16745:32:32" - }, - "variables": [ - { - "name": "offset_1", - "nodeType": "YulTypedName", - "src": "16733:8:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "16806:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16815:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16818:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "16808:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "16808:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "16808:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "16792:8:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "16802:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "16789:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "16789:16:32" - }, - "nodeType": "YulIf", - "src": "16786:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "16831:61:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "16862:9:32" - }, - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "16873:8:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "16858:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "16858:24:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "16884:7:32" - } - ], - "functionName": { - "name": "abi_decode_bytes", - "nodeType": "YulIdentifier", - "src": "16841:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "16841:51:32" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "16831:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_struct$_PegOutQuote_$10997_memory_ptrt_bytes_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "16409:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "16420:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "16432:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "16440:6:32", - "type": "" - } - ], - "src": "16325:573:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "17004:102:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "17014:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "17026:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17037:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "17022:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "17022:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "17014:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "17056:9:32" - }, - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "17071:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17087:3:32", - "type": "", - "value": "160" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17092:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "17083:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "17083:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17096:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "17079:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "17079:19:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "17067:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "17067:32:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "17049:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "17049:51:32" - }, - "nodeType": "YulExpressionStatement", - "src": "17049:51:32" - } - ] - }, - "name": "abi_encode_tuple_t_address__to_t_address__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "16973:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "16984:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "16995:4:32", - "type": "" - } - ], - "src": "16903:203:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "17154:47:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "17171:3:32" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "17180:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17187:6:32", - "type": "", - "value": "0xffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "17176:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "17176:18:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "17164:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "17164:31:32" - }, - "nodeType": "YulExpressionStatement", - "src": "17164:31:32" - } - ] - }, - "name": "abi_encode_uint16", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "17138:5:32", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "17145:3:32", - "type": "" - } - ], - "src": "17111:90:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "17305:89:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "17315:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "17327:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17338:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "17323:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "17323:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "17315:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "17357:9:32" - }, - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "17372:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17380:6:32", - "type": "", - "value": "0xffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "17368:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "17368:19:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "17350:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "17350:38:32" - }, - "nodeType": "YulExpressionStatement", - "src": "17350:38:32" - } - ] - }, - "name": "abi_encode_tuple_t_uint16__to_t_uint16__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "17274:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "17285:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "17296:4:32", - "type": "" - } - ], - "src": "17206:188:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "17478:241:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "17524:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17533:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17536:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "17526:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "17526:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "17526:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "17499:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "17508:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "17495:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "17495:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17520:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "17491:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "17491:32:32" - }, - "nodeType": "YulIf", - "src": "17488:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "17549:37:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "17576:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "17563:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "17563:23:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "17553:6:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "17629:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17638:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17641:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "17631:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "17631:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "17631:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "17601:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17617:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17621:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "17613:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "17613:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17625:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "17609:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "17609:18:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "17598:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "17598:30:32" - }, - "nodeType": "YulIf", - "src": "17595:50:32" - }, - { - "nodeType": "YulAssignment", - "src": "17654:59:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "17685:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "17696:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "17681:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "17681:22:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "17705:7:32" - } - ], - "functionName": { - "name": "abi_decode_bytes", - "nodeType": "YulIdentifier", - "src": "17664:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "17664:49:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "17654:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bytes_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "17444:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "17455:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "17467:6:32", - "type": "" - } - ], - "src": "17399:320:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "17849:446:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "17895:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17904:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17907:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "17897:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "17897:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "17897:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "17870:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "17879:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "17866:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "17866:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17891:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "17862:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "17862:32:32" - }, - "nodeType": "YulIf", - "src": "17859:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "17920:37:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "17947:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "17934:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "17934:23:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "17924:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "17966:28:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17984:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17988:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "17980:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "17980:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17992:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "17976:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "17976:18:32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "17970:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "18021:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18030:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18033:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "18023:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "18023:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "18023:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "18009:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "18017:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "18006:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "18006:14:32" - }, - "nodeType": "YulIf", - "src": "18003:34:32" - }, - { - "nodeType": "YulAssignment", - "src": "18046:71:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "18089:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "18100:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "18085:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "18085:22:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "18109:7:32" - } - ], - "functionName": { - "name": "abi_decode_struct_PeginQuote", - "nodeType": "YulIdentifier", - "src": "18056:28:32" - }, - "nodeType": "YulFunctionCall", - "src": "18056:61:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "18046:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "18126:48:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "18159:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18170:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "18155:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "18155:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "18142:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "18142:32:32" - }, - "variables": [ - { - "name": "offset_1", - "nodeType": "YulTypedName", - "src": "18130:8:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "18203:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18212:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18215:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "18205:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "18205:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "18205:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "18189:8:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "18199:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "18186:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "18186:16:32" - }, - "nodeType": "YulIf", - "src": "18183:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "18228:61:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "18259:9:32" - }, - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "18270:8:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "18255:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "18255:24:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "18281:7:32" - } - ], - "functionName": { - "name": "abi_decode_bytes", - "nodeType": "YulIdentifier", - "src": "18238:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "18238:51:32" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "18228:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_struct$_PeginQuote_$10962_memory_ptrt_bytes_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "17807:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "17818:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "17830:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "17838:6:32", - "type": "" - } - ], - "src": "17724:571:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "18472:1144:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "18519:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18528:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18531:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "18521:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "18521:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "18521:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "18493:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "18502:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "18489:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "18489:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18514:3:32", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "18485:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "18485:33:32" - }, - "nodeType": "YulIf", - "src": "18482:53:32" - }, - { - "nodeType": "YulAssignment", - "src": "18544:33:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "18567:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "18554:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "18554:23:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "18544:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "18586:12:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18596:2:32", - "type": "", - "value": "32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "18590:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "18607:46:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "18638:9:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "18649:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "18634:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "18634:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "18621:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "18621:32:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "18611:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "18662:28:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18680:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18684:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "18676:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "18676:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18688:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "18672:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "18672:18:32" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "18666:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "18717:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18726:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18729:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "18719:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "18719:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "18719:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "18705:6:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "18713:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "18702:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "18702:14:32" - }, - "nodeType": "YulIf", - "src": "18699:34:32" - }, - { - "nodeType": "YulAssignment", - "src": "18742:59:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "18773:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "18784:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "18769:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "18769:22:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "18793:7:32" - } - ], - "functionName": { - "name": "abi_decode_bytes", - "nodeType": "YulIdentifier", - "src": "18752:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "18752:49:32" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "18742:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "18810:42:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "18837:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18848:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "18833:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "18833:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "18820:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "18820:32:32" - }, - "variableNames": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "18810:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "18861:42:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "18888:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18899:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "18884:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "18884:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "18871:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "18871:32:32" - }, - "variableNames": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "18861:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "18912:49:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "18945:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18956:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "18941:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "18941:19:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "18928:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "18928:33:32" - }, - "variables": [ - { - "name": "offset_1", - "nodeType": "YulTypedName", - "src": "18916:8:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "18990:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18999:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19002:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "18992:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "18992:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "18992:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "18976:8:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "18986:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "18973:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "18973:16:32" - }, - "nodeType": "YulIf", - "src": "18970:36:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "19015:34:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "19029:9:32" - }, - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "19040:8:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "19025:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "19025:24:32" - }, - "variables": [ - { - "name": "_3", - "nodeType": "YulTypedName", - "src": "19019:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "19097:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19106:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19109:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "19099:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "19099:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "19099:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "19076:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19080:4:32", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "19072:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "19072:13:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "19087:7:32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "19068:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "19068:27:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "19061:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "19061:35:32" - }, - "nodeType": "YulIf", - "src": "19058:55:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "19122:26:32", - "value": { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "19145:2:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "19132:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "19132:16:32" - }, - "variables": [ - { - "name": "_4", - "nodeType": "YulTypedName", - "src": "19126:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "19157:71:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "19224:2:32" - } - ], - "functionName": { - "name": "array_allocation_size_array_uint256_dyn", - "nodeType": "YulIdentifier", - "src": "19184:39:32" - }, - "nodeType": "YulFunctionCall", - "src": "19184:43:32" - } - ], - "functionName": { - "name": "allocate_memory", - "nodeType": "YulIdentifier", - "src": "19168:15:32" - }, - "nodeType": "YulFunctionCall", - "src": "19168:60:32" - }, - "variables": [ - { - "name": "dst", - "nodeType": "YulTypedName", - "src": "19161:3:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "19237:16:32", - "value": { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "19250:3:32" - }, - "variables": [ - { - "name": "dst_1", - "nodeType": "YulTypedName", - "src": "19241:5:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "19269:3:32" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "19274:2:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "19262:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "19262:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "19262:15:32" - }, - { - "nodeType": "YulAssignment", - "src": "19286:19:32", - "value": { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "19297:3:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "19302:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "19293:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "19293:12:32" - }, - "variableNames": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "19286:3:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "19314:42:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "19336:2:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19344:1:32", - "type": "", - "value": "5" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "19347:2:32" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "19340:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "19340:10:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "19332:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "19332:19:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "19353:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "19328:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "19328:28:32" - }, - "variables": [ - { - "name": "srcEnd", - "nodeType": "YulTypedName", - "src": "19318:6:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "19388:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19397:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19400:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "19390:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "19390:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "19390:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "srcEnd", - "nodeType": "YulIdentifier", - "src": "19371:6:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "19379:7:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "19368:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "19368:19:32" - }, - "nodeType": "YulIf", - "src": "19365:39:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "19413:22:32", - "value": { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "19428:2:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "19432:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "19424:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "19424:11:32" - }, - "variables": [ - { - "name": "src", - "nodeType": "YulTypedName", - "src": "19417:3:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "19500:86:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "19521:3:32" - }, - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "19539:3:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "19526:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "19526:17:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "19514:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "19514:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "19514:30:32" - }, - { - "nodeType": "YulAssignment", - "src": "19557:19:32", - "value": { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "19568:3:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "19573:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "19564:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "19564:12:32" - }, - "variableNames": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "19557:3:32" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "19455:3:32" - }, - { - "name": "srcEnd", - "nodeType": "YulIdentifier", - "src": "19460:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "19452:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "19452:15:32" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "19468:23:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "19470:19:32", - "value": { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "19481:3:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "19486:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "19477:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "19477:12:32" - }, - "variableNames": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "19470:3:32" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "19448:3:32", - "statements": [] - }, - "src": "19444:142:32" - }, - { - "nodeType": "YulAssignment", - "src": "19595:15:32", - "value": { - "name": "dst_1", - "nodeType": "YulIdentifier", - "src": "19605:5:32" - }, - "variableNames": [ - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "19595:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bytes32t_bytes_memory_ptrt_bytes32t_uint256t_array$_t_bytes32_$dyn_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "18406:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "18417:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "18429:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "18437:6:32", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "18445:6:32", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "18453:6:32", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "18461:6:32", - "type": "" - } - ], - "src": "18300:1316:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "19745:102:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "19755:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "19767:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19778:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "19763:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "19763:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "19755:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "19797:9:32" - }, - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "19812:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19828:3:32", - "type": "", - "value": "160" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19833:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "19824:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "19824:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19837:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "19820:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "19820:19:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "19808:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "19808:32:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "19790:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "19790:51:32" - }, - "nodeType": "YulExpressionStatement", - "src": "19790:51:32" - } - ] - }, - "name": "abi_encode_tuple_t_contract$_Bridge_$4173__to_t_address_payable__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "19714:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "19725:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "19736:4:32", - "type": "" - } - ], - "src": "19621:226:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "19894:49:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "19911:3:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19927:1:32", - "type": "", - "value": "7" - }, - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "19930:5:32" - } - ], - "functionName": { - "name": "signextend", - "nodeType": "YulIdentifier", - "src": "19916:10:32" - }, - "nodeType": "YulFunctionCall", - "src": "19916:20:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "19904:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "19904:33:32" - }, - "nodeType": "YulExpressionStatement", - "src": "19904:33:32" - } - ] - }, - "name": "abi_encode_int64", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "19878:5:32", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "19885:3:32", - "type": "" - } - ], - "src": "19852:91:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "19991:51:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "20008:3:32" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "20017:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20024:10:32", - "type": "", - "value": "0xffffffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "20013:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "20013:22:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "20001:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "20001:35:32" - }, - "nodeType": "YulExpressionStatement", - "src": "20001:35:32" - } - ] - }, - "name": "abi_encode_uint32", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "19975:5:32", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "19982:3:32", - "type": "" - } - ], - "src": "19948:94:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "20208:2278:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "20225:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20236:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "20218:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "20218:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "20218:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "20273:6:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "20267:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "20267:13:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "20286:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20297:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "20282:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "20282:18:32" - } - ], - "functionName": { - "name": "abi_encode_address", - "nodeType": "YulIdentifier", - "src": "20248:18:32" - }, - "nodeType": "YulFunctionCall", - "src": "20248:53:32" - }, - "nodeType": "YulExpressionStatement", - "src": "20248:53:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "20310:42:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "20340:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20348:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "20336:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "20336:15:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "20330:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "20330:22:32" - }, - "variables": [ - { - "name": "memberValue0", - "nodeType": "YulTypedName", - "src": "20314:12:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "memberValue0", - "nodeType": "YulIdentifier", - "src": "20380:12:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "20398:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20409:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "20394:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "20394:18:32" - } - ], - "functionName": { - "name": "abi_encode_address", - "nodeType": "YulIdentifier", - "src": "20361:18:32" - }, - "nodeType": "YulFunctionCall", - "src": "20361:52:32" - }, - "nodeType": "YulExpressionStatement", - "src": "20361:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "20422:44:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "20454:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20462:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "20450:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "20450:15:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "20444:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "20444:22:32" - }, - "variables": [ - { - "name": "memberValue0_1", - "nodeType": "YulTypedName", - "src": "20426:14:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "20475:16:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20485:6:32", - "type": "", - "value": "0x0220" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "20479:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "20511:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20522:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "20507:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "20507:18:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "20527:2:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "20500:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "20500:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "20500:30:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "20539:68:32", - "value": { - "arguments": [ - { - "name": "memberValue0_1", - "nodeType": "YulIdentifier", - "src": "20571:14:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "20591:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20602:3:32", - "type": "", - "value": "576" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "20587:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "20587:19:32" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "20553:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "20553:54:32" - }, - "variables": [ - { - "name": "tail_1", - "nodeType": "YulTypedName", - "src": "20543:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "20616:44:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "20648:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20656:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "20644:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "20644:15:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "20638:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "20638:22:32" - }, - "variables": [ - { - "name": "memberValue0_2", - "nodeType": "YulTypedName", - "src": "20620:14:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "memberValue0_2", - "nodeType": "YulIdentifier", - "src": "20688:14:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "20708:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20719:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "20704:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "20704:19:32" - } - ], - "functionName": { - "name": "abi_encode_address", - "nodeType": "YulIdentifier", - "src": "20669:18:32" - }, - "nodeType": "YulFunctionCall", - "src": "20669:55:32" - }, - "nodeType": "YulExpressionStatement", - "src": "20669:55:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "20733:45:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "20765:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20773:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "20761:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "20761:16:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "20755:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "20755:23:32" - }, - "variables": [ - { - "name": "memberValue0_3", - "nodeType": "YulTypedName", - "src": "20737:14:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "20787:17:32", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20801:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "20797:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "20797:7:32" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "20791:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "20824:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20835:3:32", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "20820:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "20820:19:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "20849:6:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "20857:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "20845:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "20845:22:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "20869:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "20841:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "20841:31:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "20813:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "20813:60:32" - }, - "nodeType": "YulExpressionStatement", - "src": "20813:60:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "20882:55:32", - "value": { - "arguments": [ - { - "name": "memberValue0_3", - "nodeType": "YulIdentifier", - "src": "20914:14:32" - }, - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "20930:6:32" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "20896:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "20896:41:32" - }, - "variables": [ - { - "name": "tail_2", - "nodeType": "YulTypedName", - "src": "20886:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "20957:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20968:3:32", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "20953:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "20953:19:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "20984:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20992:3:32", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "20980:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "20980:16:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "20974:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "20974:23:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "20946:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "20946:52:32" - }, - "nodeType": "YulExpressionStatement", - "src": "20946:52:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "21018:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21029:3:32", - "type": "", - "value": "224" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "21014:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "21014:19:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "21045:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21053:3:32", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "21041:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "21041:16:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "21035:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "21035:23:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "21007:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "21007:52:32" - }, - "nodeType": "YulExpressionStatement", - "src": "21007:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "21068:45:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "21100:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21108:3:32", - "type": "", - "value": "224" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "21096:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "21096:16:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "21090:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "21090:23:32" - }, - "variables": [ - { - "name": "memberValue0_4", - "nodeType": "YulTypedName", - "src": "21072:14:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "21122:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21132:3:32", - "type": "", - "value": "256" - }, - "variables": [ - { - "name": "_3", - "nodeType": "YulTypedName", - "src": "21126:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "memberValue0_4", - "nodeType": "YulIdentifier", - "src": "21161:14:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "21181:9:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "21192:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "21177:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "21177:18:32" - } - ], - "functionName": { - "name": "abi_encode_int64", - "nodeType": "YulIdentifier", - "src": "21144:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "21144:52:32" - }, - "nodeType": "YulExpressionStatement", - "src": "21144:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "21205:44:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "21237:6:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "21245:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "21233:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "21233:15:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "21227:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "21227:22:32" - }, - "variables": [ - { - "name": "memberValue0_5", - "nodeType": "YulTypedName", - "src": "21209:14:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "21258:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21268:3:32", - "type": "", - "value": "288" - }, - "variables": [ - { - "name": "_4", - "nodeType": "YulTypedName", - "src": "21262:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "21291:9:32" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "21302:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "21287:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "21287:18:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "21315:6:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "21323:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "21311:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "21311:22:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "21335:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "21307:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "21307:31:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "21280:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "21280:59:32" - }, - "nodeType": "YulExpressionStatement", - "src": "21280:59:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "21348:55:32", - "value": { - "arguments": [ - { - "name": "memberValue0_5", - "nodeType": "YulIdentifier", - "src": "21380:14:32" - }, - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "21396:6:32" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "21362:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "21362:41:32" - }, - "variables": [ - { - "name": "tail_3", - "nodeType": "YulTypedName", - "src": "21352:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "21412:32:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "21432:6:32" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "21440:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "21428:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "21428:15:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "21422:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "21422:22:32" - }, - "variables": [ - { - "name": "_5", - "nodeType": "YulTypedName", - "src": "21416:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "21453:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21463:3:32", - "type": "", - "value": "320" - }, - "variables": [ - { - "name": "_6", - "nodeType": "YulTypedName", - "src": "21457:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "21486:9:32" - }, - { - "name": "_6", - "nodeType": "YulIdentifier", - "src": "21497:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "21482:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "21482:18:32" - }, - { - "name": "_5", - "nodeType": "YulIdentifier", - "src": "21502:2:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "21475:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "21475:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "21475:30:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "21514:44:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "21546:6:32" - }, - { - "name": "_6", - "nodeType": "YulIdentifier", - "src": "21554:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "21542:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "21542:15:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "21536:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "21536:22:32" - }, - "variables": [ - { - "name": "memberValue0_6", - "nodeType": "YulTypedName", - "src": "21518:14:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "21567:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21577:3:32", - "type": "", - "value": "352" - }, - "variables": [ - { - "name": "_7", - "nodeType": "YulTypedName", - "src": "21571:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "memberValue0_6", - "nodeType": "YulIdentifier", - "src": "21607:14:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "21627:9:32" - }, - { - "name": "_7", - "nodeType": "YulIdentifier", - "src": "21638:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "21623:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "21623:18:32" - } - ], - "functionName": { - "name": "abi_encode_uint32", - "nodeType": "YulIdentifier", - "src": "21589:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "21589:53:32" - }, - "nodeType": "YulExpressionStatement", - "src": "21589:53:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "21651:44:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "21683:6:32" - }, - { - "name": "_7", - "nodeType": "YulIdentifier", - "src": "21691:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "21679:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "21679:15:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "21673:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "21673:22:32" - }, - "variables": [ - { - "name": "memberValue0_7", - "nodeType": "YulTypedName", - "src": "21655:14:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "21704:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21714:3:32", - "type": "", - "value": "384" - }, - "variables": [ - { - "name": "_8", - "nodeType": "YulTypedName", - "src": "21708:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "memberValue0_7", - "nodeType": "YulIdentifier", - "src": "21744:14:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "21764:9:32" - }, - { - "name": "_8", - "nodeType": "YulIdentifier", - "src": "21775:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "21760:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "21760:18:32" - } - ], - "functionName": { - "name": "abi_encode_uint32", - "nodeType": "YulIdentifier", - "src": "21726:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "21726:53:32" - }, - "nodeType": "YulExpressionStatement", - "src": "21726:53:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "21788:44:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "21820:6:32" - }, - { - "name": "_8", - "nodeType": "YulIdentifier", - "src": "21828:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "21816:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "21816:15:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "21810:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "21810:22:32" - }, - "variables": [ - { - "name": "memberValue0_8", - "nodeType": "YulTypedName", - "src": "21792:14:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "21841:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21851:3:32", - "type": "", - "value": "416" - }, - "variables": [ - { - "name": "_9", - "nodeType": "YulTypedName", - "src": "21845:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "memberValue0_8", - "nodeType": "YulIdentifier", - "src": "21881:14:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "21901:9:32" - }, - { - "name": "_9", - "nodeType": "YulIdentifier", - "src": "21912:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "21897:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "21897:18:32" - } - ], - "functionName": { - "name": "abi_encode_uint16", - "nodeType": "YulIdentifier", - "src": "21863:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "21863:53:32" - }, - "nodeType": "YulExpressionStatement", - "src": "21863:53:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "21925:44:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "21957:6:32" - }, - { - "name": "_9", - "nodeType": "YulIdentifier", - "src": "21965:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "21953:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "21953:15:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "21947:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "21947:22:32" - }, - "variables": [ - { - "name": "memberValue0_9", - "nodeType": "YulTypedName", - "src": "21929:14:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "21978:14:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21989:3:32", - "type": "", - "value": "448" - }, - "variables": [ - { - "name": "_10", - "nodeType": "YulTypedName", - "src": "21982:3:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "memberValue0_9", - "nodeType": "YulIdentifier", - "src": "22019:14:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "22039:9:32" - }, - { - "name": "_10", - "nodeType": "YulIdentifier", - "src": "22050:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "22035:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "22035:19:32" - } - ], - "functionName": { - "name": "abi_encode_uint16", - "nodeType": "YulIdentifier", - "src": "22001:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "22001:54:32" - }, - "nodeType": "YulExpressionStatement", - "src": "22001:54:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "22064:46:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "22097:6:32" - }, - { - "name": "_10", - "nodeType": "YulIdentifier", - "src": "22105:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "22093:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "22093:16:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "22087:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "22087:23:32" - }, - "variables": [ - { - "name": "memberValue0_10", - "nodeType": "YulTypedName", - "src": "22068:15:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "22119:14:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22130:3:32", - "type": "", - "value": "480" - }, - "variables": [ - { - "name": "_11", - "nodeType": "YulTypedName", - "src": "22123:3:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "memberValue0_10", - "nodeType": "YulIdentifier", - "src": "22160:15:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "22181:9:32" - }, - { - "name": "_11", - "nodeType": "YulIdentifier", - "src": "22192:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "22177:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "22177:19:32" - } - ], - "functionName": { - "name": "abi_encode_uint32", - "nodeType": "YulIdentifier", - "src": "22142:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "22142:55:32" - }, - "nodeType": "YulExpressionStatement", - "src": "22142:55:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "22206:46:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "22239:6:32" - }, - { - "name": "_11", - "nodeType": "YulIdentifier", - "src": "22247:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "22235:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "22235:16:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "22229:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "22229:23:32" - }, - "variables": [ - { - "name": "memberValue0_11", - "nodeType": "YulTypedName", - "src": "22210:15:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "22261:14:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22272:3:32", - "type": "", - "value": "512" - }, - "variables": [ - { - "name": "_12", - "nodeType": "YulTypedName", - "src": "22265:3:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "memberValue0_11", - "nodeType": "YulIdentifier", - "src": "22302:15:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "22323:9:32" - }, - { - "name": "_12", - "nodeType": "YulIdentifier", - "src": "22334:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "22319:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "22319:19:32" - } - ], - "functionName": { - "name": "abi_encode_uint32", - "nodeType": "YulIdentifier", - "src": "22284:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "22284:55:32" - }, - "nodeType": "YulExpressionStatement", - "src": "22284:55:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "22348:46:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "22381:6:32" - }, - { - "name": "_12", - "nodeType": "YulIdentifier", - "src": "22389:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "22377:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "22377:16:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "22371:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "22371:23:32" - }, - "variables": [ - { - "name": "memberValue0_12", - "nodeType": "YulTypedName", - "src": "22352:15:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "memberValue0_12", - "nodeType": "YulIdentifier", - "src": "22421:15:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "22442:9:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "22453:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "22438:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "22438:18:32" - } - ], - "functionName": { - "name": "abi_encode_uint32", - "nodeType": "YulIdentifier", - "src": "22403:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "22403:54:32" - }, - "nodeType": "YulExpressionStatement", - "src": "22403:54:32" - }, - { - "nodeType": "YulAssignment", - "src": "22466:14:32", - "value": { - "name": "tail_3", - "nodeType": "YulIdentifier", - "src": "22474:6:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "22466:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_struct$_PegOutQuote_$10997_memory_ptr__to_t_struct$_PegOutQuote_$10997_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "20177:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "20188:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "20199:4:32", - "type": "" - } - ], - "src": "20047:2439:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "22665:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "22682:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22693:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "22675:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "22675:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "22675:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "22716:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22727:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "22712:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "22712:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22732:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "22705:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "22705:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "22705:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "22754:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22765:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "22750:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "22750:18:32" - }, - { - "hexValue": "4c4243303139", - "kind": "string", - "nodeType": "YulLiteral", - "src": "22770:8:32", - "type": "", - "value": "LBC019" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "22743:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "22743:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "22743:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "22788:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "22800:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22811:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "22796:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "22796:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "22788:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_41f42e8d0f67be0e87abf05a33ed728b4868df2f2b92840d9519a852352eb909__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "22642:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "22656:4:32", - "type": "" - } - ], - "src": "22491:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "22857:95:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22874:1:32", - "type": "", - "value": "0" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22881:3:32", - "type": "", - "value": "224" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22886:10:32", - "type": "", - "value": "0x4e487b71" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "22877:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "22877:20:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "22867:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "22867:31:32" - }, - "nodeType": "YulExpressionStatement", - "src": "22867:31:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22914:1:32", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22917:4:32", - "type": "", - "value": "0x11" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "22907:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "22907:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "22907:15:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22938:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22941:4:32", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "22931:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "22931:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "22931:15:32" - } - ] - }, - "name": "panic_error_0x11", - "nodeType": "YulFunctionDefinition", - "src": "22825:127:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "23006:79:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "23016:17:32", - "value": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "23028:1:32" - }, - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "23031:1:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "23024:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "23024:9:32" - }, - "variableNames": [ - { - "name": "diff", - "nodeType": "YulIdentifier", - "src": "23016:4:32" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "23057:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x11", - "nodeType": "YulIdentifier", - "src": "23059:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "23059:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "23059:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "diff", - "nodeType": "YulIdentifier", - "src": "23048:4:32" - }, - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "23054:1:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "23045:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "23045:11:32" - }, - "nodeType": "YulIf", - "src": "23042:37:32" - } - ] - }, - "name": "checked_sub_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "x", - "nodeType": "YulTypedName", - "src": "22988:1:32", - "type": "" - }, - { - "name": "y", - "nodeType": "YulTypedName", - "src": "22991:1:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "diff", - "nodeType": "YulTypedName", - "src": "22997:4:32", - "type": "" - } - ], - "src": "22957:128:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "23281:14:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "23283:10:32", - "value": { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "23290:3:32" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "23283:3:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_packed_t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "23265:3:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "23273:3:32", - "type": "" - } - ], - "src": "23090:205:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "23474:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "23491:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "23502:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "23484:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "23484:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "23484:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "23525:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "23536:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "23521:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "23521:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "23541:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "23514:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "23514:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "23514:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "23563:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "23574:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "23559:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "23559:18:32" - }, - { - "hexValue": "4c4243303230", - "kind": "string", - "nodeType": "YulLiteral", - "src": "23579:8:32", - "type": "", - "value": "LBC020" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "23552:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "23552:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "23552:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "23597:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "23609:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "23620:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "23605:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "23605:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "23597:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_5c242c0534fa00b11577be4ea886875d641e4a1ad40749685bb740e7c1a67fc9__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "23451:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "23465:4:32", - "type": "" - } - ], - "src": "23300:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "23763:145:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "23773:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "23785:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "23796:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "23781:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "23781:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "23773:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "23815:9:32" - }, - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "23830:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "23846:3:32", - "type": "", - "value": "160" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "23851:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "23842:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "23842:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "23855:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "23838:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "23838:19:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "23826:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "23826:32:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "23808:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "23808:51:32" - }, - "nodeType": "YulExpressionStatement", - "src": "23808:51:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "23879:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "23890:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "23875:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "23875:18:32" - }, - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "23895:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "23868:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "23868:34:32" - }, - "nodeType": "YulExpressionStatement", - "src": "23868:34:32" - } - ] - }, - "name": "abi_encode_tuple_t_address_t_uint256__to_t_address_t_uint256__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "23724:9:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "23735:6:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "23743:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "23754:4:32", - "type": "" - } - ], - "src": "23634:274:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "24087:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "24104:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "24115:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "24097:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "24097:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "24097:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "24138:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "24149:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "24134:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "24134:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "24154:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "24127:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "24127:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "24127:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "24176:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "24187:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "24172:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "24172:18:32" - }, - { - "hexValue": "4c4243303231", - "kind": "string", - "nodeType": "YulLiteral", - "src": "24192:8:32", - "type": "", - "value": "LBC021" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "24165:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "24165:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "24165:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "24210:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "24222:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "24233:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "24218:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "24218:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "24210:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_ccfdeeda37cff52b8b53c7f459ead001a00858d8cd279133dc1e599c6257c485__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "24064:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "24078:4:32", - "type": "" - } - ], - "src": "23913:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "24421:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "24438:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "24449:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "24431:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "24431:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "24431:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "24472:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "24483:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "24468:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "24468:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "24488:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "24461:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "24461:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "24461:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "24510:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "24521:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "24506:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "24506:18:32" - }, - { - "hexValue": "4c4243303232", - "kind": "string", - "nodeType": "YulLiteral", - "src": "24526:8:32", - "type": "", - "value": "LBC022" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "24499:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "24499:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "24499:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "24544:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "24556:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "24567:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "24552:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "24552:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "24544:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_ae5a5bd2536c79a56736074670f517df1b8a17deb822b59dfa1648888074b4cc__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "24398:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "24412:4:32", - "type": "" - } - ], - "src": "24247:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "24755:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "24772:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "24783:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "24765:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "24765:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "24765:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "24806:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "24817:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "24802:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "24802:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "24822:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "24795:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "24795:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "24795:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "24844:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "24855:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "24840:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "24840:18:32" - }, - { - "hexValue": "4c4243303033", - "kind": "string", - "nodeType": "YulLiteral", - "src": "24860:8:32", - "type": "", - "value": "LBC003" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "24833:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "24833:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "24833:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "24878:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "24890:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "24901:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "24886:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "24886:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "24878:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_7e21a7b13292bf184f2fc166cca229506aa89a730258f15cdce6a2f8dc225415__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "24732:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "24746:4:32", - "type": "" - } - ], - "src": "24581:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "25089:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "25106:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25117:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "25099:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "25099:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "25099:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "25140:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25151:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "25136:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "25136:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25156:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "25129:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "25129:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "25129:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "25178:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25189:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "25174:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "25174:18:32" - }, - { - "hexValue": "4c4243303730", - "kind": "string", - "nodeType": "YulLiteral", - "src": "25194:8:32", - "type": "", - "value": "LBC070" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "25167:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "25167:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "25167:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "25212:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "25224:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25235:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "25220:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "25220:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "25212:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_a80fe4c2764b7c4b52829ebb2b1bb3117b2b8ffa6a6401dbe00248ec851a73a8__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "25066:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "25080:4:32", - "type": "" - } - ], - "src": "24915:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "25423:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "25440:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25451:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "25433:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "25433:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "25433:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "25474:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25485:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "25470:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "25470:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25490:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "25463:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "25463:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "25463:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "25512:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25523:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "25508:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "25508:18:32" - }, - { - "hexValue": "4c4243303039", - "kind": "string", - "nodeType": "YulLiteral", - "src": "25528:8:32", - "type": "", - "value": "LBC009" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "25501:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "25501:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "25501:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "25546:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "25558:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25569:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "25554:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "25554:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "25546:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_f838e22b544c153329abcc9856d1b1f7e7f6c83118dc13d7a0606e65edb3cdd8__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "25400:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "25414:4:32", - "type": "" - } - ], - "src": "25249:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "25775:63:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "25792:3:32" - }, - { - "hexValue": "706567696e", - "kind": "string", - "nodeType": "YulLiteral", - "src": "25797:7:32", - "type": "", - "value": "pegin" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "25785:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "25785:20:32" - }, - "nodeType": "YulExpressionStatement", - "src": "25785:20:32" - }, - { - "nodeType": "YulAssignment", - "src": "25814:18:32", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "25825:3:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25830:1:32", - "type": "", - "value": "5" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "25821:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "25821:11:32" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "25814:3:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_packed_t_stringliteral_4dc7b383aaca8b1076677685b160d1864e4801cbbaf42c8044d4665ea1c41120__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "25759:3:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "25767:3:32", - "type": "" - } - ], - "src": "25583:255:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "25982:150:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "25992:27:32", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "26012:6:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "26006:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "26006:13:32" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "25996:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "26067:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "26075:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "26063:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "26063:17:32" - }, - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "26082:3:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "26087:6:32" - } - ], - "functionName": { - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulIdentifier", - "src": "26028:34:32" - }, - "nodeType": "YulFunctionCall", - "src": "26028:66:32" - }, - "nodeType": "YulExpressionStatement", - "src": "26028:66:32" - }, - { - "nodeType": "YulAssignment", - "src": "26103:23:32", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "26114:3:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "26119:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "26110:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "26110:16:32" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "26103:3:32" - } - ] - } - ] - }, - "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": "25958:3:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "25963:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "25974:3:32", - "type": "" - } - ], - "src": "25843:289:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "26311:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "26328:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "26339:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "26321:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "26321:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "26321:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "26362:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "26373:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "26358:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "26358:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "26378:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "26351:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "26351:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "26351:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "26400:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "26411:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "26396:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "26396:18:32" - }, - { - "hexValue": "4c4243303038", - "kind": "string", - "nodeType": "YulLiteral", - "src": "26416:8:32", - "type": "", - "value": "LBC008" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "26389:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "26389:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "26389:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "26434:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "26446:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "26457:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "26442:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "26442:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "26434:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_26efcc4d852e81be6f75389e4f50496331355ea059764b90ab1412936d29ab69__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "26288:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "26302:4:32", - "type": "" - } - ], - "src": "26137:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "26663:64:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "26680:3:32" - }, - { - "hexValue": "7065676f7574", - "kind": "string", - "nodeType": "YulLiteral", - "src": "26685:8:32", - "type": "", - "value": "pegout" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "26673:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "26673:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "26673:21:32" - }, - { - "nodeType": "YulAssignment", - "src": "26703:18:32", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "26714:3:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "26719:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "26710:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "26710:11:32" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "26703:3:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_packed_t_stringliteral_ac320a165668abf6cbe2f0b8e46bf2426fe38861df98fc1861161bf05a853587__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "26647:3:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "26655:3:32", - "type": "" - } - ], - "src": "26471:256:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "26784:116:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "26794:20:32", - "value": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "26809:1:32" - }, - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "26812:1:32" - } - ], - "functionName": { - "name": "mul", - "nodeType": "YulIdentifier", - "src": "26805:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "26805:9:32" - }, - "variableNames": [ - { - "name": "product", - "nodeType": "YulIdentifier", - "src": "26794:7:32" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "26872:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x11", - "nodeType": "YulIdentifier", - "src": "26874:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "26874:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "26874:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "26843:1:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "26836:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "26836:9:32" - }, - { - "arguments": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "26850:1:32" - }, - { - "arguments": [ - { - "name": "product", - "nodeType": "YulIdentifier", - "src": "26857:7:32" - }, - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "26866:1:32" - } - ], - "functionName": { - "name": "div", - "nodeType": "YulIdentifier", - "src": "26853:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "26853:15:32" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "26847:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "26847:22:32" - } - ], - "functionName": { - "name": "or", - "nodeType": "YulIdentifier", - "src": "26833:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "26833:37:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "26826:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "26826:45:32" - }, - "nodeType": "YulIf", - "src": "26823:71:32" - } - ] - }, - "name": "checked_mul_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "x", - "nodeType": "YulTypedName", - "src": "26763:1:32", - "type": "" - }, - { - "name": "y", - "nodeType": "YulTypedName", - "src": "26766:1:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "product", - "nodeType": "YulTypedName", - "src": "26772:7:32", - "type": "" - } - ], - "src": "26732:168:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "26937:95:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "26954:1:32", - "type": "", - "value": "0" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "26961:3:32", - "type": "", - "value": "224" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "26966:10:32", - "type": "", - "value": "0x4e487b71" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "26957:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "26957:20:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "26947:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "26947:31:32" - }, - "nodeType": "YulExpressionStatement", - "src": "26947:31:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "26994:1:32", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "26997:4:32", - "type": "", - "value": "0x12" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "26987:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "26987:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "26987:15:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27018:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27021:4:32", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "27011:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "27011:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "27011:15:32" - } - ] - }, - "name": "panic_error_0x12", - "nodeType": "YulFunctionDefinition", - "src": "26905:127:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "27083:74:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "27106:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x12", - "nodeType": "YulIdentifier", - "src": "27108:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "27108:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "27108:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "27103:1:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "27096:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "27096:9:32" - }, - "nodeType": "YulIf", - "src": "27093:35:32" - }, - { - "nodeType": "YulAssignment", - "src": "27137:14:32", - "value": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "27146:1:32" - }, - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "27149:1:32" - } - ], - "functionName": { - "name": "div", - "nodeType": "YulIdentifier", - "src": "27142:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "27142:9:32" - }, - "variableNames": [ - { - "name": "r", - "nodeType": "YulIdentifier", - "src": "27137:1:32" - } - ] - } - ] - }, - "name": "checked_div_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "x", - "nodeType": "YulTypedName", - "src": "27068:1:32", - "type": "" - }, - { - "name": "y", - "nodeType": "YulTypedName", - "src": "27071:1:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "r", - "nodeType": "YulTypedName", - "src": "27077:1:32", - "type": "" - } - ], - "src": "27037:120:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "27200:74:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "27223:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x12", - "nodeType": "YulIdentifier", - "src": "27225:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "27225:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "27225:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "27220:1:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "27213:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "27213:9:32" - }, - "nodeType": "YulIf", - "src": "27210:35:32" - }, - { - "nodeType": "YulAssignment", - "src": "27254:14:32", - "value": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "27263:1:32" - }, - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "27266:1:32" - } - ], - "functionName": { - "name": "mod", - "nodeType": "YulIdentifier", - "src": "27259:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "27259:9:32" - }, - "variableNames": [ - { - "name": "r", - "nodeType": "YulIdentifier", - "src": "27254:1:32" - } - ] - } - ] - }, - "name": "mod_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "x", - "nodeType": "YulTypedName", - "src": "27185:1:32", - "type": "" - }, - { - "name": "y", - "nodeType": "YulTypedName", - "src": "27188:1:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "r", - "nodeType": "YulTypedName", - "src": "27194:1:32", - "type": "" - } - ], - "src": "27162:112:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "27327:77:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "27337:16:32", - "value": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "27348:1:32" - }, - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "27351:1:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "27344:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "27344:9:32" - }, - "variableNames": [ - { - "name": "sum", - "nodeType": "YulIdentifier", - "src": "27337:3:32" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "27376:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x11", - "nodeType": "YulIdentifier", - "src": "27378:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "27378:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "27378:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "27368:1:32" - }, - { - "name": "sum", - "nodeType": "YulIdentifier", - "src": "27371:3:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "27365:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "27365:10:32" - }, - "nodeType": "YulIf", - "src": "27362:36:32" - } - ] - }, - "name": "checked_add_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "x", - "nodeType": "YulTypedName", - "src": "27310:1:32", - "type": "" - }, - { - "name": "y", - "nodeType": "YulTypedName", - "src": "27313:1:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "sum", - "nodeType": "YulTypedName", - "src": "27319:3:32", - "type": "" - } - ], - "src": "27279:125:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "27456:88:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "27487:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x11", - "nodeType": "YulIdentifier", - "src": "27489:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "27489:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "27489:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "27472:5:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27483:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "27479:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "27479:6:32" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "27469:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "27469:17:32" - }, - "nodeType": "YulIf", - "src": "27466:43:32" - }, - { - "nodeType": "YulAssignment", - "src": "27518:20:32", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "27529:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27536:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "27525:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "27525:13:32" - }, - "variableNames": [ - { - "name": "ret", - "nodeType": "YulIdentifier", - "src": "27518:3:32" - } - ] - } - ] - }, - "name": "increment_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "27438:5:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "ret", - "nodeType": "YulTypedName", - "src": "27448:3:32", - "type": "" - } - ], - "src": "27409:135:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "27604:325:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "27614:22:32", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27628:1:32", - "type": "", - "value": "1" - }, - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "27631:4:32" - } - ], - "functionName": { - "name": "shr", - "nodeType": "YulIdentifier", - "src": "27624:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "27624:12:32" - }, - "variableNames": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "27614:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "27645:38:32", - "value": { - "arguments": [ - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "27675:4:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27681:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "27671:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "27671:12:32" - }, - "variables": [ - { - "name": "outOfPlaceEncoding", - "nodeType": "YulTypedName", - "src": "27649:18:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "27722:31:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "27724:27:32", - "value": { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "27738:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27746:4:32", - "type": "", - "value": "0x7f" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "27734:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "27734:17:32" - }, - "variableNames": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "27724:6:32" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "outOfPlaceEncoding", - "nodeType": "YulIdentifier", - "src": "27702:18:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "27695:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "27695:26:32" - }, - "nodeType": "YulIf", - "src": "27692:61:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "27812:111:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27833:1:32", - "type": "", - "value": "0" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27840:3:32", - "type": "", - "value": "224" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27845:10:32", - "type": "", - "value": "0x4e487b71" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "27836:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "27836:20:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "27826:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "27826:31:32" - }, - "nodeType": "YulExpressionStatement", - "src": "27826:31:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27877:1:32", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27880:4:32", - "type": "", - "value": "0x22" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "27870:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "27870:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "27870:15:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27905:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27908:4:32", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "27898:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "27898:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "27898:15:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "outOfPlaceEncoding", - "nodeType": "YulIdentifier", - "src": "27768:18:32" - }, - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "27791:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27799:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "27788:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "27788:14:32" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "27765:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "27765:38:32" - }, - "nodeType": "YulIf", - "src": "27762:161:32" - } - ] - }, - "name": "extract_byte_array_length", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "data", - "nodeType": "YulTypedName", - "src": "27584:4:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "27593:6:32", - "type": "" - } - ], - "src": "27549:380:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "27990:65:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28007:1:32", - "type": "", - "value": "0" - }, - { - "name": "ptr", - "nodeType": "YulIdentifier", - "src": "28010:3:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "28000:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "28000:14:32" - }, - "nodeType": "YulExpressionStatement", - "src": "28000:14:32" - }, - { - "nodeType": "YulAssignment", - "src": "28023:26:32", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28041:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28044:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "keccak256", - "nodeType": "YulIdentifier", - "src": "28031:9:32" - }, - "nodeType": "YulFunctionCall", - "src": "28031:18:32" - }, - "variableNames": [ - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "28023:4:32" - } - ] - } - ] - }, - "name": "array_dataslot_string_storage", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "ptr", - "nodeType": "YulTypedName", - "src": "27973:3:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "data", - "nodeType": "YulTypedName", - "src": "27981:4:32", - "type": "" - } - ], - "src": "27934:121:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "28141:464:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "28174:425:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "28188:11:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28198:1:32", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "28192:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "28219:2:32" - }, - { - "name": "array", - "nodeType": "YulIdentifier", - "src": "28223:5:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "28212:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "28212:17:32" - }, - "nodeType": "YulExpressionStatement", - "src": "28212:17:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "28242:31:32", - "value": { - "arguments": [ - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "28264:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28268:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "keccak256", - "nodeType": "YulIdentifier", - "src": "28254:9:32" - }, - "nodeType": "YulFunctionCall", - "src": "28254:19:32" - }, - "variables": [ - { - "name": "data", - "nodeType": "YulTypedName", - "src": "28246:4:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "28286:57:32", - "value": { - "arguments": [ - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "28309:4:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28319:1:32", - "type": "", - "value": "5" - }, - { - "arguments": [ - { - "name": "startIndex", - "nodeType": "YulIdentifier", - "src": "28326:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28338:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "28322:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "28322:19:32" - } - ], - "functionName": { - "name": "shr", - "nodeType": "YulIdentifier", - "src": "28315:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "28315:27:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "28305:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "28305:38:32" - }, - "variables": [ - { - "name": "deleteStart", - "nodeType": "YulTypedName", - "src": "28290:11:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "28380:23:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "28382:19:32", - "value": { - "name": "data", - "nodeType": "YulIdentifier", - "src": "28397:4:32" - }, - "variableNames": [ - { - "name": "deleteStart", - "nodeType": "YulIdentifier", - "src": "28382:11:32" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "startIndex", - "nodeType": "YulIdentifier", - "src": "28362:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28374:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "28359:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "28359:20:32" - }, - "nodeType": "YulIf", - "src": "28356:47:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "28416:41:32", - "value": { - "arguments": [ - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "28430:4:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28440:1:32", - "type": "", - "value": "5" - }, - { - "arguments": [ - { - "name": "len", - "nodeType": "YulIdentifier", - "src": "28447:3:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28452:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "28443:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "28443:12:32" - } - ], - "functionName": { - "name": "shr", - "nodeType": "YulIdentifier", - "src": "28436:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "28436:20:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "28426:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "28426:31:32" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "28420:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "28470:24:32", - "value": { - "name": "deleteStart", - "nodeType": "YulIdentifier", - "src": "28483:11:32" - }, - "variables": [ - { - "name": "start", - "nodeType": "YulTypedName", - "src": "28474:5:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "28568:21:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "start", - "nodeType": "YulIdentifier", - "src": "28577:5:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "28584:2:32" - } - ], - "functionName": { - "name": "sstore", - "nodeType": "YulIdentifier", - "src": "28570:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "28570:17:32" - }, - "nodeType": "YulExpressionStatement", - "src": "28570:17:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "start", - "nodeType": "YulIdentifier", - "src": "28518:5:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "28525:2:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "28515:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "28515:13:32" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "28529:26:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "28531:22:32", - "value": { - "arguments": [ - { - "name": "start", - "nodeType": "YulIdentifier", - "src": "28544:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28551:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "28540:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "28540:13:32" - }, - "variableNames": [ - { - "name": "start", - "nodeType": "YulIdentifier", - "src": "28531:5:32" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "28511:3:32", - "statements": [] - }, - "src": "28507:82:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "len", - "nodeType": "YulIdentifier", - "src": "28157:3:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28162:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "28154:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "28154:11:32" - }, - "nodeType": "YulIf", - "src": "28151:448:32" - } - ] - }, - "name": "clean_up_bytearray_end_slots_string_storage", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "array", - "nodeType": "YulTypedName", - "src": "28113:5:32", - "type": "" - }, - { - "name": "len", - "nodeType": "YulTypedName", - "src": "28120:3:32", - "type": "" - }, - { - "name": "startIndex", - "nodeType": "YulTypedName", - "src": "28125:10:32", - "type": "" - } - ], - "src": "28060:545:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "28695:81:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "28705:65:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "28720:4:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28738:1:32", - "type": "", - "value": "3" - }, - { - "name": "len", - "nodeType": "YulIdentifier", - "src": "28741:3:32" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "28734:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "28734:11:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28751:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "28747:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "28747:6:32" - } - ], - "functionName": { - "name": "shr", - "nodeType": "YulIdentifier", - "src": "28730:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "28730:24:32" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "28726:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "28726:29:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "28716:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "28716:40:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28762:1:32", - "type": "", - "value": "1" - }, - { - "name": "len", - "nodeType": "YulIdentifier", - "src": "28765:3:32" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "28758:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "28758:11:32" - } - ], - "functionName": { - "name": "or", - "nodeType": "YulIdentifier", - "src": "28713:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "28713:57:32" - }, - "variableNames": [ - { - "name": "used", - "nodeType": "YulIdentifier", - "src": "28705:4:32" - } - ] - } - ] - }, - "name": "extract_used_part_and_set_length_of_short_byte_array", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "data", - "nodeType": "YulTypedName", - "src": "28672:4:32", - "type": "" - }, - { - "name": "len", - "nodeType": "YulTypedName", - "src": "28678:3:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "used", - "nodeType": "YulTypedName", - "src": "28686:4:32", - "type": "" - } - ], - "src": "28610:166:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "28877:1256:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "28887:24:32", - "value": { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "28907:3:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "28901:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "28901:10:32" - }, - "variables": [ - { - "name": "newLen", - "nodeType": "YulTypedName", - "src": "28891:6:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "28954:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "28956:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "28956:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "28956:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "28926:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28942:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28946:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "28938:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "28938:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28950:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "28934:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "28934:18:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "28923:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "28923:30:32" - }, - "nodeType": "YulIf", - "src": "28920:56:32" - }, - { - "expression": { - "arguments": [ - { - "name": "slot", - "nodeType": "YulIdentifier", - "src": "29029:4:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "slot", - "nodeType": "YulIdentifier", - "src": "29067:4:32" - } - ], - "functionName": { - "name": "sload", - "nodeType": "YulIdentifier", - "src": "29061:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "29061:11:32" - } - ], - "functionName": { - "name": "extract_byte_array_length", - "nodeType": "YulIdentifier", - "src": "29035:25:32" - }, - "nodeType": "YulFunctionCall", - "src": "29035:38:32" - }, - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "29075:6:32" - } - ], - "functionName": { - "name": "clean_up_bytearray_end_slots_string_storage", - "nodeType": "YulIdentifier", - "src": "28985:43:32" - }, - "nodeType": "YulFunctionCall", - "src": "28985:97:32" - }, - "nodeType": "YulExpressionStatement", - "src": "28985:97:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "29091:18:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "29108:1:32", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "srcOffset", - "nodeType": "YulTypedName", - "src": "29095:9:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "29118:23:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "29137:4:32", - "type": "", - "value": "0x20" - }, - "variables": [ - { - "name": "srcOffset_1", - "nodeType": "YulTypedName", - "src": "29122:11:32", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "29150:24:32", - "value": { - "name": "srcOffset_1", - "nodeType": "YulIdentifier", - "src": "29163:11:32" - }, - "variableNames": [ - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "29150:9:32" - } - ] - }, - { - "cases": [ - { - "body": { - "nodeType": "YulBlock", - "src": "29220:656:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "29234:35:32", - "value": { - "arguments": [ - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "29253:6:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "29265:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "29261:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "29261:7:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "29249:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "29249:20:32" - }, - "variables": [ - { - "name": "loopEnd", - "nodeType": "YulTypedName", - "src": "29238:7:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "29282:49:32", - "value": { - "arguments": [ - { - "name": "slot", - "nodeType": "YulIdentifier", - "src": "29326:4:32" - } - ], - "functionName": { - "name": "array_dataslot_string_storage", - "nodeType": "YulIdentifier", - "src": "29296:29:32" - }, - "nodeType": "YulFunctionCall", - "src": "29296:35:32" - }, - "variables": [ - { - "name": "dstPtr", - "nodeType": "YulTypedName", - "src": "29286:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "29344:10:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "29353:1:32", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "i", - "nodeType": "YulTypedName", - "src": "29348:1:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "29431:172:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "dstPtr", - "nodeType": "YulIdentifier", - "src": "29456:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "29474:3:32" - }, - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "29479:9:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "29470:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "29470:19:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "29464:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "29464:26:32" - } - ], - "functionName": { - "name": "sstore", - "nodeType": "YulIdentifier", - "src": "29449:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "29449:42:32" - }, - "nodeType": "YulExpressionStatement", - "src": "29449:42:32" - }, - { - "nodeType": "YulAssignment", - "src": "29508:24:32", - "value": { - "arguments": [ - { - "name": "dstPtr", - "nodeType": "YulIdentifier", - "src": "29522:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "29530:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "29518:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "29518:14:32" - }, - "variableNames": [ - { - "name": "dstPtr", - "nodeType": "YulIdentifier", - "src": "29508:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "29549:40:32", - "value": { - "arguments": [ - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "29566:9:32" - }, - { - "name": "srcOffset_1", - "nodeType": "YulIdentifier", - "src": "29577:11:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "29562:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "29562:27:32" - }, - "variableNames": [ - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "29549:9:32" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "29378:1:32" - }, - { - "name": "loopEnd", - "nodeType": "YulIdentifier", - "src": "29381:7:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "29375:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "29375:14:32" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "29390:28:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "29392:24:32", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "29401:1:32" - }, - { - "name": "srcOffset_1", - "nodeType": "YulIdentifier", - "src": "29404:11:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "29397:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "29397:19:32" - }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "29392:1:32" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "29371:3:32", - "statements": [] - }, - "src": "29367:236:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "29651:166:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "29669:43:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "29696:3:32" - }, - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "29701:9:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "29692:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "29692:19:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "29686:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "29686:26:32" - }, - "variables": [ - { - "name": "lastValue", - "nodeType": "YulTypedName", - "src": "29673:9:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "dstPtr", - "nodeType": "YulIdentifier", - "src": "29736:6:32" - }, - { - "arguments": [ - { - "name": "lastValue", - "nodeType": "YulIdentifier", - "src": "29748:9:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "29775:1:32", - "type": "", - "value": "3" - }, - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "29778:6:32" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "29771:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "29771:14:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "29787:3:32", - "type": "", - "value": "248" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "29767:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "29767:24:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "29797:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "29793:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "29793:6:32" - } - ], - "functionName": { - "name": "shr", - "nodeType": "YulIdentifier", - "src": "29763:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "29763:37:32" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "29759:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "29759:42:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "29744:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "29744:58:32" - } - ], - "functionName": { - "name": "sstore", - "nodeType": "YulIdentifier", - "src": "29729:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "29729:74:32" - }, - "nodeType": "YulExpressionStatement", - "src": "29729:74:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "loopEnd", - "nodeType": "YulIdentifier", - "src": "29622:7:32" - }, - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "29631:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "29619:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "29619:19:32" - }, - "nodeType": "YulIf", - "src": "29616:201:32" - }, - { - "expression": { - "arguments": [ - { - "name": "slot", - "nodeType": "YulIdentifier", - "src": "29837:4:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "29851:1:32", - "type": "", - "value": "1" - }, - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "29854:6:32" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "29847:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "29847:14:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "29863:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "29843:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "29843:22:32" - } - ], - "functionName": { - "name": "sstore", - "nodeType": "YulIdentifier", - "src": "29830:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "29830:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "29830:36:32" - } - ] - }, - "nodeType": "YulCase", - "src": "29213:663:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "29218:1:32", - "type": "", - "value": "1" - } - }, - { - "body": { - "nodeType": "YulBlock", - "src": "29893:234:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "29907:14:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "29920:1:32", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "29911:5:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "29956:67:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "29974:35:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "29993:3:32" - }, - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "29998:9:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "29989:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "29989:19:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "29983:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "29983:26:32" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "29974:5:32" - } - ] - } - ] - }, - "condition": { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "29937:6:32" - }, - "nodeType": "YulIf", - "src": "29934:89:32" - }, - { - "expression": { - "arguments": [ - { - "name": "slot", - "nodeType": "YulIdentifier", - "src": "30043:4:32" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "30102:5:32" - }, - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "30109:6:32" - } - ], - "functionName": { - "name": "extract_used_part_and_set_length_of_short_byte_array", - "nodeType": "YulIdentifier", - "src": "30049:52:32" - }, - "nodeType": "YulFunctionCall", - "src": "30049:67:32" - } - ], - "functionName": { - "name": "sstore", - "nodeType": "YulIdentifier", - "src": "30036:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "30036:81:32" - }, - "nodeType": "YulExpressionStatement", - "src": "30036:81:32" - } - ] - }, - "nodeType": "YulCase", - "src": "29885:242:32", - "value": "default" - } - ], - "expression": { - "arguments": [ - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "29193:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "29201:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "29190:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "29190:14:32" - }, - "nodeType": "YulSwitch", - "src": "29183:944:32" - } - ] - }, - "name": "copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "slot", - "nodeType": "YulTypedName", - "src": "28862:4:32", - "type": "" - }, - { - "name": "src", - "nodeType": "YulTypedName", - "src": "28868:3:32", - "type": "" - } - ], - "src": "28781:1352:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "30267:119:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "30277:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "30289:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "30300:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "30285:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "30285:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "30277:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "30319:9:32" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "30330:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "30312:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "30312:25:32" - }, - "nodeType": "YulExpressionStatement", - "src": "30312:25:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "30357:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "30368:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "30353:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "30353:18:32" - }, - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "30373:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "30346:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "30346:34:32" - }, - "nodeType": "YulExpressionStatement", - "src": "30346:34:32" - } - ] - }, - "name": "abi_encode_tuple_t_uint256_t_uint256__to_t_uint256_t_uint256__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "30228:9:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "30239:6:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "30247:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "30258:4:32", - "type": "" - } - ], - "src": "30138:248:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "30565:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "30582:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "30593:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "30575:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "30575:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "30575:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "30616:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "30627:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "30612:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "30612:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "30632:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "30605:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "30605:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "30605:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "30654:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "30665:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "30650:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "30650:18:32" - }, - { - "hexValue": "4c4243303031", - "kind": "string", - "nodeType": "YulLiteral", - "src": "30670:8:32", - "type": "", - "value": "LBC001" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "30643:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "30643:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "30643:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "30688:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "30700:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "30711:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "30696:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "30696:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "30688:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_a509ede2323476f3f5be48987391c5516e4ea8116b376287322ed2188be0e53c__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "30542:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "30556:4:32", - "type": "" - } - ], - "src": "30391:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "30899:236:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "30916:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "30927:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "30909:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "30909:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "30909:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "30950:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "30961:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "30946:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "30946:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "30966:2:32", - "type": "", - "value": "46" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "30939:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "30939:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "30939:30:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "30989:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "31000:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "30985:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "30985:18:32" - }, - { - "hexValue": "496e697469616c697a61626c653a20636f6e747261637420697320616c726561", - "kind": "string", - "nodeType": "YulLiteral", - "src": "31005:34:32", - "type": "", - "value": "Initializable: contract is alrea" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "30978:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "30978:62:32" - }, - "nodeType": "YulExpressionStatement", - "src": "30978:62:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "31060:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "31071:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "31056:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "31056:18:32" - }, - { - "hexValue": "647920696e697469616c697a6564", - "kind": "string", - "nodeType": "YulLiteral", - "src": "31076:16:32", - "type": "", - "value": "dy initialized" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "31049:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "31049:44:32" - }, - "nodeType": "YulExpressionStatement", - "src": "31049:44:32" - }, - { - "nodeType": "YulAssignment", - "src": "31102:27:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "31114:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "31125:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "31110:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "31110:19:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "31102:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_7a2a4e26842155ea933fe6eb6e3137eb5a296dcdf55721c552be7b4c3cc23759__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "30876:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "30890:4:32", - "type": "" - } - ], - "src": "30725:410:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "31314:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "31331:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "31342:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "31324:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "31324:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "31324:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "31365:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "31376:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "31361:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "31361:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "31381:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "31354:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "31354:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "31354:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "31403:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "31414:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "31399:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "31399:18:32" - }, - { - "hexValue": "4c4243303034", - "kind": "string", - "nodeType": "YulLiteral", - "src": "31419:8:32", - "type": "", - "value": "LBC004" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "31392:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "31392:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "31392:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "31437:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "31449:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "31460:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "31445:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "31445:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "31437:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_b08af29ae9ab6d901d6564b35ffdb791cf633ea45a36ea23bf660bfada2612fe__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "31291:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "31305:4:32", - "type": "" - } - ], - "src": "31140:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "31648:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "31665:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "31676:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "31658:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "31658:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "31658:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "31699:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "31710:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "31695:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "31695:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "31715:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "31688:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "31688:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "31688:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "31737:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "31748:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "31733:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "31733:18:32" - }, - { - "hexValue": "4c4243303732", - "kind": "string", - "nodeType": "YulLiteral", - "src": "31753:8:32", - "type": "", - "value": "LBC072" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "31726:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "31726:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "31726:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "31771:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "31783:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "31794:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "31779:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "31779:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "31771:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_aef7c38006d01c174c6b5b14fe8e6059baae2f7a6dd6bce99907771d261c0abd__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "31625:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "31639:4:32", - "type": "" - } - ], - "src": "31474:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "31982:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "31999:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "32010:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "31992:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "31992:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "31992:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "32033:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "32044:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "32029:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "32029:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "32049:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "32022:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "32022:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "32022:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "32071:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "32082:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "32067:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "32067:18:32" - }, - { - "hexValue": "4c4243303733", - "kind": "string", - "nodeType": "YulLiteral", - "src": "32087:8:32", - "type": "", - "value": "LBC073" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "32060:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "32060:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "32060:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "32105:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "32117:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "32128:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "32113:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "32113:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "32105:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_b87a2fdd3e8805c862b0b631e2cf43b048cd2e48956f7516ed8be20eb14ec931__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "31959:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "31973:4:32", - "type": "" - } - ], - "src": "31808:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "32249:87:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "32259:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "32271:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "32282:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "32267:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "32267:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "32259:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "32301:9:32" - }, - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "32316:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "32324:4:32", - "type": "", - "value": "0xff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "32312:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "32312:17:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "32294:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "32294:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "32294:36:32" - } - ] - }, - "name": "abi_encode_tuple_t_rational_1_by_1__to_t_uint8__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "32218:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "32229:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "32240:4:32", - "type": "" - } - ], - "src": "32142:194:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "32373:95:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "32390:1:32", - "type": "", - "value": "0" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "32397:3:32", - "type": "", - "value": "224" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "32402:10:32", - "type": "", - "value": "0x4e487b71" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "32393:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "32393:20:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "32383:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "32383:31:32" - }, - "nodeType": "YulExpressionStatement", - "src": "32383:31:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "32430:1:32", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "32433:4:32", - "type": "", - "value": "0x32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "32423:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "32423:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "32423:15:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "32454:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "32457:4:32", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "32447:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "32447:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "32447:15:32" - } - ] - }, - "name": "panic_error_0x32", - "nodeType": "YulFunctionDefinition", - "src": "32341:127:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "32647:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "32664:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "32675:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "32657:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "32657:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "32657:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "32698:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "32709:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "32694:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "32694:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "32714:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "32687:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "32687:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "32687:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "32736:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "32747:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "32732:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "32732:18:32" - }, - { - "hexValue": "4c4243303233", - "kind": "string", - "nodeType": "YulLiteral", - "src": "32752:8:32", - "type": "", - "value": "LBC023" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "32725:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "32725:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "32725:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "32770:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "32782:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "32793:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "32778:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "32778:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "32770:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_1e153c8413fa71b1dc88c42214ae3211e20bbd7d323adc3a7cb82fb90c05d672__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "32624:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "32638:4:32", - "type": "" - } - ], - "src": "32473:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "32981:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "32998:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "33009:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "32991:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "32991:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "32991:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "33032:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "33043:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "33028:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "33028:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "33048:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "33021:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "33021:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "33021:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "33070:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "33081:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "33066:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "33066:18:32" - }, - { - "hexValue": "4c4243303238", - "kind": "string", - "nodeType": "YulLiteral", - "src": "33086:8:32", - "type": "", - "value": "LBC028" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "33059:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "33059:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "33059:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "33104:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "33116:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "33127:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "33112:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "33112:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "33104:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_4c4b8fd0ae53a3caa85e74f53bba210cefdcb0e1d1c519eb8385d2cd3741f7fb__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "32958:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "32972:4:32", - "type": "" - } - ], - "src": "32807:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "33324:211:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "33341:9:32" - }, - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "33356:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "33372:3:32", - "type": "", - "value": "160" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "33377:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "33368:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "33368:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "33381:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "33364:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "33364:19:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "33352:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "33352:32:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "33334:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "33334:51:32" - }, - "nodeType": "YulExpressionStatement", - "src": "33334:51:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "33405:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "33416:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "33401:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "33401:18:32" - }, - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "33421:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "33394:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "33394:34:32" - }, - "nodeType": "YulExpressionStatement", - "src": "33394:34:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "33448:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "33459:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "33444:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "33444:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "33464:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "33437:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "33437:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "33437:30:32" - }, - { - "nodeType": "YulAssignment", - "src": "33476:53:32", - "value": { - "arguments": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "33502:6:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "33514:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "33525:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "33510:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "33510:18:32" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "33484:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "33484:45:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "33476:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_address_t_bytes32_t_bytes_memory_ptr__to_t_address_t_bytes32_t_bytes_memory_ptr__fromStack_library_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "33277:9:32", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "33288:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "33296:6:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "33304:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "33315:4:32", - "type": "" - } - ], - "src": "33141:394:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "33618:167:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "33664:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "33673:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "33676:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "33666:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "33666:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "33666:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "33639:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "33648:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "33635:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "33635:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "33660:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "33631:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "33631:32:32" - }, - "nodeType": "YulIf", - "src": "33628:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "33689:29:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "33708:9:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "33702:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "33702:16:32" - }, - "variables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "33693:5:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "33749:5:32" - } - ], - "functionName": { - "name": "validator_revert_bool", - "nodeType": "YulIdentifier", - "src": "33727:21:32" - }, - "nodeType": "YulFunctionCall", - "src": "33727:28:32" - }, - "nodeType": "YulExpressionStatement", - "src": "33727:28:32" - }, - { - "nodeType": "YulAssignment", - "src": "33764:15:32", - "value": { - "name": "value", - "nodeType": "YulIdentifier", - "src": "33774:5:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "33764:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bool_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "33584:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "33595:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "33607:6:32", - "type": "" - } - ], - "src": "33540:245:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "33964:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "33981:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "33992:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "33974:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "33974:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "33974:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "34015:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "34026:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "34011:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "34011:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "34031:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "34004:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "34004:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "34004:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "34053:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "34064:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "34049:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "34049:18:32" - }, - { - "hexValue": "4c4243303239", - "kind": "string", - "nodeType": "YulLiteral", - "src": "34069:8:32", - "type": "", - "value": "LBC029" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "34042:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "34042:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "34042:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "34087:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "34099:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "34110:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "34095:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "34095:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "34087:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_ebb41fd1c3d95b8eaff1e56d491f7a983f7f3039fac57e6fad7993de139e2216__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "33941:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "33955:4:32", - "type": "" - } - ], - "src": "33790:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "34298:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "34315:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "34326:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "34308:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "34308:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "34308:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "34349:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "34360:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "34345:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "34345:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "34365:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "34338:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "34338:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "34338:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "34387:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "34398:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "34383:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "34383:18:32" - }, - { - "hexValue": "4c4243303330", - "kind": "string", - "nodeType": "YulLiteral", - "src": "34403:8:32", - "type": "", - "value": "LBC030" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "34376:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "34376:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "34376:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "34421:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "34433:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "34444:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "34429:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "34429:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "34421:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_6b987c2142a6ed89e76021f4d9a60f3cbfc2f7110bd81bc33ff58ad7cf27befa__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "34275:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "34289:4:32", - "type": "" - } - ], - "src": "34124:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "34632:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "34649:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "34660:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "34642:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "34642:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "34642:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "34683:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "34694:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "34679:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "34679:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "34699:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "34672:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "34672:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "34672:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "34721:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "34732:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "34717:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "34717:18:32" - }, - { - "hexValue": "4c4243303331", - "kind": "string", - "nodeType": "YulLiteral", - "src": "34737:8:32", - "type": "", - "value": "LBC031" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "34710:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "34710:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "34710:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "34755:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "34767:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "34778:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "34763:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "34763:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "34755:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_b9f5a33cea5e5738277827f2f81faa92d1d3c73cf030e2542a7b80c6f7bdc8a7__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "34609:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "34623:4:32", - "type": "" - } - ], - "src": "34458:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "34966:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "34983:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "34994:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "34976:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "34976:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "34976:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "35017:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "35028:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "35013:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "35013:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "35033:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "35006:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "35006:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "35006:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "35055:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "35066:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "35051:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "35051:18:32" - }, - { - "hexValue": "4c4243303332", - "kind": "string", - "nodeType": "YulLiteral", - "src": "35071:8:32", - "type": "", - "value": "LBC032" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "35044:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "35044:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "35044:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "35089:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "35101:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "35112:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "35097:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "35097:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "35089:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_5d8d108d93a53583cf1949d2287cc7f0af5603bd102faf9db90e7e6bbc90ade8__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "34943:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "34957:4:32", - "type": "" - } - ], - "src": "34792:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "35300:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "35317:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "35328:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "35310:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "35310:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "35310:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "35351:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "35362:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "35347:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "35347:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "35367:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "35340:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "35340:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "35340:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "35389:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "35400:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "35385:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "35385:18:32" - }, - { - "hexValue": "4c4243303333", - "kind": "string", - "nodeType": "YulLiteral", - "src": "35405:8:32", - "type": "", - "value": "LBC033" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "35378:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "35378:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "35378:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "35423:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "35435:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "35446:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "35431:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "35431:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "35423:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_e976d8a3febca36c67dcd5b38ae845ffd2f248a24eaf2d7a97f208ffd80ff125__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "35277:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "35291:4:32", - "type": "" - } - ], - "src": "35126:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "35634:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "35651:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "35662:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "35644:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "35644:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "35644:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "35685:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "35696:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "35681:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "35681:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "35701:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "35674:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "35674:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "35674:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "35723:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "35734:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "35719:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "35719:18:32" - }, - { - "hexValue": "4c4243303334", - "kind": "string", - "nodeType": "YulLiteral", - "src": "35739:8:32", - "type": "", - "value": "LBC034" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "35712:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "35712:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "35712:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "35757:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "35769:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "35780:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "35765:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "35765:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "35757:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_745436b16371784f7b451bf4bed6f0978e2f007f74e71dfa0c49414b3a522759__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "35611:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "35625:4:32", - "type": "" - } - ], - "src": "35460:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "35968:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "35985:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "35996:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "35978:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "35978:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "35978:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "36019:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "36030:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "36015:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "36015:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "36035:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "36008:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "36008:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "36008:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "36057:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "36068:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "36053:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "36053:18:32" - }, - { - "hexValue": "4c4243303335", - "kind": "string", - "nodeType": "YulLiteral", - "src": "36073:8:32", - "type": "", - "value": "LBC035" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "36046:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "36046:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "36046:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "36091:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "36103:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "36114:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "36099:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "36099:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "36091:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_37570ea73114ff69cb8aab9e09d6f5beb11b36ce1a2ae19ee6f5de28dc42d754__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "35945:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "35959:4:32", - "type": "" - } - ], - "src": "35794:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "36302:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "36319:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "36330:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "36312:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "36312:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "36312:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "36353:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "36364:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "36349:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "36349:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "36369:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "36342:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "36342:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "36342:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "36391:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "36402:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "36387:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "36387:18:32" - }, - { - "hexValue": "4c4243303336", - "kind": "string", - "nodeType": "YulLiteral", - "src": "36407:8:32", - "type": "", - "value": "LBC036" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "36380:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "36380:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "36380:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "36425:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "36437:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "36448:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "36433:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "36433:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "36425:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_5ccb4449252c316623411606962515c0966208bcce5fe352c2e850b058d1077c__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "36279:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "36293:4:32", - "type": "" - } - ], - "src": "36128:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "36619:188:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "36629:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "36641:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "36652:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "36637:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "36637:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "36629:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "36671:9:32" - }, - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "36686:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "36702:3:32", - "type": "", - "value": "160" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "36707:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "36698:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "36698:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "36711:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "36694:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "36694:19:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "36682:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "36682:32:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "36664:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "36664:51:32" - }, - "nodeType": "YulExpressionStatement", - "src": "36664:51:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "36735:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "36746:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "36731:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "36731:18:32" - }, - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "36751:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "36724:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "36724:34:32" - }, - "nodeType": "YulExpressionStatement", - "src": "36724:34:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "36778:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "36789:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "36774:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "36774:18:32" - }, - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "36794:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "36767:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "36767:34:32" - }, - "nodeType": "YulExpressionStatement", - "src": "36767:34:32" - } - ] - }, - "name": "abi_encode_tuple_t_address_t_uint256_t_bytes32__to_t_address_t_uint256_t_bytes32__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "36572:9:32", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "36583:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "36591:6:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "36599:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "36610:4:32", - "type": "" - } - ], - "src": "36462:345:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "36939:119:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "36949:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "36961:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "36972:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "36957:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "36957:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "36949:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "36991:9:32" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "37002:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "36984:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "36984:25:32" - }, - "nodeType": "YulExpressionStatement", - "src": "36984:25:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "37029:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "37040:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "37025:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "37025:18:32" - }, - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "37045:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "37018:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "37018:34:32" - }, - "nodeType": "YulExpressionStatement", - "src": "37018:34:32" - } - ] - }, - "name": "abi_encode_tuple_t_bytes32_t_int256__to_t_bytes32_t_int256__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "36900:9:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "36911:6:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "36919:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "36930:4:32", - "type": "" - } - ], - "src": "36812:246:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "37107:64:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "37124:3:32" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "37133:5:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "37152:2:32", - "type": "", - "value": "96" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "37156:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "37148:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "37148:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "37160:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "37144:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "37144:18:32" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "37140:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "37140:23:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "37129:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "37129:35:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "37117:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "37117:48:32" - }, - "nodeType": "YulExpressionStatement", - "src": "37117:48:32" - } - ] - }, - "name": "abi_encode_bytes20", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "37091:5:32", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "37098:3:32", - "type": "" - } - ], - "src": "37063:108:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "37237:2208:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "37247:16:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "37257:6:32", - "type": "", - "value": "0x0240" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "37251:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "37297:5:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "37291:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "37291:12:32" - }, - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "37305:3:32" - } - ], - "functionName": { - "name": "abi_encode_bytes20", - "nodeType": "YulIdentifier", - "src": "37272:18:32" - }, - "nodeType": "YulFunctionCall", - "src": "37272:37:32" - }, - "nodeType": "YulExpressionStatement", - "src": "37272:37:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "37318:43:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "37348:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "37355:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "37344:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "37344:16:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "37338:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "37338:23:32" - }, - "variables": [ - { - "name": "memberValue0", - "nodeType": "YulTypedName", - "src": "37322:12:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "memberValue0", - "nodeType": "YulIdentifier", - "src": "37389:12:32" - }, - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "37407:3:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "37412:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "37403:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "37403:14:32" - } - ], - "functionName": { - "name": "abi_encode_address", - "nodeType": "YulIdentifier", - "src": "37370:18:32" - }, - "nodeType": "YulFunctionCall", - "src": "37370:48:32" - }, - "nodeType": "YulExpressionStatement", - "src": "37370:48:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "37427:45:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "37459:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "37466:4:32", - "type": "", - "value": "0x40" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "37455:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "37455:16:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "37449:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "37449:23:32" - }, - "variables": [ - { - "name": "memberValue0_1", - "nodeType": "YulTypedName", - "src": "37431:14:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "memberValue0_1", - "nodeType": "YulIdentifier", - "src": "37500:14:32" - }, - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "37520:3:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "37525:4:32", - "type": "", - "value": "0x40" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "37516:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "37516:14:32" - } - ], - "functionName": { - "name": "abi_encode_address", - "nodeType": "YulIdentifier", - "src": "37481:18:32" - }, - "nodeType": "YulFunctionCall", - "src": "37481:50:32" - }, - "nodeType": "YulExpressionStatement", - "src": "37481:50:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "37540:45:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "37572:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "37579:4:32", - "type": "", - "value": "0x60" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "37568:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "37568:16:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "37562:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "37562:23:32" - }, - "variables": [ - { - "name": "memberValue0_2", - "nodeType": "YulTypedName", - "src": "37544:14:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "37605:3:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "37610:4:32", - "type": "", - "value": "0x60" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "37601:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "37601:14:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "37617:2:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "37594:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "37594:26:32" - }, - "nodeType": "YulExpressionStatement", - "src": "37594:26:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "37629:59:32", - "value": { - "arguments": [ - { - "name": "memberValue0_2", - "nodeType": "YulIdentifier", - "src": "37659:14:32" - }, - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "37679:3:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "37684:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "37675:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "37675:12:32" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "37641:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "37641:47:32" - }, - "variables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "37633:4:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "37697:45:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "37729:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "37736:4:32", - "type": "", - "value": "0x80" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "37725:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "37725:16:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "37719:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "37719:23:32" - }, - "variables": [ - { - "name": "memberValue0_3", - "nodeType": "YulTypedName", - "src": "37701:14:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "memberValue0_3", - "nodeType": "YulIdentifier", - "src": "37770:14:32" - }, - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "37790:3:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "37795:4:32", - "type": "", - "value": "0x80" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "37786:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "37786:14:32" - } - ], - "functionName": { - "name": "abi_encode_address", - "nodeType": "YulIdentifier", - "src": "37751:18:32" - }, - "nodeType": "YulFunctionCall", - "src": "37751:50:32" - }, - "nodeType": "YulExpressionStatement", - "src": "37751:50:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "37810:45:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "37842:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "37849:4:32", - "type": "", - "value": "0xa0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "37838:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "37838:16:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "37832:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "37832:23:32" - }, - "variables": [ - { - "name": "memberValue0_4", - "nodeType": "YulTypedName", - "src": "37814:14:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "37875:3:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "37880:4:32", - "type": "", - "value": "0xa0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "37871:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "37871:14:32" - }, - { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "37891:4:32" - }, - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "37897:3:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "37887:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "37887:14:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "37864:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "37864:38:32" - }, - "nodeType": "YulExpressionStatement", - "src": "37864:38:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "37911:53:32", - "value": { - "arguments": [ - { - "name": "memberValue0_4", - "nodeType": "YulIdentifier", - "src": "37943:14:32" - }, - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "37959:4:32" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "37925:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "37925:39:32" - }, - "variables": [ - { - "name": "tail_1", - "nodeType": "YulTypedName", - "src": "37915:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "37984:3:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "37989:4:32", - "type": "", - "value": "0xc0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "37980:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "37980:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "38006:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "38013:4:32", - "type": "", - "value": "0xc0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "38002:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "38002:16:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "37996:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "37996:23:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "37973:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "37973:47:32" - }, - "nodeType": "YulExpressionStatement", - "src": "37973:47:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "38040:3:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "38045:4:32", - "type": "", - "value": "0xe0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "38036:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "38036:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "38062:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "38069:4:32", - "type": "", - "value": "0xe0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "38058:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "38058:16:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "38052:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "38052:23:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "38029:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "38029:47:32" - }, - "nodeType": "YulExpressionStatement", - "src": "38029:47:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "38085:16:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "38095:6:32", - "type": "", - "value": "0x0100" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "38089:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "38110:43:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "38142:5:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "38149:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "38138:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "38138:14:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "38132:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "38132:21:32" - }, - "variables": [ - { - "name": "memberValue0_5", - "nodeType": "YulTypedName", - "src": "38114:14:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "memberValue0_5", - "nodeType": "YulIdentifier", - "src": "38181:14:32" - }, - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "38201:3:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "38206:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "38197:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "38197:12:32" - } - ], - "functionName": { - "name": "abi_encode_address", - "nodeType": "YulIdentifier", - "src": "38162:18:32" - }, - "nodeType": "YulFunctionCall", - "src": "38162:48:32" - }, - "nodeType": "YulExpressionStatement", - "src": "38162:48:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "38219:16:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "38229:6:32", - "type": "", - "value": "0x0120" - }, - "variables": [ - { - "name": "_3", - "nodeType": "YulTypedName", - "src": "38223:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "38244:43:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "38276:5:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "38283:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "38272:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "38272:14:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "38266:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "38266:21:32" - }, - "variables": [ - { - "name": "memberValue0_6", - "nodeType": "YulTypedName", - "src": "38248:14:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "38307:3:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "38312:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "38303:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "38303:12:32" - }, - { - "arguments": [ - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "38321:6:32" - }, - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "38329:3:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "38317:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "38317:16:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "38296:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "38296:38:32" - }, - "nodeType": "YulExpressionStatement", - "src": "38296:38:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "38343:55:32", - "value": { - "arguments": [ - { - "name": "memberValue0_6", - "nodeType": "YulIdentifier", - "src": "38375:14:32" - }, - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "38391:6:32" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "38357:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "38357:41:32" - }, - "variables": [ - { - "name": "tail_2", - "nodeType": "YulTypedName", - "src": "38347:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "38407:16:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "38417:6:32", - "type": "", - "value": "0x0140" - }, - "variables": [ - { - "name": "_4", - "nodeType": "YulTypedName", - "src": "38411:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "38432:43:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "38464:5:32" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "38471:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "38460:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "38460:14:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "38454:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "38454:21:32" - }, - "variables": [ - { - "name": "memberValue0_7", - "nodeType": "YulTypedName", - "src": "38436:14:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "memberValue0_7", - "nodeType": "YulIdentifier", - "src": "38502:14:32" - }, - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "38522:3:32" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "38527:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "38518:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "38518:12:32" - } - ], - "functionName": { - "name": "abi_encode_uint32", - "nodeType": "YulIdentifier", - "src": "38484:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "38484:47:32" - }, - "nodeType": "YulExpressionStatement", - "src": "38484:47:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "38540:16:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "38550:6:32", - "type": "", - "value": "0x0160" - }, - "variables": [ - { - "name": "_5", - "nodeType": "YulTypedName", - "src": "38544:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "38565:43:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "38597:5:32" - }, - { - "name": "_5", - "nodeType": "YulIdentifier", - "src": "38604:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "38593:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "38593:14:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "38587:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "38587:21:32" - }, - "variables": [ - { - "name": "memberValue0_8", - "nodeType": "YulTypedName", - "src": "38569:14:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "memberValue0_8", - "nodeType": "YulIdentifier", - "src": "38634:14:32" - }, - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "38654:3:32" - }, - { - "name": "_5", - "nodeType": "YulIdentifier", - "src": "38659:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "38650:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "38650:12:32" - } - ], - "functionName": { - "name": "abi_encode_int64", - "nodeType": "YulIdentifier", - "src": "38617:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "38617:46:32" - }, - "nodeType": "YulExpressionStatement", - "src": "38617:46:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "38672:16:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "38682:6:32", - "type": "", - "value": "0x0180" - }, - "variables": [ - { - "name": "_6", - "nodeType": "YulTypedName", - "src": "38676:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "38708:3:32" - }, - { - "name": "_6", - "nodeType": "YulIdentifier", - "src": "38713:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "38704:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "38704:12:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "38728:5:32" - }, - { - "name": "_6", - "nodeType": "YulIdentifier", - "src": "38735:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "38724:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "38724:14:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "38718:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "38718:21:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "38697:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "38697:43:32" - }, - "nodeType": "YulExpressionStatement", - "src": "38697:43:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "38749:16:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "38759:6:32", - "type": "", - "value": "0x01a0" - }, - "variables": [ - { - "name": "_7", - "nodeType": "YulTypedName", - "src": "38753:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "38774:43:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "38806:5:32" - }, - { - "name": "_7", - "nodeType": "YulIdentifier", - "src": "38813:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "38802:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "38802:14:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "38796:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "38796:21:32" - }, - "variables": [ - { - "name": "memberValue0_9", - "nodeType": "YulTypedName", - "src": "38778:14:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "memberValue0_9", - "nodeType": "YulIdentifier", - "src": "38844:14:32" - }, - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "38864:3:32" - }, - { - "name": "_7", - "nodeType": "YulIdentifier", - "src": "38869:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "38860:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "38860:12:32" - } - ], - "functionName": { - "name": "abi_encode_uint32", - "nodeType": "YulIdentifier", - "src": "38826:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "38826:47:32" - }, - "nodeType": "YulExpressionStatement", - "src": "38826:47:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "38882:16:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "38892:6:32", - "type": "", - "value": "0x01c0" - }, - "variables": [ - { - "name": "_8", - "nodeType": "YulTypedName", - "src": "38886:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "38907:44:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "38940:5:32" - }, - { - "name": "_8", - "nodeType": "YulIdentifier", - "src": "38947:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "38936:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "38936:14:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "38930:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "38930:21:32" - }, - "variables": [ - { - "name": "memberValue0_10", - "nodeType": "YulTypedName", - "src": "38911:15:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "memberValue0_10", - "nodeType": "YulIdentifier", - "src": "38978:15:32" - }, - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "38999:3:32" - }, - { - "name": "_8", - "nodeType": "YulIdentifier", - "src": "39004:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "38995:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "38995:12:32" - } - ], - "functionName": { - "name": "abi_encode_uint32", - "nodeType": "YulIdentifier", - "src": "38960:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "38960:48:32" - }, - "nodeType": "YulExpressionStatement", - "src": "38960:48:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "39017:16:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "39027:6:32", - "type": "", - "value": "0x01e0" - }, - "variables": [ - { - "name": "_9", - "nodeType": "YulTypedName", - "src": "39021:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "39042:44:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "39075:5:32" - }, - { - "name": "_9", - "nodeType": "YulIdentifier", - "src": "39082:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "39071:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "39071:14:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "39065:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "39065:21:32" - }, - "variables": [ - { - "name": "memberValue0_11", - "nodeType": "YulTypedName", - "src": "39046:15:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "memberValue0_11", - "nodeType": "YulIdentifier", - "src": "39113:15:32" - }, - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "39134:3:32" - }, - { - "name": "_9", - "nodeType": "YulIdentifier", - "src": "39139:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "39130:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "39130:12:32" - } - ], - "functionName": { - "name": "abi_encode_uint32", - "nodeType": "YulIdentifier", - "src": "39095:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "39095:48:32" - }, - "nodeType": "YulExpressionStatement", - "src": "39095:48:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "39152:17:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "39163:6:32", - "type": "", - "value": "0x0200" - }, - "variables": [ - { - "name": "_10", - "nodeType": "YulTypedName", - "src": "39156:3:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "39178:45:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "39211:5:32" - }, - { - "name": "_10", - "nodeType": "YulIdentifier", - "src": "39218:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "39207:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "39207:15:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "39201:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "39201:22:32" - }, - "variables": [ - { - "name": "memberValue0_12", - "nodeType": "YulTypedName", - "src": "39182:15:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "memberValue0_12", - "nodeType": "YulIdentifier", - "src": "39250:15:32" - }, - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "39271:3:32" - }, - { - "name": "_10", - "nodeType": "YulIdentifier", - "src": "39276:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "39267:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "39267:13:32" - } - ], - "functionName": { - "name": "abi_encode_uint16", - "nodeType": "YulIdentifier", - "src": "39232:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "39232:49:32" - }, - "nodeType": "YulExpressionStatement", - "src": "39232:49:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "39290:17:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "39301:6:32", - "type": "", - "value": "0x0220" - }, - "variables": [ - { - "name": "_11", - "nodeType": "YulTypedName", - "src": "39294:3:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "39316:45:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "39349:5:32" - }, - { - "name": "_11", - "nodeType": "YulIdentifier", - "src": "39356:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "39345:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "39345:15:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "39339:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "39339:22:32" - }, - "variables": [ - { - "name": "memberValue0_13", - "nodeType": "YulTypedName", - "src": "39320:15:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "memberValue0_13", - "nodeType": "YulIdentifier", - "src": "39386:15:32" - }, - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "39407:3:32" - }, - { - "name": "_11", - "nodeType": "YulIdentifier", - "src": "39412:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "39403:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "39403:13:32" - } - ], - "functionName": { - "name": "abi_encode_bool", - "nodeType": "YulIdentifier", - "src": "39370:15:32" - }, - "nodeType": "YulFunctionCall", - "src": "39370:47:32" - }, - "nodeType": "YulExpressionStatement", - "src": "39370:47:32" - }, - { - "nodeType": "YulAssignment", - "src": "39426:13:32", - "value": { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "39433:6:32" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "39426:3:32" - } - ] - } - ] - }, - "name": "abi_encode_struct_PeginQuote", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "37214:5:32", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "37221:3:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "37229:3:32", - "type": "" - } - ], - "src": "37176:2269:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "39645:153:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "39662:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "39673:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "39655:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "39655:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "39655:21:32" - }, - { - "nodeType": "YulAssignment", - "src": "39685:64:32", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "39722:6:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "39734:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "39745:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "39730:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "39730:18:32" - } - ], - "functionName": { - "name": "abi_encode_struct_PeginQuote", - "nodeType": "YulIdentifier", - "src": "39693:28:32" - }, - "nodeType": "YulFunctionCall", - "src": "39693:56:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "39685:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "39769:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "39780:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "39765:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "39765:18:32" - }, - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "39785:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "39758:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "39758:34:32" - }, - "nodeType": "YulExpressionStatement", - "src": "39758:34:32" - } - ] - }, - "name": "abi_encode_tuple_t_struct$_PeginQuote_$10962_memory_ptr_t_uint256__to_t_struct$_PeginQuote_$10962_memory_ptr_t_uint256__fromStack_library_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "39606:9:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "39617:6:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "39625:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "39636:4:32", - "type": "" - } - ], - "src": "39450:348:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "39990:248:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "40000:27:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "40012:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "40023:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "40008:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "40008:19:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "40000:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "40043:9:32" - }, - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "40058:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "40074:3:32", - "type": "", - "value": "160" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "40079:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "40070:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "40070:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "40083:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "40066:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "40066:19:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "40054:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "40054:32:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "40036:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "40036:51:32" - }, - "nodeType": "YulExpressionStatement", - "src": "40036:51:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "40107:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "40118:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "40103:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "40103:18:32" - }, - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "40123:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "40096:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "40096:34:32" - }, - "nodeType": "YulExpressionStatement", - "src": "40096:34:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "40150:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "40161:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "40146:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "40146:18:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "40180:6:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "40173:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "40173:14:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "40166:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "40166:22:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "40139:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "40139:50:32" - }, - "nodeType": "YulExpressionStatement", - "src": "40139:50:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "40209:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "40220:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "40205:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "40205:18:32" - }, - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "40225:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "40198:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "40198:34:32" - }, - "nodeType": "YulExpressionStatement", - "src": "40198:34:32" - } - ] - }, - "name": "abi_encode_tuple_t_address_payable_t_uint256_t_bool_t_bytes32__to_t_address_t_uint256_t_bool_t_bytes32__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "39935:9:32", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "39946:6:32", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "39954:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "39962:6:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "39970:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "39981:4:32", - "type": "" - } - ], - "src": "39803:435:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "40380:150:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "40390:27:32", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "40410:6:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "40404:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "40404:13:32" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "40394:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "40465:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "40473:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "40461:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "40461:17:32" - }, - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "40480:3:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "40485:6:32" - } - ], - "functionName": { - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulIdentifier", - "src": "40426:34:32" - }, - "nodeType": "YulFunctionCall", - "src": "40426:66:32" - }, - "nodeType": "YulExpressionStatement", - "src": "40426:66:32" - }, - { - "nodeType": "YulAssignment", - "src": "40501:23:32", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "40512:3:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "40517:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "40508:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "40508:16:32" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "40501:3:32" - } - ] - } - ] - }, - "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": "40356:3:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "40361:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "40372:3:32", - "type": "" - } - ], - "src": "40243:287:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "40759:307:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "40776:9:32" - }, - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "40791:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "40799:10:32", - "type": "", - "value": "0xffffffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "40787:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "40787:23:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "40769:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "40769:42:32" - }, - "nodeType": "YulExpressionStatement", - "src": "40769:42:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "40831:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "40842:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "40827:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "40827:18:32" - }, - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "40847:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "40820:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "40820:34:32" - }, - "nodeType": "YulExpressionStatement", - "src": "40820:34:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "40874:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "40885:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "40870:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "40870:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "40890:3:32", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "40863:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "40863:31:32" - }, - "nodeType": "YulExpressionStatement", - "src": "40863:31:32" - }, - { - "nodeType": "YulAssignment", - "src": "40903:54:32", - "value": { - "arguments": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "40929:6:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "40941:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "40952:3:32", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "40937:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "40937:19:32" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "40911:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "40911:46:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "40903:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "40977:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "40988:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "40973:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "40973:18:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "41007:6:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "41000:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "41000:14:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "40993:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "40993:22:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "40966:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "40966:50:32" - }, - "nodeType": "YulExpressionStatement", - "src": "40966:50:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "41036:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "41047:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "41032:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "41032:19:32" - }, - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "41053:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "41025:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "41025:35:32" - }, - "nodeType": "YulExpressionStatement", - "src": "41025:35:32" - } - ] - }, - "name": "abi_encode_tuple_t_uint32_t_uint256_t_bytes_memory_ptr_t_bool_t_bytes32__to_t_uint256_t_uint256_t_bytes_memory_ptr_t_bool_t_bytes32__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "40696:9:32", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "40707:6:32", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "40715:6:32", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "40723:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "40731:6:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "40739:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "40750:4:32", - "type": "" - } - ], - "src": "40535:531:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "41245:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "41262:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "41273:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "41255:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "41255:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "41255:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "41296:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "41307:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "41292:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "41292:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "41312:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "41285:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "41285:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "41285:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "41334:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "41345:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "41330:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "41330:18:32" - }, - { - "hexValue": "4c4243303035", - "kind": "string", - "nodeType": "YulLiteral", - "src": "41350:8:32", - "type": "", - "value": "LBC005" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "41323:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "41323:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "41323:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "41368:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "41380:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "41391:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "41376:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "41376:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "41368:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_0a36b25bf1b768acf545d4a7d22e9fceeba3414a7a19dc34973fc2e1be01a831__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "41222:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "41236:4:32", - "type": "" - } - ], - "src": "41071:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "41579:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "41596:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "41607:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "41589:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "41589:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "41589:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "41630:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "41641:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "41626:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "41626:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "41646:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "41619:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "41619:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "41619:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "41668:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "41679:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "41664:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "41664:18:32" - }, - { - "hexValue": "4c4243303337", - "kind": "string", - "nodeType": "YulLiteral", - "src": "41684:8:32", - "type": "", - "value": "LBC037" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "41657:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "41657:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "41657:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "41702:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "41714:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "41725:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "41710:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "41710:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "41702:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_ecc75ee801269ba7670799af84ad7f1d968d59315783a708807424c72ec63d04__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "41556:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "41570:4:32", - "type": "" - } - ], - "src": "41405:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "41913:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "41930:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "41941:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "41923:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "41923:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "41923:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "41964:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "41975:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "41960:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "41960:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "41980:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "41953:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "41953:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "41953:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "42002:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "42013:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "41998:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "41998:18:32" - }, - { - "hexValue": "4c4243303633", - "kind": "string", - "nodeType": "YulLiteral", - "src": "42018:8:32", - "type": "", - "value": "LBC063" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "41991:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "41991:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "41991:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "42036:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "42048:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "42059:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "42044:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "42044:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "42036:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_0267b5bcac1113eea8a4dc81e170e6fe59336df7f2c6a4d2ae7ad240f894a2f9__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "41890:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "41904:4:32", - "type": "" - } - ], - "src": "41739:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "42247:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "42264:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "42275:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "42257:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "42257:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "42257:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "42298:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "42309:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "42294:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "42294:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "42314:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "42287:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "42287:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "42287:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "42336:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "42347:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "42332:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "42332:18:32" - }, - { - "hexValue": "4c4243303635", - "kind": "string", - "nodeType": "YulLiteral", - "src": "42352:8:32", - "type": "", - "value": "LBC065" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "42325:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "42325:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "42325:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "42370:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "42382:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "42393:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "42378:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "42378:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "42370:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_39eacc26aa588693c014f46e6dd86f6cac22eb3287098210ddf746f1a6af8214__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "42224:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "42238:4:32", - "type": "" - } - ], - "src": "42073:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "42581:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "42598:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "42609:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "42591:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "42591:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "42591:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "42632:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "42643:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "42628:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "42628:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "42648:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "42621:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "42621:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "42621:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "42670:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "42681:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "42666:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "42666:18:32" - }, - { - "hexValue": "4c4243303436", - "kind": "string", - "nodeType": "YulLiteral", - "src": "42686:8:32", - "type": "", - "value": "LBC046" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "42659:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "42659:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "42659:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "42704:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "42716:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "42727:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "42712:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "42712:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "42704:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_c8999eb883ba6531127283b89d3773d87761ac547946da55d1f52c5931d8838f__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "42558:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "42572:4:32", - "type": "" - } - ], - "src": "42407:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "42915:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "42932:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "42943:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "42925:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "42925:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "42925:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "42966:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "42977:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "42962:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "42962:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "42982:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "42955:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "42955:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "42955:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "43004:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "43015:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "43000:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "43000:18:32" - }, - { - "hexValue": "4c4243303437", - "kind": "string", - "nodeType": "YulLiteral", - "src": "43020:8:32", - "type": "", - "value": "LBC047" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "42993:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "42993:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "42993:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "43038:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "43050:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "43061:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "43046:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "43046:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "43038:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_b400745c4fd650850c2059b2d13f12980ca63b7ccd87c008204992f11af559c2__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "42892:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "42906:4:32", - "type": "" - } - ], - "src": "42741:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "43249:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "43266:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "43277:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "43259:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "43259:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "43259:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "43300:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "43311:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "43296:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "43296:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "43316:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "43289:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "43289:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "43289:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "43338:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "43349:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "43334:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "43334:18:32" - }, - { - "hexValue": "4c4243303634", - "kind": "string", - "nodeType": "YulLiteral", - "src": "43354:8:32", - "type": "", - "value": "LBC064" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "43327:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "43327:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "43327:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "43372:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "43384:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "43395:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "43380:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "43380:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "43372:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_35937926b0033772f3bb574f0cbcffec40211211a6070977d47733885bf234eb__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "43226:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "43240:4:32", - "type": "" - } - ], - "src": "43075:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "43503:1256:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "43513:24:32", - "value": { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "43533:3:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "43527:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "43527:10:32" - }, - "variables": [ - { - "name": "newLen", - "nodeType": "YulTypedName", - "src": "43517:6:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "43580:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "43582:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "43582:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "43582:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "43552:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "43568:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "43572:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "43564:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "43564:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "43576:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "43560:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "43560:18:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "43549:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "43549:30:32" - }, - "nodeType": "YulIf", - "src": "43546:56:32" - }, - { - "expression": { - "arguments": [ - { - "name": "slot", - "nodeType": "YulIdentifier", - "src": "43655:4:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "slot", - "nodeType": "YulIdentifier", - "src": "43693:4:32" - } - ], - "functionName": { - "name": "sload", - "nodeType": "YulIdentifier", - "src": "43687:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "43687:11:32" - } - ], - "functionName": { - "name": "extract_byte_array_length", - "nodeType": "YulIdentifier", - "src": "43661:25:32" - }, - "nodeType": "YulFunctionCall", - "src": "43661:38:32" - }, - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "43701:6:32" - } - ], - "functionName": { - "name": "clean_up_bytearray_end_slots_string_storage", - "nodeType": "YulIdentifier", - "src": "43611:43:32" - }, - "nodeType": "YulFunctionCall", - "src": "43611:97:32" - }, - "nodeType": "YulExpressionStatement", - "src": "43611:97:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "43717:18:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "43734:1:32", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "srcOffset", - "nodeType": "YulTypedName", - "src": "43721:9:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "43744:23:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "43763:4:32", - "type": "", - "value": "0x20" - }, - "variables": [ - { - "name": "srcOffset_1", - "nodeType": "YulTypedName", - "src": "43748:11:32", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "43776:24:32", - "value": { - "name": "srcOffset_1", - "nodeType": "YulIdentifier", - "src": "43789:11:32" - }, - "variableNames": [ - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "43776:9:32" - } - ] - }, - { - "cases": [ - { - "body": { - "nodeType": "YulBlock", - "src": "43846:656:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "43860:35:32", - "value": { - "arguments": [ - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "43879:6:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "43891:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "43887:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "43887:7:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "43875:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "43875:20:32" - }, - "variables": [ - { - "name": "loopEnd", - "nodeType": "YulTypedName", - "src": "43864:7:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "43908:49:32", - "value": { - "arguments": [ - { - "name": "slot", - "nodeType": "YulIdentifier", - "src": "43952:4:32" - } - ], - "functionName": { - "name": "array_dataslot_string_storage", - "nodeType": "YulIdentifier", - "src": "43922:29:32" - }, - "nodeType": "YulFunctionCall", - "src": "43922:35:32" - }, - "variables": [ - { - "name": "dstPtr", - "nodeType": "YulTypedName", - "src": "43912:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "43970:10:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "43979:1:32", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "i", - "nodeType": "YulTypedName", - "src": "43974:1:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "44057:172:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "dstPtr", - "nodeType": "YulIdentifier", - "src": "44082:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "44100:3:32" - }, - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "44105:9:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "44096:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "44096:19:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "44090:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "44090:26:32" - } - ], - "functionName": { - "name": "sstore", - "nodeType": "YulIdentifier", - "src": "44075:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "44075:42:32" - }, - "nodeType": "YulExpressionStatement", - "src": "44075:42:32" - }, - { - "nodeType": "YulAssignment", - "src": "44134:24:32", - "value": { - "arguments": [ - { - "name": "dstPtr", - "nodeType": "YulIdentifier", - "src": "44148:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "44156:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "44144:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "44144:14:32" - }, - "variableNames": [ - { - "name": "dstPtr", - "nodeType": "YulIdentifier", - "src": "44134:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "44175:40:32", - "value": { - "arguments": [ - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "44192:9:32" - }, - { - "name": "srcOffset_1", - "nodeType": "YulIdentifier", - "src": "44203:11:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "44188:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "44188:27:32" - }, - "variableNames": [ - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "44175:9:32" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "44004:1:32" - }, - { - "name": "loopEnd", - "nodeType": "YulIdentifier", - "src": "44007:7:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "44001:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "44001:14:32" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "44016:28:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "44018:24:32", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "44027:1:32" - }, - { - "name": "srcOffset_1", - "nodeType": "YulIdentifier", - "src": "44030:11:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "44023:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "44023:19:32" - }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "44018:1:32" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "43997:3:32", - "statements": [] - }, - "src": "43993:236:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "44277:166:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "44295:43:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "44322:3:32" - }, - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "44327:9:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "44318:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "44318:19:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "44312:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "44312:26:32" - }, - "variables": [ - { - "name": "lastValue", - "nodeType": "YulTypedName", - "src": "44299:9:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "dstPtr", - "nodeType": "YulIdentifier", - "src": "44362:6:32" - }, - { - "arguments": [ - { - "name": "lastValue", - "nodeType": "YulIdentifier", - "src": "44374:9:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "44401:1:32", - "type": "", - "value": "3" - }, - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "44404:6:32" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "44397:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "44397:14:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "44413:3:32", - "type": "", - "value": "248" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "44393:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "44393:24:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "44423:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "44419:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "44419:6:32" - } - ], - "functionName": { - "name": "shr", - "nodeType": "YulIdentifier", - "src": "44389:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "44389:37:32" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "44385:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "44385:42:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "44370:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "44370:58:32" - } - ], - "functionName": { - "name": "sstore", - "nodeType": "YulIdentifier", - "src": "44355:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "44355:74:32" - }, - "nodeType": "YulExpressionStatement", - "src": "44355:74:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "loopEnd", - "nodeType": "YulIdentifier", - "src": "44248:7:32" - }, - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "44257:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "44245:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "44245:19:32" - }, - "nodeType": "YulIf", - "src": "44242:201:32" - }, - { - "expression": { - "arguments": [ - { - "name": "slot", - "nodeType": "YulIdentifier", - "src": "44463:4:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "44477:1:32", - "type": "", - "value": "1" - }, - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "44480:6:32" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "44473:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "44473:14:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "44489:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "44469:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "44469:22:32" - } - ], - "functionName": { - "name": "sstore", - "nodeType": "YulIdentifier", - "src": "44456:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "44456:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "44456:36:32" - } - ] - }, - "nodeType": "YulCase", - "src": "43839:663:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "43844:1:32", - "type": "", - "value": "1" - } - }, - { - "body": { - "nodeType": "YulBlock", - "src": "44519:234:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "44533:14:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "44546:1:32", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "44537:5:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "44582:67:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "44600:35:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "44619:3:32" - }, - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "44624:9:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "44615:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "44615:19:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "44609:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "44609:26:32" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "44600:5:32" - } - ] - } - ] - }, - "condition": { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "44563:6:32" - }, - "nodeType": "YulIf", - "src": "44560:89:32" - }, - { - "expression": { - "arguments": [ - { - "name": "slot", - "nodeType": "YulIdentifier", - "src": "44669:4:32" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "44728:5:32" - }, - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "44735:6:32" - } - ], - "functionName": { - "name": "extract_used_part_and_set_length_of_short_byte_array", - "nodeType": "YulIdentifier", - "src": "44675:52:32" - }, - "nodeType": "YulFunctionCall", - "src": "44675:67:32" - } - ], - "functionName": { - "name": "sstore", - "nodeType": "YulIdentifier", - "src": "44662:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "44662:81:32" - }, - "nodeType": "YulExpressionStatement", - "src": "44662:81:32" - } - ] - }, - "nodeType": "YulCase", - "src": "44511:242:32", - "value": "default" - } - ], - "expression": { - "arguments": [ - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "43819:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "43827:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "43816:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "43816:14:32" - }, - "nodeType": "YulSwitch", - "src": "43809:944:32" - } - ] - }, - "name": "copy_byte_array_to_storage_from_t_bytes_memory_ptr_to_t_bytes_storage", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "slot", - "nodeType": "YulTypedName", - "src": "43488:4:32", - "type": "" - }, - { - "name": "src", - "nodeType": "YulTypedName", - "src": "43494:3:32", - "type": "" - } - ], - "src": "43409:1350:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "44938:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "44955:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "44966:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "44948:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "44948:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "44948:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "44989:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "45000:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "44985:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "44985:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "45005:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "44978:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "44978:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "44978:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "45027:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "45038:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "45023:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "45023:18:32" - }, - { - "hexValue": "4c4243303432", - "kind": "string", - "nodeType": "YulLiteral", - "src": "45043:8:32", - "type": "", - "value": "LBC042" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "45016:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "45016:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "45016:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "45061:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "45073:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "45084:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "45069:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "45069:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "45061:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_100fb89310beea959f828c5ca2a95ca4d28be5d0ba0e61e54b1345b68d14b6a1__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "44915:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "44929:4:32", - "type": "" - } - ], - "src": "44764:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "45272:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "45289:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "45300:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "45282:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "45282:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "45282:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "45323:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "45334:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "45319:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "45319:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "45339:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "45312:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "45312:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "45312:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "45361:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "45372:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "45357:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "45357:18:32" - }, - { - "hexValue": "4c4243303431", - "kind": "string", - "nodeType": "YulLiteral", - "src": "45377:8:32", - "type": "", - "value": "LBC041" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "45350:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "45350:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "45350:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "45395:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "45407:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "45418:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "45403:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "45403:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "45395:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_476e33256b298fee7fc3dab0c339427caa3a9a4a44654f7f02b328083d44ca74__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "45249:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "45263:4:32", - "type": "" - } - ], - "src": "45098:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "45561:145:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "45571:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "45583:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "45594:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "45579:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "45579:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "45571:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "45613:9:32" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "45624:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "45606:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "45606:25:32" - }, - "nodeType": "YulExpressionStatement", - "src": "45606:25:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "45651:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "45662:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "45647:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "45647:18:32" - }, - { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "45671:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "45687:3:32", - "type": "", - "value": "160" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "45692:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "45683:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "45683:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "45696:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "45679:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "45679:19:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "45667:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "45667:32:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "45640:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "45640:60:32" - }, - "nodeType": "YulExpressionStatement", - "src": "45640:60:32" - } - ] - }, - "name": "abi_encode_tuple_t_uint256_t_address__to_t_uint256_t_address__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "45522:9:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "45533:6:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "45541:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "45552:4:32", - "type": "" - } - ], - "src": "45432:274:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "45885:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "45902:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "45913:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "45895:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "45895:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "45895:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "45936:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "45947:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "45932:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "45932:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "45952:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "45925:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "45925:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "45925:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "45974:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "45985:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "45970:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "45970:18:32" - }, - { - "hexValue": "4c4243303434", - "kind": "string", - "nodeType": "YulLiteral", - "src": "45990:8:32", - "type": "", - "value": "LBC044" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "45963:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "45963:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "45963:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "46008:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "46020:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "46031:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "46016:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "46016:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "46008:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_0a7ff570d31f7e351d06bf5b8d0ef26a9275a9d32a7dffd7981a6c6ac58227c6__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "45862:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "45876:4:32", - "type": "" - } - ], - "src": "45711:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "46219:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "46236:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "46247:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "46229:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "46229:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "46229:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "46270:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "46281:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "46266:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "46266:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "46286:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "46259:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "46259:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "46259:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "46308:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "46319:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "46304:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "46304:18:32" - }, - { - "hexValue": "4c4243303631", - "kind": "string", - "nodeType": "YulLiteral", - "src": "46324:8:32", - "type": "", - "value": "LBC061" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "46297:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "46297:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "46297:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "46342:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "46354:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "46365:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "46350:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "46350:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "46342:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_438c5a176571afee566b78f09f63757218623602a6c98e887399fe40429f63df__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "46196:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "46210:4:32", - "type": "" - } - ], - "src": "46045:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "46618:417:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "46635:3:32" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "46640:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "46628:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "46628:19:32" - }, - "nodeType": "YulExpressionStatement", - "src": "46628:19:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "46656:27:32", - "value": { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "46676:6:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "46670:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "46670:13:32" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "46660:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "46731:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "46739:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "46727:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "46727:15:32" - }, - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "46748:3:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "46753:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "46744:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "46744:12:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "46758:6:32" - } - ], - "functionName": { - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulIdentifier", - "src": "46692:34:32" - }, - "nodeType": "YulFunctionCall", - "src": "46692:73:32" - }, - "nodeType": "YulExpressionStatement", - "src": "46692:73:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "46774:26:32", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "46788:3:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "46793:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "46784:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "46784:16:32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "46778:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "46820:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "46824:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "46816:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "46816:11:32" - }, - { - "arguments": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "46833:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "46853:2:32", - "type": "", - "value": "96" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "46857:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "46849:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "46849:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "46861:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "46845:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "46845:18:32" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "46841:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "46841:23:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "46829:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "46829:36:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "46809:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "46809:57:32" - }, - "nodeType": "YulExpressionStatement", - "src": "46809:57:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "46875:29:32", - "value": { - "arguments": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "46897:6:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "46891:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "46891:13:32" - }, - "variables": [ - { - "name": "length_1", - "nodeType": "YulTypedName", - "src": "46879:8:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "46952:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "46960:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "46948:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "46948:15:32" - }, - { - "arguments": [ - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "46969:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "46973:2:32", - "type": "", - "value": "52" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "46965:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "46965:11:32" - }, - { - "name": "length_1", - "nodeType": "YulIdentifier", - "src": "46978:8:32" - } - ], - "functionName": { - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulIdentifier", - "src": "46913:34:32" - }, - "nodeType": "YulFunctionCall", - "src": "46913:74:32" - }, - "nodeType": "YulExpressionStatement", - "src": "46913:74:32" - }, - { - "nodeType": "YulAssignment", - "src": "46996:33:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "47011:2:32" - }, - { - "name": "length_1", - "nodeType": "YulIdentifier", - "src": "47015:8:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "47007:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "47007:17:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "47026:2:32", - "type": "", - "value": "52" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "47003:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "47003:26:32" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "46996:3:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_packed_t_bytes32_t_bytes_memory_ptr_t_bytes20_t_bytes_memory_ptr__to_t_bytes32_t_bytes_memory_ptr_t_bytes20_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "46570:3:32", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "46575:6:32", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "46583:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "46591:6:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "46599:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "46610:3:32", - "type": "" - } - ], - "src": "46379:656:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "47103:378:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "47152:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "47161:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "47164:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "47154:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "47154:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "47154:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "47131:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "47139:4:32", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "47127:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "47127:17:32" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "47146:3:32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "47123:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "47123:27:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "47116:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "47116:35:32" - }, - "nodeType": "YulIf", - "src": "47113:55:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "47177:23:32", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "47193:6:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "47187:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "47187:13:32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "47181:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "47209:63:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "47268:2:32" - } - ], - "functionName": { - "name": "array_allocation_size_bytes", - "nodeType": "YulIdentifier", - "src": "47240:27:32" - }, - "nodeType": "YulFunctionCall", - "src": "47240:31:32" - } - ], - "functionName": { - "name": "allocate_memory", - "nodeType": "YulIdentifier", - "src": "47224:15:32" - }, - "nodeType": "YulFunctionCall", - "src": "47224:48:32" - }, - "variables": [ - { - "name": "array_1", - "nodeType": "YulTypedName", - "src": "47213:7:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "array_1", - "nodeType": "YulIdentifier", - "src": "47288:7:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "47297:2:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "47281:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "47281:19:32" - }, - "nodeType": "YulExpressionStatement", - "src": "47281:19:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "47348:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "47357:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "47360:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "47350:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "47350:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "47350:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "47323:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "47331:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "47319:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "47319:15:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "47336:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "47315:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "47315:26:32" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "47343:3:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "47312:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "47312:35:32" - }, - "nodeType": "YulIf", - "src": "47309:55:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "47412:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "47420:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "47408:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "47408:17:32" - }, - { - "arguments": [ - { - "name": "array_1", - "nodeType": "YulIdentifier", - "src": "47431:7:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "47440:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "47427:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "47427:18:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "47447:2:32" - } - ], - "functionName": { - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulIdentifier", - "src": "47373:34:32" - }, - "nodeType": "YulFunctionCall", - "src": "47373:77:32" - }, - "nodeType": "YulExpressionStatement", - "src": "47373:77:32" - }, - { - "nodeType": "YulAssignment", - "src": "47459:16:32", - "value": { - "name": "array_1", - "nodeType": "YulIdentifier", - "src": "47468:7:32" - }, - "variableNames": [ - { - "name": "array", - "nodeType": "YulIdentifier", - "src": "47459:5:32" - } - ] - } - ] - }, - "name": "abi_decode_bytes_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "47077:6:32", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "47085:3:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "array", - "nodeType": "YulTypedName", - "src": "47093:5:32", - "type": "" - } - ], - "src": "47040:441:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "47576:245:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "47622:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "47631:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "47634:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "47624:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "47624:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "47624:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "47597:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "47606:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "47593:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "47593:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "47618:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "47589:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "47589:32:32" - }, - "nodeType": "YulIf", - "src": "47586:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "47647:30:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "47667:9:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "47661:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "47661:16:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "47651:6:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "47720:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "47729:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "47732:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "47722:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "47722:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "47722:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "47692:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "47708:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "47712:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "47704:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "47704:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "47716:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "47700:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "47700:18:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "47689:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "47689:30:32" - }, - "nodeType": "YulIf", - "src": "47686:50:32" - }, - { - "nodeType": "YulAssignment", - "src": "47745:70:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "47787:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "47798:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "47783:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "47783:22:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "47807:7:32" - } - ], - "functionName": { - "name": "abi_decode_bytes_fromMemory", - "nodeType": "YulIdentifier", - "src": "47755:27:32" - }, - "nodeType": "YulFunctionCall", - "src": "47755:60:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "47745:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bytes_memory_ptr_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "47542:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "47553:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "47565:6:32", - "type": "" - } - ], - "src": "47486:335:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "48171:263:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "48188:3:32" - }, - { - "hexValue": "20", - "kind": "string", - "nodeType": "YulLiteral", - "src": "48193:3:32", - "type": "", - "value": " " - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "48181:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "48181:16:32" - }, - "nodeType": "YulExpressionStatement", - "src": "48181:16:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "48217:3:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "48222:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "48213:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "48213:11:32" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "48226:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "48206:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "48206:27:32" - }, - "nodeType": "YulExpressionStatement", - "src": "48206:27:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "48253:3:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "48258:2:32", - "type": "", - "value": "33" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "48249:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "48249:12:32" - }, - { - "hexValue": "75", - "kind": "string", - "nodeType": "YulLiteral", - "src": "48263:3:32", - "type": "", - "value": "u" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "48242:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "48242:25:32" - }, - "nodeType": "YulExpressionStatement", - "src": "48242:25:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "48276:27:32", - "value": { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "48296:6:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "48290:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "48290:13:32" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "48280:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "48351:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "48359:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "48347:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "48347:17:32" - }, - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "48370:3:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "48375:2:32", - "type": "", - "value": "34" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "48366:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "48366:12:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "48380:6:32" - } - ], - "functionName": { - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulIdentifier", - "src": "48312:34:32" - }, - "nodeType": "YulFunctionCall", - "src": "48312:75:32" - }, - "nodeType": "YulExpressionStatement", - "src": "48312:75:32" - }, - { - "nodeType": "YulAssignment", - "src": "48396:32:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "48411:3:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "48416:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "48407:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "48407:16:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "48425:2:32", - "type": "", - "value": "34" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "48403:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "48403:25:32" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "48396:3:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_packed_t_stringliteral_681afa780d17da29203322b473d3f210a7d621259a4e6ce9e403f5a266ff719a_t_bytes32_t_stringliteral_32cefdcd8e794145c9af8dd1f4b1fbd92d6e547ae855553080fc8bd19c4883a0_t_bytes_memory_ptr__to_t_bytes1_t_bytes32_t_bytes1_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "48139:3:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "48144:6:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "48152:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "48163:3:32", - "type": "" - } - ], - "src": "47826:608:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "48634:273:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "48651:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "48662:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "48644:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "48644:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "48644:21:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "48674:59:32", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "48706:6:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "48718:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "48729:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "48714:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "48714:18:32" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "48688:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "48688:45:32" - }, - "variables": [ - { - "name": "tail_1", - "nodeType": "YulTypedName", - "src": "48678:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "48753:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "48764:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "48749:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "48749:18:32" - }, - { - "arguments": [ - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "48773:6:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "48781:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "48769:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "48769:22:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "48742:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "48742:50:32" - }, - "nodeType": "YulExpressionStatement", - "src": "48742:50:32" - }, - { - "nodeType": "YulAssignment", - "src": "48801:41:32", - "value": { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "48827:6:32" - }, - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "48835:6:32" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "48809:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "48809:33:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "48801:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "48862:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "48873:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "48858:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "48858:18:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "48892:6:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "48885:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "48885:14:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "48878:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "48878:22:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "48851:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "48851:50:32" - }, - "nodeType": "YulExpressionStatement", - "src": "48851:50:32" - } - ] - }, - "name": "abi_encode_tuple_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bool__to_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bool__fromStack_library_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "48587:9:32", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "48598:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "48606:6:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "48614:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "48625:4:32", - "type": "" - } - ], - "src": "48439:468:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "49086:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "49103:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "49114:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "49096:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "49096:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "49096:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "49137:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "49148:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "49133:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "49133:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "49153:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "49126:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "49126:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "49126:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "49175:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "49186:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "49171:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "49171:18:32" - }, - { - "hexValue": "4c4243303234", - "kind": "string", - "nodeType": "YulLiteral", - "src": "49191:8:32", - "type": "", - "value": "LBC024" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "49164:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "49164:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "49164:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "49209:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "49221:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "49232:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "49217:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "49217:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "49209:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_9c6c58d5603e5b2aab0d13c183f0136466f0ce13826630d90e079bf910078715__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "49063:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "49077:4:32", - "type": "" - } - ], - "src": "48912:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "49420:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "49437:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "49448:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "49430:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "49430:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "49430:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "49471:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "49482:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "49467:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "49467:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "49487:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "49460:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "49460:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "49460:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "49509:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "49520:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "49505:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "49505:18:32" - }, - { - "hexValue": "4c4243303235", - "kind": "string", - "nodeType": "YulLiteral", - "src": "49525:8:32", - "type": "", - "value": "LBC025" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "49498:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "49498:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "49498:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "49543:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "49555:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "49566:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "49551:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "49551:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "49543:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_ceda09d74f8a59745bfad5393e75482469dc6db77c24fde6f52df4409a3f744c__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "49397:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "49411:4:32", - "type": "" - } - ], - "src": "49246:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "49627:125:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "49637:20:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "49647:10:32", - "type": "", - "value": "0xffffffff" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "49641:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "49666:34:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "49681:1:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "49684:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "49677:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "49677:10:32" - }, - { - "arguments": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "49693:1:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "49696:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "49689:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "49689:10:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "49673:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "49673:27:32" - }, - "variableNames": [ - { - "name": "sum", - "nodeType": "YulIdentifier", - "src": "49666:3:32" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "49724:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x11", - "nodeType": "YulIdentifier", - "src": "49726:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "49726:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "49726:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "sum", - "nodeType": "YulIdentifier", - "src": "49715:3:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "49720:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "49712:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "49712:11:32" - }, - "nodeType": "YulIf", - "src": "49709:37:32" - } - ] - }, - "name": "checked_add_t_uint32", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "x", - "nodeType": "YulTypedName", - "src": "49610:1:32", - "type": "" - }, - { - "name": "y", - "nodeType": "YulTypedName", - "src": "49613:1:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "sum", - "nodeType": "YulTypedName", - "src": "49619:3:32", - "type": "" - } - ], - "src": "49580:172:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "49931:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "49948:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "49959:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "49941:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "49941:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "49941:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "49982:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "49993:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "49978:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "49978:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "49998:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "49971:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "49971:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "49971:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "50020:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "50031:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "50016:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "50016:18:32" - }, - { - "hexValue": "4c4243303236", - "kind": "string", - "nodeType": "YulLiteral", - "src": "50036:8:32", - "type": "", - "value": "LBC026" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "50009:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "50009:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "50009:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "50054:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "50066:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "50077:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "50062:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "50062:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "50054:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_2d63cc93f65e3c34ca5cba24271c3d6869155fb2ffc83f083d82378f26d56cb0__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "49908:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "49922:4:32", - "type": "" - } - ], - "src": "49757:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "50265:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "50282:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "50293:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "50275:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "50275:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "50275:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "50316:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "50327:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "50312:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "50312:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "50332:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "50305:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "50305:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "50305:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "50354:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "50365:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "50350:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "50350:18:32" - }, - { - "hexValue": "4c4243303237", - "kind": "string", - "nodeType": "YulLiteral", - "src": "50370:8:32", - "type": "", - "value": "LBC027" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "50343:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "50343:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "50343:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "50388:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "50400:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "50411:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "50396:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "50396:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "50388:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_5a937cad92792f08abdaf15eed65a070909c29d924f856ec65923c138fd39a48__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "50242:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "50256:4:32", - "type": "" - } - ], - "src": "50091:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "50552:99:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "50569:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "50580:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "50562:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "50562:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "50562:21:32" - }, - { - "nodeType": "YulAssignment", - "src": "50592:53:32", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "50618:6:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "50630:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "50641:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "50626:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "50626:18:32" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "50600:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "50600:45:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "50592:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_library_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "50521:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "50532:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "50543:4:32", - "type": "" - } - ], - "src": "50425:226:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "50791:1872:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "50801:12:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "50811:2:32", - "type": "", - "value": "32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "50805:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "50858:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "50867:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "50870:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "50860:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "50860:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "50860:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "50833:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "50842:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "50829:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "50829:23:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "50854:2:32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "50825:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "50825:32:32" - }, - "nodeType": "YulIf", - "src": "50822:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "50883:30:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "50903:9:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "50897:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "50897:16:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "50887:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "50922:28:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "50940:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "50944:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "50936:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "50936:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "50948:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "50932:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "50932:18:32" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "50926:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "50977:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "50986:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "50989:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "50979:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "50979:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "50979:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "50965:6:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "50973:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "50962:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "50962:14:32" - }, - "nodeType": "YulIf", - "src": "50959:34:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "51002:32:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "51016:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "51027:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "51012:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "51012:22:32" - }, - "variables": [ - { - "name": "_3", - "nodeType": "YulTypedName", - "src": "51006:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "51082:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "51091:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "51094:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "51084:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "51084:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "51084:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "51061:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "51065:4:32", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "51057:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "51057:13:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "51072:7:32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "51053:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "51053:27:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "51046:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "51046:35:32" - }, - "nodeType": "YulIf", - "src": "51043:55:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "51107:19:32", - "value": { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "51123:2:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "51117:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "51117:9:32" - }, - "variables": [ - { - "name": "_4", - "nodeType": "YulTypedName", - "src": "51111:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "51135:71:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "51202:2:32" - } - ], - "functionName": { - "name": "array_allocation_size_array_uint256_dyn", - "nodeType": "YulIdentifier", - "src": "51162:39:32" - }, - "nodeType": "YulFunctionCall", - "src": "51162:43:32" - } - ], - "functionName": { - "name": "allocate_memory", - "nodeType": "YulIdentifier", - "src": "51146:15:32" - }, - "nodeType": "YulFunctionCall", - "src": "51146:60:32" - }, - "variables": [ - { - "name": "dst", - "nodeType": "YulTypedName", - "src": "51139:3:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "51215:16:32", - "value": { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "51228:3:32" - }, - "variables": [ - { - "name": "dst_1", - "nodeType": "YulTypedName", - "src": "51219:5:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "51247:3:32" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "51252:2:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "51240:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "51240:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "51240:15:32" - }, - { - "nodeType": "YulAssignment", - "src": "51264:19:32", - "value": { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "51275:3:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "51280:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "51271:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "51271:12:32" - }, - "variableNames": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "51264:3:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "51292:42:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "51314:2:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "51322:1:32", - "type": "", - "value": "5" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "51325:2:32" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "51318:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "51318:10:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "51310:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "51310:19:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "51331:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "51306:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "51306:28:32" - }, - "variables": [ - { - "name": "srcEnd", - "nodeType": "YulTypedName", - "src": "51296:6:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "51366:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "51375:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "51378:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "51368:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "51368:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "51368:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "srcEnd", - "nodeType": "YulIdentifier", - "src": "51349:6:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "51357:7:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "51346:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "51346:19:32" - }, - "nodeType": "YulIf", - "src": "51343:39:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "51391:22:32", - "value": { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "51406:2:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "51410:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "51402:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "51402:11:32" - }, - "variables": [ - { - "name": "src", - "nodeType": "YulTypedName", - "src": "51395:3:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "51478:1155:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "51492:29:32", - "value": { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "51517:3:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "51511:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "51511:10:32" - }, - "variables": [ - { - "name": "innerOffset", - "nodeType": "YulTypedName", - "src": "51496:11:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "51569:74:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "51587:11:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "51597:1:32", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "_5", - "nodeType": "YulTypedName", - "src": "51591:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "_5", - "nodeType": "YulIdentifier", - "src": "51622:2:32" - }, - { - "name": "_5", - "nodeType": "YulIdentifier", - "src": "51626:2:32" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "51615:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "51615:14:32" - }, - "nodeType": "YulExpressionStatement", - "src": "51615:14:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "innerOffset", - "nodeType": "YulIdentifier", - "src": "51540:11:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "51553:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "51537:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "51537:19:32" - }, - "nodeType": "YulIf", - "src": "51534:109:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "51656:30:32", - "value": { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "51670:2:32" - }, - { - "name": "innerOffset", - "nodeType": "YulIdentifier", - "src": "51674:11:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "51666:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "51666:20:32" - }, - "variables": [ - { - "name": "_6", - "nodeType": "YulTypedName", - "src": "51660:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "51699:14:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "51709:4:32", - "type": "", - "value": "0x80" - }, - "variables": [ - { - "name": "_7", - "nodeType": "YulTypedName", - "src": "51703:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "51781:74:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "51799:11:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "51809:1:32", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "_8", - "nodeType": "YulTypedName", - "src": "51803:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "_8", - "nodeType": "YulIdentifier", - "src": "51834:2:32" - }, - { - "name": "_8", - "nodeType": "YulIdentifier", - "src": "51838:2:32" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "51827:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "51827:14:32" - }, - "nodeType": "YulExpressionStatement", - "src": "51827:14:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "51741:7:32" - }, - { - "name": "_6", - "nodeType": "YulIdentifier", - "src": "51750:2:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "51737:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "51737:16:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "51759:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "51755:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "51755:7:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "51733:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "51733:30:32" - }, - { - "name": "_7", - "nodeType": "YulIdentifier", - "src": "51765:2:32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "51729:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "51729:39:32" - }, - "nodeType": "YulIf", - "src": "51726:129:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "51868:35:32", - "value": { - "arguments": [], - "functionName": { - "name": "allocate_memory_9162", - "nodeType": "YulIdentifier", - "src": "51881:20:32" - }, - "nodeType": "YulFunctionCall", - "src": "51881:22:32" - }, - "variables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "51872:5:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "51916:33:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "_6", - "nodeType": "YulIdentifier", - "src": "51941:2:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "51945:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "51937:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "51937:11:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "51931:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "51931:18:32" - }, - "variables": [ - { - "name": "value_1", - "nodeType": "YulTypedName", - "src": "51920:7:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "52015:74:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "52033:11:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "52043:1:32", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "_9", - "nodeType": "YulTypedName", - "src": "52037:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "_9", - "nodeType": "YulIdentifier", - "src": "52068:2:32" - }, - { - "name": "_9", - "nodeType": "YulIdentifier", - "src": "52072:2:32" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "52061:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "52061:14:32" - }, - "nodeType": "YulExpressionStatement", - "src": "52061:14:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value_1", - "nodeType": "YulIdentifier", - "src": "51975:7:32" - }, - { - "arguments": [ - { - "name": "value_1", - "nodeType": "YulIdentifier", - "src": "51988:7:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "51997:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "51984:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "51984:16:32" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "51972:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "51972:29:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "51965:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "51965:37:32" - }, - "nodeType": "YulIf", - "src": "51962:127:32" - }, - { - "expression": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "52109:5:32" - }, - { - "name": "value_1", - "nodeType": "YulIdentifier", - "src": "52116:7:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "52102:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "52102:22:32" - }, - "nodeType": "YulExpressionStatement", - "src": "52102:22:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "52137:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "52148:2:32", - "type": "", - "value": "64" - }, - "variables": [ - { - "name": "_10", - "nodeType": "YulTypedName", - "src": "52141:3:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "52163:35:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "_6", - "nodeType": "YulIdentifier", - "src": "52189:2:32" - }, - { - "name": "_10", - "nodeType": "YulIdentifier", - "src": "52193:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "52185:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "52185:12:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "52179:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "52179:19:32" - }, - "variables": [ - { - "name": "offset_1", - "nodeType": "YulTypedName", - "src": "52167:8:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "52243:77:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "52261:12:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "52272:1:32", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "_11", - "nodeType": "YulTypedName", - "src": "52265:3:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "_11", - "nodeType": "YulIdentifier", - "src": "52297:3:32" - }, - { - "name": "_11", - "nodeType": "YulIdentifier", - "src": "52302:3:32" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "52290:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "52290:16:32" - }, - "nodeType": "YulExpressionStatement", - "src": "52290:16:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "52217:8:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "52227:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "52214:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "52214:16:32" - }, - "nodeType": "YulIf", - "src": "52211:109:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "52344:5:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "52351:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "52340:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "52340:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_6", - "nodeType": "YulIdentifier", - "src": "52392:2:32" - }, - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "52396:8:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "52388:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "52388:17:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "52407:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "52384:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "52384:26:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "52412:7:32" - } - ], - "functionName": { - "name": "abi_decode_bytes_fromMemory", - "nodeType": "YulIdentifier", - "src": "52356:27:32" - }, - "nodeType": "YulFunctionCall", - "src": "52356:64:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "52333:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "52333:88:32" - }, - "nodeType": "YulExpressionStatement", - "src": "52333:88:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "52434:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "52445:2:32", - "type": "", - "value": "96" - }, - "variables": [ - { - "name": "_12", - "nodeType": "YulTypedName", - "src": "52438:3:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "52471:5:32" - }, - { - "name": "_10", - "nodeType": "YulIdentifier", - "src": "52478:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "52467:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "52467:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "_6", - "nodeType": "YulIdentifier", - "src": "52494:2:32" - }, - { - "name": "_12", - "nodeType": "YulIdentifier", - "src": "52498:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "52490:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "52490:12:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "52484:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "52484:19:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "52460:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "52460:44:32" - }, - "nodeType": "YulExpressionStatement", - "src": "52460:44:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "52528:5:32" - }, - { - "name": "_12", - "nodeType": "YulIdentifier", - "src": "52535:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "52524:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "52524:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "_6", - "nodeType": "YulIdentifier", - "src": "52551:2:32" - }, - { - "name": "_7", - "nodeType": "YulIdentifier", - "src": "52555:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "52547:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "52547:11:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "52541:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "52541:18:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "52517:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "52517:43:32" - }, - "nodeType": "YulExpressionStatement", - "src": "52517:43:32" - }, - { - "expression": { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "52580:3:32" - }, - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "52585:5:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "52573:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "52573:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "52573:18:32" - }, - { - "nodeType": "YulAssignment", - "src": "52604:19:32", - "value": { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "52615:3:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "52620:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "52611:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "52611:12:32" - }, - "variableNames": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "52604:3:32" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "51433:3:32" - }, - { - "name": "srcEnd", - "nodeType": "YulIdentifier", - "src": "51438:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "51430:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "51430:15:32" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "51446:23:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "51448:19:32", - "value": { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "51459:3:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "51464:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "51455:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "51455:12:32" - }, - "variableNames": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "51448:3:32" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "51426:3:32", - "statements": [] - }, - "src": "51422:1211:32" - }, - { - "nodeType": "YulAssignment", - "src": "52642:15:32", - "value": { - "name": "dst_1", - "nodeType": "YulIdentifier", - "src": "52652:5:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "52642:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_array$_t_struct$_TxRawOutput_$2307_memory_ptr_$dyn_memory_ptr_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "50757:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "50768:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "50780:6:32", - "type": "" - } - ], - "src": "50656:2007:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "52749:103:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "52795:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "52804:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "52807:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "52797:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "52797:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "52797:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "52770:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "52779:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "52766:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "52766:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "52791:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "52762:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "52762:32:32" - }, - "nodeType": "YulIf", - "src": "52759:52:32" - }, - { - "nodeType": "YulAssignment", - "src": "52820:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "52836:9:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "52830:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "52830:16:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "52820:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bytes32_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "52715:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "52726:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "52738:6:32", - "type": "" - } - ], - "src": "52668:184:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "53031:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "53048:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "53059:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "53041:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "53041:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "53041:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "53082:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "53093:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "53078:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "53078:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "53098:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "53071:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "53071:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "53071:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "53120:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "53131:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "53116:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "53116:18:32" - }, - { - "hexValue": "4c4243303639", - "kind": "string", - "nodeType": "YulLiteral", - "src": "53136:8:32", - "type": "", - "value": "LBC069" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "53109:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "53109:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "53109:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "53154:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "53166:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "53177:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "53162:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "53162:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "53154:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_5cf5f7c75a2357c5697933702fe9f20c432f8f5205def7bf18572d390cea5cc1__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "53008:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "53022:4:32", - "type": "" - } - ], - "src": "52857:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "53365:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "53382:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "53393:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "53375:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "53375:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "53375:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "53416:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "53427:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "53412:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "53412:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "53432:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "53405:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "53405:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "53405:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "53454:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "53465:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "53450:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "53450:18:32" - }, - { - "hexValue": "4c4243303438", - "kind": "string", - "nodeType": "YulLiteral", - "src": "53470:8:32", - "type": "", - "value": "LBC048" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "53443:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "53443:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "53443:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "53488:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "53500:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "53511:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "53496:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "53496:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "53488:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_3c14ff4570332247d29826742fdf7f014a86ddbee2c49b0252a79ef49351f196__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "53342:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "53356:4:32", - "type": "" - } - ], - "src": "53191:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "53760:613:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "53770:33:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "53788:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "53799:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "53784:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "53784:19:32" - }, - "variables": [ - { - "name": "tail_1", - "nodeType": "YulTypedName", - "src": "53774:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "53819:9:32" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "53830:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "53812:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "53812:25:32" - }, - "nodeType": "YulExpressionStatement", - "src": "53812:25:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "53846:12:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "53856:2:32", - "type": "", - "value": "32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "53850:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "53878:9:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "53889:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "53874:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "53874:18:32" - }, - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "53894:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "53867:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "53867:34:32" - }, - "nodeType": "YulExpressionStatement", - "src": "53867:34:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "53921:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "53932:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "53917:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "53917:18:32" - }, - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "53937:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "53910:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "53910:34:32" - }, - "nodeType": "YulExpressionStatement", - "src": "53910:34:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "53964:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "53975:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "53960:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "53960:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "53980:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "53953:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "53953:31:32" - }, - "nodeType": "YulExpressionStatement", - "src": "53953:31:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "53993:17:32", - "value": { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "54004:6:32" - }, - "variables": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "53997:3:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "54019:27:32", - "value": { - "arguments": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "54039:6:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "54033:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "54033:13:32" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "54023:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "54062:6:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "54070:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "54055:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "54055:22:32" - }, - "nodeType": "YulExpressionStatement", - "src": "54055:22:32" - }, - { - "nodeType": "YulAssignment", - "src": "54086:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "54097:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "54108:3:32", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "54093:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "54093:19:32" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "54086:3:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "54121:29:32", - "value": { - "arguments": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "54139:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "54147:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "54135:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "54135:15:32" - }, - "variables": [ - { - "name": "srcPtr", - "nodeType": "YulTypedName", - "src": "54125:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "54159:10:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "54168:1:32", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "i", - "nodeType": "YulTypedName", - "src": "54163:1:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "54227:120:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "54248:3:32" - }, - { - "arguments": [ - { - "name": "srcPtr", - "nodeType": "YulIdentifier", - "src": "54259:6:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "54253:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "54253:13:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "54241:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "54241:26:32" - }, - "nodeType": "YulExpressionStatement", - "src": "54241:26:32" - }, - { - "nodeType": "YulAssignment", - "src": "54280:19:32", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "54291:3:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "54296:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "54287:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "54287:12:32" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "54280:3:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "54312:25:32", - "value": { - "arguments": [ - { - "name": "srcPtr", - "nodeType": "YulIdentifier", - "src": "54326:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "54334:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "54322:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "54322:15:32" - }, - "variableNames": [ - { - "name": "srcPtr", - "nodeType": "YulIdentifier", - "src": "54312:6:32" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "54189:1:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "54192:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "54186:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "54186:13:32" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "54200:18:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "54202:14:32", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "54211:1:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "54214:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "54207:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "54207:9:32" - }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "54202:1:32" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "54182:3:32", - "statements": [] - }, - "src": "54178:169:32" - }, - { - "nodeType": "YulAssignment", - "src": "54356:11:32", - "value": { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "54364:3:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "54356:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_bytes32_t_bytes32_t_uint256_t_array$_t_bytes32_$dyn_memory_ptr__to_t_bytes32_t_bytes32_t_uint256_t_array$_t_bytes32_$dyn_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "53705:9:32", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "53716:6:32", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "53724:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "53732:6:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "53740:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "53751:4:32", - "type": "" - } - ], - "src": "53525:848:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "54458:103:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "54504:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "54513:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "54516:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "54506:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "54506:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "54506:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "54479:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "54488:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "54475:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "54475:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "54500:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "54471:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "54471:32:32" - }, - "nodeType": "YulIf", - "src": "54468:52:32" - }, - { - "nodeType": "YulAssignment", - "src": "54529:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "54545:9:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "54539:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "54539:16:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "54529:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_int256_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "54424:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "54435:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "54447:6:32", - "type": "" - } - ], - "src": "54378:183:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "54740:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "54757:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "54768:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "54750:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "54750:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "54750:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "54791:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "54802:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "54787:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "54787:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "54807:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "54780:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "54780:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "54780:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "54829:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "54840:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "54825:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "54825:18:32" - }, - { - "hexValue": "4c4243303439", - "kind": "string", - "nodeType": "YulLiteral", - "src": "54845:8:32", - "type": "", - "value": "LBC049" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "54818:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "54818:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "54818:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "54863:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "54875:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "54886:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "54871:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "54871:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "54863:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_41cc9877d5a72c2a0ef0c602e024ddc86a1f279ef7306bab75dd3c5447ffb6e0__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "54717:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "54731:4:32", - "type": "" - } - ], - "src": "54566:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "54951:206:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "54961:28:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "54979:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "54983:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "54975:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "54975:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "54987:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "54971:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "54971:18:32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "54965:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "54998:46:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "55025:1:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "55028:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "55021:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "55021:10:32" - }, - { - "arguments": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "55037:1:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "55040:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "55033:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "55033:10:32" - } - ], - "functionName": { - "name": "mul", - "nodeType": "YulIdentifier", - "src": "55017:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "55017:27:32" - }, - "variables": [ - { - "name": "product_raw", - "nodeType": "YulTypedName", - "src": "55002:11:32", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "55053:31:32", - "value": { - "arguments": [ - { - "name": "product_raw", - "nodeType": "YulIdentifier", - "src": "55068:11:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "55081:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "55064:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "55064:20:32" - }, - "variableNames": [ - { - "name": "product", - "nodeType": "YulIdentifier", - "src": "55053:7:32" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "55129:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x11", - "nodeType": "YulIdentifier", - "src": "55131:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "55131:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "55131:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "product", - "nodeType": "YulIdentifier", - "src": "55106:7:32" - }, - { - "name": "product_raw", - "nodeType": "YulIdentifier", - "src": "55115:11:32" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "55103:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "55103:24:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "55096:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "55096:32:32" - }, - "nodeType": "YulIf", - "src": "55093:58:32" - } - ] - }, - "name": "checked_mul_t_uint64", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "x", - "nodeType": "YulTypedName", - "src": "54930:1:32", - "type": "" - }, - { - "name": "y", - "nodeType": "YulTypedName", - "src": "54933:1:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "product", - "nodeType": "YulTypedName", - "src": "54939:7:32", - "type": "" - } - ], - "src": "54900:257:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "55336:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "55353:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "55364:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "55346:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "55346:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "55346:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "55387:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "55398:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "55383:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "55383:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "55403:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "55376:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "55376:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "55376:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "55425:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "55436:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "55421:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "55421:18:32" - }, - { - "hexValue": "4c4243303637", - "kind": "string", - "nodeType": "YulLiteral", - "src": "55441:8:32", - "type": "", - "value": "LBC067" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "55414:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "55414:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "55414:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "55459:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "55471:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "55482:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "55467:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "55467:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "55459:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_94643b69f05d64f660a022cd48046be494c1ed271b5d9ae602f6fdadc77976be__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "55313:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "55327:4:32", - "type": "" - } - ], - "src": "55162:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "55645:158:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "55662:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "55673:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "55655:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "55655:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "55655:21:32" - }, - { - "nodeType": "YulAssignment", - "src": "55685:53:32", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "55711:6:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "55723:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "55734:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "55719:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "55719:18:32" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "55693:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "55693:45:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "55685:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "55758:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "55769:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "55754:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "55754:18:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "55788:6:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "55781:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "55781:14:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "55774:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "55774:22:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "55747:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "55747:50:32" - }, - "nodeType": "YulExpressionStatement", - "src": "55747:50:32" - } - ] - }, - "name": "abi_encode_tuple_t_bytes_memory_ptr_t_bool__to_t_bytes_memory_ptr_t_bool__fromStack_library_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "55606:9:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "55617:6:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "55625:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "55636:4:32", - "type": "" - } - ], - "src": "55496:307:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "55942:706:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "55952:12:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "55963:1:32", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "ret", - "nodeType": "YulTypedName", - "src": "55956:3:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "55973:30:32", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "55996:6:32" - } - ], - "functionName": { - "name": "sload", - "nodeType": "YulIdentifier", - "src": "55990:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "55990:13:32" - }, - "variables": [ - { - "name": "slotValue", - "nodeType": "YulTypedName", - "src": "55977:9:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "56012:50:32", - "value": { - "arguments": [ - { - "name": "slotValue", - "nodeType": "YulIdentifier", - "src": "56052:9:32" - } - ], - "functionName": { - "name": "extract_byte_array_length", - "nodeType": "YulIdentifier", - "src": "56026:25:32" - }, - "nodeType": "YulFunctionCall", - "src": "56026:36:32" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "56016:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "56071:11:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "56081:1:32", - "type": "", - "value": "1" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "56075:2:32", - "type": "" - } - ] - }, - { - "cases": [ - { - "body": { - "nodeType": "YulBlock", - "src": "56132:126:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "56153:3:32" - }, - { - "arguments": [ - { - "name": "slotValue", - "nodeType": "YulIdentifier", - "src": "56162:9:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "56177:3:32", - "type": "", - "value": "255" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "56173:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "56173:8:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "56158:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "56158:24:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "56146:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "56146:37:32" - }, - "nodeType": "YulExpressionStatement", - "src": "56146:37:32" - }, - { - "nodeType": "YulAssignment", - "src": "56196:52:32", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "56207:3:32" - }, - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "56216:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "56238:6:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "56231:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "56231:14:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "56224:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "56224:22:32" - } - ], - "functionName": { - "name": "mul", - "nodeType": "YulIdentifier", - "src": "56212:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "56212:35:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "56203:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "56203:45:32" - }, - "variableNames": [ - { - "name": "ret", - "nodeType": "YulIdentifier", - "src": "56196:3:32" - } - ] - } - ] - }, - "nodeType": "YulCase", - "src": "56125:133:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "56130:1:32", - "type": "", - "value": "0" - } - }, - { - "body": { - "nodeType": "YulBlock", - "src": "56274:349:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "56295:1:32", - "type": "", - "value": "0" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "56298:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "56288:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "56288:17:32" - }, - "nodeType": "YulExpressionStatement", - "src": "56288:17:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "56318:14:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "56328:4:32", - "type": "", - "value": "0x20" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "56322:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "56345:31:32", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "56370:1:32", - "type": "", - "value": "0" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "56373:2:32" - } - ], - "functionName": { - "name": "keccak256", - "nodeType": "YulIdentifier", - "src": "56360:9:32" - }, - "nodeType": "YulFunctionCall", - "src": "56360:16:32" - }, - "variables": [ - { - "name": "dataPos", - "nodeType": "YulTypedName", - "src": "56349:7:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "56389:10:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "56398:1:32", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "i", - "nodeType": "YulTypedName", - "src": "56393:1:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "56466:111:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "56495:3:32" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "56500:1:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "56491:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "56491:11:32" - }, - { - "arguments": [ - { - "name": "dataPos", - "nodeType": "YulIdentifier", - "src": "56510:7:32" - } - ], - "functionName": { - "name": "sload", - "nodeType": "YulIdentifier", - "src": "56504:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "56504:14:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "56484:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "56484:35:32" - }, - "nodeType": "YulExpressionStatement", - "src": "56484:35:32" - }, - { - "nodeType": "YulAssignment", - "src": "56536:27:32", - "value": { - "arguments": [ - { - "name": "dataPos", - "nodeType": "YulIdentifier", - "src": "56551:7:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "56560:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "56547:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "56547:16:32" - }, - "variableNames": [ - { - "name": "dataPos", - "nodeType": "YulIdentifier", - "src": "56536:7:32" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "56423:1:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "56426:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "56420:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "56420:13:32" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "56434:19:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "56436:15:32", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "56445:1:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "56448:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "56441:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "56441:10:32" - }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "56436:1:32" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "56416:3:32", - "statements": [] - }, - "src": "56412:165:32" - }, - { - "nodeType": "YulAssignment", - "src": "56590:23:32", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "56601:3:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "56606:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "56597:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "56597:16:32" - }, - "variableNames": [ - { - "name": "ret", - "nodeType": "YulIdentifier", - "src": "56590:3:32" - } - ] - } - ] - }, - "nodeType": "YulCase", - "src": "56267:356:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "56272:1:32", - "type": "", - "value": "1" - } - } - ], - "expression": { - "arguments": [ - { - "name": "slotValue", - "nodeType": "YulIdentifier", - "src": "56102:9:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "56113:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "56098:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "56098:18:32" - }, - "nodeType": "YulSwitch", - "src": "56091:532:32" - }, - { - "nodeType": "YulAssignment", - "src": "56632:10:32", - "value": { - "name": "ret", - "nodeType": "YulIdentifier", - "src": "56639:3:32" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "56632:3:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_packed_t_bytes_storage__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "55918:3:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "55923:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "55934:3:32", - "type": "" - } - ], - "src": "55808:840:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "56827:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "56844:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "56855:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "56837:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "56837:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "56837:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "56878:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "56889:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "56874:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "56874:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "56894:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "56867:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "56867:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "56867:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "56916:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "56927:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "56912:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "56912:18:32" - }, - { - "hexValue": "4c4243303638", - "kind": "string", - "nodeType": "YulLiteral", - "src": "56932:8:32", - "type": "", - "value": "LBC068" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "56905:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "56905:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "56905:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "56950:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "56962:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "56973:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "56958:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "56958:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "56950:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_7cd3d68dd2419ceccbacf2f69bda9c4c2f3bdb0c0535db4bbef90be788c8f7de__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "56804:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "56818:4:32", - "type": "" - } - ], - "src": "56653:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "57161:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "57178:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "57189:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "57171:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "57171:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "57171:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "57212:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "57223:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "57208:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "57208:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "57228:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "57201:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "57201:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "57201:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "57250:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "57261:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "57246:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "57246:18:32" - }, - { - "hexValue": "4c4243303530", - "kind": "string", - "nodeType": "YulLiteral", - "src": "57266:8:32", - "type": "", - "value": "LBC050" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "57239:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "57239:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "57239:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "57284:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "57296:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "57307:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "57292:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "57292:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "57284:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_3dcf1159943f9eee729b997e5df9acd0f1771321696b1fb47efa6e54bee2f352__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "57138:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "57152:4:32", - "type": "" - } - ], - "src": "56987:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "57495:228:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "57512:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "57523:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "57505:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "57505:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "57505:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "57546:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "57557:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "57542:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "57542:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "57562:2:32", - "type": "", - "value": "38" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "57535:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "57535:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "57535:30:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "57585:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "57596:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "57581:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "57581:18:32" - }, - { - "hexValue": "4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061", - "kind": "string", - "nodeType": "YulLiteral", - "src": "57601:34:32", - "type": "", - "value": "Ownable: new owner is the zero a" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "57574:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "57574:62:32" - }, - "nodeType": "YulExpressionStatement", - "src": "57574:62:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "57656:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "57667:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "57652:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "57652:18:32" - }, - { - "hexValue": "646472657373", - "kind": "string", - "nodeType": "YulLiteral", - "src": "57672:8:32", - "type": "", - "value": "ddress" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "57645:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "57645:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "57645:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "57690:27:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "57702:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "57713:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "57698:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "57698:19:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "57690:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "57472:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "57486:4:32", - "type": "" - } - ], - "src": "57321:402:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "57902:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "57919:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "57930:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "57912:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "57912:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "57912:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "57953:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "57964:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "57949:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "57949:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "57969:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "57942:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "57942:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "57942:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "57991:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "58002:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "57987:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "57987:18:32" - }, - { - "hexValue": "4c4243303531", - "kind": "string", - "nodeType": "YulLiteral", - "src": "58007:8:32", - "type": "", - "value": "LBC051" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "57980:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "57980:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "57980:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "58025:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "58037:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "58048:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "58033:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "58033:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "58025:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_ed7029e52dbf10ed9f0aafb2c33265c713a3f4dfd10cc113f22ba3c1270e1ddb__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "57879:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "57893:4:32", - "type": "" - } - ], - "src": "57728:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "58236:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "58253:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "58264:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "58246:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "58246:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "58246:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "58287:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "58298:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "58283:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "58283:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "58303:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "58276:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "58276:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "58276:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "58325:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "58336:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "58321:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "58321:18:32" - }, - { - "hexValue": "4c4243303532", - "kind": "string", - "nodeType": "YulLiteral", - "src": "58341:8:32", - "type": "", - "value": "LBC052" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "58314:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "58314:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "58314:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "58359:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "58371:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "58382:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "58367:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "58367:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "58359:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_a1a398356814e2eac3017ce127db7657cbb8e2f1d90a78bc426eaa92c56969eb__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "58213:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "58227:4:32", - "type": "" - } - ], - "src": "58062:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "58570:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "58587:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "58598:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "58580:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "58580:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "58580:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "58621:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "58632:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "58617:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "58617:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "58637:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "58610:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "58610:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "58610:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "58659:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "58670:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "58655:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "58655:18:32" - }, - { - "hexValue": "4c4243303533", - "kind": "string", - "nodeType": "YulLiteral", - "src": "58675:8:32", - "type": "", - "value": "LBC053" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "58648:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "58648:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "58648:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "58693:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "58705:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "58716:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "58701:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "58701:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "58693:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_923b965409721a83cf4ae76f34fa52de6eb09679d5b7141d2c0fc518a94192db__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "58547:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "58561:4:32", - "type": "" - } - ], - "src": "58396:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "58904:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "58921:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "58932:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "58914:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "58914:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "58914:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "58955:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "58966:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "58951:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "58951:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "58971:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "58944:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "58944:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "58944:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "58993:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "59004:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "58989:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "58989:18:32" - }, - { - "hexValue": "4c4243303534", - "kind": "string", - "nodeType": "YulLiteral", - "src": "59009:8:32", - "type": "", - "value": "LBC054" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "58982:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "58982:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "58982:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "59027:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "59039:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "59050:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "59035:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "59035:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "59027:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_472231c5f3abacc190b5fd56153fbfc4b6c39c18040d443b29faee14791d54d9__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "58881:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "58895:4:32", - "type": "" - } - ], - "src": "58730:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "59238:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "59255:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "59266:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "59248:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "59248:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "59248:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "59289:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "59300:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "59285:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "59285:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "59305:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "59278:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "59278:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "59278:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "59327:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "59338:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "59323:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "59323:18:32" - }, - { - "hexValue": "4c4243303535", - "kind": "string", - "nodeType": "YulLiteral", - "src": "59343:8:32", - "type": "", - "value": "LBC055" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "59316:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "59316:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "59316:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "59361:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "59373:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "59384:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "59369:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "59369:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "59361:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_1bdc71792e300c3b19739ad62e7651b4b49de502b7d1b6227970563bffaad71e__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "59215:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "59229:4:32", - "type": "" - } - ], - "src": "59064:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "59445:133:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "59455:28:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "59473:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "59477:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "59469:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "59469:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "59481:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "59465:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "59465:18:32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "59459:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "59492:34:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "59507:1:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "59510:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "59503:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "59503:10:32" - }, - { - "arguments": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "59519:1:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "59522:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "59515:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "59515:10:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "59499:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "59499:27:32" - }, - "variableNames": [ - { - "name": "sum", - "nodeType": "YulIdentifier", - "src": "59492:3:32" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "59550:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x11", - "nodeType": "YulIdentifier", - "src": "59552:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "59552:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "59552:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "sum", - "nodeType": "YulIdentifier", - "src": "59541:3:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "59546:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "59538:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "59538:11:32" - }, - "nodeType": "YulIf", - "src": "59535:37:32" - } - ] - }, - "name": "checked_add_t_uint64", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "x", - "nodeType": "YulTypedName", - "src": "59428:1:32", - "type": "" - }, - { - "name": "y", - "nodeType": "YulTypedName", - "src": "59431:1:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "sum", - "nodeType": "YulTypedName", - "src": "59437:3:32", - "type": "" - } - ], - "src": "59398:180:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "59757:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "59774:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "59785:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "59767:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "59767:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "59767:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "59808:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "59819:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "59804:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "59804:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "59824:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "59797:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "59797:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "59797:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "59846:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "59857:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "59842:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "59842:18:32" - }, - { - "hexValue": "4c4243303731", - "kind": "string", - "nodeType": "YulLiteral", - "src": "59862:8:32", - "type": "", - "value": "LBC071" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "59835:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "59835:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "59835:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "59880:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "59892:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "59903:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "59888:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "59888:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "59880:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_79d3c6c4bda42d819072ed97d83e6147bd9ad75bd5415529ecb6a41984271fb2__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "59734:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "59748:4:32", - "type": "" - } - ], - "src": "59583:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "60084:110:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "60101:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "60112:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "60094:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "60094:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "60094:21:32" - }, - { - "nodeType": "YulAssignment", - "src": "60124:64:32", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "60161:6:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "60173:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "60184:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "60169:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "60169:18:32" - } - ], - "functionName": { - "name": "abi_encode_struct_PeginQuote", - "nodeType": "YulIdentifier", - "src": "60132:28:32" - }, - "nodeType": "YulFunctionCall", - "src": "60132:56:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "60124:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_struct$_PeginQuote_$10962_memory_ptr__to_t_struct$_PeginQuote_$10962_memory_ptr__fromStack_library_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "60053:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "60064:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "60075:4:32", - "type": "" - } - ], - "src": "59917:277:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "60373:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "60390:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "60401:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "60383:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "60383:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "60383:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "60424:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "60435:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "60420:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "60420:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "60440:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "60413:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "60413:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "60413:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "60462:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "60473:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "60458:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "60458:18:32" - }, - { - "hexValue": "4c4243303130", - "kind": "string", - "nodeType": "YulLiteral", - "src": "60478:8:32", - "type": "", - "value": "LBC010" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "60451:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "60451:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "60451:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "60496:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "60508:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "60519:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "60504:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "60504:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "60496:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_b91014d5c812b217b1f7abf06d04044851a14f3d4efa9b6795d3964c23897cc9__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "60350:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "60364:4:32", - "type": "" - } - ], - "src": "60199:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "60707:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "60724:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "60735:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "60717:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "60717:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "60717:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "60758:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "60769:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "60754:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "60754:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "60774:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "60747:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "60747:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "60747:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "60796:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "60807:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "60792:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "60792:18:32" - }, - { - "hexValue": "4c4243303137", - "kind": "string", - "nodeType": "YulLiteral", - "src": "60812:8:32", - "type": "", - "value": "LBC017" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "60785:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "60785:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "60785:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "60830:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "60842:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "60853:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "60838:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "60838:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "60830:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_849663c0a27b21987cfc03f3233af0a7a46b23f0af09d39a18720d9610bcba81__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "60684:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "60698:4:32", - "type": "" - } - ], - "src": "60533:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "61059:62:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "61076:3:32" - }, - { - "hexValue": "626f7468", - "kind": "string", - "nodeType": "YulLiteral", - "src": "61081:6:32", - "type": "", - "value": "both" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "61069:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "61069:19:32" - }, - "nodeType": "YulExpressionStatement", - "src": "61069:19:32" - }, - { - "nodeType": "YulAssignment", - "src": "61097:18:32", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "61108:3:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "61113:1:32", - "type": "", - "value": "4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "61104:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "61104:11:32" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "61097:3:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_packed_t_stringliteral_36ad643d447cde9387780ae6f5b371120b595aaff5d56b8440952d5f7116fa16__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "61043:3:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "61051:3:32", - "type": "" - } - ], - "src": "60867:254:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "61300:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "61317:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "61328:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "61310:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "61310:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "61310:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "61351:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "61362:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "61347:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "61347:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "61367:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "61340:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "61340:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "61340:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "61389:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "61400:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "61385:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "61385:18:32" - }, - { - "hexValue": "4c4243303138", - "kind": "string", - "nodeType": "YulLiteral", - "src": "61405:8:32", - "type": "", - "value": "LBC018" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "61378:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "61378:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "61378:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "61423:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "61435:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "61446:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "61431:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "61431:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "61423:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_c8a2f96b1c149a2cda2dda6db9bbdafbecddac69bce104e31ad4dd14842e4820__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "61277:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "61291:4:32", - "type": "" - } - ], - "src": "61126:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "61634:233:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "61651:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "61662:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "61644:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "61644:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "61644:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "61685:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "61696:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "61681:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "61681:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "61701:2:32", - "type": "", - "value": "43" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "61674:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "61674:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "61674:30:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "61724:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "61735:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "61720:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "61720:18:32" - }, - { - "hexValue": "496e697469616c697a61626c653a20636f6e7472616374206973206e6f742069", - "kind": "string", - "nodeType": "YulLiteral", - "src": "61740:34:32", - "type": "", - "value": "Initializable: contract is not i" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "61713:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "61713:62:32" - }, - "nodeType": "YulExpressionStatement", - "src": "61713:62:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "61795:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "61806:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "61791:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "61791:18:32" - }, - { - "hexValue": "6e697469616c697a696e67", - "kind": "string", - "nodeType": "YulLiteral", - "src": "61811:13:32", - "type": "", - "value": "nitializing" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "61784:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "61784:41:32" - }, - "nodeType": "YulExpressionStatement", - "src": "61784:41:32" - }, - { - "nodeType": "YulAssignment", - "src": "61834:27:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "61846:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "61857:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "61842:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "61842:19:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "61834:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_d688db918bb9dd50354922faa108595679886fe9ff08046ad1ffe30aaea55f8b__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "61611:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "61625:4:32", - "type": "" - } - ], - "src": "61460:407:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "62046:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "62063:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "62074:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "62056:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "62056:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "62056:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "62097:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "62108:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "62093:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "62093:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "62113:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "62086:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "62086:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "62086:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "62135:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "62146:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "62131:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "62131:18:32" - }, - { - "hexValue": "4c4243303536", - "kind": "string", - "nodeType": "YulLiteral", - "src": "62151:8:32", - "type": "", - "value": "LBC056" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "62124:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "62124:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "62124:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "62169:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "62181:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "62192:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "62177:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "62177:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "62169:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_5004352c178489e456f74ee0937a3403e68ee3fa72f6afa5bff20fe549075132__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "62023:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "62037:4:32", - "type": "" - } - ], - "src": "61872:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "62375:2278:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "62392:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "62403:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "62385:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "62385:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "62385:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "62440:6:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "62434:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "62434:13:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "62453:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "62464:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "62449:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "62449:18:32" - } - ], - "functionName": { - "name": "abi_encode_address", - "nodeType": "YulIdentifier", - "src": "62415:18:32" - }, - "nodeType": "YulFunctionCall", - "src": "62415:53:32" - }, - "nodeType": "YulExpressionStatement", - "src": "62415:53:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "62477:42:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "62507:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "62515:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "62503:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "62503:15:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "62497:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "62497:22:32" - }, - "variables": [ - { - "name": "memberValue0", - "nodeType": "YulTypedName", - "src": "62481:12:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "memberValue0", - "nodeType": "YulIdentifier", - "src": "62547:12:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "62565:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "62576:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "62561:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "62561:18:32" - } - ], - "functionName": { - "name": "abi_encode_address", - "nodeType": "YulIdentifier", - "src": "62528:18:32" - }, - "nodeType": "YulFunctionCall", - "src": "62528:52:32" - }, - "nodeType": "YulExpressionStatement", - "src": "62528:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "62589:44:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "62621:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "62629:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "62617:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "62617:15:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "62611:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "62611:22:32" - }, - "variables": [ - { - "name": "memberValue0_1", - "nodeType": "YulTypedName", - "src": "62593:14:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "62642:16:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "62652:6:32", - "type": "", - "value": "0x0220" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "62646:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "62678:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "62689:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "62674:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "62674:18:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "62694:2:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "62667:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "62667:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "62667:30:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "62706:68:32", - "value": { - "arguments": [ - { - "name": "memberValue0_1", - "nodeType": "YulIdentifier", - "src": "62738:14:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "62758:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "62769:3:32", - "type": "", - "value": "576" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "62754:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "62754:19:32" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "62720:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "62720:54:32" - }, - "variables": [ - { - "name": "tail_1", - "nodeType": "YulTypedName", - "src": "62710:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "62783:44:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "62815:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "62823:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "62811:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "62811:15:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "62805:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "62805:22:32" - }, - "variables": [ - { - "name": "memberValue0_2", - "nodeType": "YulTypedName", - "src": "62787:14:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "memberValue0_2", - "nodeType": "YulIdentifier", - "src": "62855:14:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "62875:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "62886:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "62871:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "62871:19:32" - } - ], - "functionName": { - "name": "abi_encode_address", - "nodeType": "YulIdentifier", - "src": "62836:18:32" - }, - "nodeType": "YulFunctionCall", - "src": "62836:55:32" - }, - "nodeType": "YulExpressionStatement", - "src": "62836:55:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "62900:45:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "62932:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "62940:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "62928:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "62928:16:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "62922:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "62922:23:32" - }, - "variables": [ - { - "name": "memberValue0_3", - "nodeType": "YulTypedName", - "src": "62904:14:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "62954:17:32", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "62968:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "62964:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "62964:7:32" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "62958:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "62991:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "63002:3:32", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "62987:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "62987:19:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "63016:6:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "63024:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "63012:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "63012:22:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "63036:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "63008:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "63008:31:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "62980:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "62980:60:32" - }, - "nodeType": "YulExpressionStatement", - "src": "62980:60:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "63049:55:32", - "value": { - "arguments": [ - { - "name": "memberValue0_3", - "nodeType": "YulIdentifier", - "src": "63081:14:32" - }, - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "63097:6:32" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "63063:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "63063:41:32" - }, - "variables": [ - { - "name": "tail_2", - "nodeType": "YulTypedName", - "src": "63053:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "63124:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "63135:3:32", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "63120:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "63120:19:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "63151:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "63159:3:32", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "63147:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "63147:16:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "63141:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "63141:23:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "63113:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "63113:52:32" - }, - "nodeType": "YulExpressionStatement", - "src": "63113:52:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "63185:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "63196:3:32", - "type": "", - "value": "224" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "63181:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "63181:19:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "63212:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "63220:3:32", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "63208:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "63208:16:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "63202:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "63202:23:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "63174:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "63174:52:32" - }, - "nodeType": "YulExpressionStatement", - "src": "63174:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "63235:45:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "63267:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "63275:3:32", - "type": "", - "value": "224" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "63263:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "63263:16:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "63257:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "63257:23:32" - }, - "variables": [ - { - "name": "memberValue0_4", - "nodeType": "YulTypedName", - "src": "63239:14:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "63289:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "63299:3:32", - "type": "", - "value": "256" - }, - "variables": [ - { - "name": "_3", - "nodeType": "YulTypedName", - "src": "63293:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "memberValue0_4", - "nodeType": "YulIdentifier", - "src": "63328:14:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "63348:9:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "63359:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "63344:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "63344:18:32" - } - ], - "functionName": { - "name": "abi_encode_int64", - "nodeType": "YulIdentifier", - "src": "63311:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "63311:52:32" - }, - "nodeType": "YulExpressionStatement", - "src": "63311:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "63372:44:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "63404:6:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "63412:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "63400:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "63400:15:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "63394:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "63394:22:32" - }, - "variables": [ - { - "name": "memberValue0_5", - "nodeType": "YulTypedName", - "src": "63376:14:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "63425:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "63435:3:32", - "type": "", - "value": "288" - }, - "variables": [ - { - "name": "_4", - "nodeType": "YulTypedName", - "src": "63429:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "63458:9:32" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "63469:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "63454:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "63454:18:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "63482:6:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "63490:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "63478:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "63478:22:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "63502:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "63474:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "63474:31:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "63447:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "63447:59:32" - }, - "nodeType": "YulExpressionStatement", - "src": "63447:59:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "63515:55:32", - "value": { - "arguments": [ - { - "name": "memberValue0_5", - "nodeType": "YulIdentifier", - "src": "63547:14:32" - }, - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "63563:6:32" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "63529:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "63529:41:32" - }, - "variables": [ - { - "name": "tail_3", - "nodeType": "YulTypedName", - "src": "63519:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "63579:32:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "63599:6:32" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "63607:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "63595:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "63595:15:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "63589:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "63589:22:32" - }, - "variables": [ - { - "name": "_5", - "nodeType": "YulTypedName", - "src": "63583:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "63620:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "63630:3:32", - "type": "", - "value": "320" - }, - "variables": [ - { - "name": "_6", - "nodeType": "YulTypedName", - "src": "63624:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "63653:9:32" - }, - { - "name": "_6", - "nodeType": "YulIdentifier", - "src": "63664:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "63649:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "63649:18:32" - }, - { - "name": "_5", - "nodeType": "YulIdentifier", - "src": "63669:2:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "63642:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "63642:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "63642:30:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "63681:44:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "63713:6:32" - }, - { - "name": "_6", - "nodeType": "YulIdentifier", - "src": "63721:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "63709:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "63709:15:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "63703:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "63703:22:32" - }, - "variables": [ - { - "name": "memberValue0_6", - "nodeType": "YulTypedName", - "src": "63685:14:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "63734:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "63744:3:32", - "type": "", - "value": "352" - }, - "variables": [ - { - "name": "_7", - "nodeType": "YulTypedName", - "src": "63738:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "memberValue0_6", - "nodeType": "YulIdentifier", - "src": "63774:14:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "63794:9:32" - }, - { - "name": "_7", - "nodeType": "YulIdentifier", - "src": "63805:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "63790:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "63790:18:32" - } - ], - "functionName": { - "name": "abi_encode_uint32", - "nodeType": "YulIdentifier", - "src": "63756:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "63756:53:32" - }, - "nodeType": "YulExpressionStatement", - "src": "63756:53:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "63818:44:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "63850:6:32" - }, - { - "name": "_7", - "nodeType": "YulIdentifier", - "src": "63858:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "63846:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "63846:15:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "63840:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "63840:22:32" - }, - "variables": [ - { - "name": "memberValue0_7", - "nodeType": "YulTypedName", - "src": "63822:14:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "63871:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "63881:3:32", - "type": "", - "value": "384" - }, - "variables": [ - { - "name": "_8", - "nodeType": "YulTypedName", - "src": "63875:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "memberValue0_7", - "nodeType": "YulIdentifier", - "src": "63911:14:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "63931:9:32" - }, - { - "name": "_8", - "nodeType": "YulIdentifier", - "src": "63942:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "63927:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "63927:18:32" - } - ], - "functionName": { - "name": "abi_encode_uint32", - "nodeType": "YulIdentifier", - "src": "63893:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "63893:53:32" - }, - "nodeType": "YulExpressionStatement", - "src": "63893:53:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "63955:44:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "63987:6:32" - }, - { - "name": "_8", - "nodeType": "YulIdentifier", - "src": "63995:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "63983:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "63983:15:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "63977:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "63977:22:32" - }, - "variables": [ - { - "name": "memberValue0_8", - "nodeType": "YulTypedName", - "src": "63959:14:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "64008:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "64018:3:32", - "type": "", - "value": "416" - }, - "variables": [ - { - "name": "_9", - "nodeType": "YulTypedName", - "src": "64012:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "memberValue0_8", - "nodeType": "YulIdentifier", - "src": "64048:14:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "64068:9:32" - }, - { - "name": "_9", - "nodeType": "YulIdentifier", - "src": "64079:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "64064:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "64064:18:32" - } - ], - "functionName": { - "name": "abi_encode_uint16", - "nodeType": "YulIdentifier", - "src": "64030:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "64030:53:32" - }, - "nodeType": "YulExpressionStatement", - "src": "64030:53:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "64092:44:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "64124:6:32" - }, - { - "name": "_9", - "nodeType": "YulIdentifier", - "src": "64132:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "64120:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "64120:15:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "64114:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "64114:22:32" - }, - "variables": [ - { - "name": "memberValue0_9", - "nodeType": "YulTypedName", - "src": "64096:14:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "64145:14:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "64156:3:32", - "type": "", - "value": "448" - }, - "variables": [ - { - "name": "_10", - "nodeType": "YulTypedName", - "src": "64149:3:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "memberValue0_9", - "nodeType": "YulIdentifier", - "src": "64186:14:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "64206:9:32" - }, - { - "name": "_10", - "nodeType": "YulIdentifier", - "src": "64217:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "64202:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "64202:19:32" - } - ], - "functionName": { - "name": "abi_encode_uint16", - "nodeType": "YulIdentifier", - "src": "64168:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "64168:54:32" - }, - "nodeType": "YulExpressionStatement", - "src": "64168:54:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "64231:46:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "64264:6:32" - }, - { - "name": "_10", - "nodeType": "YulIdentifier", - "src": "64272:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "64260:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "64260:16:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "64254:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "64254:23:32" - }, - "variables": [ - { - "name": "memberValue0_10", - "nodeType": "YulTypedName", - "src": "64235:15:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "64286:14:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "64297:3:32", - "type": "", - "value": "480" - }, - "variables": [ - { - "name": "_11", - "nodeType": "YulTypedName", - "src": "64290:3:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "memberValue0_10", - "nodeType": "YulIdentifier", - "src": "64327:15:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "64348:9:32" - }, - { - "name": "_11", - "nodeType": "YulIdentifier", - "src": "64359:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "64344:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "64344:19:32" - } - ], - "functionName": { - "name": "abi_encode_uint32", - "nodeType": "YulIdentifier", - "src": "64309:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "64309:55:32" - }, - "nodeType": "YulExpressionStatement", - "src": "64309:55:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "64373:46:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "64406:6:32" - }, - { - "name": "_11", - "nodeType": "YulIdentifier", - "src": "64414:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "64402:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "64402:16:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "64396:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "64396:23:32" - }, - "variables": [ - { - "name": "memberValue0_11", - "nodeType": "YulTypedName", - "src": "64377:15:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "64428:14:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "64439:3:32", - "type": "", - "value": "512" - }, - "variables": [ - { - "name": "_12", - "nodeType": "YulTypedName", - "src": "64432:3:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "memberValue0_11", - "nodeType": "YulIdentifier", - "src": "64469:15:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "64490:9:32" - }, - { - "name": "_12", - "nodeType": "YulIdentifier", - "src": "64501:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "64486:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "64486:19:32" - } - ], - "functionName": { - "name": "abi_encode_uint32", - "nodeType": "YulIdentifier", - "src": "64451:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "64451:55:32" - }, - "nodeType": "YulExpressionStatement", - "src": "64451:55:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "64515:46:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "64548:6:32" - }, - { - "name": "_12", - "nodeType": "YulIdentifier", - "src": "64556:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "64544:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "64544:16:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "64538:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "64538:23:32" - }, - "variables": [ - { - "name": "memberValue0_12", - "nodeType": "YulTypedName", - "src": "64519:15:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "memberValue0_12", - "nodeType": "YulIdentifier", - "src": "64588:15:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "64609:9:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "64620:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "64605:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "64605:18:32" - } - ], - "functionName": { - "name": "abi_encode_uint32", - "nodeType": "YulIdentifier", - "src": "64570:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "64570:54:32" - }, - "nodeType": "YulExpressionStatement", - "src": "64570:54:32" - }, - { - "nodeType": "YulAssignment", - "src": "64633:14:32", - "value": { - "name": "tail_3", - "nodeType": "YulIdentifier", - "src": "64641:6:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "64633:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_struct$_PegOutQuote_$10997_memory_ptr__to_t_struct$_PegOutQuote_$10997_memory_ptr__fromStack_library_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "62344:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "62355:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "62366:4:32", - "type": "" - } - ], - "src": "62206:2447:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "64832:181:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "64849:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "64860:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "64842:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "64842:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "64842:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "64883:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "64894:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "64879:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "64879:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "64899:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "64872:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "64872:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "64872:30:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "64922:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "64933:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "64918:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "64918:18:32" - }, - { - "hexValue": "5265656e7472616e637947756172643a207265656e7472616e742063616c6c", - "kind": "string", - "nodeType": "YulLiteral", - "src": "64938:33:32", - "type": "", - "value": "ReentrancyGuard: reentrant call" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "64911:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "64911:61:32" - }, - "nodeType": "YulExpressionStatement", - "src": "64911:61:32" - }, - { - "nodeType": "YulAssignment", - "src": "64981:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "64993:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "65004:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "64989:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "64989:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "64981:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_ebf73bba305590e4764d5cb53b69bffd6d4d092d1a67551cb346f8cfcdab8619__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "64809:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "64823:4:32", - "type": "" - } - ], - "src": "64658:355:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "65397:684:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "65407:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "65417:3:32", - "type": "", - "value": "256" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "65411:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "65436:9:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "65447:2:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "65429:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "65429:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "65429:21:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "65459:59:32", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "65491:6:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "65503:9:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "65514:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "65499:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "65499:18:32" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "65473:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "65473:45:32" - }, - "variables": [ - { - "name": "tail_1", - "nodeType": "YulTypedName", - "src": "65463:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "65538:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "65549:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "65534:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "65534:18:32" - }, - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "65554:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "65527:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "65527:34:32" - }, - "nodeType": "YulExpressionStatement", - "src": "65527:34:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "65581:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "65592:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "65577:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "65577:18:32" - }, - { - "arguments": [ - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "65601:6:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "65609:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "65597:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "65597:22:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "65570:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "65570:50:32" - }, - "nodeType": "YulExpressionStatement", - "src": "65570:50:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "65629:47:32", - "value": { - "arguments": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "65661:6:32" - }, - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "65669:6:32" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "65643:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "65643:33:32" - }, - "variables": [ - { - "name": "tail_2", - "nodeType": "YulTypedName", - "src": "65633:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "65696:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "65707:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "65692:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "65692:18:32" - }, - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "65712:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "65685:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "65685:34:32" - }, - "nodeType": "YulExpressionStatement", - "src": "65685:34:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "65739:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "65750:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "65735:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "65735:19:32" - }, - { - "arguments": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "65760:6:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "65768:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "65756:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "65756:22:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "65728:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "65728:51:32" - }, - "nodeType": "YulExpressionStatement", - "src": "65728:51:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "65788:47:32", - "value": { - "arguments": [ - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "65820:6:32" - }, - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "65828:6:32" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "65802:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "65802:33:32" - }, - "variables": [ - { - "name": "tail_3", - "nodeType": "YulTypedName", - "src": "65792:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "65855:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "65866:3:32", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "65851:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "65851:19:32" - }, - { - "arguments": [ - { - "name": "value5", - "nodeType": "YulIdentifier", - "src": "65876:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "65892:3:32", - "type": "", - "value": "160" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "65897:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "65888:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "65888:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "65901:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "65884:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "65884:19:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "65872:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "65872:32:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "65844:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "65844:61:32" - }, - "nodeType": "YulExpressionStatement", - "src": "65844:61:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "65925:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "65936:3:32", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "65921:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "65921:19:32" - }, - { - "arguments": [ - { - "name": "tail_3", - "nodeType": "YulIdentifier", - "src": "65946:6:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "65954:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "65942:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "65942:22:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "65914:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "65914:51:32" - }, - "nodeType": "YulExpressionStatement", - "src": "65914:51:32" - }, - { - "nodeType": "YulAssignment", - "src": "65974:41:32", - "value": { - "arguments": [ - { - "name": "value6", - "nodeType": "YulIdentifier", - "src": "66000:6:32" - }, - { - "name": "tail_3", - "nodeType": "YulIdentifier", - "src": "66008:6:32" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "65982:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "65982:33:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "65974:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "66035:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "66046:3:32", - "type": "", - "value": "224" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "66031:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "66031:19:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "value7", - "nodeType": "YulIdentifier", - "src": "66066:6:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "66059:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "66059:14:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "66052:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "66052:22:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "66024:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "66024:51:32" - }, - "nodeType": "YulExpressionStatement", - "src": "66024:51:32" - } - ] - }, - "name": "abi_encode_tuple_t_bytes_memory_ptr_t_uint256_t_bytes_memory_ptr_t_bytes32_t_bytes_memory_ptr_t_address_payable_t_bytes_memory_ptr_t_bool__to_t_bytes_memory_ptr_t_uint256_t_bytes_memory_ptr_t_bytes32_t_bytes_memory_ptr_t_address_payable_t_bytes_memory_ptr_t_bool__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "65310:9:32", - "type": "" - }, - { - "name": "value7", - "nodeType": "YulTypedName", - "src": "65321:6:32", - "type": "" - }, - { - "name": "value6", - "nodeType": "YulTypedName", - "src": "65329:6:32", - "type": "" - }, - { - "name": "value5", - "nodeType": "YulTypedName", - "src": "65337:6:32", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "65345:6:32", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "65353:6:32", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "65361:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "65369:6:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "65377:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "65388:4:32", - "type": "" - } - ], - "src": "65018:1063:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "66260:170:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "66277:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "66288:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "66270:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "66270:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "66270:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "66311:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "66322:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "66307:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "66307:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "66327:2:32", - "type": "", - "value": "20" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "66300:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "66300:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "66300:30:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "66350:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "66361:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "66346:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "66346:18:32" - }, - { - "hexValue": "496e76616c696420626c6f636b20686569676874", - "kind": "string", - "nodeType": "YulLiteral", - "src": "66366:22:32", - "type": "", - "value": "Invalid block height" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "66339:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "66339:50:32" - }, - "nodeType": "YulExpressionStatement", - "src": "66339:50:32" - }, - { - "nodeType": "YulAssignment", - "src": "66398:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "66410:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "66421:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "66406:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "66406:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "66398:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_b13cbe420d932534b4c4c376e19a45f25e0ca05c6f1a458489ccb0574b26a6d9__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "66237:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "66251:4:32", - "type": "" - } - ], - "src": "66086:344:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "66609:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "66626:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "66637:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "66619:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "66619:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "66619:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "66660:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "66671:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "66656:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "66656:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "66676:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "66649:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "66649:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "66649:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "66698:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "66709:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "66694:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "66694:18:32" - }, - { - "hexValue": "4c4243303538", - "kind": "string", - "nodeType": "YulLiteral", - "src": "66714:8:32", - "type": "", - "value": "LBC058" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "66687:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "66687:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "66687:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "66732:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "66744:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "66755:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "66740:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "66740:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "66732:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_bac19bb4c4dce4ec87196bdccebfa1c4310f60332f1259cdc0bb93303ee1c2a0__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "66586:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "66600:4:32", - "type": "" - } - ], - "src": "66435:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "66943:182:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "66960:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "66971:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "66953:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "66953:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "66953:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "66994:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "67005:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "66990:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "66990:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "67010:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "66983:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "66983:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "66983:30:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "67033:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "67044:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "67029:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "67029:18:32" - }, - { - "hexValue": "4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572", - "kind": "string", - "nodeType": "YulLiteral", - "src": "67049:34:32", - "type": "", - "value": "Ownable: caller is not the owner" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "67022:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "67022:62:32" - }, - "nodeType": "YulExpressionStatement", - "src": "67022:62:32" - }, - { - "nodeType": "YulAssignment", - "src": "67093:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "67105:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "67116:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "67101:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "67101:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "67093:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "66920:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "66934:4:32", - "type": "" - } - ], - "src": "66769:356:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "67304:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "67321:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "67332:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "67314:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "67314:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "67314:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "67355:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "67366:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "67351:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "67351:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "67371:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "67344:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "67344:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "67344:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "67393:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "67404:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "67389:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "67389:18:32" - }, - { - "hexValue": "4c4243303632", - "kind": "string", - "nodeType": "YulLiteral", - "src": "67409:8:32", - "type": "", - "value": "LBC062" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "67382:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "67382:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "67382:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "67427:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "67439:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "67450:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "67435:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "67435:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "67427:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_670f3ba0b2ca6f986efb9f8a498a40315443c3d4e263cc5de65e37011508c7c9__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "67281:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "67295:4:32", - "type": "" - } - ], - "src": "67130:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "67638:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "67655:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "67666:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "67648:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "67648:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "67648:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "67689:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "67700:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "67685:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "67685:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "67705:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "67678:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "67678:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "67678:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "67727:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "67738:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "67723:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "67723:18:32" - }, - { - "hexValue": "4c4243303539", - "kind": "string", - "nodeType": "YulLiteral", - "src": "67743:8:32", - "type": "", - "value": "LBC059" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "67716:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "67716:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "67716:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "67761:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "67773:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "67784:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "67769:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "67769:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "67761:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_319f398ccb7cc8c2c2304e07f301f618437c863aa2ff561ced1eaa40fcd3df63__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "67615:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "67629:4:32", - "type": "" - } - ], - "src": "67464:329:32" - } - ] - }, - "contents": "{\n { }\n function abi_encode_tuple_t_stringliteral_a23daf30bd1e42cc69e3bea751166702f08d640860ab6f4c84d6bacb970360da__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC007\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_uint8__to_t_uint8__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, 0xff))\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 panic_error_0x41()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n function allocate_memory_9157() -> memPtr\n {\n memPtr := mload(64)\n let newFreePtr := add(memPtr, 0x0240)\n if or(gt(newFreePtr, sub(shl(64, 1), 1)), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n function allocate_memory_9158() -> memPtr\n {\n memPtr := mload(64)\n let newFreePtr := add(memPtr, 0x0220)\n if or(gt(newFreePtr, sub(shl(64, 1), 1)), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n function allocate_memory_9162() -> memPtr\n {\n memPtr := mload(64)\n let newFreePtr := add(memPtr, 0x80)\n if or(gt(newFreePtr, sub(shl(64, 1), 1)), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n function allocate_memory(size) -> memPtr\n {\n memPtr := mload(64)\n let newFreePtr := add(memPtr, and(add(size, 31), not(31)))\n if or(gt(newFreePtr, sub(shl(64, 1), 1)), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n function abi_decode_bytes20(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, not(sub(shl(96, 1), 1))))) { revert(0, 0) }\n }\n function validator_revert_address(value)\n {\n if iszero(eq(value, and(value, sub(shl(160, 1), 1)))) { revert(0, 0) }\n }\n function abi_decode_address(offset) -> value\n {\n value := calldataload(offset)\n validator_revert_address(value)\n }\n function array_allocation_size_bytes(length) -> size\n {\n if gt(length, sub(shl(64, 1), 1)) { panic_error_0x41() }\n size := add(and(add(length, 31), not(31)), 0x20)\n }\n function abi_decode_bytes(offset, end) -> array\n {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n let _1 := calldataload(offset)\n let array_1 := allocate_memory(array_allocation_size_bytes(_1))\n mstore(array_1, _1)\n if gt(add(add(offset, _1), 0x20), end) { revert(0, 0) }\n calldatacopy(add(array_1, 0x20), add(offset, 0x20), _1)\n mstore(add(add(array_1, _1), 0x20), 0)\n array := array_1\n }\n function abi_decode_uint32(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, 0xffffffff))) { revert(0, 0) }\n }\n function abi_decode_int64(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, signextend(7, value))) { revert(0, 0) }\n }\n function abi_decode_uint16(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, 0xffff))) { revert(0, 0) }\n }\n function validator_revert_bool(value)\n {\n if iszero(eq(value, iszero(iszero(value)))) { revert(0, 0) }\n }\n function abi_decode_bool(offset) -> value\n {\n value := calldataload(offset)\n validator_revert_bool(value)\n }\n function abi_decode_struct_PeginQuote(headStart, end) -> value\n {\n if slt(sub(end, headStart), 0x0240) { revert(0, 0) }\n value := allocate_memory_9157()\n mstore(value, abi_decode_bytes20(headStart))\n mstore(add(value, 32), abi_decode_address(add(headStart, 32)))\n mstore(add(value, 64), abi_decode_address(add(headStart, 64)))\n let offset := calldataload(add(headStart, 96))\n let _1 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n mstore(add(value, 96), abi_decode_bytes(add(headStart, offset), end))\n mstore(add(value, 128), abi_decode_address(add(headStart, 128)))\n let offset_1 := calldataload(add(headStart, 160))\n if gt(offset_1, _1) { revert(0, 0) }\n mstore(add(value, 160), abi_decode_bytes(add(headStart, offset_1), end))\n mstore(add(value, 192), calldataload(add(headStart, 192)))\n mstore(add(value, 224), calldataload(add(headStart, 224)))\n let _2 := 256\n mstore(add(value, _2), abi_decode_address(add(headStart, _2)))\n let _3 := 288\n let offset_2 := calldataload(add(headStart, _3))\n if gt(offset_2, _1) { revert(0, 0) }\n mstore(add(value, _3), abi_decode_bytes(add(headStart, offset_2), end))\n let _4 := 320\n mstore(add(value, _4), abi_decode_uint32(add(headStart, _4)))\n let _5 := 352\n mstore(add(value, _5), abi_decode_int64(add(headStart, _5)))\n let _6 := 384\n mstore(add(value, _6), calldataload(add(headStart, _6)))\n let _7 := 416\n mstore(add(value, _7), abi_decode_uint32(add(headStart, _7)))\n let _8 := 448\n mstore(add(value, _8), abi_decode_uint32(add(headStart, _8)))\n let _9 := 480\n mstore(add(value, _9), abi_decode_uint32(add(headStart, _9)))\n let _10 := 512\n mstore(add(value, _10), abi_decode_uint16(add(headStart, _10)))\n let _11 := 544\n mstore(add(value, _11), abi_decode_bool(add(headStart, _11)))\n }\n function abi_decode_tuple_t_struct$_PeginQuote_$10962_memory_ptr(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let offset := calldataload(headStart)\n if gt(offset, sub(shl(64, 1), 1)) { revert(0, 0) }\n value0 := abi_decode_struct_PeginQuote(add(headStart, offset), dataEnd)\n }\n function abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, value0)\n }\n function abi_decode_tuple_t_uint256(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := calldataload(headStart)\n }\n function abi_decode_tuple_t_string_memory_ptrt_string_memory_ptrt_boolt_string_memory_ptr(headStart, dataEnd) -> value0, value1, value2, value3\n {\n if slt(sub(dataEnd, headStart), 128) { revert(0, 0) }\n let offset := calldataload(headStart)\n let _1 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n value0 := abi_decode_bytes(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_bytes(add(headStart, offset_1), dataEnd)\n let value := calldataload(add(headStart, 64))\n validator_revert_bool(value)\n value2 := value\n let offset_2 := calldataload(add(headStart, 96))\n if gt(offset_2, _1) { revert(0, 0) }\n value3 := abi_decode_bytes(add(headStart, offset_2), dataEnd)\n }\n function abi_encode_tuple_t_int16__to_t_int16__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, signextend(1, value0))\n }\n function abi_decode_tuple_t_address_payablet_uint256t_uint256t_uint32t_uint32t_uint256t_uint256t_bool(headStart, dataEnd) -> value0, value1, value2, value3, value4, value5, value6, value7\n {\n if slt(sub(dataEnd, headStart), 256) { revert(0, 0) }\n let value := calldataload(headStart)\n validator_revert_address(value)\n value0 := value\n value1 := calldataload(add(headStart, 32))\n value2 := calldataload(add(headStart, 64))\n value3 := abi_decode_uint32(add(headStart, 96))\n value4 := abi_decode_uint32(add(headStart, 128))\n value5 := calldataload(add(headStart, 160))\n value6 := calldataload(add(headStart, 192))\n let value_1 := calldataload(add(headStart, 224))\n validator_revert_bool(value_1)\n value7 := value_1\n }\n function abi_decode_tuple_t_address(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let value := calldataload(headStart)\n validator_revert_address(value)\n value0 := value\n }\n function abi_encode_bool(value, pos)\n {\n mstore(pos, iszero(iszero(value)))\n }\n function abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, iszero(iszero(value0)))\n }\n function abi_decode_tuple_t_bytes32(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := calldataload(headStart)\n }\n function array_allocation_size_array_uint256_dyn(length) -> size\n {\n if gt(length, sub(shl(64, 1), 1)) { panic_error_0x41() }\n size := add(shl(5, length), 0x20)\n }\n function abi_decode_tuple_t_array$_t_uint256_$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 if gt(offset, sub(shl(64, 1), 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 let dst := allocate_memory(array_allocation_size_array_uint256_dyn(_3))\n let dst_1 := dst\n mstore(dst, _3)\n dst := add(dst, _1)\n let srcEnd := add(add(_2, shl(5, _3)), _1)\n if gt(srcEnd, dataEnd) { revert(0, 0) }\n let src := add(_2, _1)\n for { } lt(src, srcEnd) { src := add(src, _1) }\n {\n mstore(dst, calldataload(src))\n dst := add(dst, _1)\n }\n value0 := dst_1\n }\n function abi_encode_address(value, pos)\n {\n mstore(pos, and(value, sub(shl(160, 1), 1)))\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), not(31))), 0x20)\n }\n function abi_encode_tuple_t_array$_t_struct$_LiquidityProvider_$5134_memory_ptr_$dyn_memory_ptr__to_t_array$_t_struct$_LiquidityProvider_$5134_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), not(63)))\n let _3 := mload(srcPtr)\n let _4 := 0xc0\n mstore(tail_2, mload(_3))\n mstore(add(tail_2, _1), and(mload(add(_3, _1)), sub(shl(160, 1), 1)))\n let memberValue0 := mload(add(_3, _2))\n mstore(add(tail_2, _2), _4)\n let tail_3 := abi_encode_string(memberValue0, add(tail_2, _4))\n let _5 := 0x60\n let memberValue0_1 := mload(add(_3, _5))\n mstore(add(tail_2, _5), sub(tail_3, tail_2))\n let tail_4 := abi_encode_string(memberValue0_1, tail_3)\n let _6 := 0x80\n mstore(add(tail_2, _6), iszero(iszero(mload(add(_3, _6)))))\n let _7 := 0xa0\n let memberValue0_2 := mload(add(_3, _7))\n mstore(add(tail_2, _7), sub(tail_4, tail_2))\n tail_2 := abi_encode_string(memberValue0_2, tail_4)\n srcPtr := add(srcPtr, _1)\n pos := add(pos, _1)\n }\n tail := tail_2\n }\n function abi_decode_struct_PegOutQuote(headStart, end) -> value\n {\n if slt(sub(end, headStart), 0x0220) { revert(0, 0) }\n value := allocate_memory_9158()\n mstore(value, abi_decode_address(headStart))\n mstore(add(value, 32), abi_decode_address(add(headStart, 32)))\n let offset := calldataload(add(headStart, 64))\n let _1 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n mstore(add(value, 64), abi_decode_bytes(add(headStart, offset), end))\n mstore(add(value, 96), abi_decode_address(add(headStart, 96)))\n let offset_1 := calldataload(add(headStart, 128))\n if gt(offset_1, _1) { revert(0, 0) }\n mstore(add(value, 128), abi_decode_bytes(add(headStart, offset_1), end))\n mstore(add(value, 160), calldataload(add(headStart, 160)))\n mstore(add(value, 192), calldataload(add(headStart, 192)))\n mstore(add(value, 224), abi_decode_int64(add(headStart, 224)))\n let _2 := 256\n let offset_2 := calldataload(add(headStart, _2))\n if gt(offset_2, _1) { revert(0, 0) }\n mstore(add(value, _2), abi_decode_bytes(add(headStart, offset_2), end))\n let _3 := 288\n mstore(add(value, _3), calldataload(add(headStart, _3)))\n let _4 := 320\n mstore(add(value, _4), abi_decode_uint32(add(headStart, _4)))\n let _5 := 352\n mstore(add(value, _5), abi_decode_uint32(add(headStart, _5)))\n let _6 := 384\n mstore(add(value, _6), abi_decode_uint16(add(headStart, _6)))\n let _7 := 416\n mstore(add(value, _7), abi_decode_uint16(add(headStart, _7)))\n let _8 := 448\n mstore(add(value, _8), abi_decode_uint32(add(headStart, _8)))\n let _9 := 480\n mstore(add(value, _9), abi_decode_uint32(add(headStart, _9)))\n let _10 := 512\n mstore(add(value, _10), abi_decode_uint32(add(headStart, _10)))\n }\n function abi_decode_tuple_t_struct$_PegOutQuote_$10997_memory_ptr(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let offset := calldataload(headStart)\n if gt(offset, sub(shl(64, 1), 1)) { revert(0, 0) }\n value0 := abi_decode_struct_PegOutQuote(add(headStart, offset), dataEnd)\n }\n function abi_decode_tuple_t_struct$_PeginQuote_$10962_memory_ptrt_bytes_memory_ptrt_bytes_memory_ptrt_bytes_memory_ptrt_uint256(headStart, dataEnd) -> value0, value1, value2, value3, value4\n {\n if slt(sub(dataEnd, headStart), 160) { revert(0, 0) }\n let offset := calldataload(headStart)\n let _1 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n value0 := abi_decode_struct_PeginQuote(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_bytes(add(headStart, offset_1), dataEnd)\n let offset_2 := calldataload(add(headStart, 64))\n if gt(offset_2, _1) { revert(0, 0) }\n value2 := abi_decode_bytes(add(headStart, offset_2), dataEnd)\n let offset_3 := calldataload(add(headStart, 96))\n if gt(offset_3, _1) { revert(0, 0) }\n value3 := abi_decode_bytes(add(headStart, offset_3), dataEnd)\n value4 := calldataload(add(headStart, 128))\n }\n function abi_encode_tuple_t_int256__to_t_int256__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, value0)\n }\n function abi_decode_tuple_t_uint256t_bool(headStart, dataEnd) -> value0, value1\n {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n value0 := calldataload(headStart)\n let value := calldataload(add(headStart, 32))\n validator_revert_bool(value)\n value1 := value\n }\n function abi_decode_tuple_t_struct$_PegOutQuote_$10997_memory_ptrt_bytes_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 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n value0 := abi_decode_struct_PegOutQuote(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_bytes(add(headStart, offset_1), dataEnd)\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, sub(shl(160, 1), 1)))\n }\n function abi_encode_uint16(value, pos)\n {\n mstore(pos, and(value, 0xffff))\n }\n function abi_encode_tuple_t_uint16__to_t_uint16__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, 0xffff))\n }\n function abi_decode_tuple_t_bytes_memory_ptr(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let offset := calldataload(headStart)\n if gt(offset, sub(shl(64, 1), 1)) { revert(0, 0) }\n value0 := abi_decode_bytes(add(headStart, offset), dataEnd)\n }\n function abi_decode_tuple_t_struct$_PeginQuote_$10962_memory_ptrt_bytes_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 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n value0 := abi_decode_struct_PeginQuote(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_bytes(add(headStart, offset_1), dataEnd)\n }\n function abi_decode_tuple_t_bytes32t_bytes_memory_ptrt_bytes32t_uint256t_array$_t_bytes32_$dyn_memory_ptr(headStart, dataEnd) -> value0, value1, value2, value3, value4\n {\n if slt(sub(dataEnd, headStart), 160) { revert(0, 0) }\n value0 := calldataload(headStart)\n let _1 := 32\n let offset := calldataload(add(headStart, _1))\n let _2 := sub(shl(64, 1), 1)\n if gt(offset, _2) { revert(0, 0) }\n value1 := abi_decode_bytes(add(headStart, offset), dataEnd)\n value2 := calldataload(add(headStart, 64))\n value3 := calldataload(add(headStart, 96))\n let offset_1 := calldataload(add(headStart, 128))\n if gt(offset_1, _2) { revert(0, 0) }\n let _3 := add(headStart, offset_1)\n if iszero(slt(add(_3, 0x1f), dataEnd)) { revert(0, 0) }\n let _4 := calldataload(_3)\n let dst := allocate_memory(array_allocation_size_array_uint256_dyn(_4))\n let dst_1 := dst\n mstore(dst, _4)\n dst := add(dst, _1)\n let srcEnd := add(add(_3, shl(5, _4)), _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 mstore(dst, calldataload(src))\n dst := add(dst, _1)\n }\n value4 := dst_1\n }\n function abi_encode_tuple_t_contract$_Bridge_$4173__to_t_address_payable__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, sub(shl(160, 1), 1)))\n }\n function abi_encode_int64(value, pos)\n {\n mstore(pos, signextend(7, value))\n }\n function abi_encode_uint32(value, pos)\n {\n mstore(pos, and(value, 0xffffffff))\n }\n function abi_encode_tuple_t_struct$_PegOutQuote_$10997_memory_ptr__to_t_struct$_PegOutQuote_$10997_memory_ptr__fromStack_reversed(headStart, value0) -> tail\n {\n mstore(headStart, 32)\n abi_encode_address(mload(value0), add(headStart, 32))\n let memberValue0 := mload(add(value0, 32))\n abi_encode_address(memberValue0, add(headStart, 64))\n let memberValue0_1 := mload(add(value0, 64))\n let _1 := 0x0220\n mstore(add(headStart, 96), _1)\n let tail_1 := abi_encode_string(memberValue0_1, add(headStart, 576))\n let memberValue0_2 := mload(add(value0, 96))\n abi_encode_address(memberValue0_2, add(headStart, 128))\n let memberValue0_3 := mload(add(value0, 128))\n let _2 := not(31)\n mstore(add(headStart, 160), add(sub(tail_1, headStart), _2))\n let tail_2 := abi_encode_string(memberValue0_3, tail_1)\n mstore(add(headStart, 192), mload(add(value0, 160)))\n mstore(add(headStart, 224), mload(add(value0, 192)))\n let memberValue0_4 := mload(add(value0, 224))\n let _3 := 256\n abi_encode_int64(memberValue0_4, add(headStart, _3))\n let memberValue0_5 := mload(add(value0, _3))\n let _4 := 288\n mstore(add(headStart, _4), add(sub(tail_2, headStart), _2))\n let tail_3 := abi_encode_string(memberValue0_5, tail_2)\n let _5 := mload(add(value0, _4))\n let _6 := 320\n mstore(add(headStart, _6), _5)\n let memberValue0_6 := mload(add(value0, _6))\n let _7 := 352\n abi_encode_uint32(memberValue0_6, add(headStart, _7))\n let memberValue0_7 := mload(add(value0, _7))\n let _8 := 384\n abi_encode_uint32(memberValue0_7, add(headStart, _8))\n let memberValue0_8 := mload(add(value0, _8))\n let _9 := 416\n abi_encode_uint16(memberValue0_8, add(headStart, _9))\n let memberValue0_9 := mload(add(value0, _9))\n let _10 := 448\n abi_encode_uint16(memberValue0_9, add(headStart, _10))\n let memberValue0_10 := mload(add(value0, _10))\n let _11 := 480\n abi_encode_uint32(memberValue0_10, add(headStart, _11))\n let memberValue0_11 := mload(add(value0, _11))\n let _12 := 512\n abi_encode_uint32(memberValue0_11, add(headStart, _12))\n let memberValue0_12 := mload(add(value0, _12))\n abi_encode_uint32(memberValue0_12, add(headStart, _1))\n tail := tail_3\n }\n function abi_encode_tuple_t_stringliteral_41f42e8d0f67be0e87abf05a33ed728b4868df2f2b92840d9519a852352eb909__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC019\")\n tail := add(headStart, 96)\n }\n function panic_error_0x11()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n function checked_sub_t_uint256(x, y) -> diff\n {\n diff := sub(x, y)\n if gt(diff, x) { panic_error_0x11() }\n }\n function abi_encode_tuple_packed_t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos) -> end\n { end := pos }\n function abi_encode_tuple_t_stringliteral_5c242c0534fa00b11577be4ea886875d641e4a1ad40749685bb740e7c1a67fc9__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC020\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_address_t_uint256__to_t_address_t_uint256__fromStack_reversed(headStart, value1, value0) -> tail\n {\n tail := add(headStart, 64)\n mstore(headStart, and(value0, sub(shl(160, 1), 1)))\n mstore(add(headStart, 32), value1)\n }\n function abi_encode_tuple_t_stringliteral_ccfdeeda37cff52b8b53c7f459ead001a00858d8cd279133dc1e599c6257c485__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC021\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_ae5a5bd2536c79a56736074670f517df1b8a17deb822b59dfa1648888074b4cc__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC022\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_7e21a7b13292bf184f2fc166cca229506aa89a730258f15cdce6a2f8dc225415__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC003\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_a80fe4c2764b7c4b52829ebb2b1bb3117b2b8ffa6a6401dbe00248ec851a73a8__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC070\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_f838e22b544c153329abcc9856d1b1f7e7f6c83118dc13d7a0606e65edb3cdd8__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC009\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_packed_t_stringliteral_4dc7b383aaca8b1076677685b160d1864e4801cbbaf42c8044d4665ea1c41120__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed(pos) -> end\n {\n mstore(pos, \"pegin\")\n end := add(pos, 5)\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 abi_encode_tuple_t_stringliteral_26efcc4d852e81be6f75389e4f50496331355ea059764b90ab1412936d29ab69__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC008\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_packed_t_stringliteral_ac320a165668abf6cbe2f0b8e46bf2426fe38861df98fc1861161bf05a853587__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed(pos) -> end\n {\n mstore(pos, \"pegout\")\n end := add(pos, 6)\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 panic_error_0x12()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x12)\n revert(0, 0x24)\n }\n function checked_div_t_uint256(x, y) -> r\n {\n if iszero(y) { panic_error_0x12() }\n r := div(x, y)\n }\n function mod_t_uint256(x, y) -> r\n {\n if iszero(y) { panic_error_0x12() }\n r := mod(x, y)\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, not(0)) { panic_error_0x11() }\n ret := add(value, 1)\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_t_uint256_t_uint256__to_t_uint256_t_uint256__fromStack_reversed(headStart, value1, value0) -> tail\n {\n tail := add(headStart, 64)\n mstore(headStart, value0)\n mstore(add(headStart, 32), value1)\n }\n function abi_encode_tuple_t_stringliteral_a509ede2323476f3f5be48987391c5516e4ea8116b376287322ed2188be0e53c__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC001\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_7a2a4e26842155ea933fe6eb6e3137eb5a296dcdf55721c552be7b4c3cc23759__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 46)\n mstore(add(headStart, 64), \"Initializable: contract is alrea\")\n mstore(add(headStart, 96), \"dy initialized\")\n tail := add(headStart, 128)\n }\n function abi_encode_tuple_t_stringliteral_b08af29ae9ab6d901d6564b35ffdb791cf633ea45a36ea23bf660bfada2612fe__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC004\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_aef7c38006d01c174c6b5b14fe8e6059baae2f7a6dd6bce99907771d261c0abd__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC072\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_b87a2fdd3e8805c862b0b631e2cf43b048cd2e48956f7516ed8be20eb14ec931__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC073\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_rational_1_by_1__to_t_uint8__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, 0xff))\n }\n function panic_error_0x32()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x32)\n revert(0, 0x24)\n }\n function abi_encode_tuple_t_stringliteral_1e153c8413fa71b1dc88c42214ae3211e20bbd7d323adc3a7cb82fb90c05d672__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC023\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_4c4b8fd0ae53a3caa85e74f53bba210cefdcb0e1d1c519eb8385d2cd3741f7fb__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC028\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_address_t_bytes32_t_bytes_memory_ptr__to_t_address_t_bytes32_t_bytes_memory_ptr__fromStack_library_reversed(headStart, value2, value1, value0) -> tail\n {\n mstore(headStart, and(value0, sub(shl(160, 1), 1)))\n mstore(add(headStart, 32), value1)\n mstore(add(headStart, 64), 96)\n tail := abi_encode_string(value2, add(headStart, 96))\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 validator_revert_bool(value)\n value0 := value\n }\n function abi_encode_tuple_t_stringliteral_ebb41fd1c3d95b8eaff1e56d491f7a983f7f3039fac57e6fad7993de139e2216__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC029\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_6b987c2142a6ed89e76021f4d9a60f3cbfc2f7110bd81bc33ff58ad7cf27befa__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC030\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_b9f5a33cea5e5738277827f2f81faa92d1d3c73cf030e2542a7b80c6f7bdc8a7__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC031\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_5d8d108d93a53583cf1949d2287cc7f0af5603bd102faf9db90e7e6bbc90ade8__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC032\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_e976d8a3febca36c67dcd5b38ae845ffd2f248a24eaf2d7a97f208ffd80ff125__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC033\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_745436b16371784f7b451bf4bed6f0978e2f007f74e71dfa0c49414b3a522759__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC034\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_37570ea73114ff69cb8aab9e09d6f5beb11b36ce1a2ae19ee6f5de28dc42d754__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC035\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_5ccb4449252c316623411606962515c0966208bcce5fe352c2e850b058d1077c__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC036\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_address_t_uint256_t_bytes32__to_t_address_t_uint256_t_bytes32__fromStack_reversed(headStart, value2, value1, value0) -> tail\n {\n tail := add(headStart, 96)\n mstore(headStart, and(value0, sub(shl(160, 1), 1)))\n mstore(add(headStart, 32), value1)\n mstore(add(headStart, 64), value2)\n }\n function abi_encode_tuple_t_bytes32_t_int256__to_t_bytes32_t_int256__fromStack_reversed(headStart, value1, value0) -> tail\n {\n tail := add(headStart, 64)\n mstore(headStart, value0)\n mstore(add(headStart, 32), value1)\n }\n function abi_encode_bytes20(value, pos)\n {\n mstore(pos, and(value, not(sub(shl(96, 1), 1))))\n }\n function abi_encode_struct_PeginQuote(value, pos) -> end\n {\n let _1 := 0x0240\n abi_encode_bytes20(mload(value), pos)\n let memberValue0 := mload(add(value, 0x20))\n abi_encode_address(memberValue0, add(pos, 0x20))\n let memberValue0_1 := mload(add(value, 0x40))\n abi_encode_address(memberValue0_1, add(pos, 0x40))\n let memberValue0_2 := mload(add(value, 0x60))\n mstore(add(pos, 0x60), _1)\n let tail := abi_encode_string(memberValue0_2, add(pos, _1))\n let memberValue0_3 := mload(add(value, 0x80))\n abi_encode_address(memberValue0_3, add(pos, 0x80))\n let memberValue0_4 := mload(add(value, 0xa0))\n mstore(add(pos, 0xa0), sub(tail, pos))\n let tail_1 := abi_encode_string(memberValue0_4, tail)\n mstore(add(pos, 0xc0), mload(add(value, 0xc0)))\n mstore(add(pos, 0xe0), mload(add(value, 0xe0)))\n let _2 := 0x0100\n let memberValue0_5 := mload(add(value, _2))\n abi_encode_address(memberValue0_5, add(pos, _2))\n let _3 := 0x0120\n let memberValue0_6 := mload(add(value, _3))\n mstore(add(pos, _3), sub(tail_1, pos))\n let tail_2 := abi_encode_string(memberValue0_6, tail_1)\n let _4 := 0x0140\n let memberValue0_7 := mload(add(value, _4))\n abi_encode_uint32(memberValue0_7, add(pos, _4))\n let _5 := 0x0160\n let memberValue0_8 := mload(add(value, _5))\n abi_encode_int64(memberValue0_8, add(pos, _5))\n let _6 := 0x0180\n mstore(add(pos, _6), mload(add(value, _6)))\n let _7 := 0x01a0\n let memberValue0_9 := mload(add(value, _7))\n abi_encode_uint32(memberValue0_9, add(pos, _7))\n let _8 := 0x01c0\n let memberValue0_10 := mload(add(value, _8))\n abi_encode_uint32(memberValue0_10, add(pos, _8))\n let _9 := 0x01e0\n let memberValue0_11 := mload(add(value, _9))\n abi_encode_uint32(memberValue0_11, add(pos, _9))\n let _10 := 0x0200\n let memberValue0_12 := mload(add(value, _10))\n abi_encode_uint16(memberValue0_12, add(pos, _10))\n let _11 := 0x0220\n let memberValue0_13 := mload(add(value, _11))\n abi_encode_bool(memberValue0_13, add(pos, _11))\n end := tail_2\n }\n function abi_encode_tuple_t_struct$_PeginQuote_$10962_memory_ptr_t_uint256__to_t_struct$_PeginQuote_$10962_memory_ptr_t_uint256__fromStack_library_reversed(headStart, value1, value0) -> tail\n {\n mstore(headStart, 64)\n tail := abi_encode_struct_PeginQuote(value0, add(headStart, 64))\n mstore(add(headStart, 32), value1)\n }\n function abi_encode_tuple_t_address_payable_t_uint256_t_bool_t_bytes32__to_t_address_t_uint256_t_bool_t_bytes32__fromStack_reversed(headStart, value3, value2, value1, value0) -> tail\n {\n tail := add(headStart, 128)\n mstore(headStart, and(value0, sub(shl(160, 1), 1)))\n mstore(add(headStart, 32), value1)\n mstore(add(headStart, 64), iszero(iszero(value2)))\n mstore(add(headStart, 96), value3)\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_uint32_t_uint256_t_bytes_memory_ptr_t_bool_t_bytes32__to_t_uint256_t_uint256_t_bytes_memory_ptr_t_bool_t_bytes32__fromStack_reversed(headStart, value4, value3, value2, value1, value0) -> tail\n {\n mstore(headStart, and(value0, 0xffffffff))\n mstore(add(headStart, 32), value1)\n mstore(add(headStart, 64), 160)\n tail := abi_encode_string(value2, add(headStart, 160))\n mstore(add(headStart, 96), iszero(iszero(value3)))\n mstore(add(headStart, 128), value4)\n }\n function abi_encode_tuple_t_stringliteral_0a36b25bf1b768acf545d4a7d22e9fceeba3414a7a19dc34973fc2e1be01a831__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC005\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_ecc75ee801269ba7670799af84ad7f1d968d59315783a708807424c72ec63d04__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC037\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_0267b5bcac1113eea8a4dc81e170e6fe59336df7f2c6a4d2ae7ad240f894a2f9__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC063\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_39eacc26aa588693c014f46e6dd86f6cac22eb3287098210ddf746f1a6af8214__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC065\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_c8999eb883ba6531127283b89d3773d87761ac547946da55d1f52c5931d8838f__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC046\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_b400745c4fd650850c2059b2d13f12980ca63b7ccd87c008204992f11af559c2__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC047\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_35937926b0033772f3bb574f0cbcffec40211211a6070977d47733885bf234eb__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC064\")\n tail := add(headStart, 96)\n }\n function copy_byte_array_to_storage_from_t_bytes_memory_ptr_to_t_bytes_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_t_stringliteral_100fb89310beea959f828c5ca2a95ca4d28be5d0ba0e61e54b1345b68d14b6a1__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC042\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_476e33256b298fee7fc3dab0c339427caa3a9a4a44654f7f02b328083d44ca74__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC041\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_uint256_t_address__to_t_uint256_t_address__fromStack_reversed(headStart, value1, value0) -> tail\n {\n tail := add(headStart, 64)\n mstore(headStart, value0)\n mstore(add(headStart, 32), and(value1, sub(shl(160, 1), 1)))\n }\n function abi_encode_tuple_t_stringliteral_0a7ff570d31f7e351d06bf5b8d0ef26a9275a9d32a7dffd7981a6c6ac58227c6__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC044\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_438c5a176571afee566b78f09f63757218623602a6c98e887399fe40429f63df__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC061\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_packed_t_bytes32_t_bytes_memory_ptr_t_bytes20_t_bytes_memory_ptr__to_t_bytes32_t_bytes_memory_ptr_t_bytes20_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value3, value2, value1, value0) -> end\n {\n mstore(pos, value0)\n let length := mload(value1)\n copy_memory_to_memory_with_cleanup(add(value1, 32), add(pos, 32), length)\n let _1 := add(pos, length)\n mstore(add(_1, 32), and(value2, not(sub(shl(96, 1), 1))))\n let length_1 := mload(value3)\n copy_memory_to_memory_with_cleanup(add(value3, 32), add(_1, 52), length_1)\n end := add(add(_1, length_1), 52)\n }\n function abi_decode_bytes_fromMemory(offset, end) -> array\n {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n let _1 := mload(offset)\n let array_1 := allocate_memory(array_allocation_size_bytes(_1))\n mstore(array_1, _1)\n if gt(add(add(offset, _1), 0x20), end) { revert(0, 0) }\n copy_memory_to_memory_with_cleanup(add(offset, 0x20), add(array_1, 0x20), _1)\n array := array_1\n }\n function abi_decode_tuple_t_bytes_memory_ptr_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let offset := mload(headStart)\n if gt(offset, sub(shl(64, 1), 1)) { revert(0, 0) }\n value0 := abi_decode_bytes_fromMemory(add(headStart, offset), dataEnd)\n }\n function abi_encode_tuple_packed_t_stringliteral_681afa780d17da29203322b473d3f210a7d621259a4e6ce9e403f5a266ff719a_t_bytes32_t_stringliteral_32cefdcd8e794145c9af8dd1f4b1fbd92d6e547ae855553080fc8bd19c4883a0_t_bytes_memory_ptr__to_t_bytes1_t_bytes32_t_bytes1_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value1, value0) -> end\n {\n mstore(pos, \" \")\n mstore(add(pos, 1), value0)\n mstore(add(pos, 33), \"u\")\n let length := mload(value1)\n copy_memory_to_memory_with_cleanup(add(value1, 0x20), add(pos, 34), length)\n end := add(add(pos, length), 34)\n }\n function abi_encode_tuple_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bool__to_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bool__fromStack_library_reversed(headStart, value2, value1, value0) -> tail\n {\n mstore(headStart, 96)\n let tail_1 := abi_encode_string(value0, add(headStart, 96))\n mstore(add(headStart, 32), sub(tail_1, headStart))\n tail := abi_encode_string(value1, tail_1)\n mstore(add(headStart, 64), iszero(iszero(value2)))\n }\n function abi_encode_tuple_t_stringliteral_9c6c58d5603e5b2aab0d13c183f0136466f0ce13826630d90e079bf910078715__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC024\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_ceda09d74f8a59745bfad5393e75482469dc6db77c24fde6f52df4409a3f744c__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC025\")\n tail := add(headStart, 96)\n }\n function checked_add_t_uint32(x, y) -> sum\n {\n let _1 := 0xffffffff\n sum := add(and(x, _1), and(y, _1))\n if gt(sum, _1) { panic_error_0x11() }\n }\n function abi_encode_tuple_t_stringliteral_2d63cc93f65e3c34ca5cba24271c3d6869155fb2ffc83f083d82378f26d56cb0__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC026\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_5a937cad92792f08abdaf15eed65a070909c29d924f856ec65923c138fd39a48__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC027\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_library_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_array$_t_struct$_TxRawOutput_$2307_memory_ptr_$dyn_memory_ptr_fromMemory(headStart, dataEnd) -> value0\n {\n let _1 := 32\n if slt(sub(dataEnd, headStart), _1) { revert(0, 0) }\n let offset := mload(headStart)\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 let dst := allocate_memory(array_allocation_size_array_uint256_dyn(_4))\n let dst_1 := dst\n mstore(dst, _4)\n dst := add(dst, _1)\n let srcEnd := add(add(_3, shl(5, _4)), _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 := mload(src)\n if gt(innerOffset, _2)\n {\n let _5 := 0\n revert(_5, _5)\n }\n let _6 := add(_3, innerOffset)\n let _7 := 0x80\n if slt(add(sub(dataEnd, _6), not(31)), _7)\n {\n let _8 := 0\n revert(_8, _8)\n }\n let value := allocate_memory_9162()\n let value_1 := mload(add(_6, _1))\n if iszero(eq(value_1, and(value_1, _2)))\n {\n let _9 := 0\n revert(_9, _9)\n }\n mstore(value, value_1)\n let _10 := 64\n let offset_1 := mload(add(_6, _10))\n if gt(offset_1, _2)\n {\n let _11 := 0\n revert(_11, _11)\n }\n mstore(add(value, _1), abi_decode_bytes_fromMemory(add(add(_6, offset_1), _1), dataEnd))\n let _12 := 96\n mstore(add(value, _10), mload(add(_6, _12)))\n mstore(add(value, _12), mload(add(_6, _7)))\n mstore(dst, value)\n dst := add(dst, _1)\n }\n value0 := dst_1\n }\n function abi_decode_tuple_t_bytes32_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := mload(headStart)\n }\n function abi_encode_tuple_t_stringliteral_5cf5f7c75a2357c5697933702fe9f20c432f8f5205def7bf18572d390cea5cc1__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC069\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_3c14ff4570332247d29826742fdf7f014a86ddbee2c49b0252a79ef49351f196__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC048\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_bytes32_t_bytes32_t_uint256_t_array$_t_bytes32_$dyn_memory_ptr__to_t_bytes32_t_bytes32_t_uint256_t_array$_t_bytes32_$dyn_memory_ptr__fromStack_reversed(headStart, value3, value2, value1, value0) -> tail\n {\n let tail_1 := add(headStart, 128)\n mstore(headStart, value0)\n let _1 := 32\n mstore(add(headStart, _1), value1)\n mstore(add(headStart, 64), value2)\n mstore(add(headStart, 96), 128)\n let pos := tail_1\n let length := mload(value3)\n mstore(tail_1, length)\n pos := add(headStart, 160)\n let srcPtr := add(value3, _1)\n let i := 0\n for { } lt(i, length) { i := add(i, 1) }\n {\n mstore(pos, mload(srcPtr))\n pos := add(pos, _1)\n srcPtr := add(srcPtr, _1)\n }\n tail := pos\n }\n function abi_decode_tuple_t_int256_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := mload(headStart)\n }\n function abi_encode_tuple_t_stringliteral_41cc9877d5a72c2a0ef0c602e024ddc86a1f279ef7306bab75dd3c5447ffb6e0__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC049\")\n tail := add(headStart, 96)\n }\n function checked_mul_t_uint64(x, y) -> product\n {\n let _1 := sub(shl(64, 1), 1)\n let product_raw := mul(and(x, _1), and(y, _1))\n product := and(product_raw, _1)\n if iszero(eq(product, product_raw)) { panic_error_0x11() }\n }\n function abi_encode_tuple_t_stringliteral_94643b69f05d64f660a022cd48046be494c1ed271b5d9ae602f6fdadc77976be__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC067\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_bytes_memory_ptr_t_bool__to_t_bytes_memory_ptr_t_bool__fromStack_library_reversed(headStart, value1, value0) -> tail\n {\n mstore(headStart, 64)\n tail := abi_encode_string(value0, add(headStart, 64))\n mstore(add(headStart, 32), iszero(iszero(value1)))\n }\n function abi_encode_tuple_packed_t_bytes_storage__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value0) -> end\n {\n let ret := 0\n let slotValue := sload(value0)\n let length := extract_byte_array_length(slotValue)\n let _1 := 1\n switch and(slotValue, _1)\n case 0 {\n mstore(pos, and(slotValue, not(255)))\n ret := add(pos, mul(length, iszero(iszero(length))))\n }\n case 1 {\n mstore(0, value0)\n let _2 := 0x20\n let dataPos := keccak256(0, _2)\n let i := 0\n for { } lt(i, length) { i := add(i, _2) }\n {\n mstore(add(pos, i), sload(dataPos))\n dataPos := add(dataPos, _1)\n }\n ret := add(pos, length)\n }\n end := ret\n }\n function abi_encode_tuple_t_stringliteral_7cd3d68dd2419ceccbacf2f69bda9c4c2f3bdb0c0535db4bbef90be788c8f7de__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC068\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_3dcf1159943f9eee729b997e5df9acd0f1771321696b1fb47efa6e54bee2f352__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC050\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 38)\n mstore(add(headStart, 64), \"Ownable: new owner is the zero a\")\n mstore(add(headStart, 96), \"ddress\")\n tail := add(headStart, 128)\n }\n function abi_encode_tuple_t_stringliteral_ed7029e52dbf10ed9f0aafb2c33265c713a3f4dfd10cc113f22ba3c1270e1ddb__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC051\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_a1a398356814e2eac3017ce127db7657cbb8e2f1d90a78bc426eaa92c56969eb__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC052\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_923b965409721a83cf4ae76f34fa52de6eb09679d5b7141d2c0fc518a94192db__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC053\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_472231c5f3abacc190b5fd56153fbfc4b6c39c18040d443b29faee14791d54d9__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC054\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_1bdc71792e300c3b19739ad62e7651b4b49de502b7d1b6227970563bffaad71e__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC055\")\n tail := add(headStart, 96)\n }\n function checked_add_t_uint64(x, y) -> sum\n {\n let _1 := sub(shl(64, 1), 1)\n sum := add(and(x, _1), and(y, _1))\n if gt(sum, _1) { panic_error_0x11() }\n }\n function abi_encode_tuple_t_stringliteral_79d3c6c4bda42d819072ed97d83e6147bd9ad75bd5415529ecb6a41984271fb2__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC071\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_struct$_PeginQuote_$10962_memory_ptr__to_t_struct$_PeginQuote_$10962_memory_ptr__fromStack_library_reversed(headStart, value0) -> tail\n {\n mstore(headStart, 32)\n tail := abi_encode_struct_PeginQuote(value0, add(headStart, 32))\n }\n function abi_encode_tuple_t_stringliteral_b91014d5c812b217b1f7abf06d04044851a14f3d4efa9b6795d3964c23897cc9__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC010\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_849663c0a27b21987cfc03f3233af0a7a46b23f0af09d39a18720d9610bcba81__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC017\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_packed_t_stringliteral_36ad643d447cde9387780ae6f5b371120b595aaff5d56b8440952d5f7116fa16__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed(pos) -> end\n {\n mstore(pos, \"both\")\n end := add(pos, 4)\n }\n function abi_encode_tuple_t_stringliteral_c8a2f96b1c149a2cda2dda6db9bbdafbecddac69bce104e31ad4dd14842e4820__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC018\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_d688db918bb9dd50354922faa108595679886fe9ff08046ad1ffe30aaea55f8b__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 43)\n mstore(add(headStart, 64), \"Initializable: contract is not i\")\n mstore(add(headStart, 96), \"nitializing\")\n tail := add(headStart, 128)\n }\n function abi_encode_tuple_t_stringliteral_5004352c178489e456f74ee0937a3403e68ee3fa72f6afa5bff20fe549075132__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC056\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_struct$_PegOutQuote_$10997_memory_ptr__to_t_struct$_PegOutQuote_$10997_memory_ptr__fromStack_library_reversed(headStart, value0) -> tail\n {\n mstore(headStart, 32)\n abi_encode_address(mload(value0), add(headStart, 32))\n let memberValue0 := mload(add(value0, 32))\n abi_encode_address(memberValue0, add(headStart, 64))\n let memberValue0_1 := mload(add(value0, 64))\n let _1 := 0x0220\n mstore(add(headStart, 96), _1)\n let tail_1 := abi_encode_string(memberValue0_1, add(headStart, 576))\n let memberValue0_2 := mload(add(value0, 96))\n abi_encode_address(memberValue0_2, add(headStart, 128))\n let memberValue0_3 := mload(add(value0, 128))\n let _2 := not(31)\n mstore(add(headStart, 160), add(sub(tail_1, headStart), _2))\n let tail_2 := abi_encode_string(memberValue0_3, tail_1)\n mstore(add(headStart, 192), mload(add(value0, 160)))\n mstore(add(headStart, 224), mload(add(value0, 192)))\n let memberValue0_4 := mload(add(value0, 224))\n let _3 := 256\n abi_encode_int64(memberValue0_4, add(headStart, _3))\n let memberValue0_5 := mload(add(value0, _3))\n let _4 := 288\n mstore(add(headStart, _4), add(sub(tail_2, headStart), _2))\n let tail_3 := abi_encode_string(memberValue0_5, tail_2)\n let _5 := mload(add(value0, _4))\n let _6 := 320\n mstore(add(headStart, _6), _5)\n let memberValue0_6 := mload(add(value0, _6))\n let _7 := 352\n abi_encode_uint32(memberValue0_6, add(headStart, _7))\n let memberValue0_7 := mload(add(value0, _7))\n let _8 := 384\n abi_encode_uint32(memberValue0_7, add(headStart, _8))\n let memberValue0_8 := mload(add(value0, _8))\n let _9 := 416\n abi_encode_uint16(memberValue0_8, add(headStart, _9))\n let memberValue0_9 := mload(add(value0, _9))\n let _10 := 448\n abi_encode_uint16(memberValue0_9, add(headStart, _10))\n let memberValue0_10 := mload(add(value0, _10))\n let _11 := 480\n abi_encode_uint32(memberValue0_10, add(headStart, _11))\n let memberValue0_11 := mload(add(value0, _11))\n let _12 := 512\n abi_encode_uint32(memberValue0_11, add(headStart, _12))\n let memberValue0_12 := mload(add(value0, _12))\n abi_encode_uint32(memberValue0_12, add(headStart, _1))\n tail := tail_3\n }\n function abi_encode_tuple_t_stringliteral_ebf73bba305590e4764d5cb53b69bffd6d4d092d1a67551cb346f8cfcdab8619__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 31)\n mstore(add(headStart, 64), \"ReentrancyGuard: reentrant call\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_bytes_memory_ptr_t_uint256_t_bytes_memory_ptr_t_bytes32_t_bytes_memory_ptr_t_address_payable_t_bytes_memory_ptr_t_bool__to_t_bytes_memory_ptr_t_uint256_t_bytes_memory_ptr_t_bytes32_t_bytes_memory_ptr_t_address_payable_t_bytes_memory_ptr_t_bool__fromStack_reversed(headStart, value7, value6, value5, value4, value3, value2, value1, value0) -> tail\n {\n let _1 := 256\n mstore(headStart, _1)\n let tail_1 := abi_encode_string(value0, add(headStart, _1))\n mstore(add(headStart, 32), value1)\n mstore(add(headStart, 64), sub(tail_1, headStart))\n let tail_2 := abi_encode_string(value2, tail_1)\n mstore(add(headStart, 96), value3)\n mstore(add(headStart, 128), sub(tail_2, headStart))\n let tail_3 := abi_encode_string(value4, tail_2)\n mstore(add(headStart, 160), and(value5, sub(shl(160, 1), 1)))\n mstore(add(headStart, 192), sub(tail_3, headStart))\n tail := abi_encode_string(value6, tail_3)\n mstore(add(headStart, 224), iszero(iszero(value7)))\n }\n function abi_encode_tuple_t_stringliteral_b13cbe420d932534b4c4c376e19a45f25e0ca05c6f1a458489ccb0574b26a6d9__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), \"Invalid block height\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_bac19bb4c4dce4ec87196bdccebfa1c4310f60332f1259cdc0bb93303ee1c2a0__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC058\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 32)\n mstore(add(headStart, 64), \"Ownable: caller is not the owner\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_670f3ba0b2ca6f986efb9f8a498a40315443c3d4e263cc5de65e37011508c7c9__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC062\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_319f398ccb7cc8c2c2304e07f301f618437c863aa2ff561ced1eaa40fcd3df63__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC059\")\n tail := add(headStart, 96)\n }\n}", - "id": 32, - "language": "Yul", - "name": "#utility.yul" - } - ], - "sourceMap": "479:35588:21:-:0;;;;;;;;;;;;;;;;;;;", - "deployedSourceMap": "479:35588:21:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6609:6;;-1:-1:-1;;;;;6609:6:21;6587:10;:29;6579:48;;;;-1:-1:-1;;;6579:48:21;;216:2:32;6579:48:21;;;198:21:32;255:1;235:18;;;228:29;-1:-1:-1;;;273:18:32;;;266:36;319:18;;6579:48:21;;;;;;;;;479:35588;;;;;748:40;;;;;;;;;;;;787:1;748:40;;;;;520:4:32;508:17;;;490:36;;478:2;463:18;748:40:21;;;;;;;;794:46;;;;;;;;;;;;839:1;794:46;;6640:89;;;;;;;;;;-1:-1:-1;6712:10:21;;6640:89;;;683:25:32;;;671:2;656:18;6640:89:21;537:177:32;28870:132:21;;;;;;;;;;-1:-1:-1;28870:132:21;;;;;:::i;:::-;;:::i;12429:292::-;;;;;;;;;;-1:-1:-1;12429:292:21;;;;;:::i;:::-;;:::i;7235:85::-;;;;;;;;;;-1:-1:-1;7309:4:21;;7235:85;;13333:556;;;;;;;;;;;;;:::i;8471:1660::-;;;;;;:::i;:::-;;:::i;1388:94::-;;;;;;;;;;;;-1:-1:-1;;1388:94:21;;;;;7557:1:32;7546:21;;;;7528:40;;7516:2;7501:18;1388:94:21;7386:188:32;11957:192:21;;;:::i;5305:814::-;;;;;;;;;;-1:-1:-1;5305:814:21;;;;;:::i;:::-;;:::i;7838:145::-;;;;;;;;;;-1:-1:-1;7838:145:21;;;;;:::i;:::-;;:::i;:::-;;;8908:14:32;;8901:22;8883:41;;8871:2;8856:18;7838:145:21;8743:187:32;8177:185:21;;;;;;;;;;-1:-1:-1;8177:185:21;;;;;:::i;:::-;;:::i;7506:139::-;;;;;;;;;;-1:-1:-1;7506:139:21;;;;;:::i;:::-;7580:4;7603:25;;;:14;:25;;;;;:35;;;;;;7506:139;12795:532;;;;;;;;;;;;;:::i;10970:732::-;;;;;;;;;;-1:-1:-1;10970:732:21;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;29008:159::-;;;;;;;;;;-1:-1:-1;29008:159:21;;;;;:::i;:::-;;:::i;13963:205::-;;;;;;;;;;;;;:::i;17208:6399::-;;;;;;;;;;-1:-1:-1;17208:6399:21;;;;;:::i;:::-;;:::i;2085:101:0:-;;;;;;;;;;;;;:::i;6351:185:21:-;;;;;;;;;;-1:-1:-1;6351:185:21;;;;;:::i;:::-;;:::i;23613:1139::-;;;;;;:::i;:::-;;:::i;4084:22::-;;;;;;;;;;;;;;;;1062:79;;;;;;;;;;;;-1:-1:-1;;1062:79:21;;1462:85:0;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;24758:1040:21:-;;;;;;;;;;-1:-1:-1;24758:1040:21;;;;;:::i;:::-;;:::i;14366:109::-;;;;;;;;;;-1:-1:-1;14366:109:21;;;;;:::i;:::-;-1:-1:-1;;;;;14452:16:21;14426:7;14452:16;;;:10;:16;;;;;;;14366:109;694:48;;;;;;;;;;;;741:1;694:48;;583;;;;;;;;;;;;626:5;583:48;;;;;17380:6:32;17368:19;;;17350:38;;17338:2;17323:18;583:48:21;17206:188:32;11786:165:21;;;:::i;35334:302::-;;;;;;;;;;-1:-1:-1;35334:302:21;;;;;:::i;:::-;;:::i;27962:697::-;;;;;;;;;;-1:-1:-1;27962:697:21;;;;;:::i;:::-;;:::i;1646:42::-;;;;;;;;;;;;1687:1;1646:42;;1147:82;;;;;;;;;;;;-1:-1:-1;;1147:82:21;;15102:1589;;;;;;:::i;:::-;;:::i;979:77::-;;;;;;;;;;;;-1:-1:-1;;979:77:21;;1488:50;;;;;;;;;;;;-1:-1:-1;;1488:50:21;;14481:121;;;;;;;;;;-1:-1:-1;14481:121:21;;;;;:::i;:::-;-1:-1:-1;;;;;14573:22:21;14547:7;14573:22;;;:16;:22;;;;;;;14481:121;7125:104;;;;;;;;;;-1:-1:-1;7203:19:21;;-1:-1:-1;;;7203:19:21;;;;7125:104;;1594:46;;;;;;;;;;;;1639:1;1594:46;;1235:71;;;;;;;;;;;;-1:-1:-1;;1235:71:21;;7028:91;;;;;;;;;;-1:-1:-1;7105:7:21;;;;7028:91;;1312:70;;;;;;;;;;;;-1:-1:-1;;1312:70:21;;12220:106;;;:::i;25804:2153::-;;;;;;;;;;-1:-1:-1;25804:2153:21;;;;;:::i;:::-;;:::i;637:50::-;;;;;;;;;;;;683:4;637:50;;914:59;;;;;;;;;;;;-1:-1:-1;;914:59:21;;1544:44;;;;;;;;;;;;-1:-1:-1;;1544:44:21;;3557:20;;;;;;;;;;-1:-1:-1;3557:20:21;;;;-1:-1:-1;;;;;3557:20:21;;;6840:92;;;;;;;;;;-1:-1:-1;6912:13:21;;6840:92;;847:61;;;;;;;;;;;;-1:-1:-1;;847:61:21;;7326:174;;;;;;;;;;-1:-1:-1;7326:174:21;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;2335:198:0:-;;;;;;;;;;-1:-1:-1;2335:198:0;;;;;:::i;:::-;;:::i;14801:104:21:-;;;;;;;;;;-1:-1:-1;14801:104:21;;;;;:::i;:::-;-1:-1:-1;;;;;14884:14:21;14858:7;14884:14;;;:8;:14;;;;;;;14801:104;6938:84;;;;;;;;;;-1:-1:-1;7007:8:21;;6938:84;;6735:99;;;;;;;;;;-1:-1:-1;6820:6:21;;-1:-1:-1;;;;;6820:6:21;6735:99;;28870:132;28942:7;28968:27;28989:5;28968:20;:27::i;:::-;28961:34;28870:132;-1:-1:-1;;28870:132:21:o;12429:292::-;12499:10;12490:20;;;;:8;:20;;;;;;:30;-1:-1:-1;12490:30:21;12482:49;;;;-1:-1:-1;;;12482:49:21;;;;;;;:::i;:::-;12550:10;12541:20;;;;:8;:20;;;;;:30;;12565:6;;12541:20;:30;;12565:6;;12541:30;:::i;:::-;;;;-1:-1:-1;;12599:34:21;;12582:12;;12599:10;;12622:6;;12582:12;12599:34;12582:12;12599:34;12622:6;12599:10;:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12581:52;;;12651:7;12643:26;;;;-1:-1:-1;;;12643:26:21;;;;;;;:::i;:::-;12684:30;12695:10;12707:6;12684:30;;;;;;;:::i;:::-;;;;;;;;12472:249;12429:292;:::o;13333:556::-;13416:10;13430:1;13396:31;;;:19;:31;;;;;;13388:54;;;;-1:-1:-1;;;13388:54:21;;;;;;;:::i;:::-;13535:19;;13508:10;13488:31;;;;:19;:31;;;;;;-1:-1:-1;;;13535:19:21;;;;;;13473:46;;:12;:46;:::i;:::-;:81;;13452:134;;;;-1:-1:-1;;;13452:134:21;;;;;;;:::i;:::-;13627:10;13596:11;13610:28;;;:16;:28;;;;;;;;;;13648:32;;;;13690:19;:31;;;;;;:35;;;13753:34;13610:28;;13627:10;13610:28;;13596:11;13753:34;13596:11;13753:34;13610:28;13627:10;13753:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13735:52;;;13805:7;13797:26;;;;-1:-1:-1;;;13797:26:21;;;;;;;:::i;:::-;13838:44;13863:10;13875:6;13838:44;;;;;;;:::i;8471:1660::-;8652:4;4624:9;4637:10;4624:23;4616:42;;;;-1:-1:-1;;;4616:42:21;;24783:2:32;4616:42:21;;;24765:21:32;24822:1;24802:18;;;24795:29;-1:-1:-1;;;24840:18:32;;;24833:36;24886:18;;4616:42:21;24581:329:32;4616:42:21;8738:107:::1;8778:5;8797:11;8822:13;8738:26;:107::i;:::-;8875:10;8864:22;::::0;;;:10:::1;:22;::::0;;;;;:27;:64;::::1;;;-1:-1:-1::0;8912:10:21::1;8895:28;::::0;;;:16:::1;:28;::::0;;;;;:33;8864:64:::1;8856:83;;;::::0;-1:-1:-1;;;8856:83:21;;25117:2:32;8856:83:21::1;::::0;::::1;25099:21:32::0;25156:1;25136:18;;;25129:29;-1:-1:-1;;;25174:18:32;;;25167:36;25220:18;;8856:83:21::1;24915:329:32::0;8856:83:21::1;8990:10;8970:31;::::0;;;:19:::1;:31;::::0;;;;;:36;8949:89:::1;;;::::0;-1:-1:-1;;;8949:89:21;;25451:2:32;8949:89:21::1;::::0;::::1;25433:21:32::0;25490:1;25470:18;;;25463:29;-1:-1:-1;;;25508:18:32;;;25501:36;25554:18;;8949:89:21::1;25249:329:32::0;8949:89:21::1;9109:25;;;;;;;:::i;:::-;;;;;;;;;;;;;9099:36;;;;;;9080:13;9063:31;;;;;;;;:::i;:::-;;;;;;;;;;;;;9053:42;;;;;;:82:::0;9049:700:::1;;9172:13;;9159:9;:26;;9151:45;;;;-1:-1:-1::0;;;9151:45:21::1;;;;;;;:::i;:::-;9221:10;9210:22;::::0;;;:10:::1;:22;::::0;;;;9235:9:::1;9210:34:::0;;9049:700:::1;;;9321:26;;;;;;;:::i;:::-;;;;;;;;;;;;;9311:37;;;;;;9292:13;9275:31;;;;;;;;:::i;:::-;;;;;;;;;;;;;9265:42;;;;;;:83:::0;9261:488:::1;;9385:13;;9372:9;:26;;9364:45;;;;-1:-1:-1::0;;;9364:45:21::1;;;;;;;:::i;:::-;9440:10;9423:28;::::0;;;:16:::1;:28;::::0;;;;9454:9:::1;9423:40:::0;;9261:488:::1;;;9515:13;::::0;:17:::1;::::0;9531:1:::1;9515:17;:::i;:::-;9502:9;:30;;9494:49;;;;-1:-1:-1::0;;;9494:49:21::1;;;;;;;:::i;:::-;9557:17;9577:13;9589:1;9577:9;:13;:::i;:::-;9557:33:::0;-1:-1:-1;9629:13:21::1;9641:1;9629:9;:13;:::i;:::-;:18:::0;:52:::1;;9665:16;:12:::0;9680:1:::1;9665:16;:::i;:::-;9629:52;;;9650:12;9629:52;9615:10;9604:22;::::0;;;:10:::1;:22;::::0;;;;;;;:77;;;;9695:16:::1;:28:::0;;;:43;9261:488:::1;9759:10;:12:::0;;;:10:::1;:12;::::0;::::1;:::i;:::-;::::0;;;-1:-1:-1;;9814:223:21::1;::::0;;::::1;::::0;::::1;::::0;;9850:10:::1;::::0;9814:223;;;9884:10:::1;9814:223;::::0;;::::1;::::0;;;;;;;;;;;;;;;;::::1;;::::0;;;;;;;;;;-1:-1:-1;9781:30:21;;;:18:::1;:30:::0;;;;;;;:256;;;;;;::::1;::::0;::::1;::::0;;-1:-1:-1;;;;;;9781:256:21::1;-1:-1:-1::0;;;;;9781:256:21;;::::1;::::0;;;::::1;::::0;;;;9814:223;;9781:30;:256:::1;::::0;::::1;::::0;::::1;::::0;;::::1;:::i;:::-;-1:-1:-1::0;9781:256:21::1;::::0;::::1;::::0;::::1;::::0;::::1;::::0;::::1;::::0;;::::1;:::i;:::-;-1:-1:-1::0;9781:256:21::1;::::0;::::1;::::0;::::1;::::0;::::1;::::0;;-1:-1:-1;;9781:256:21::1;::::0;::::1;;::::0;;;::::1;::::0;;::::1;::::0;::::1;::::0;::::1;::::0;::::1;::::0;::::1;::::0;;::::1;:::i;:::-;-1:-1:-1::0;;10061:10:21::1;::::0;10052:43:::1;::::0;;30312:25:32;;;10085:9:21::1;30368:2:32::0;30353:18;;30346:34;10073:10:21::1;::::0;-1:-1:-1;10052:43:21::1;::::0;30285:18:32;10052:43:21::1;;;;;;;-1:-1:-1::0;10113:10:21::1;::::0;4668:1:::1;8471:1660:::0;;;;;;:::o;11957:192::-;4519:33;4541:10;4519:21;:33::i;:::-;4511:52;;;;-1:-1:-1;;;4511:52:21;;;;;;;:::i;:::-;12056:10:::1;12039:28;::::0;;;:16:::1;:28;::::0;;;;:41;;12071:9:::1;::::0;12039:28;:41:::1;::::0;12071:9;;12039:41:::1;:::i;:::-;::::0;;;-1:-1:-1;;12095:47:21::1;::::0;::::1;::::0;::::1;::::0;12120:10:::1;::::0;12132:9:::1;::::0;12095:47:::1;:::i;:::-;;;;;;;;11957:192::o:0;5305:814::-;3279:19:1;3302:13;;;;;;3301:14;;3347:34;;;;-1:-1:-1;3365:12:1;;3380:1;3365:12;;;;:16;3347:34;3346:108;;;-1:-1:-1;3426:4:1;1713:19:3;:23;;;3387:66:1;;-1:-1:-1;3436:12:1;;;;;:17;3387:66;3325:201;;;;-1:-1:-1;;;3325:201:1;;30927:2:32;3325:201:1;;;30909:21:32;30966:2;30946:18;;;30939:30;31005:34;30985:18;;;30978:62;-1:-1:-1;;;31056:18:32;;;31049:44;31110:19;;3325:201:1;30725:410:32;3325:201:1;3536:12;:16;;-1:-1:-1;;3536:16:1;3551:1;3536:16;;;3562:65;;;;3596:13;:20;;-1:-1:-1;;3596:20:1;;;;;3562:65;5645:3:21::1;5624:17;:24;;;;5616:43;;;::::0;-1:-1:-1;;;5616:43:21;;31342:2:32;5616:43:21::1;::::0;::::1;31324:21:32::0;31381:1;31361:18;;;31354:29;-1:-1:-1;;;31399:18:32;;;31392:36;31445:18;;5616:43:21::1;31140:329:32::0;5616:43:21::1;5699:10;5677:18;:32;;5669:51;;;::::0;-1:-1:-1;;;5669:51:21;;31676:2:32;5669:51:21::1;::::0;::::1;31658:21:32::0;31715:1;31695:18;;;31688:29;-1:-1:-1;;;31733:18:32;;;31726:36;31779:18;;5669:51:21::1;31474:329:32::0;5669:51:21::1;5760:2;5738:18;:24;;;;5730:43;;;::::0;-1:-1:-1;;;5730:43:21;;32010:2:32;5730:43:21::1;::::0;::::1;31992:21:32::0;32049:1;32029:18;;;32022:29;-1:-1:-1;;;32067:18:32;;;32060:36;32113:18;;5730:43:21::1;31808:329:32::0;5730:43:21::1;5783:26;:24;:26::i;:::-;5819:6;:31:::0;;-1:-1:-1;;;;;5819:31:21;::::1;-1:-1:-1::0;;;;;;5819:31:21;;::::1;;::::0;;5860:13:::1;:34:::0;;;5904:8:::1;:24:::0;;;5938:7:::1;:27:::0;;::::1;5975:40:::0;;::::1;-1:-1:-1::0;;;5975:40:21::1;-1:-1:-1::0;;;;;;5975:40:21;;;5938:27;;::::1;5975:40:::0;::::1;::::0;;6025:4:::1;:21:::0;;;6056:12:::1;:28:::0;;;6094:7:::1;:18:::0;;;::::1;;-1:-1:-1::0;;6094:18:21;;::::1;;::::0;;3647:99:1;;;;3697:5;3681:21;;-1:-1:-1;;3681:21:1;;;3721:14;;-1:-1:-1;490:36:32;;3721:14:1;;478:2:32;463:18;3721:14:1;;;;;;;3647:99;3269:483;5305:814:21;;;;;;;;:::o;7838:145::-;7898:4;7921:18;7934:4;7921:12;:18::i;:::-;:55;;;;-1:-1:-1;7963:13:21;;-1:-1:-1;;;;;7943:16:21;;;;;;:10;:16;;;;;;:33;;7914:62;7838:145;-1:-1:-1;;7838:145:21:o;8177:185::-;8246:4;8277:27;8299:4;8277:21;:27::i;:::-;:78;;;;-1:-1:-1;8342:13:21;;-1:-1:-1;;;;;8316:22:21;;;;;;:16;:22;;;;;;:39;;8262:93;8177:185;-1:-1:-1;;8177:185:21:o;12795:532::-;12872:10;12886:1;12852:31;;;:19;:31;;;;;;12844:54;;;;-1:-1:-1;;;12844:54:21;;;;;;;:::i;:::-;12991:19;;12964:10;12944:31;;;;:19;:31;;;;;;-1:-1:-1;;;12991:19:21;;;;;;12929:46;;:12;:46;:::i;:::-;:81;;12908:134;;;;-1:-1:-1;;;12908:134:21;;;;;;;:::i;:::-;13077:10;13052:11;13066:22;;;:10;:22;;;;;;;;;;13098:26;;;;13134:19;:31;;;;;;:35;;;13197:34;13066:22;;13077:10;13066:22;;13052:11;13197:34;13052:11;13197:34;13066:22;13077:10;13197:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13179:52;;;13249:7;13241:26;;;;-1:-1:-1;;;13241:26:21;;;;;;;:::i;:::-;13282:38;13301:10;13313:6;13282:38;;;;;;;:::i;10970:732::-;11056:26;11094:44;11178:11;:18;-1:-1:-1;;;;;11141:65:21;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11141:65:21;;;;;;;;;;;;;;;;;11094:112;;11216:10;11246:6;11241:421;11262:11;:18;11258:1;:22;11241:421;;;11301:7;11311:11;11323:1;11311:14;;;;;;;;:::i;:::-;;;;;;;;;;;;11374:22;;;;:18;:22;;;;;;;:31;;;11311:14;;-1:-1:-1;11361:45:21;;-1:-1:-1;;;;;11374:31:21;11361:12;:45::i;:::-;:119;;;-1:-1:-1;11448:22:21;;;;:18;:22;;;;;:31;;;11426:54;;-1:-1:-1;;;;;11448:31:21;11426:21;:54::i;:::-;11360:170;;;;-1:-1:-1;11501:22:21;;;;:18;:22;;;;;:29;;;;;11360:170;11339:313;;;11590:22;;;;:18;:22;;;;;;;;;11563:49;;;;;;;;;;;;;;;-1:-1:-1;;;;;11563:49:21;;;;;;;;;;;;;;;11590:22;;11563:49;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;11563:49:21;;;-1:-1:-1;;11563:49:21;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:17;11581:5;11563:24;;;;;;;;:::i;:::-;;;;;;:49;;;;11630:7;;;;;:::i;:::-;;;;11339:313;-1:-1:-1;11282:3:21;;;;:::i;:::-;;;;11241:421;;;-1:-1:-1;11678:17:21;;10970:732;-1:-1:-1;;;10970:732:21:o;29008:159::-;29101:7;29127:33;29154:5;29127:26;:33::i;13963:205::-;4407:24;4420:10;4407:12;:24::i;:::-;4399:43;;;;-1:-1:-1;;;4399:43:21;;;;;;;:::i;:::-;14043:10:::1;14023:31;::::0;;;:19:::1;:31;::::0;;;;;:36;14015:55:::1;;;::::0;-1:-1:-1;;;14015:55:21;;32675:2:32;14015:55:21::1;::::0;::::1;32657:21:32::0;32714:1;32694:18;;;32687:29;-1:-1:-1;;;32732:18:32;;;32725:36;32778:18;;14015:55:21::1;32473:329:32::0;14015:55:21::1;14100:10;14080:31;::::0;;;:19:::1;:31;::::0;;;;;;14114:12:::1;14080:46:::0;;14141:20;::::1;::::0;::::1;::::0;::::1;:::i;17208:6399::-:0;17442:6;2526:21:2;:19;:21::i;:::-;17460:17:21::1;17480:27;17501:5;17480:20;:27::i;:::-;17633:26;::::0;;;:15:::1;:26;::::0;;;;;;;-1:-1:-1;787:1:21::1;17633:44;:26:::0;;::::1;:44;;17612:97;;;;-1:-1:-1::0;;;17612:97:21::1;;;;;;;:::i;:::-;17783:33;::::0;;::::1;::::0;17740:144;;-1:-1:-1;;;17740:144:21;;:18:::1;::::0;:25:::1;::::0;:144:::1;::::0;17783:33;17834:9;;17861;;17740:144:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;17719:197;;;;-1:-1:-1::0;;;17719:197:21::1;;;;;;;:::i;:::-;17958:15;17934:41:::0;::::1;17926:60;;;::::0;-1:-1:-1;;;17926:60:21;;34326:2:32;17926:60:21::1;::::0;::::1;34308:21:32::0;34365:1;34345:18;;;34338:29;-1:-1:-1;;;34383:18:32;;;34376:36;34429:18;;17926:60:21::1;34124:329:32::0;17926:60:21::1;17997:35;18035:148;18063:5;18082:17;18113;18144:6;18164:9;18035:14;:148::i;:::-;17997:186:::0;-1:-1:-1;18215:85:21;;;18194:138:::1;;;::::0;-1:-1:-1;;;18194:138:21;;34660:2:32;18194:138:21::1;::::0;::::1;34642:21:32::0;34699:1;34679:18;;;34672:29;-1:-1:-1;;;34717:18:32;;;34710:36;34763:18;;18194:138:21::1;34458:329:32::0;18194:138:21::1;18363:96:::0;;;18342:149:::1;;;::::0;-1:-1:-1;;;18342:149:21;;34994:2:32;18342:149:21::1;::::0;::::1;34976:21:32::0;35033:1;35013:18;;;35006:29;-1:-1:-1;;;35051:18:32;;;35044:36;35097:18;;18342:149:21::1;34792:329:32::0;18342:149:21::1;18522:84:::0;;;18501:137:::1;;;::::0;-1:-1:-1;;;18501:137:21;;35328:2:32;18501:137:21::1;::::0;::::1;35310:21:32::0;35367:1;35347:18;;;35340:29;-1:-1:-1;;;35385:18:32;;;35378:36;35431:18;;18501:137:21::1;35126:329:32::0;18501:137:21::1;18669:104:::0;;;18648:157:::1;;;::::0;-1:-1:-1;;;18648:157:21;;35662:2:32;18648:157:21::1;::::0;::::1;35644:21:32::0;35701:1;35681:18;;;35674:29;-1:-1:-1;;;35719:18:32;;;35712:36;35765:18;;18648:157:21::1;35460:329:32::0;18648:157:21::1;18836:52:::0;;;18815:105:::1;;;::::0;-1:-1:-1;;;18815:105:21;;35996:2:32;18815:105:21::1;::::0;::::1;35978:21:32::0;36035:1;36015:18;;;36008:29;-1:-1:-1;;;36053:18:32;;;36046:36;36099:18;;18815:105:21::1;35794:329:32::0;18815:105:21::1;18982:1;18951:28;:32;:109;;;-1:-1:-1::0;;;18999:61:21;::::1;18951:109;:188;;;-1:-1:-1::0;;;19076:63:21;::::1;18951:188;18930:241;;;::::0;-1:-1:-1;;;18930:241:21;;36330:2:32;18930:241:21::1;::::0;::::1;36312:21:32::0;36369:1;36349:18;;;36342:29;-1:-1:-1;;;36387:18:32;;;36380:36;36433:18;;18930:241:21::1;36128:329:32::0;18930:241:21::1;19290:23;::::0;;;:12:::1;:23;::::0;;;;:33;19199:154:::1;::::0;19229:5;;19248:28;;19290:33:::1;;19337:6:::0;19199:16:::1;:154::i;:::-;19182:816;;;19425:16;::::0;::::1;::::0;19470:33:::1;::::0;;::::1;::::0;-1:-1:-1;;;;;19459:45:21::1;19378:23;19459:45:::0;;;:10:::1;:45;::::0;;;;;19378:23;;19404:114:::1;::::0;:3:::1;:114::i;:::-;19378:140;;19644:18;19595:10;:45;19606:5;:33;;;-1:-1:-1::0;;;;;19595:45:21::1;-1:-1:-1::0;;;;;19595:45:21::1;;;;;;;;;;;;;:67;;;;;;;:::i;:::-;::::0;;;-1:-1:-1;;19708:33:21::1;::::0;;::::1;::::0;19681:137;;-1:-1:-1;;;;;;;;;;;19681:137:21;::::1;::::0;19759:18;;19795:9;;19681:137:::1;:::i;:::-;;;;;;;;19916:7;::::0;19869:22:::1;::::0;19927:3:::1;::::0;19895:28:::1;::::0;19916:7:::1;;19895:18:::0;:28:::1;:::i;:::-;19894:36;;;;:::i;:::-;19869:61;;19944:43;19960:10;19972:14;19944:15;:43::i;:::-;19364:634;;19182:816;-1:-1:-1::0;;20025:61:21;::::1;::::0;:140:::1;;-1:-1:-1::0;;;20102:63:21;::::1;20025:140;20008:447;;;20225:26;::::0;;;:15:::1;:26;::::0;;;;;;;:49;;-1:-1:-1;;20225:49:21::1;839:1;20225:49;::::0;;20295:12:::1;:23:::0;;;;;;20288:30;;-1:-1:-1;;20288:30:21;;;20337:58;;30312:25:32;;;30353:18;;;30346:34;;;20337:58:21::1;::::0;30285:18:32;20337:58:21::1;;;;;;;20416:28:::0;-1:-1:-1;20409:35:21::1;::::0;-1:-1:-1;20409:35:21::1;20008:447;20711:50;::::0;-1:-1:-1;;;20711:50:21;;20671:28;;20711:6:::1;::::0;:24:::1;::::0;:50:::1;::::0;20736:5;;20671:28;;20711:50:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;;20812:1:21::1;20776:23:::0;;;:12:::1;:23;::::0;;;;:33;::::1;;:37:::0;;-1:-1:-1;20772:2614:21::1;;20829:17;20865:23:::0;;;:12:::1;:23;::::0;;;;:31;-1:-1:-1;;;20865:31:21;::::1;;;20861:285;;;20931:109;20956:17;21009:5;:13;;;20995:5;:11;;;:27;;;;:::i;:::-;20931:3;:109::i;:::-;20916:124;;20861:285;;;21094:37;21098:17;21117:5;:13;;;21094:3;:37::i;:::-;21079:52;;20861:285;21159:64;21175:5;:33;;;21210:12;21159:15;:64::i;:::-;21237:20;21260:32;21280:12:::0;21260:17;:32:::1;:::i;:::-;21237:55;;21329:4;;21311:15;:22;21307:829;;;21453:22;::::0;::::1;::::0;:152:::1;::::0;21436:12:::1;::::0;-1:-1:-1;;;;;21453:27:21::1;::::0;683:4:::1;::::0;21564:15;;21436:12;21453:152;21436:12;21453:152;21564:15;21453:27;683:4;21453:152:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21435:170;;;-1:-1:-1::0;;;;;;;;;;;21656:5:21::1;:22;;;21700:15;21737:7;21766:9;21628:165;;;;;;;;;:::i;:::-;;;;;;;;21817:7;21812:310;;21966:137;22007:5;:33;;;22066:15;21966;:137::i;:::-;21335:801;21307:829;20815:1331;;20772:2614;;;22222:20;::::0;::::1;::::0;22186:17;;22222:51;::::1;;;;22262:5;:11;;;22246:12;:27;;22222:51;22218:656;;;22294:16;22315:5;:21;;;-1:-1:-1::0;;;;;22315:26:21::1;22372:5;:14;;;22315:149;;22419:5;:11;;;22453:5;:10;;;22315:149;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;22293:171;;;22552:5;:21;;;-1:-1:-1::0;;;;;22487:269:21::1;22520:10;-1:-1:-1::0;;;;;22487:269:21::1;-1:-1:-1::0;;;;;;;;;;;22595:5:21::1;:14;;;22631:5;:11;;;22664:5;:10;;;22696:11;22729:9;22487:269;;;;;;;;;;:::i;:::-;;;;;;;;22779:11;22775:85;;;22830:11;::::0;::::1;::::0;22814:27:::1;::::0;;::::1;:::i;:::-;;;22775:85;22275:599;22218:656;22906:4;;22891:12;:19;22887:489;;;23027:22;::::0;::::1;::::0;:149:::1;::::0;23010:12:::1;::::0;-1:-1:-1;;;;;23027:27:21::1;::::0;683:4:::1;::::0;23138:12;;23010;23027:149;23010:12;23027:149;23138:12;23027:27;683:4;23027:149:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23009:167;;;-1:-1:-1::0;;;;;;;;;;;23227:5:21::1;:22;;;23271:12;23305:7;23334:9;23199:162;;;;;;;;;:::i;:::-;;;;;;;;22912:464;22887:489;22152:1234;20772:2614;23395:26;::::0;;;:15:::1;:26;::::0;;;;;;;:49;;-1:-1:-1;;23395:49:21::1;839:1;23395:49;::::0;;23461:12:::1;:23:::0;;;;;;23454:30;;-1:-1:-1;;23454:30:21;;;23499:56;;683:25:32;;;23395:26:21;;23499:56:::1;::::0;656:18:32;23499:56:21::1;;;;;;;-1:-1:-1::0;23572:28:21;-1:-1:-1;;2557:1:2::1;2568:20:::0;1808:1;3074:7;:22;2894:209;2568:20;17208:6399:21;;;;;;;:::o;2085:101:0:-;1355:13;:11;:13::i;:::-;2149:30:::1;2176:1;2149:18;:30::i;:::-;2085:101::o:0;6351:185:21:-;6459:11;6218:7;:5;:7::i;:::-;-1:-1:-1;;;;;6204:21:21;:10;-1:-1:-1;;;;;6204:21:21;;:91;;;-1:-1:-1;6255:31:21;;;;:18;:31;;;;;:40;;;-1:-1:-1;;;;;6255:40:21;6241:10;:54;6204:91;6183:144;;;;-1:-1:-1;;;6183:144:21;;41273:2:32;6183:144:21;;;41255:21:32;41312:1;41292:18;;;41285:29;-1:-1:-1;;;41330:18:32;;;41323:36;41376:18;;6183:144:21;41071:329:32;6183:144:21;-1:-1:-1;6482:31:21::1;::::0;;;:18:::1;:31;::::0;;;;;:38:::1;;:47:::0;;-1:-1:-1;;6482:47:21::1;::::0;::::1;;::::0;;;::::1;::::0;;6351:185::o;23613:1139::-;23814:41;23836:5;:18;;;23814:21;:41::i;:::-;23806:60;;;;-1:-1:-1;;;23806:60:21;;41607:2:32;23806:60:21;;;41589:21:32;41646:1;41626:18;;;41619:29;-1:-1:-1;;;41664:18:32;;;41657:36;41710:18;;23806:60:21;41405:329:32;23806:60:21;23915:9;23898:5;:13;;;23884:5;:11;;;:27;;;;:::i;:::-;:40;;23876:59;;;;-1:-1:-1;;;23876:59:21;;41941:2:32;23876:59:21;;;41923:21:32;41980:1;41960:18;;;41953:29;-1:-1:-1;;;41998:18:32;;;41991:36;42044:18;;23876:59:21;41739:329:32;23876:59:21;23972:5;:22;;;23953:41;;:15;:41;;23945:60;;;;-1:-1:-1;;;23945:60:21;;42275:2:32;23945:60:21;;;42257:21:32;42314:1;42294:18;;;42287:29;-1:-1:-1;;;42332:18:32;;;42325:36;42378:18;;23945:60:21;42073:329:32;23945:60:21;24042:5;:16;;;24023:35;;:15;:35;;24015:54;;;;-1:-1:-1;;;24015:54:21;;42609:2:32;24015:54:21;;;42591:21:32;42648:1;42628:18;;;42621:29;-1:-1:-1;;;42666:18:32;;;42659:36;42712:18;;24015:54:21;42407:329:32;24015:54:21;24103:5;:17;;;24087:33;;:12;:33;;24079:52;;;;-1:-1:-1;;;24079:52:21;;42943:2:32;24079:52:21;;;42925:21:32;42982:1;42962:18;;;42955:29;-1:-1:-1;;;43000:18:32;;;42993:36;43046:18;;24079:52:21;42741:329:32;24079:52:21;24141:17;24161:22;24177:5;24161:15;:22::i;:::-;24240:18;;;;24214:67;;-1:-1:-1;;;24214:67:21;;24141:42;;-1:-1:-1;24214:18:21;;:25;;:67;;24141:42;;24271:9;;24214:67;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;24193:120;;;;-1:-1:-1;;;24193:120:21;;;;;;;:::i;:::-;24324:42;24369:33;;;:22;:33;;;;;;;;24421:14;:25;;;;;;:35;;;;;:44;24413:63;;;;-1:-1:-1;;;24413:63:21;;;;;;;:::i;:::-;24494:26;;-1:-1:-1;;;;;24494:26:21;:40;24486:59;;;;-1:-1:-1;;;24486:59:21;;;;;;;:::i;:::-;24555:33;;;;:22;:33;;;;;;;;;:41;;;;-1:-1:-1;;;;;;24555:41:21;;;-1:-1:-1;;;;;24555:41:21;;;;;;;;;;-1:-1:-1;24555:41:21;;;;;;;;;;;;;;;;;;;:33;:41;;;;;;;;:::i;:::-;-1:-1:-1;24555:41:21;;;;;;;;;-1:-1:-1;;;;;;24555:41:21;-1:-1:-1;;;;;24555:41:21;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;24555:41:21;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;24555:41:21;-1:-1:-1;;;;;24555:41:21;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;24555:41:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;24555:41:21;;;;;;;-1:-1:-1;;;24555:41:21;;;;;;;;;;;-1:-1:-1;;;;24555:41:21;-1:-1:-1;;;24555:41:21;;;;;-1:-1:-1;;;;24555:41:21;;-1:-1:-1;;;24555:41:21;;;;;;;;;-1:-1:-1;;;;;;;;24555:41:21;-1:-1:-1;;;24555:41:21;;;;;;;-1:-1:-1;;;;24555:41:21;;-1:-1:-1;;;24555:41:21;;;;;;;;;;;-1:-1:-1;;;;24555:41:21;-1:-1:-1;;;24555:41:21;;;;;;;;;;;;;;-1:-1:-1;24606:25:21;;;:14;:25;;;;;;;;;24651:15;24606:60;;;;24681:64;;24718:9;30312:25:32;;30353:18;;;30346:34;24706:10:21;;24606:25;;24681:64;;30285:18:32;24681:64:21;;;;;;;23796:956;;23613:1139;;:::o;1462:85:0:-;1534:6;;-1:-1:-1;;;;;1534:6:0;;1462:85::o;24758:1040:21:-;2526:21:2;:19;:21::i;:::-;24847:32:21::1;24882:33:::0;;;:22:::1;:33;::::0;;;;24934:16;;-1:-1:-1;;;;;24934:16:21::1;24926:49;;;;-1:-1:-1::0;;;24926:49:21::1;;;;;;;:::i;:::-;25024:16;::::0;::::1;::::0;-1:-1:-1;;;25024:16:21;::::1;;;25006:15;:34;:82:::0;::::1;;;-1:-1:-1::0;25071:17:21::1;::::0;::::1;::::0;-1:-1:-1;;;25071:17:21;::::1;;;25056:12;:32;25006:82;24985:135;;;::::0;-1:-1:-1;;;24985:135:21;;45300:2:32;24985:135:21::1;::::0;::::1;45282:21:32::0;45339:1;45319:18;;;45312:29;-1:-1:-1;;;45357:18:32;;;45350:36;45403:18;;24985:135:21::1;45098:329:32::0;24985:135:21::1;25131:20;25168:5;:13;;;25154:5;:11;;;:27;;;;:::i;:::-;25219:22;::::0;::::1;::::0;25271:16:::1;::::0;::::1;::::0;25219:22;25306:18;::::1;::::0;-1:-1:-1;;;;;25306:18:21;;::::1;25191:25;25289:36:::0;;;:16:::1;:36;::::0;;;;;25131:50;;-1:-1:-1;25219:22:21;::::1;::::0;25267:59:::1;::::0;25271:16;25267:3:::1;:59::i;:::-;25353:18;::::0;::::1;::::0;-1:-1:-1;;;;;25353:18:21::1;25336:36;::::0;;;:16:::1;:36;::::0;;;;:47;;25252:74;;-1:-1:-1;25252:74:21;;25336:36;;;:47:::1;::::0;25252:74;;25336:47:::1;:::i;:::-;::::0;;;-1:-1:-1;;25409:18:21::1;::::0;::::1;::::0;25399:49:::1;::::0;-1:-1:-1;;;;;;;;;;;25399:49:21;::::1;::::0;-1:-1:-1;;;;;25409:18:21;;::::1;::::0;25429:7;;25438:9;;25399:49:::1;:::i;:::-;;;;;;;;25547:22;::::0;::::1;::::0;25463:116:::1;::::0;;45606:25:32;;;-1:-1:-1;;;;;25547:22:21;;::::1;45662:2:32::0;45647:18;;45640:60;25495:9:21;;25463:116:::1;::::0;45579:18:32;25463:116:21::1;;;;;;;25597:33;::::0;;;:22:::1;:33;::::0;;;;25590:40;;-1:-1:-1;;;;;;25590:40:21;;::::1;::::0;;;;::::1;::::0;;;;::::1;::::0;;25597:33;25590:40:::1;;::::0;::::1;25597:33:::0;25590:40:::1;:::i;:::-;;::::0;::::1;::::0;;-1:-1:-1;;;;;;25590:40:21::1;::::0;;::::1;;::::0;::::1;;;:::i;:::-;;;::::0;::::1;::::0;;;::::1;::::0;::::1;::::0;;;::::1;::::0;::::1;::::0;;-1:-1:-1;;;;;;25590:40:21::1;::::0;;::::1;::::0;::::1;::::0;::::1;::::0;::::1;:::i;:::-;-1:-1:-1::0;25590:40:21::1;;::::0;::::1;::::0;;;::::1;::::0;;::::1;::::0;;-1:-1:-1;;;;;;25590:40:21;;;25640:25;;;:14:::1;:25;::::0;;;;;-1:-1:-1;25640:35:21;;::::1;:42:::0;;-1:-1:-1;;25640:42:21::1;::::0;;::::1;::::0;;25708:50;-1:-1:-1;;;;;25708:22:21;::::1;::::0;25738:15;;25590:40;25708:50;25590:40;25708:50;25738:15;25708:22;:50:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;25693:65;;;25776:4;25768:23;;;::::0;-1:-1:-1;;;25768:23:21;;45913:2:32;25768:23:21::1;::::0;::::1;45895:21:32::0;45952:1;45932:18;;;45925:29;-1:-1:-1;;;45970:18:32;;;45963:36;46016:18;;25768:23:21::1;45711:329:32::0;25768:23:21::1;24837:961;;;;;2568:20:2::0;1808:1;3074:7;:22;2894:209;2568:20;24758:1040:21;:::o;11786:165::-;4407:24;4420:10;4407:12;:24::i;:::-;4399:43;;;;-1:-1:-1;;;4399:43:21;;;;;;;:::i;:::-;11864:10:::1;11853:22;::::0;;;:10:::1;:22;::::0;;;;:35;;11879:9:::1;::::0;11853:22;:35:::1;::::0;11879:9;;11853:35:::1;:::i;:::-;::::0;;;-1:-1:-1;;11903:41:21::1;::::0;::::1;::::0;::::1;::::0;11922:10:::1;::::0;11934:9:::1;::::0;11903:41:::1;:::i;35334:302::-:0;35420:7;35551:6;:13;35568:2;35551:19;35543:38;;;;-1:-1:-1;;;35543:38:21;;46247:2:32;35543:38:21;;;46229:21:32;46286:1;46266:18;;;46259:29;-1:-1:-1;;;46304:18:32;;;46297:36;46350:18;;35543:38:21;46045:329:32;35543:38:21;35599:30;35618:6;35626:2;35599:18;:30::i;:::-;35592:37;;;35334:302;-1:-1:-1;;35334:302:21:o;27962:697::-;28105:4;28121:23;28200:16;28210:5;28200:9;:16::i;:::-;28234:5;:22;;;28282:5;:16;;;28274:25;;28317:5;:33;;;28170:194;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;28147:227;;;;;;28121:253;;28384:32;28466:15;28516:6;;;;;;;;;-1:-1:-1;;;;;28516:6:21;-1:-1:-1;;;;;28516:34:21;;:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;28516:36:21;;;;;;;;;;;;:::i;:::-;28419:143;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;28419:143:21;;;;;;;;;;28644:7;;-1:-1:-1;;;28579:73:21;;28419:143;;-1:-1:-1;28579:8:21;;:27;;:73;;28607:14;;28419:143;;28644:7;;;;;28579:73;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;15102:1589::-;15223:4;4407:24;4420:10;4407:12;:24::i;:::-;4399:43;;;;-1:-1:-1;;;4399:43:21;;;;;;;:::i;:::-;2526:21:2::1;:19;:21::i;:::-;15274:5:21::2;:33;;;-1:-1:-1::0;;;;;15260:47:21::2;:10;-1:-1:-1::0;;;;;15260:47:21::2;;15239:100;;;::::0;-1:-1:-1;;;15239:100:21;;49114:2:32;15239:100:21::2;::::0;::::2;49096:21:32::0;49153:1;49133:18;;;49126:29;-1:-1:-1;;;49171:18:32;;;49164:36;49217:18;;15239:100:21::2;48912:329:32::0;15239:100:21::2;15441:11;::::0;::::2;::::0;15379:33:::2;::::0;;::::2;::::0;-1:-1:-1;;;;;15370:43:21::2;;::::0;;;:8:::2;:43;::::0;;;:55:::2;::::0;15416:9:::2;::::0;15370:55:::2;:::i;:::-;:82;;15349:135;;;;-1:-1:-1::0;;;15349:135:21::2;;;;;;;:::i;:::-;15495:17;15515:27;15536:5;15515:20;:27::i;:::-;741:1;15573:26:::0;;;:15:::2;:26;::::0;;;;;15495:47;;-1:-1:-1;15573:52:21::2;:26;:52:::0;15552:105:::2;;;::::0;-1:-1:-1;;;15552:105:21;;49448:2:32;15552:105:21::2;::::0;::::2;49430:21:32::0;49487:1;49467:18;;;49460:29;-1:-1:-1;;;49505:18:32;;;49498:36;49551:18;;15552:105:21::2;49246:329:32::0;15552:105:21::2;15668:61;15684:5;:33;;;15719:9;15668:15;:61::i;:::-;15875:14;::::0;::::2;::::0;:34:::2;::::0;626:5:::2;::::0;15875:34:::2;:::i;:::-;15862:47;;:9;:47;;15841:100;;;::::0;-1:-1:-1;;;15841:100:21;;49959:2:32;15841:100:21::2;::::0;::::2;49941:21:32::0;49998:1;49978:18;;;49971:29;-1:-1:-1;;;50016:18:32;;;50009:36;50062:18;;15841:100:21::2;49757:329:32::0;15841:100:21::2;15952:12;15969:5;:21;;;-1:-1:-1::0;;;;;15969:26:21::2;16018:5;:14;;;15969:125;;16057:5;:11;;;16083:5;:10;;;15969:125;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;15951:143:21;;-1:-1:-1;;16132:16:21::2;16113:15;:35;;16105:54;;;::::0;-1:-1:-1;;;16105:54:21;;50293:2:32;16105:54:21::2;::::0;::::2;50275:21:32::0;50332:1;50312:18;;;50305:29;-1:-1:-1;;;50350:18:32;;;50343:36;50396:18;;16105:54:21::2;50091:329:32::0;16105:54:21::2;16169:23;::::0;;;:12:::2;:23;::::0;;;;:59;;-1:-1:-1;;16169:59:21::2;16212:15;16169:59;;;::::0;;16239:153;::::2;;;16266:23;::::0;;;:12:::2;:23;::::0;;;;;;:38;;-1:-1:-1;;;;16266:38:21::2;-1:-1:-1::0;;;16266:38:21::2;::::0;;16334:33;::::2;::::0;16369:11:::2;::::0;::::2;::::0;16318:63:::2;::::0;16334:33;16318:15:::2;:63::i;:::-;16455:5;:21;;;-1:-1:-1::0;;;;;16406:201:21::2;16431:10;-1:-1:-1::0;;;;;16406:201:21::2;-1:-1:-1::0;;;;;;;;;;;16490:5:21::2;:14;;;16518:5;:11;;;16543:5;:10;;;16567:7;16588:9;16406:201;;;;;;;;;;:::i;:::-;;;;;;;;16617:26;::::0;;;:15:::2;:26;::::0;;;;;:43;;-1:-1:-1;;16617:43:21::2;787:1;16617:43;::::0;;16677:7;-1:-1:-1;2568:20:2::1;1808:1:::0;3074:7;:22;2894:209;2568:20:::1;15102:1589:21::0;;;:::o;12220:106::-;4407:24;4420:10;4407:12;:24::i;:::-;4399:43;;;;-1:-1:-1;;;4399:43:21;;;;;;;:::i;:::-;12281:38:::1;12297:10;12309:9;12281:15;:38::i;25804:2153::-:0;2526:21:2;:19;:21::i;:::-;4519:33:21::1;4541:10;4519:21;:33::i;:::-;4511:52;;;;-1:-1:-1::0;;;4511:52:21::1;;;;;;;:::i;:::-;26065:25:::2;::::0;;;:14:::2;:25;::::0;;;;:35:::2;;::::0;::::2;;:44;26057:63;;;;-1:-1:-1::0;;;26057:63:21::2;;;;;;;:::i;:::-;26130:32;26165:33:::0;;;:22:::2;:33;::::0;;;;26216:16;;-1:-1:-1;;;;;26216:16:21::2;26208:49;;;;-1:-1:-1::0;;;26208:49:21::2;;;;;;;:::i;:::-;26307:26;::::0;-1:-1:-1;;;26307:26:21;;26267:37:::2;::::0;26307:8:::2;::::0;:19:::2;::::0;:26:::2;::::0;26327:5;;26307:26:::2;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::2;;;;;;;;;;;;;;;;;::::0;;::::2;-1:-1:-1::0;;26307:26:21::2;::::0;::::2;;::::0;::::2;::::0;;;::::2;::::0;::::2;:::i;:::-;26267:66;;26343:19;26376:8;:28;26405:7;1687:1;26405:26;;;;;;;;:::i;:::-;;;;;;;:35;;;26376:65;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::2;;;;;;;;;;;;;;;;;::::0;;::::2;-1:-1:-1::0;;26376:65:21::2;::::0;::::2;;::::0;::::2;::::0;;;::::2;::::0;::::2;:::i;:::-;26365:88;;;;;;;;;;;;:::i;:::-;26343:110;;26484:11;26471:9;:24;26463:43;;;::::0;-1:-1:-1;;;26463:43:21;;53059:2:32;26463:43:21::2;::::0;::::2;53041:21:32::0;53098:1;53078:18;;;53071:29;-1:-1:-1;;;53116:18:32;;;53109:36;53162:18;;26463:43:21::2;52857:329:32::0;26463:43:21::2;26538:18;::::0;::::2;::::0;-1:-1:-1;;;;;26538:18:21::2;26524:10;:32;26516:51;;;::::0;-1:-1:-1;;;26516:51:21;;53393:2:32;26516:51:21::2;::::0;::::2;53375:21:32::0;53432:1;53412:18;;;53405:29;-1:-1:-1;;;53450:18:32;;;53443:36;53496:18;;26516:51:21::2;53191:329:32::0;26516:51:21::2;26815:27;::::0;::::2;::::0;26598:6:::2;::::0;26653:25:::2;::::0;-1:-1:-1;;;26653:25:21;;-1:-1:-1;;;26815:27:21;;::::2;;;::::0;-1:-1:-1;;;;;26598:6:21;;::::2;::::0;:37:::2;::::0;26653:8:::2;::::0;:18:::2;::::0;:25:::2;::::0;26672:5;;26653:25:::2;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;26696:18;26732:17;26767:18;26598:201;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:246;;26577:299;;;::::0;-1:-1:-1;;;26577:299:21;;54768:2:32;26577:299:21::2;::::0;::::2;54750:21:32::0;54807:1;54787:18;;;54780:29;-1:-1:-1;;;54825:18:32;;;54818:36;54871:18;;26577:299:21::2;54566:329:32::0;26577:299:21::2;26909:7;1639:1;26909:30;;;;;;;;:::i;:::-;;;;;;;:36;;;26949:6;26909:47;;;;:::i;:::-;-1:-1:-1::0;;;;;26894:62:21::2;:5;:11;;;:62;;26886:81;;;::::0;-1:-1:-1;;;26886:81:21;;55364:2:32;26886:81:21::2;::::0;::::2;55346:21:32::0;55403:1;55383:18;;;55376:29;-1:-1:-1;;;55421:18:32;;;55414:36;55467:18;;26886:81:21::2;55162:329:32::0;26886:81:21::2;26995:29;27027:8;:29;27057:7;1639:1;27057:30;;;;;;;;:::i;:::-;;::::0;;::::2;::::0;;;;;;;:52:::2;::::0;27111:7:::2;::::0;27027:92:::2;::::0;-1:-1:-1;;;;;;27027:92:21::2;::::0;;;;;;::::2;::::0;27057:52;27111:7:::2;;::::0;27027:92:::2;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::2;;;;;;;;;;;;;;;;;::::0;;::::2;-1:-1:-1::0;;27027:92:21::2;::::0;::::2;;::::0;::::2;::::0;;;::::2;::::0;::::2;:::i;:::-;26995:124;;27183:16;27173:27;;;;;;27147:5;:21;;27137:32;;;;;;:::i;:::-;;;;;;;;:63;27129:82;;;::::0;-1:-1:-1;;;27129:82:21;;56855:2:32;27129:82:21::2;::::0;::::2;56837:21:32::0;56894:1;56874:18;;;56867:29;-1:-1:-1;;;56912:18:32;;;56905:36;56958:18;;27129:82:21::2;56653:329:32::0;27129:82:21::2;27239:124;::::0;;::::2;::::0;::::2;::::0;;;;-1:-1:-1;;;;;27239:124:21;;::::2;::::0;;;;::::2;::::0;::::2;;::::0;::::2;::::0;::::2;::::0;::::2;::::0;;::::2;::::0;27279:5;;27239:124;;;;::::2;::::0;::::2;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;;27239:124:21;;;-1:-1:-1;;27239:124:21::2;::::0;::::2;::::0;-1:-1:-1;;;;;27239:124:21::2;;::::0;::::2;::::0;::::2;::::0;::::2;::::0;;;;;;;::::2;::::0;::::2;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;;27239:124:21;;;-1:-1:-1;;27239:124:21::2;::::0;::::2;::::0;::::2;::::0;::::2;::::0;::::2;::::0;::::2;::::0;;;;;::::2;::::0;;::::2;::::0;;::::2;::::0;;;;::::2;::::0;::::2;::::0;;;;;;;::::2;::::0;::::2;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;;27239:124:21;;;-1:-1:-1;;27239:124:21::2;::::0;::::2;::::0;::::2;::::0;::::2;::::0;::::2;::::0;;::::2;::::0;::::2;::::0;;::::2;::::0;;;;-1:-1:-1;;;27239:124:21;::::2;::::0;::::2;::::0;;;;::::2;-1:-1:-1::0;;;27239:124:21;::::2;::::0;::::2;::::0;;;;-1:-1:-1;;;27239:124:21;::::2;;::::0;;;;-1:-1:-1;;;27239:124:21;::::2;::::0;::::2;::::0;;;;-1:-1:-1;;;27239:124:21;::::2;::::0;::::2;::::0;;;;-1:-1:-1;;;27239:124:21;;::::2;;;::::0;;;;27302:11;27331:18;27239:22:::2;:124::i;:::-;27222:428;;;27424:16;::::0;::::2;::::0;27475:18:::2;::::0;::::2;::::0;-1:-1:-1;;;;;27475:18:21::2;27388:12;27458:36:::0;;;:16:::2;:36;::::0;;;;;27388:12;;27403:105:::2;::::0;:3:::2;:105::i;:::-;27539:18;::::0;::::2;::::0;-1:-1:-1;;;;;27539:18:21::2;27522:36;::::0;;;:16:::2;:36;::::0;;;;:47;;27388:120;;-1:-1:-1;27388:120:21;;27522:36;;;:47:::2;::::0;27388:120;;27522:47:::2;:::i;:::-;::::0;;;-1:-1:-1;;27598:18:21::2;::::0;::::2;::::0;27588:51:::2;::::0;-1:-1:-1;;;;;;;;;;;27588:51:21;::::2;::::0;-1:-1:-1;;;;;27598:18:21;;::::2;::::0;27618:7;;27627:11;;27588:51:::2;:::i;:::-;;;;;;;;27374:276;27222:428;27675:18;::::0;::::2;::::0;27737:13:::2;::::0;::::2;::::0;27723:11:::2;::::0;::::2;::::0;27661:9:::2;::::0;-1:-1:-1;;;;;27675:18:21::2;::::0;27723:27:::2;::::0;::::2;:::i;:::-;27675:93;::::0;::::2;::::0;;;;;::::2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;27660:108;;;27786:4;27778:23;;;::::0;-1:-1:-1;;;27778:23:21;;57189:2:32;27778:23:21::2;::::0;::::2;57171:21:32::0;57228:1;57208:18;;;57201:29;-1:-1:-1;;;57246:18:32;;;57239:36;57292:18;;27778:23:21::2;56987:329:32::0;27778:23:21::2;27819:35;::::0;;;:22:::2;:35;::::0;;;;27812:42;;-1:-1:-1;;;;;;27812:42:21;;::::2;::::0;;;;::::2;::::0;;;;::::2;::::0;;27819:35;27812:42:::2;;::::0;::::2;27819:35:::0;27812:42:::2;:::i;:::-;;::::0;::::2;::::0;;-1:-1:-1;;;;;;27812:42:21::2;::::0;;::::2;;::::0;::::2;;;:::i;:::-;;;::::0;::::2;::::0;;;::::2;::::0;::::2;::::0;;;::::2;::::0;::::2;::::0;;-1:-1:-1;;;;;;27812:42:21::2;::::0;;::::2;::::0;::::2;::::0;::::2;::::0;::::2;:::i;:::-;-1:-1:-1::0;27812:42:21::2;;::::0;::::2;::::0;;;::::2;::::0;;::::2;::::0;;-1:-1:-1;;;;;;27812:42:21;;;27864:27;;;:14:::2;:27;::::0;;;;;27812:42;27864:37;;::::2;:44:::0;;-1:-1:-1;;27864:44:21::2;::::0;;::::2;::::0;;27923:27;27879:11;;27923:27:::2;::::0;::::2;26047:1910;;;;;2568:20:2::0;1808:1;3074:7;:22;2894:209;2568:20;25804:2153:21;;;;;:::o;7326:174::-;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7460:33:21;;;:22;:33;;;;;;7453:40;;;;;;;;;-1:-1:-1;;;;;7453:40:21;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;7453:40:21;;7460:33;;7453:40;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;7453:40:21;;;-1:-1:-1;;7453:40:21;;;;-1:-1:-1;;;;;7453:40:21;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;7453:40:21;;;-1:-1:-1;;7453:40:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;7453:40:21;;;-1:-1:-1;;7453:40:21;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;7453:40:21;;;;;;;;;-1:-1:-1;;;7453:40:21;;;;;;;;-1:-1:-1;;;7453:40:21;;;;;;;-1:-1:-1;;;7453:40:21;;;;;;;;-1:-1:-1;;;7453:40:21;;;;;;;;-1:-1:-1;;;7453:40:21;;;;;;;;;;7326:174;-1:-1:-1;;7326:174:21:o;2335:198:0:-;1355:13;:11;:13::i;:::-;-1:-1:-1;;;;;2423:22:0;::::1;2415:73;;;::::0;-1:-1:-1;;;2415:73:0;;57523:2:32;2415:73:0::1;::::0;::::1;57505:21:32::0;57562:2;57542:18;;;57535:30;57601:34;57581:18;;;57574:62;-1:-1:-1;;;57652:18:32;;;57645:36;57698:19;;2415:73:0::1;57321:402:32::0;2415:73:0::1;2498:28;2517:8;2498:18;:28::i;29173:839:21:-:0;29271:7;29315:5;:16;;;-1:-1:-1;;;;;29298:33:21;29306:4;-1:-1:-1;;;;;29298:33:21;;29290:52;;;;-1:-1:-1;;;29290:52:21;;57930:2:32;29290:52:21;;;57912:21:32;57969:1;57949:18;;;57942:29;-1:-1:-1;;;57987:18:32;;;57980:36;58033:18;;29290:52:21;57728:329:32;29290:52:21;29392:21;;;;29381:6;;-1:-1:-1;;;;;29373:40:21;;;29381:6;;29373:40;29352:93;;;;-1:-1:-1;;;29352:93:21;;58264:2:32;29352:93:21;;;58246:21:32;58303:1;58283:18;;;58276:29;-1:-1:-1;;;58321:18:32;;;58314:36;58367:18;;29352:93:21;58062:329:32;29352:93:21;29476:5;:22;;;:29;29509:2;29476:35;:86;;;;29527:5;:22;;;:29;29560:2;29527:35;29476:86;29455:139;;;;-1:-1:-1;;;29455:139:21;;58598:2:32;29455:139:21;;;58580:21:32;58637:1;58617:18;;;58610:29;-1:-1:-1;;;58655:18:32;;;58648:36;58701:18;;29455:139:21;58396:329:32;29455:139:21;29625:5;:33;;;:40;29669:2;29625:46;29604:99;;;;-1:-1:-1;;;29604:99:21;;58932:2:32;29604:99:21;;;58914:21:32;58971:1;58951:18;;;58944:29;-1:-1:-1;;;58989:18:32;;;58982:36;59035:18;;29604:99:21;58730:329:32;29604:99:21;29765:8;;29748:5;:13;;;29734:5;:11;;;:27;;;;:::i;:::-;:39;;29713:92;;;;-1:-1:-1;;;29713:92:21;;59266:2:32;29713:92:21;;;59248:21:32;59305:1;59285:18;;;59278:29;-1:-1:-1;;;59323:18:32;;;59316:36;59369:18;;29713:92:21;59064:329:32;29713:92:21;29898:5;:20;;;29891:28;;29863:5;:24;;;29856:32;;:63;;;;:::i;:::-;-1:-1:-1;;;;;29836:83:21;:16;:83;;29815:136;;;;-1:-1:-1;;;29815:136:21;;59785:2:32;29815:136:21;;;59767:21:32;59824:1;59804:18;;;59797:29;-1:-1:-1;;;59842:18:32;;;59835:36;59888:18;;29815:136:21;59583:329:32;29815:136:21;29979:25;;-1:-1:-1;;;29979:25:21;;:6;;:18;;:25;;29998:5;;29979:25;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;29979:25:21;;;;;;;;;;;;:::i;:::-;29969:36;;;;;;29962:43;;29173:839;;;:::o;10216:748::-;10413:1;10397:5;10391:19;:23;10383:42;;;;-1:-1:-1;;;10383:42:21;;60401:2:32;10383:42:21;;;60383:21:32;60440:1;60420:18;;;60413:29;-1:-1:-1;;;60458:18:32;;;60451:36;60504:18;;10383:42:21;60199:329:32;10383:42:21;10484:1;10462:11;10456:25;:29;10435:82;;;;-1:-1:-1;;;10435:82:21;;60735:2:32;10435:82:21;;;60717:21:32;60774:1;60754:18;;;60747:29;-1:-1:-1;;;60792:18:32;;;60785:36;60838:18;;10435:82:21;60533:329:32;10435:82:21;10679:25;;;;;;;:::i;:::-;;;;;;;;;;;;;10669:36;;;;;;10638:13;10621:31;;;;;;;;:::i;:::-;;;;;;;;;;;;;10611:42;;;;;;:94;:205;;;;10789:26;;;;;;;:::i;:::-;;;;;;;;;;;;;10779:37;;;;;;10748:13;10731:31;;;;;;;;:::i;:::-;;;;;;;;;;;;;10721:42;;;;;;:95;10611:205;:314;;;-1:-1:-1;10900:24:21;;-1:-1:-1;;;10900:24:21;;;61069:19:32;61104:11;;10900:24:21;;;;;;;;;;;;10890:35;;;;;;10859:13;10842:31;;;;;;;;:::i;:::-;;;;;;;;;;;;;10832:42;;;;;;:93;10611:314;10590:367;;;;-1:-1:-1;;;10590:367:21;;61328:2:32;10590:367:21;;;61310:21:32;61367:1;61347:18;;;61340:29;-1:-1:-1;;;61385:18:32;;;61378:36;61431:18;;10590:367:21;61126:329:32;10590:367:21;10216:748;;;:::o;31096:157::-;-1:-1:-1;;;;;31186:22:21;;31163:4;31186:22;;;:16;:22;;;;;;:26;;;;:60;;-1:-1:-1;;;;;;;31216:25:21;;;;;:19;:25;;;;;;:30;;31096:157::o;1125:111:0:-;5374:13:1;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:1;;61662:2:32;5366:69:1;;;61644:21:32;61701:2;61681:18;;;61674:30;61740:34;61720:18;;;61713:62;-1:-1:-1;;;61791:18:32;;;61784:41;61842:19;;5366:69:1;61460:407:32;5366:69:1;1197:32:0::1;965:10:4::0;1197:18:0::1;:32::i;30948:142:21:-:0;-1:-1:-1;;;;;31029:16:21;;31006:4;31029:16;;;:10;:16;;;;;;:20;;;;:54;;-1:-1:-1;;;;;;;31053:25:21;;;;;:19;:25;;;;;;:30;;30948:142::o;30018:243::-;30167:16;;30123:7;;-1:-1:-1;;;;;30150:33:21;30158:4;30150:33;30142:52;;;;-1:-1:-1;;;30142:52:21;;62074:2:32;30142:52:21;;;62056:21:32;62113:1;62093:18;;;62086:29;-1:-1:-1;;;62131:18:32;;;62124:36;62177:18;;30142:52:21;61872:329:32;30142:52:21;30222:31;;-1:-1:-1;;;30222:31:21;;:6;;:24;;:31;;30247:5;;30222:31;;;:::i;2601:287:2:-;1851:1;2733:7;;:19;2725:63;;;;-1:-1:-1;;;2725:63:2;;64860:2:32;2725:63:2;;;64842:21:32;64899:2;64879:18;;;64872:30;64938:33;64918:18;;;64911:61;64989:18;;2725:63:2;64658:355:32;2725:63:2;1851:1;2863:7;:18;2601:287::o;31680:628:21:-;31936:6;;32099:22;;;;32162:33;;;;31903:6;32209:28;;;:12;:28;;;;;:38;31903:6;;-1:-1:-1;;;;;31936:6:21;;:39;;31989:17;;32020:6;;32040:17;;32071:14;;32143:4;;32162:33;32209:38;;:42;;;;:82;;-1:-1:-1;32255:28:21;;;;:12;:28;;;;;:36;-1:-1:-1;;;32255:36:21;;;;32209:82;31936:365;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;31921:380;31680:628;-1:-1:-1;;;;;;31680:628:21:o;32730:1576::-;32902:4;32992:1;32983:6;:10;:59;;;;;33029:5;:13;;;33015:5;:11;;;:27;;;;:::i;:::-;33005:6;32997:45;32983:59;32979:102;;;-1:-1:-1;33065:5:21;33058:12;;32979:102;33130:6;;:59;;-1:-1:-1;;;33130:59:21;;;;;683:25:32;;;33091:36:21;;-1:-1:-1;;;;;33130:6:21;;:51;;656:18:32;;33130:59:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;33130:59:21;;;;;;;;;;;;:::i;:::-;33091:98;;33240:1;33207:23;:30;:34;33199:67;;;;-1:-1:-1;;;33199:67:21;;66288:2:32;33199:67:21;;;66270:21:32;66327:2;66307:18;;;66300:30;-1:-1:-1;;;66346:18:32;;;66339:50;66406:18;;33199:67:21;66086:344:32;33199:67:21;33277:34;33314:67;33348:23;33314:20;:67::i;:::-;33277:104;;33521:14;33565:5;:20;;;33538:5;:24;;;:47;;;;:::i;:::-;33521:64;;;;33628:9;33599:26;:38;33595:81;;;33660:5;33653:12;;;;;;;33595:81;33731:13;33748:1;33731:18;33727:60;;33772:4;33765:11;;;;;;;33727:60;33833:6;;33907:26;;;;33797:33;;-1:-1:-1;;;;;33833:6:21;;:51;;:6;;33898:35;;;;:6;:35;:::i;:::-;:39;;;;:::i;:::-;33833:114;;;;;;;;;;;;;683:25:32;;671:2;656:18;;537:177;33833:114:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;33833:114:21;;;;;;;;;;;;:::i;:::-;33797:150;;33995:1;33965:20;:27;:31;33957:50;;;;-1:-1:-1;;;33957:50:21;;66637:2:32;33957:50:21;;;66619:21:32;66676:1;66656:18;;;66649:29;-1:-1:-1;;;66694:18:32;;;66687:36;66740:18;;33957:50:21;66435:329:32;33957:50:21;34018:31;34052:64;34086:20;34052;:64::i;:::-;34018:98;;34226:5;:14;;;34200:40;;:23;:40;;;;:::i;:::-;34184:13;:56;34180:98;;;34263:4;34256:11;;;;;;;;;34180:98;-1:-1:-1;34294:5:21;;32730:1576;-1:-1:-1;;;;;;;;;32730:1576:21:o;30267:94::-;30318:4;30345:1;30341;:5;:13;;30353:1;30341:13;;;30349:1;30341:13;30334:20;30267:94;-1:-1:-1;;;30267:94:21:o;30434:145::-;-1:-1:-1;;;;;30504:14:21;;;;;;:8;:14;;;;;:24;;30522:6;;30504:14;:24;;30522:6;;30504:24;:::i;:::-;;;;-1:-1:-1;;30543:29:21;;;;;;30559:4;;30565:6;;30543:29;:::i;1620:130:0:-;965:10:4;1683:7:0;:5;:7::i;:::-;-1:-1:-1;;;;;1683:23:0;;1675:68;;;;-1:-1:-1;;;1675:68:0;;66971:2:32;1675:68:0;;;66953:21:32;;;66990:18;;;66983:30;67049:34;67029:18;;;67022:62;67101:18;;1675:68:0;66769:356:32;2687:187:0;2779:6;;;-1:-1:-1;;;;;2795:17:0;;;-1:-1:-1;;;;;;2795:17:0;;;;;;;2827:40;;2779:6;;;2795:17;2779:6;;2827:40;;2760:16;;2827:40;2750:124;2687:187;:::o;35701:364:21:-;35804:6;35843:10;:6;35852:1;35843:10;:::i;:::-;35830:2;:9;:23;;35822:42;;;;-1:-1:-1;;;35822:42:21;;67332:2:32;35822:42:21;;;67314:21:32;67371:1;67351:18;;;67344:29;-1:-1:-1;;;67389:18:32;;;67382:36;67435:18;;35822:42:21;67130:329:32;35822:42:21;36055:2;36035;36038:10;:6;36047:1;36038:10;:::i;:::-;36035:14;;;;;;;;:::i;:::-;;;;;;;36022:35;;36007:2;35987;35990:10;:6;35999:1;35990:10;:::i;:::-;35987:14;;;;;;;;:::i;:::-;;;;;;;35974:35;;35960:1;35940:2;35943:10;:6;35952:1;35943:10;:::i;:::-;35940:14;;;;;;;;:::i;:::-;;;;;35903:10;;35940:14;;;;;35927:34;;;;35903:2;;35906:6;;35903:10;;;;;;:::i;:::-;;;;;;;35890:72;:120;:168;;-1:-1:-1;35701:364:21;;;;:::o;30585:145::-;-1:-1:-1;;;;;30655:14:21;;;;;;:8;:14;;;;;:24;;30673:6;;30655:14;:24;;30673:6;;30655:24;:::i;:::-;;;;-1:-1:-1;;30694:29:21;;;;;;30710:4;;30716:6;;30694:29;:::i;34312:853::-;34522:6;;:51;;-1:-1:-1;;;34522:51:21;;;;;683:25:32;;;34467:4:21;;;;-1:-1:-1;;;;;34522:6:21;;;;:40;;656:18:32;;34522:51:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;34522:51:21;;;;;;;;;;;;:::i;:::-;34483:90;;34624:1;34591:23;:30;:34;34583:53;;;;-1:-1:-1;;;34583:53:21;;67666:2:32;34583:53:21;;;67648:21:32;67705:1;67685:18;;;67678:29;-1:-1:-1;;;67723:18:32;;;67716:36;67769:18;;34583:53:21;67464:329:32;34583:53:21;34647:34;34684:45;34705:23;34684:20;:45::i;:::-;34908:12;;34887:18;;;;34830:25;;;;:14;:25;;;;;:42;34647:82;;-1:-1:-1;34908:12:21;;34830:75;;;;;;:::i;:::-;:90;;;;:::i;:::-;34801:26;:119;34797:161;;;34943:4;34936:11;;;;;;34797:161;35046:5;:16;;;35028:34;;:15;:34;:70;;;;35081:5;:17;;;35066:32;;:12;:32;35028:70;35024:112;;;35121:4;35114:11;;;;;;35024:112;-1:-1:-1;35153:5:21;;34312:853;-1:-1:-1;;;;;34312:853:21:o;-1:-1:-1:-;;;;;;;:::i;:::-;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;719:127:32:-;780:10;775:3;771:20;768:1;761:31;811:4;808:1;801:15;835:4;832:1;825:15;851:255;923:2;917:9;965:6;953:19;;-1:-1:-1;;;;;987:34:32;;1023:22;;;984:62;981:88;;;1049:18;;:::i;:::-;1085:2;1078:22;851:255;:::o;1111:::-;1183:2;1177:9;1225:6;1213:19;;-1:-1:-1;;;;;1247:34:32;;1283:22;;;1244:62;1241:88;;;1309:18;;:::i;1371:253::-;1443:2;1437:9;1485:4;1473:17;;-1:-1:-1;;;;;1505:34:32;;1541:22;;;1502:62;1499:88;;;1567:18;;:::i;1629:275::-;1700:2;1694:9;1765:2;1746:13;;-1:-1:-1;;1742:27:32;1730:40;;-1:-1:-1;;;;;1785:34:32;;1821:22;;;1782:62;1779:88;;;1847:18;;:::i;:::-;1883:2;1876:22;1629:275;;-1:-1:-1;1629:275:32:o;1909:177::-;1977:20;;-1:-1:-1;;;;;;2026:35:32;;2016:46;;2006:74;;2076:1;2073;2066:12;2091:131;-1:-1:-1;;;;;2166:31:32;;2156:42;;2146:70;;2212:1;2209;2202:12;2227:134;2295:20;;2324:31;2295:20;2324:31;:::i;2366:186::-;2414:4;-1:-1:-1;;;;;2436:30:32;;2433:56;;;2469:18;;:::i;:::-;-1:-1:-1;2535:2:32;2514:15;-1:-1:-1;;2510:29:32;2541:4;2506:40;;2366:186::o;2557:462::-;2599:5;2652:3;2645:4;2637:6;2633:17;2629:27;2619:55;;2670:1;2667;2660:12;2619:55;2706:6;2693:20;2737:48;2753:31;2781:2;2753:31;:::i;:::-;2737:48;:::i;:::-;2810:2;2801:7;2794:19;2856:3;2849:4;2844:2;2836:6;2832:15;2828:26;2825:35;2822:55;;;2873:1;2870;2863:12;2822:55;2938:2;2931:4;2923:6;2919:17;2912:4;2903:7;2899:18;2886:55;2986:1;2961:16;;;2979:4;2957:27;2950:38;;;;2965:7;2557:462;-1:-1:-1;;;2557:462:32:o;3024:163::-;3091:20;;3151:10;3140:22;;3130:33;;3120:61;;3177:1;3174;3167:12;3192:160;3258:20;;3318:1;3307:20;;;3297:31;;3287:59;;3342:1;3339;3332:12;3357:159;3424:20;;3484:6;3473:18;;3463:29;;3453:57;;3506:1;3503;3496:12;3521:118;3607:5;3600:13;3593:21;3586:5;3583:32;3573:60;;3629:1;3626;3619:12;3644:128;3709:20;;3738:28;3709:20;3738:28;:::i;3777:2005::-;3834:5;3882:6;3870:9;3865:3;3861:19;3857:32;3854:52;;;3902:1;3899;3892:12;3854:52;3924:22;;:::i;:::-;3915:31;;3969:29;3988:9;3969:29;:::i;:::-;3962:5;3955:44;4031:38;4065:2;4054:9;4050:18;4031:38;:::i;:::-;4026:2;4019:5;4015:14;4008:62;4102:38;4136:2;4125:9;4121:18;4102:38;:::i;:::-;4097:2;4086:14;;4079:62;4192:2;4177:18;;4164:32;-1:-1:-1;;;;;4245:14:32;;;4242:34;;;4272:1;4269;4262:12;4242:34;4308:45;4349:3;4340:6;4329:9;4325:22;4308:45;:::i;:::-;4303:2;4296:5;4292:14;4285:69;4387:39;4421:3;4410:9;4406:19;4387:39;:::i;:::-;4381:3;4374:5;4370:15;4363:64;4480:3;4469:9;4465:19;4452:33;4436:49;;4510:2;4500:8;4497:16;4494:36;;;4526:1;4523;4516:12;4494:36;4563:47;4606:3;4595:8;4584:9;4580:24;4563:47;:::i;:::-;4557:3;4550:5;4546:15;4539:72;4672:3;4661:9;4657:19;4644:33;4638:3;4631:5;4627:15;4620:58;4739:3;4728:9;4724:19;4711:33;4705:3;4698:5;4694:15;4687:58;4764:3;4754:13;;4799:38;4833:2;4822:9;4818:18;4799:38;:::i;:::-;4794:2;4787:5;4783:14;4776:62;4857:3;4847:13;;4913:2;4902:9;4898:18;4885:32;4942:2;4932:8;4929:16;4926:36;;;4958:1;4955;4948:12;4926:36;4994:47;5037:3;5026:8;5015:9;5011:24;4994:47;:::i;:::-;4989:2;4982:5;4978:14;4971:71;;;;5061:3;5096:37;5129:2;5118:9;5114:18;5096:37;:::i;:::-;5080:14;;;5073:61;5153:3;5188:36;5205:18;;;5188:36;:::i;:::-;5172:14;;;5165:60;5244:3;5292:18;;;5279:32;5263:14;;;5256:56;5331:3;5366:37;5384:18;;;5366:37;:::i;:::-;5350:14;;;5343:61;5423:3;5458:37;5476:18;;;5458:37;:::i;:::-;5442:14;;;5435:61;5515:3;5550:37;5568:18;;;5550:37;:::i;:::-;5534:14;;;5527:61;5608:3;5644:38;5662:19;;;5644:38;:::i;:::-;5627:15;;;5620:63;5703:3;5739:36;5755:19;;;5739:36;:::i;:::-;5722:15;;;5715:61;5726:5;3777:2005;-1:-1:-1;;3777:2005:32:o;5787:352::-;5875:6;5928:2;5916:9;5907:7;5903:23;5899:32;5896:52;;;5944:1;5941;5934:12;5896:52;5971:23;;-1:-1:-1;;;;;6006:30:32;;6003:50;;;6049:1;6046;6039:12;6003:50;6072:61;6125:7;6116:6;6105:9;6101:22;6072:61;:::i;6326:180::-;6385:6;6438:2;6426:9;6417:7;6413:23;6409:32;6406:52;;;6454:1;6451;6444:12;6406:52;-1:-1:-1;6477:23:32;;6326:180;-1:-1:-1;6326:180:32:o;6511:870::-;6624:6;6632;6640;6648;6701:3;6689:9;6680:7;6676:23;6672:33;6669:53;;;6718:1;6715;6708:12;6669:53;6745:23;;-1:-1:-1;;;;;6817:14:32;;;6814:34;;;6844:1;6841;6834:12;6814:34;6867:49;6908:7;6899:6;6888:9;6884:22;6867:49;:::i;:::-;6857:59;;6969:2;6958:9;6954:18;6941:32;6925:48;;6998:2;6988:8;6985:16;6982:36;;;7014:1;7011;7004:12;6982:36;7037:51;7080:7;7069:8;7058:9;7054:24;7037:51;:::i;:::-;7027:61;;7138:2;7127:9;7123:18;7110:32;7097:45;;7151:28;7173:5;7151:28;:::i;:::-;7198:5;;-1:-1:-1;7256:2:32;7241:18;;7228:32;;7272:16;;;7269:36;;;7301:1;7298;7291:12;7269:36;;7324:51;7367:7;7356:8;7345:9;7341:24;7324:51;:::i;:::-;7314:61;;;6511:870;;;;;;;:::o;7579:811::-;7704:6;7712;7720;7728;7736;7744;7752;7760;7813:3;7801:9;7792:7;7788:23;7784:33;7781:53;;;7830:1;7827;7820:12;7781:53;7869:9;7856:23;7888:31;7913:5;7888:31;:::i;:::-;7938:5;-1:-1:-1;7990:2:32;7975:18;;7962:32;;-1:-1:-1;8041:2:32;8026:18;;8013:32;;-1:-1:-1;8064:37:32;8097:2;8082:18;;8064:37;:::i;:::-;8054:47;;8120:38;8153:3;8142:9;8138:19;8120:38;:::i;:::-;8110:48;;8205:3;8194:9;8190:19;8177:33;8167:43;;8257:3;8246:9;8242:19;8229:33;8219:43;;8314:3;8303:9;8299:19;8286:33;8328:30;8350:7;8328:30;:::i;:::-;8377:7;8367:17;;;7579:811;;;;;;;;;;;:::o;8395:247::-;8454:6;8507:2;8495:9;8486:7;8482:23;8478:32;8475:52;;;8523:1;8520;8513:12;8475:52;8562:9;8549:23;8581:31;8606:5;8581:31;:::i;9120:183::-;9180:4;-1:-1:-1;;;;;9202:30:32;;9199:56;;;9235:18;;:::i;:::-;-1:-1:-1;9280:1:32;9276:14;9292:4;9272:25;;9120:183::o;9308:891::-;9392:6;9423:2;9466;9454:9;9445:7;9441:23;9437:32;9434:52;;;9482:1;9479;9472:12;9434:52;9509:23;;-1:-1:-1;;;;;9544:30:32;;9541:50;;;9587:1;9584;9577:12;9541:50;9610:22;;9663:4;9655:13;;9651:27;-1:-1:-1;9641:55:32;;9692:1;9689;9682:12;9641:55;9728:2;9715:16;9751:60;9767:43;9807:2;9767:43;:::i;9751:60::-;9845:15;;;9927:1;9923:10;;;;9915:19;;9911:28;;;9876:12;;;;9951:19;;;9948:39;;;9983:1;9980;9973:12;9948:39;10007:11;;;;10027:142;10043:6;10038:3;10035:15;10027:142;;;10109:17;;10097:30;;10060:12;;;;10147;;;;10027:142;;;10188:5;9308:891;-1:-1:-1;;;;;;;9308:891:32:o;10204:104::-;-1:-1:-1;;;;;10270:31:32;10258:44;;10204:104::o;10313:250::-;10398:1;10408:113;10422:6;10419:1;10416:13;10408:113;;;10498:11;;;10492:18;10479:11;;;10472:39;10444:2;10437:10;10408:113;;;-1:-1:-1;;10555:1:32;10537:16;;10530:27;10313:250::o;10568:271::-;10610:3;10648:5;10642:12;10675:6;10670:3;10663:19;10691:76;10760:6;10753:4;10748:3;10744:14;10737:4;10730:5;10726:16;10691:76;:::i;:::-;10821:2;10800:15;-1:-1:-1;;10796:29:32;10787:39;;;;10828:4;10783:50;;10568:271;-1:-1:-1;;10568:271:32:o;10844:1665::-;11056:4;11085:2;11125;11114:9;11110:18;11155:2;11144:9;11137:21;11178:6;11213;11207:13;11244:6;11236;11229:22;11270:2;11260:12;;11303:2;11292:9;11288:18;11281:25;;11365:2;11355:6;11352:1;11348:14;11337:9;11333:30;11329:39;11403:2;11395:6;11391:15;11424:1;11434:1046;11448:6;11445:1;11442:13;11434:1046;;;11513:22;;;-1:-1:-1;;11509:36:32;11497:49;;11569:13;;11637:9;;11622:25;;11694:11;;;11688:18;-1:-1:-1;;;;;11684:44:32;11667:15;;;11660:69;11768:11;;;11762:18;11605:4;11800:15;;;11793:27;;;11605:4;11847:48;11879:15;;;11762:18;11847:48;:::i;:::-;11833:62;;;11918:4;11971:2;11967;11963:11;11957:18;12024:6;12016;12012:19;12007:2;11999:6;11995:15;11988:44;12059:41;12093:6;12077:14;12059:41;:::i;:::-;12045:55;;;;12123:4;12192:2;12188;12184:11;12178:18;12171:26;12164:34;12159:2;12151:6;12147:15;12140:59;;12222:4;12275:2;12271;12267:11;12261:18;12239:40;;12328:6;12320;12316:19;12311:2;12303:6;12299:15;12292:44;;12359:41;12393:6;12377:14;12359:41;:::i;:::-;12458:12;;;;12349:51;-1:-1:-1;;;12423:15:32;;;;11470:1;11463:9;11434:1046;;;-1:-1:-1;12497:6:32;;10844:1665;-1:-1:-1;;;;;;;;10844:1665:32:o;12514:1911::-;12572:5;12620:6;12608:9;12603:3;12599:19;12595:32;12592:52;;;12640:1;12637;12630:12;12592:52;12662:22;;:::i;:::-;12653:31;;12707:29;12726:9;12707:29;:::i;:::-;12700:5;12693:44;12769:38;12803:2;12792:9;12788:18;12769:38;:::i;:::-;12764:2;12753:14;;12746:62;12859:2;12844:18;;12831:32;-1:-1:-1;;;;;12912:14:32;;;12909:34;;;12939:1;12936;12929:12;12909:34;12975:45;13016:3;13007:6;12996:9;12992:22;12975:45;:::i;:::-;12970:2;12963:5;12959:14;12952:69;13053:38;13087:2;13076:9;13072:18;13053:38;:::i;:::-;13048:2;13041:5;13037:14;13030:62;13145:3;13134:9;13130:19;13117:33;13101:49;;13175:2;13165:8;13162:16;13159:36;;;13191:1;13188;13181:12;13159:36;13228:47;13271:3;13260:8;13249:9;13245:24;13228:47;:::i;:::-;13222:3;13215:5;13211:15;13204:72;13337:3;13326:9;13322:19;13309:33;13303:3;13296:5;13292:15;13285:58;13404:3;13393:9;13389:19;13376:33;13370:3;13363:5;13359:15;13352:58;13443:37;13475:3;13464:9;13460:19;13443:37;:::i;:::-;13437:3;13430:5;13426:15;13419:62;13500:3;13490:13;;13556:2;13545:9;13541:18;13528:32;13585:2;13575:8;13572:16;13569:36;;;13601:1;13598;13591:12;13569:36;13637:47;13680:3;13669:8;13658:9;13654:24;13637:47;:::i;:::-;13632:2;13625:5;13621:14;13614:71;;;;13704:3;13767:2;13756:9;13752:18;13739:32;13734:2;13727:5;13723:14;13716:56;;13791:3;13826:37;13859:2;13848:9;13844:18;13826:37;:::i;:::-;13810:14;;;13803:61;13883:3;13918:37;13936:18;;;13918:37;:::i;:::-;13902:14;;;13895:61;13975:3;14010:37;14028:18;;;14010:37;:::i;:::-;13994:14;;;13987:61;14067:3;14102:37;14120:18;;;14102:37;:::i;:::-;14086:14;;;14079:61;14159:3;14194:37;14212:18;;;14194:37;:::i;:::-;14178:14;;;14171:61;14251:3;14286:37;14304:18;;;14286:37;:::i;:::-;14270:14;;;14263:61;14344:3;14380:38;14398:19;;;14380:38;:::i;14430:354::-;14519:6;14572:2;14560:9;14551:7;14547:23;14543:32;14540:52;;;14588:1;14585;14578:12;14540:52;14615:23;;-1:-1:-1;;;;;14650:30:32;;14647:50;;;14693:1;14690;14683:12;14647:50;14716:62;14770:7;14761:6;14750:9;14746:22;14716:62;:::i;14789:1037::-;14940:6;14948;14956;14964;14972;15025:3;15013:9;15004:7;15000:23;14996:33;14993:53;;;15042:1;15039;15032:12;14993:53;15069:23;;-1:-1:-1;;;;;15141:14:32;;;15138:34;;;15168:1;15165;15158:12;15138:34;15191:61;15244:7;15235:6;15224:9;15220:22;15191:61;:::i;:::-;15181:71;;15305:2;15294:9;15290:18;15277:32;15261:48;;15334:2;15324:8;15321:16;15318:36;;;15350:1;15347;15340:12;15318:36;15373:51;15416:7;15405:8;15394:9;15390:24;15373:51;:::i;:::-;15363:61;;15477:2;15466:9;15462:18;15449:32;15433:48;;15506:2;15496:8;15493:16;15490:36;;;15522:1;15519;15512:12;15490:36;15545:51;15588:7;15577:8;15566:9;15562:24;15545:51;:::i;:::-;15535:61;;15649:2;15638:9;15634:18;15621:32;15605:48;;15678:2;15668:8;15665:16;15662:36;;;15694:1;15691;15684:12;15662:36;;15717:51;15760:7;15749:8;15738:9;15734:24;15717:51;:::i;:::-;14789:1037;;;;-1:-1:-1;14789:1037:32;;15815:3;15800:19;15787:33;;14789:1037;-1:-1:-1;;;14789:1037:32:o;16011:309::-;16076:6;16084;16137:2;16125:9;16116:7;16112:23;16108:32;16105:52;;;16153:1;16150;16143:12;16105:52;16189:9;16176:23;16166:33;;16249:2;16238:9;16234:18;16221:32;16262:28;16284:5;16262:28;:::i;:::-;16309:5;16299:15;;;16011:309;;;;;:::o;16325:573::-;16432:6;16440;16493:2;16481:9;16472:7;16468:23;16464:32;16461:52;;;16509:1;16506;16499:12;16461:52;16536:23;;-1:-1:-1;;;;;16608:14:32;;;16605:34;;;16635:1;16632;16625:12;16605:34;16658:62;16712:7;16703:6;16692:9;16688:22;16658:62;:::i;:::-;16648:72;;16773:2;16762:9;16758:18;16745:32;16729:48;;16802:2;16792:8;16789:16;16786:36;;;16818:1;16815;16808:12;16786:36;;16841:51;16884:7;16873:8;16862:9;16858:24;16841:51;:::i;:::-;16831:61;;;16325:573;;;;;:::o;16903:203::-;-1:-1:-1;;;;;17067:32:32;;;;17049:51;;17037:2;17022:18;;16903:203::o;17399:320::-;17467:6;17520:2;17508:9;17499:7;17495:23;17491:32;17488:52;;;17536:1;17533;17526:12;17488:52;17563:23;;-1:-1:-1;;;;;17598:30:32;;17595:50;;;17641:1;17638;17631:12;17595:50;17664:49;17705:7;17696:6;17685:9;17681:22;17664:49;:::i;17724:571::-;17830:6;17838;17891:2;17879:9;17870:7;17866:23;17862:32;17859:52;;;17907:1;17904;17897:12;17859:52;17934:23;;-1:-1:-1;;;;;18006:14:32;;;18003:34;;;18033:1;18030;18023:12;18003:34;18056:61;18109:7;18100:6;18089:9;18085:22;18056:61;:::i;18300:1316::-;18429:6;18437;18445;18453;18461;18514:3;18502:9;18493:7;18489:23;18485:33;18482:53;;;18531:1;18528;18521:12;18482:53;18554:23;;;-1:-1:-1;18596:2:32;18634:18;;;18621:32;-1:-1:-1;;;;;18702:14:32;;;18699:34;;;18729:1;18726;18719:12;18699:34;18752:49;18793:7;18784:6;18773:9;18769:22;18752:49;:::i;:::-;18742:59;;18848:2;18837:9;18833:18;18820:32;18810:42;;18899:2;18888:9;18884:18;18871:32;18861:42;;18956:3;18945:9;18941:19;18928:33;18912:49;;18986:2;18976:8;18973:16;18970:36;;;19002:1;18999;18992:12;18970:36;-1:-1:-1;19025:24:32;;19080:4;19072:13;;19068:27;-1:-1:-1;19058:55:32;;19109:1;19106;19099:12;19058:55;19145:2;19132:16;19168:60;19184:43;19224:2;19184:43;:::i;19168:60::-;19262:15;;;19344:1;19340:10;;;;19332:19;;19328:28;;;19293:12;;;;19368:19;;;19365:39;;;19400:1;19397;19390:12;19365:39;19424:11;;;;19444:142;19460:6;19455:3;19452:15;19444:142;;;19526:17;;19514:30;;19477:12;;;;19564;;;;19444:142;;;19605:5;19595:15;;;;;;;18300:1316;;;;;;;;:::o;20047:2439::-;20236:2;20225:9;20218:21;20248:53;20297:2;20286:9;20282:18;20273:6;20267:13;20248:53;:::i;:::-;20199:4;20348:2;20340:6;20336:15;20330:22;20361:52;20409:2;20398:9;20394:18;20380:12;20361:52;:::i;:::-;;20462:2;20454:6;20450:15;20444:22;20485:6;20527:2;20522;20511:9;20507:18;20500:30;20553:54;20602:3;20591:9;20587:19;20571:14;20553:54;:::i;:::-;20539:68;;20656:2;20648:6;20644:15;20638:22;20669:55;20719:3;20708:9;20704:19;20688:14;20669:55;:::i;:::-;;20773:3;20765:6;20761:16;20755:23;20801:2;20797:7;20869:2;20857:9;20849:6;20845:22;20841:31;20835:3;20824:9;20820:19;20813:60;20896:41;20930:6;20914:14;20896:41;:::i;:::-;20882:55;;20992:3;20984:6;20980:16;20974:23;20968:3;20957:9;20953:19;20946:52;21053:3;21045:6;21041:16;21035:23;21029:3;21018:9;21014:19;21007:52;21108:3;21100:6;21096:16;21090:23;21068:45;;21132:3;21144:52;21192:2;21181:9;21177:18;21161:14;19927:1;19916:20;19904:33;;19852:91;21144:52;21245:2;21237:6;21233:15;21227:22;21205:44;;;21268:3;21335:2;21323:9;21315:6;21311:22;21307:31;21302:2;21291:9;21287:18;21280:59;21362:41;21396:6;21380:14;21362:41;:::i;:::-;21428:15;;;21422:22;21463:3;21482:18;;;21475:30;;;;21542:15;;21536:22;21348:55;;-1:-1:-1;21536:22:32;-1:-1:-1;21577:3:32;;-1:-1:-1;21589:53:32;21623:18;;;21536:22;20024:10;20013:22;20001:35;;19948:94;21589:53;21679:15;;21673:22;;-1:-1:-1;21714:3:32;21726:53;21760:18;;;21673:22;20024:10;20013:22;20001:35;;19948:94;21726:53;21816:15;;21810:22;;-1:-1:-1;21851:3:32;21863:53;21897:18;;;21810:22;17187:6;17176:18;17164:31;;17111:90;21863:53;21953:15;;21947:22;;-1:-1:-1;21989:3:32;22001:54;22035:19;;;21947:22;17187:6;17176:18;17164:31;;17111:90;22001:54;22093:16;;22087:23;;-1:-1:-1;22130:3:32;22142:55;22177:19;;;22087:23;20024:10;20013:22;20001:35;;19948:94;22142:55;22235:16;;22229:23;;-1:-1:-1;22272:3:32;22284:55;22319:19;;;22229:23;20024:10;20013:22;20001:35;;19948:94;22284:55;22377:16;;22371:23;20024:10;20013:22;;22438:18;;;20001:35;22371:23;-1:-1:-1;22403:54:32;-1:-1:-1;22474:6:32;;20047:2439;-1:-1:-1;;;;20047:2439:32:o;22491:329::-;22693:2;22675:21;;;22732:1;22712:18;;;22705:29;-1:-1:-1;;;22765:2:32;22750:18;;22743:36;22811:2;22796:18;;22491:329::o;22825:127::-;22886:10;22881:3;22877:20;22874:1;22867:31;22917:4;22914:1;22907:15;22941:4;22938:1;22931:15;22957:128;23024:9;;;23045:11;;;23042:37;;;23059:18;;:::i;23300:329::-;23502:2;23484:21;;;23541:1;23521:18;;;23514:29;-1:-1:-1;;;23574:2:32;23559:18;;23552:36;23620:2;23605:18;;23300:329::o;23634:274::-;-1:-1:-1;;;;;23826:32:32;;;;23808:51;;23890:2;23875:18;;23868:34;23796:2;23781:18;;23634:274::o;23913:329::-;24115:2;24097:21;;;24154:1;24134:18;;;24127:29;-1:-1:-1;;;24187:2:32;24172:18;;24165:36;24233:2;24218:18;;23913:329::o;24247:::-;24449:2;24431:21;;;24488:1;24468:18;;;24461:29;-1:-1:-1;;;24521:2:32;24506:18;;24499:36;24567:2;24552:18;;24247:329::o;25583:255::-;-1:-1:-1;;;25785:20:32;;25830:1;25821:11;;25583:255::o;25843:289::-;25974:3;26012:6;26006:13;26028:66;26087:6;26082:3;26075:4;26067:6;26063:17;26028:66;:::i;:::-;26110:16;;;;;25843:289;-1:-1:-1;;25843:289:32:o;26137:329::-;26339:2;26321:21;;;26378:1;26358:18;;;26351:29;-1:-1:-1;;;26411:2:32;26396:18;;26389:36;26457:2;26442:18;;26137:329::o;26471:256::-;-1:-1:-1;;;26673:21:32;;26719:1;26710:11;;26471:256::o;26732:168::-;26805:9;;;26836;;26853:15;;;26847:22;;26833:37;26823:71;;26874:18;;:::i;26905:127::-;26966:10;26961:3;26957:20;26954:1;26947:31;26997:4;26994:1;26987:15;27021:4;27018:1;27011:15;27037:120;27077:1;27103;27093:35;;27108:18;;:::i;:::-;-1:-1:-1;27142:9:32;;27037:120::o;27162:112::-;27194:1;27220;27210:35;;27225:18;;:::i;:::-;-1:-1:-1;27259:9:32;;27162:112::o;27279:125::-;27344:9;;;27365:10;;;27362:36;;;27378:18;;:::i;27409:135::-;27448:3;27469:17;;;27466:43;;27489:18;;:::i;:::-;-1:-1:-1;27536:1:32;27525:13;;27409:135::o;27549:380::-;27628:1;27624:12;;;;27671;;;27692:61;;27746:4;27738:6;27734:17;27724:27;;27692:61;27799:2;27791:6;27788:14;27768:18;27765:38;27762:161;;27845:10;27840:3;27836:20;27833:1;27826:31;27880:4;27877:1;27870:15;27908:4;27905:1;27898:15;27762:161;;27549:380;;;:::o;28060:545::-;28162:2;28157:3;28154:11;28151:448;;;28198:1;28223:5;28219:2;28212:17;28268:4;28264:2;28254:19;28338:2;28326:10;28322:19;28319:1;28315:27;28309:4;28305:38;28374:4;28362:10;28359:20;28356:47;;;-1:-1:-1;28397:4:32;28356:47;28452:2;28447:3;28443:12;28440:1;28436:20;28430:4;28426:31;28416:41;;28507:82;28525:2;28518:5;28515:13;28507:82;;;28570:17;;;28551:1;28540:13;28507:82;;;28511:3;;;28060:545;;;:::o;28781:1352::-;28901:10;;-1:-1:-1;;;;;28923:30:32;;28920:56;;;28956:18;;:::i;:::-;28985:97;29075:6;29035:38;29067:4;29061:11;29035:38;:::i;:::-;29029:4;28985:97;:::i;:::-;29137:4;;29201:2;29190:14;;29218:1;29213:663;;;;29920:1;29937:6;29934:89;;;-1:-1:-1;29989:19:32;;;29983:26;29934:89;-1:-1:-1;;28738:1:32;28734:11;;;28730:24;28726:29;28716:40;28762:1;28758:11;;;28713:57;30036:81;;29183:944;;29213:663;28007:1;28000:14;;;28044:4;28031:18;;-1:-1:-1;;29249:20:32;;;29367:236;29381:7;29378:1;29375:14;29367:236;;;29470:19;;;29464:26;29449:42;;29562:27;;;;29530:1;29518:14;;;;29397:19;;29367:236;;;29371:3;29631:6;29622:7;29619:19;29616:201;;;29692:19;;;29686:26;-1:-1:-1;;29775:1:32;29771:14;;;29787:3;29767:24;29763:37;29759:42;29744:58;29729:74;;29616:201;-1:-1:-1;;;;;29863:1:32;29847:14;;;29843:22;29830:36;;-1:-1:-1;28781:1352:32:o;30391:329::-;30593:2;30575:21;;;30632:1;30612:18;;;30605:29;-1:-1:-1;;;30665:2:32;30650:18;;30643:36;30711:2;30696:18;;30391:329::o;32341:127::-;32402:10;32397:3;32393:20;32390:1;32383:31;32433:4;32430:1;32423:15;32457:4;32454:1;32447:15;32807:329;33009:2;32991:21;;;33048:1;33028:18;;;33021:29;-1:-1:-1;;;33081:2:32;33066:18;;33059:36;33127:2;33112:18;;32807:329::o;33141:394::-;33381:1;33377;33372:3;33368:11;33364:19;33356:6;33352:32;33341:9;33334:51;33421:6;33416:2;33405:9;33401:18;33394:34;33464:2;33459;33448:9;33444:18;33437:30;33315:4;33484:45;33525:2;33514:9;33510:18;33502:6;33484:45;:::i;33540:245::-;33607:6;33660:2;33648:9;33639:7;33635:23;33631:32;33628:52;;;33676:1;33673;33666:12;33628:52;33708:9;33702:16;33727:28;33749:5;33727:28;:::i;33790:329::-;33992:2;33974:21;;;34031:1;34011:18;;;34004:29;-1:-1:-1;;;34064:2:32;34049:18;;34042:36;34110:2;34095:18;;33790:329::o;36462:345::-;-1:-1:-1;;;;;36682:32:32;;;;36664:51;;36746:2;36731:18;;36724:34;;;;36789:2;36774:18;;36767:34;36652:2;36637:18;;36462:345::o;37176:2269::-;37291:12;;-1:-1:-1;;;;;;37129:35:32;37117:48;;37229:3;37257:6;37355:4;37348:5;37344:16;37338:23;37370:48;37412:4;37407:3;37403:14;37389:12;37370:48;:::i;:::-;;37466:4;37459:5;37455:16;37449:23;37481:50;37525:4;37520:3;37516:14;37500;37481:50;:::i;:::-;;37579:4;37572:5;37568:16;37562:23;37617:2;37610:4;37605:3;37601:14;37594:26;37641:47;37684:2;37679:3;37675:12;37659:14;37641:47;:::i;:::-;37629:59;;;37736:4;37729:5;37725:16;37719:23;37751:50;37795:4;37790:3;37786:14;37770;37751:50;:::i;:::-;;37849:4;37842:5;37838:16;37832:23;37897:3;37891:4;37887:14;37880:4;37875:3;37871:14;37864:38;37925:39;37959:4;37943:14;37925:39;:::i;:::-;37911:53;;;38013:4;38006:5;38002:16;37996:23;37989:4;37984:3;37980:14;37973:47;38069:4;38062:5;38058:16;38052:23;38045:4;38040:3;38036:14;38029:47;38095:6;38149:2;38142:5;38138:14;38132:21;38162:48;38206:2;38201:3;38197:12;38181:14;38162:48;:::i;:::-;;;38229:6;38283:2;38276:5;38272:14;38266:21;38329:3;38321:6;38317:16;38312:2;38307:3;38303:12;38296:38;38357:41;38391:6;38375:14;38357:41;:::i;:::-;38343:55;;;;38417:6;38471:2;38464:5;38460:14;38454:21;38484:47;38527:2;38522:3;38518:12;38502:14;20024:10;20013:22;20001:35;;19948:94;38484:47;;;38550:6;38604:2;38597:5;38593:14;38587:21;38617:46;38659:2;38654:3;38650:12;38634:14;19927:1;19916:20;19904:33;;19852:91;38617:46;-1:-1:-1;;38682:6:32;38724:14;;;38718:21;38704:12;;;38697:43;38759:6;38802:14;;;38796:21;20024:10;20013:22;;;38860:12;;;20001:35;;;;38892:6;38936:14;;;38930:21;20013:22;;38995:12;;;20001:35;39027:6;39071:14;;;39065:21;20013:22;;;39130:12;;;20001:35;39163:6;39207:15;;;39201:22;17187:6;17176:18;39267:13;;;17164:31;39301:6;39345:15;;;39339:22;8717:13;;8710:21;39403:13;;;8698:34;39370:47;8647:91;39450:348;39673:2;39662:9;39655:21;39636:4;39693:56;39745:2;39734:9;39730:18;39722:6;39693:56;:::i;:::-;39685:64;;39785:6;39780:2;39769:9;39765:18;39758:34;39450:348;;;;;:::o;39803:435::-;-1:-1:-1;;;;;40054:32:32;;;;40036:51;;40118:2;40103:18;;40096:34;;;;40173:14;40166:22;40161:2;40146:18;;40139:50;40220:2;40205:18;;40198:34;40023:3;40008:19;;39803:435::o;40535:531::-;40799:10;40791:6;40787:23;40776:9;40769:42;40847:6;40842:2;40831:9;40827:18;40820:34;40890:3;40885:2;40874:9;40870:18;40863:31;40750:4;40911:46;40952:3;40941:9;40937:19;40929:6;40911:46;:::i;:::-;41000:14;;40993:22;40988:2;40973:18;;40966:50;-1:-1:-1;41047:3:32;41032:19;41025:35;40903:54;40535:531;-1:-1:-1;;;40535:531:32:o;43075:329::-;43277:2;43259:21;;;43316:1;43296:18;;;43289:29;-1:-1:-1;;;43349:2:32;43334:18;;43327:36;43395:2;43380:18;;43075:329::o;44764:::-;44966:2;44948:21;;;45005:1;44985:18;;;44978:29;-1:-1:-1;;;45038:2:32;45023:18;;45016:36;45084:2;45069:18;;44764:329::o;46379:656::-;46640:6;46635:3;46628:19;46610:3;46676:6;46670:13;46692:73;46758:6;46753:2;46748:3;46744:12;46739:2;46731:6;46727:15;46692:73;:::i;:::-;46793:6;46788:3;46784:16;46774:26;;46861:1;46857;46853:2;46849:10;46845:18;46841:23;46833:6;46829:36;46824:2;46820;46816:11;46809:57;46897:6;46891:13;46913:74;46978:8;46973:2;46969;46965:11;46960:2;46952:6;46948:15;46913:74;:::i;:::-;47007:17;47026:2;47003:26;;46379:656;-1:-1:-1;;;;;;46379:656:32:o;47040:441::-;47093:5;47146:3;47139:4;47131:6;47127:17;47123:27;47113:55;;47164:1;47161;47154:12;47113:55;47193:6;47187:13;47224:48;47240:31;47268:2;47240:31;:::i;47224:48::-;47297:2;47288:7;47281:19;47343:3;47336:4;47331:2;47323:6;47319:15;47315:26;47312:35;47309:55;;;47360:1;47357;47350:12;47309:55;47373:77;47447:2;47440:4;47431:7;47427:18;47420:4;47412:6;47408:17;47373:77;:::i;47486:335::-;47565:6;47618:2;47606:9;47597:7;47593:23;47589:32;47586:52;;;47634:1;47631;47624:12;47586:52;47661:16;;-1:-1:-1;;;;;47689:30:32;;47686:50;;;47732:1;47729;47722:12;47686:50;47755:60;47807:7;47798:6;47787:9;47783:22;47755:60;:::i;47826:608::-;-1:-1:-1;;;48188:3:32;48181:16;48226:6;48222:1;48217:3;48213:11;48206:27;-1:-1:-1;;;48258:2:32;48253:3;48249:12;48242:25;48163:3;48296:6;48290:13;48312:75;48380:6;48375:2;48370:3;48366:12;48359:4;48351:6;48347:17;48312:75;:::i;:::-;48407:16;;;;48425:2;48403:25;;47826:608;-1:-1:-1;;;47826:608:32:o;48439:468::-;48662:2;48651:9;48644:21;48625:4;48688:45;48729:2;48718:9;48714:18;48706:6;48688:45;:::i;:::-;48781:9;48773:6;48769:22;48764:2;48753:9;48749:18;48742:50;48809:33;48835:6;48827;48809:33;:::i;:::-;48801:41;;;48892:6;48885:14;48878:22;48873:2;48862:9;48858:18;48851:50;48439:468;;;;;;:::o;49580:172::-;49647:10;49677;;;49689;;;49673:27;;49712:11;;;49709:37;;;49726:18;;:::i;:::-;49709:37;49580:172;;;;:::o;50425:226::-;50580:2;50569:9;50562:21;50543:4;50600:45;50641:2;50630:9;50626:18;50618:6;50600:45;:::i;50656:2007::-;50780:6;50811:2;50854;50842:9;50833:7;50829:23;50825:32;50822:52;;;50870:1;50867;50860:12;50822:52;50897:16;;-1:-1:-1;;;;;50962:14:32;;;50959:34;;;50989:1;50986;50979:12;50959:34;51027:6;51016:9;51012:22;51002:32;;51072:7;51065:4;51061:2;51057:13;51053:27;51043:55;;51094:1;51091;51084:12;51043:55;51123:2;51117:9;51146:60;51162:43;51202:2;51162:43;:::i;51146:60::-;51240:15;;;51322:1;51318:10;;;;51310:19;;51306:28;;;51271:12;;;;51346:19;;;51343:39;;;51378:1;51375;51368:12;51343:39;51410:2;51406;51402:11;51422:1211;51438:6;51433:3;51430:15;51422:1211;;;51517:3;51511:10;51553:2;51540:11;51537:19;51534:109;;;51597:1;51626:2;51622;51615:14;51534:109;51666:20;;51709:4;51737:16;;;-1:-1:-1;;51733:30:32;51729:39;-1:-1:-1;51726:129:32;;;51809:1;51838:2;51834;51827:14;51726:129;51881:22;;:::i;:::-;51945:2;51941;51937:11;51931:18;51997:2;51988:7;51984:16;51975:7;51972:29;51962:127;;52043:1;52072:2;52068;52061:14;51962:127;52102:22;;52148:2;52185:12;;;52179:19;52214:16;;;52211:109;;;52272:1;52302:3;52297;52290:16;52211:109;52356:64;52412:7;52407:2;52396:8;52392:2;52388:17;52384:26;52356:64;:::i;:::-;52340:14;;;52333:88;-1:-1:-1;52445:2:32;52490:12;;;52484:19;52467:15;;;52460:44;;;;52547:11;;;;52541:18;52524:15;;;52517:43;52573:18;;52611:12;;;;51455;;51422:1211;;;-1:-1:-1;52652:5:32;50656:2007;-1:-1:-1;;;;;;;;50656:2007:32:o;52668:184::-;52738:6;52791:2;52779:9;52770:7;52766:23;52762:32;52759:52;;;52807:1;52804;52797:12;52759:52;-1:-1:-1;52830:16:32;;52668:184;-1:-1:-1;52668:184:32:o;53525:848::-;53751:4;53799:3;53788:9;53784:19;53830:6;53819:9;53812:25;53856:2;53894:6;53889:2;53878:9;53874:18;53867:34;53937:6;53932:2;53921:9;53917:18;53910:34;53980:3;53975:2;53964:9;53960:18;53953:31;54004:6;54039;54033:13;54070:6;54062;54055:22;54108:3;54097:9;54093:19;54086:26;;54147:2;54139:6;54135:15;54121:29;;54168:1;54178:169;54192:6;54189:1;54186:13;54178:169;;;54253:13;;54241:26;;54322:15;;;;54287:12;;;;54214:1;54207:9;54178:169;;;-1:-1:-1;54364:3:32;;53525:848;-1:-1:-1;;;;;;;;;53525:848:32:o;54900:257::-;-1:-1:-1;;;;;55021:10:32;;;55033;;;55017:27;55064:20;;;;54971:18;55103:24;;;55093:58;;55131:18;;:::i;:::-;55093:58;;54900:257;;;;:::o;55496:307::-;55673:2;55662:9;55655:21;55636:4;55693:45;55734:2;55723:9;55719:18;55711:6;55693:45;:::i;:::-;55685:53;;55788:6;55781:14;55774:22;55769:2;55758:9;55754:18;55747:50;55496:307;;;;;:::o;55808:840::-;55934:3;55963:1;55996:6;55990:13;56026:36;56052:9;56026:36;:::i;:::-;56081:1;56098:18;;;56125:133;;;;56272:1;56267:356;;;;56091:532;;56125:133;-1:-1:-1;;56158:24:32;;56146:37;;56231:14;;56224:22;56212:35;;56203:45;;;-1:-1:-1;56125:133:32;;56267:356;56298:6;56295:1;56288:17;56328:4;56373:2;56370:1;56360:16;56398:1;56412:165;56426:6;56423:1;56420:13;56412:165;;;56504:14;;56491:11;;;56484:35;56547:16;;;;56441:10;;56412:165;;;56416:3;;;56606:6;56601:3;56597:16;56590:23;;56091:532;-1:-1:-1;56639:3:32;;55808:840;-1:-1:-1;;;;;;55808:840:32:o;59398:180::-;-1:-1:-1;;;;;59503:10:32;;;59515;;;59499:27;;59538:11;;;59535:37;;;59552:18;;:::i;59917:277::-;60112:2;60101:9;60094:21;60075:4;60132:56;60184:2;60173:9;60169:18;60161:6;60132:56;:::i;65018:1063::-;65388:4;65417:3;65447:2;65436:9;65429:21;65473:45;65514:2;65503:9;65499:18;65491:6;65473:45;:::i;:::-;65459:59;;65554:6;65549:2;65538:9;65534:18;65527:34;65609:9;65601:6;65597:22;65592:2;65581:9;65577:18;65570:50;65643:33;65669:6;65661;65643:33;:::i;:::-;65629:47;;65712:6;65707:2;65696:9;65692:18;65685:34;65768:9;65760:6;65756:22;65750:3;65739:9;65735:19;65728:51;65802:33;65828:6;65820;65802:33;:::i;:::-;-1:-1:-1;;;;;65872:32:32;;65892:3;65851:19;;65844:61;65942:22;;;65936:3;65921:19;;65914:51;65788:47;-1:-1:-1;65982:33:32;65788:47;66000:6;65982:33;:::i;:::-;65974:41;;;66066:6;66059:14;66052:22;66046:3;66035:9;66031:19;66024:51;65018:1063;;;;;;;;;;;:::o", - "source": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.18;\npragma experimental ABIEncoderV2;\n\nimport \"./Bridge.sol\";\nimport \"./Quotes.sol\";\nimport \"./SignatureValidator.sol\";\nimport \"@rsksmart/btc-transaction-solidity-helper/contracts/BtcUtils.sol\";\nimport \"@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol\";\nimport \"@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.sol\";\n\n/**\n @title Contract that assists with the Flyover protocol\n */\n\ncontract LiquidityBridgeContract is Initializable, OwnableUpgradeable, ReentrancyGuardUpgradeable {\n uint16 constant public MAX_CALL_GAS_COST = 35000;\n uint16 constant public MAX_REFUND_GAS_LIMIT = 2300;\n\n uint8 constant public UNPROCESSED_QUOTE_CODE = 0;\n uint8 constant public CALL_DONE_CODE = 1;\n uint8 constant public PROCESSED_QUOTE_CODE = 2;\n\n int16 constant public BRIDGE_REFUNDED_USER_ERROR_CODE = - 100;\n int16 constant public BRIDGE_REFUNDED_LP_ERROR_CODE = - 200;\n int16 constant public BRIDGE_UNPROCESSABLE_TX_NOT_CONTRACT_ERROR_CODE = - 300;\n int16 constant public BRIDGE_UNPROCESSABLE_TX_INVALID_SENDER_ERROR_CODE = - 301;\n int16 constant public BRIDGE_UNPROCESSABLE_TX_ALREADY_PROCESSED_ERROR_CODE = - 302;\n int16 constant public BRIDGE_UNPROCESSABLE_TX_VALIDATIONS_ERROR = - 303;\n int16 constant public BRIDGE_UNPROCESSABLE_TX_VALUE_ZERO_ERROR = - 304;\n int16 constant public BRIDGE_UNPROCESSABLE_TX_UTXO_AMOUNT_SENT_BELOW_MINIMUM_ERROR =\n - 305;\n int16 constant public BRIDGE_GENERIC_ERROR = - 900;\n uint constant public MAX_UINT = 2 ** 256 - 1;\n uint constant public PAY_TO_ADDRESS_OUTPUT = 0;\n uint constant public QUOTE_HASH_OUTPUT = 1;\n\n struct Registry {\n uint32 timestamp;\n bool success;\n }\n\n struct PegoutRecord {\n uint256 depositTimestamp;\n bool completed;\n }\n\n struct LiquidityProvider {\n uint id;\n address provider;\n string name;\n string apiBaseUrl;\n bool status;\n string providerType;\n }\n\n event Register(uint id, address indexed from, uint256 amount);\n event Deposit(address from, uint256 amount);\n event CollateralIncrease(address from, uint256 amount);\n event PegoutCollateralIncrease(address from, uint256 amount);\n event Withdrawal(address from, uint256 amount);\n event WithdrawCollateral(address from, uint256 amount);\n event PegoutWithdrawCollateral(address from, uint256 amount);\n event Resigned(address from);\n event CallForUser(\n address indexed from,\n address indexed dest,\n uint gasLimit,\n uint value,\n bytes data,\n bool success,\n bytes32 quoteHash\n );\n event PegInRegistered(bytes32 indexed quoteHash, int256 transferredAmount);\n event Penalized(address liquidityProvider, uint penalty, bytes32 quoteHash);\n event BridgeCapExceeded(bytes32 quoteHash, int256 errorCode);\n event BalanceIncrease(address dest, uint amount);\n event BalanceDecrease(address dest, uint amount);\n event Refund(address dest, uint amount, bool success, bytes32 quoteHash);\n event PegOut(\n address from,\n uint256 amount,\n bytes32 quotehash,\n uint processed\n );\n event PegOutRefunded(bytes32 indexed quoteHash);\n event PegOutDeposit(\n bytes32 indexed quoteHash,\n address indexed sender,\n uint256 amount,\n uint256 timestamp\n );\n event PegOutUserRefunded(\n bytes32 indexed quoteHash,\n uint256 value,\n address userAddress\n );\n\n Bridge public bridge;\n mapping(address => uint256) private balances;\n mapping(address => uint256) private collateral;\n mapping(address => uint256) private pegoutCollateral;\n mapping(uint => LiquidityProvider) private liquidityProviders;\n mapping(bytes32 => Registry) private callRegistry;\n mapping(address => uint256) private resignationBlockNum;\n\n uint256 private minCollateral;\n uint256 private minPegIn;\n\n uint32 private rewardP;\n uint32 private resignDelayInBlocks;\n uint private dust;\n uint public providerId;\n\n uint private btcBlockTime;\n bool private mainnet;\n\n mapping(bytes32 => uint8) private processedQuotes;\n mapping(bytes32 => Quotes.PegOutQuote) private registeredPegoutQuotes;\n mapping(bytes32 => PegoutRecord) private pegoutRegistry;\n\n modifier onlyRegistered() {\n require(isRegistered(msg.sender), \"LBC001\");\n _;\n }\n\n modifier onlyRegisteredForPegout() {\n require(isRegisteredForPegout(msg.sender), \"LBC001\");\n _;\n }\n\n modifier onlyEoa() {\n require(tx.origin == msg.sender, \"LBC003\");\n _;\n }\n\n /**\n @param _bridgeAddress The address of the bridge contract\n @param _minimumCollateral The minimum required collateral for liquidity providers\n @param _minimumPegIn The minimum peg-in amount\n @param _rewardPercentage The percentage of the penalty fee that an honest party\n // receives when calling registerPegIn in case of a liquidity provider misbehaving\n @param _resignDelayBlocks The number of block confirmations that a liquidity\n // provider needs to wait before it can withdraw its collateral\n @param _dustThreshold Amount that is considered dust\n */\n function initialize(\n address payable _bridgeAddress,\n uint256 _minimumCollateral,\n uint256 _minimumPegIn,\n uint32 _rewardPercentage,\n uint32 _resignDelayBlocks,\n uint _dustThreshold,\n uint _btcBlockTime,\n bool _mainnet\n ) public initializer {\n require(_rewardPercentage <= 100, \"LBC004\");\n require(_minimumCollateral >= 0.03 ether, \"LBC072\");\n require(_resignDelayBlocks >= 60, \"LBC073\");\n __Ownable_init_unchained();\n bridge = Bridge(_bridgeAddress);\n minCollateral = _minimumCollateral;\n minPegIn = _minimumPegIn;\n rewardP = _rewardPercentage;\n resignDelayInBlocks = _resignDelayBlocks;\n dust = _dustThreshold;\n btcBlockTime = _btcBlockTime;\n mainnet = _mainnet;\n }\n\n modifier onlyOwnerAndProvider(uint _providerId) {\n require(\n msg.sender == owner() ||\n msg.sender == liquidityProviders[_providerId].provider,\n \"LBC005\"\n );\n _;\n }\n\n function setProviderStatus(\n uint _providerId,\n bool status\n ) public onlyOwnerAndProvider(_providerId) {\n liquidityProviders[_providerId].status = status;\n }\n\n receive() external payable {\n require(msg.sender == address(bridge), \"LBC007\");\n }\n\n function getProviderIds() external view returns (uint) {\n return providerId;\n }\n\n function getBridgeAddress() external view returns (address) {\n return address(bridge);\n }\n\n function getMinCollateral() public view returns (uint) {\n return minCollateral;\n }\n\n function getMinPegIn() external view returns (uint) {\n return minPegIn;\n }\n\n function getRewardPercentage() external view returns (uint) {\n return rewardP;\n }\n\n function getResignDelayBlocks() external view returns (uint) {\n return resignDelayInBlocks;\n }\n\n function getDustThreshold() external view returns (uint) {\n return dust;\n }\n\n function getRegisteredPegOutQuote(\n bytes32 quoteHash\n ) external view returns (Quotes.PegOutQuote memory) {\n return registeredPegoutQuotes[quoteHash];\n }\n\n function isPegOutQuoteCompleted(bytes32 quoteHash) external view returns (bool) {\n return pegoutRegistry[quoteHash].completed;\n }\n\n /**\n @dev Checks whether a liquidity provider can deliver a pegin service\n @return Whether the liquidity provider is registered and has enough locked collateral\n */\n function isOperational(address addr) external view returns (bool) {\n return isRegistered(addr) && collateral[addr] >= minCollateral;\n }\n\n /**\n @dev Checks whether a liquidity provider can deliver a pegout service\n @return Whether the liquidity provider is registered and has enough locked collateral\n */\n function isOperationalForPegout(address addr) external view returns (bool) {\n return\n isRegisteredForPegout(addr) &&\n pegoutCollateral[addr] >= minCollateral;\n }\n\n /**\n @dev Registers msg.sender as a liquidity provider with msg.value as collateral\n */\n function register(\n string memory _name,\n string memory _apiBaseUrl,\n bool _status,\n string memory _providerType\n ) external payable onlyEoa returns (uint) {\n //require(collateral[msg.sender] == 0, \"Already registered\");\n validateRegisterParameters(\n _name,\n _apiBaseUrl,\n _providerType\n );\n\n require(collateral[msg.sender] == 0 && pegoutCollateral[msg.sender] == 0, \"LBC070\");\n require(\n resignationBlockNum[msg.sender] == 0,\n \"LBC009\"\n );\n\n if (keccak256(abi.encodePacked(_providerType)) == keccak256(abi.encodePacked(\"pegin\"))) {\n require(msg.value >= minCollateral, \"LBC008\");\n collateral[msg.sender] = msg.value;\n } else if (keccak256(abi.encodePacked(_providerType)) == keccak256(abi.encodePacked(\"pegout\"))) {\n require(msg.value >= minCollateral, \"LBC008\");\n pegoutCollateral[msg.sender] = msg.value;\n } else {\n require(msg.value >= minCollateral * 2, \"LBC008\");\n uint halfMsgValue = msg.value / 2;\n collateral[msg.sender] = msg.value % 2 == 0 ? halfMsgValue : halfMsgValue + 1;\n pegoutCollateral[msg.sender] = halfMsgValue;\n }\n\n providerId++;\n liquidityProviders[providerId] = LiquidityProvider({\n id: providerId,\n provider: msg.sender,\n name: _name,\n apiBaseUrl: _apiBaseUrl,\n status: _status,\n providerType: _providerType\n });\n emit Register(providerId, msg.sender, msg.value);\n return (providerId);\n }\n\n /**\n @dev Validates input parameters for the register function\n */\n function validateRegisterParameters(\n string memory _name,\n string memory _apiBaseUrl,\n string memory _providerType\n ) internal pure {\n require(bytes(_name).length > 0, \"LBC010\");\n require(\n bytes(_apiBaseUrl).length > 0,\n \"LBC017\"\n );\n\n // Check if _providerType is one of the valid strings\n require(\n keccak256(abi.encodePacked(_providerType)) ==\n keccak256(abi.encodePacked(\"pegin\")) ||\n keccak256(abi.encodePacked(_providerType)) ==\n keccak256(abi.encodePacked(\"pegout\")) ||\n keccak256(abi.encodePacked(_providerType)) ==\n keccak256(abi.encodePacked(\"both\")),\n \"LBC018\"\n );\n }\n\n function getProviders(\n uint[] memory providerIds\n ) external view returns (LiquidityProvider[] memory) {\n LiquidityProvider[] memory providersToReturn = new LiquidityProvider[](\n providerIds.length\n );\n uint count = 0;\n\n for (uint i = 0; i < providerIds.length; i++) {\n uint id = providerIds[i];\n if (\n (isRegistered(liquidityProviders[id].provider) ||\n isRegisteredForPegout(liquidityProviders[id].provider)) &&\n liquidityProviders[id].status\n ) {\n providersToReturn[count] = liquidityProviders[id];\n count++;\n }\n }\n return providersToReturn;\n }\n\n /**\n @dev Increases the amount of collateral of the sender\n */\n function addCollateral() external payable onlyRegistered {\n collateral[msg.sender] += msg.value;\n emit CollateralIncrease(msg.sender, msg.value);\n }\n\n function addPegoutCollateral() external payable onlyRegisteredForPegout {\n pegoutCollateral[msg.sender] += msg.value;\n emit PegoutCollateralIncrease(msg.sender, msg.value);\n }\n\n /**\n @dev Increases the balance of the sender\n */\n function deposit() external payable onlyRegistered {\n increaseBalance(msg.sender, msg.value);\n }\n\n /**\n @dev Used to withdraw funds\n @param amount The amount to withdraw\n */\n function withdraw(uint256 amount) external {\n require(balances[msg.sender] >= amount, \"LBC019\");\n balances[msg.sender] -= amount;\n (bool success,) = msg.sender.call{value: amount}(\"\");\n require(success, \"LBC020\");\n emit Withdrawal(msg.sender, amount);\n }\n\n /**\n @dev Used to withdraw the locked collateral\n */\n function withdrawCollateral() external {\n require(resignationBlockNum[msg.sender] > 0, \"LBC021\");\n require(\n block.number - resignationBlockNum[msg.sender] >=\n resignDelayInBlocks,\n \"LBC022\"\n );\n uint amount = collateral[msg.sender];\n collateral[msg.sender] = 0;\n resignationBlockNum[msg.sender] = 0;\n (bool success,) = msg.sender.call{value: amount}(\"\");\n require(success, \"LBC020\");\n emit WithdrawCollateral(msg.sender, amount);\n }\n\n function withdrawPegoutCollateral() external {\n require(resignationBlockNum[msg.sender] > 0, \"LBC021\");\n require(\n block.number - resignationBlockNum[msg.sender] >=\n resignDelayInBlocks,\n \"LBC022\"\n );\n uint amount = pegoutCollateral[msg.sender];\n pegoutCollateral[msg.sender] = 0;\n resignationBlockNum[msg.sender] = 0;\n (bool success,) = msg.sender.call{value: amount}(\"\");\n require(success, \"LBC020\");\n emit PegoutWithdrawCollateral(msg.sender, amount);\n }\n\n /**\n @dev Used to resign as a liquidity provider\n */\n function resign() external onlyRegistered {\n require(resignationBlockNum[msg.sender] == 0, \"LBC023\");\n resignationBlockNum[msg.sender] = block.number;\n emit Resigned(msg.sender);\n }\n\n /**\n @dev Returns the amount of collateral of a liquidity provider\n @param addr The address of the liquidity provider\n @return The amount of locked collateral\n */\n function getCollateral(address addr) external view returns (uint256) {\n return collateral[addr];\n }\n\n function getPegoutCollateral(address addr) external view returns (uint256) {\n return pegoutCollateral[addr];\n }\n\n /**\n @dev Returns the amount of funds of a liquidity provider\n @param addr The address of the liquidity provider\n @return The balance of the liquidity provider\n */\n function getBalance(address addr) external view returns (uint256) {\n return balances[addr];\n }\n\n /**\n @dev Performs a call on behalf of a user\n @param quote The quote that identifies the service\n @return Boolean indicating whether the call was successful\n */\n function callForUser(\n Quotes.PeginQuote memory quote\n ) external payable onlyRegistered nonReentrant returns (bool) {\n require(\n msg.sender == quote.liquidityProviderRskAddress,\n \"LBC024\"\n );\n require(\n balances[quote.liquidityProviderRskAddress] + msg.value >=\n quote.value,\n \"LBC019\"\n );\n\n bytes32 quoteHash = validateAndHashQuote(quote);\n require(\n processedQuotes[quoteHash] == UNPROCESSED_QUOTE_CODE,\n \"LBC025\"\n );\n\n increaseBalance(quote.liquidityProviderRskAddress, msg.value);\n\n // This check ensures that the call cannot be performed with less gas than the agreed amount\n require(\n gasleft() >= quote.gasLimit + MAX_CALL_GAS_COST,\n \"LBC026\"\n );\n (bool success,) = quote.contractAddress.call{\n gas: quote.gasLimit,\n value: quote.value\n }(quote.data);\n\n require(block.timestamp <= type(uint32).max, \"LBC027\");\n callRegistry[quoteHash].timestamp = uint32(block.timestamp);\n\n if (success) {\n callRegistry[quoteHash].success = true;\n decreaseBalance(quote.liquidityProviderRskAddress, quote.value);\n }\n emit CallForUser(\n msg.sender,\n quote.contractAddress,\n quote.gasLimit,\n quote.value,\n quote.data,\n success,\n quoteHash\n );\n processedQuotes[quoteHash] = CALL_DONE_CODE;\n return success;\n }\n\n /**\n @dev Registers a peg-in transaction with the bridge and pays to the involved parties\n @param quote The quote of the service\n @param signature The signature of the quote\n @param btcRawTransaction The peg-in transaction\n @param partialMerkleTree The merkle tree path that proves transaction inclusion\n @param height The block that contains the peg-in transaction\n @return The total peg-in amount received from the bridge contract or an error code\n */\n function registerPegIn(\n Quotes.PeginQuote memory quote,\n bytes memory signature,\n bytes memory btcRawTransaction,\n bytes memory partialMerkleTree,\n uint256 height\n ) public nonReentrant returns (int256) {\n bytes32 quoteHash = validateAndHashQuote(quote);\n\n // TODO: allow multiple registerPegIns for the same quote with different transactions\n require(\n processedQuotes[quoteHash] <= CALL_DONE_CODE,\n \"LBC028\"\n );\n require(\n SignatureValidator.verify(\n quote.liquidityProviderRskAddress,\n quoteHash,\n signature\n ),\n \"LBC029\"\n );\n require(height < uint256(int256(type(int32).max)), \"LBC030\");\n\n int256 transferredAmountOrErrorCode = registerBridge(\n quote,\n btcRawTransaction,\n partialMerkleTree,\n height,\n quoteHash\n );\n\n require(\n transferredAmountOrErrorCode !=\n BRIDGE_UNPROCESSABLE_TX_VALIDATIONS_ERROR,\n \"LBC031\"\n );\n require(\n transferredAmountOrErrorCode !=\n BRIDGE_UNPROCESSABLE_TX_ALREADY_PROCESSED_ERROR_CODE,\n \"LBC032\"\n );\n require(\n transferredAmountOrErrorCode !=\n BRIDGE_UNPROCESSABLE_TX_VALUE_ZERO_ERROR,\n \"LBC033\"\n );\n require(\n transferredAmountOrErrorCode !=\n BRIDGE_UNPROCESSABLE_TX_UTXO_AMOUNT_SENT_BELOW_MINIMUM_ERROR,\n \"LBC034\"\n );\n require(\n transferredAmountOrErrorCode != BRIDGE_GENERIC_ERROR,\n \"LBC035\"\n );\n require(\n transferredAmountOrErrorCode > 0 ||\n transferredAmountOrErrorCode == BRIDGE_REFUNDED_LP_ERROR_CODE ||\n transferredAmountOrErrorCode == BRIDGE_REFUNDED_USER_ERROR_CODE,\n \"LBC036\"\n );\n\n if (\n shouldPenalizeLP(\n quote,\n transferredAmountOrErrorCode,\n callRegistry[quoteHash].timestamp,\n height\n )\n ) {\n uint penalizationAmount = min(\n quote.penaltyFee,\n collateral[quote.liquidityProviderRskAddress]\n ); // prevent underflow when collateral is less than penalty fee.\n collateral[quote.liquidityProviderRskAddress] -= penalizationAmount;\n emit Penalized(\n quote.liquidityProviderRskAddress,\n penalizationAmount,\n quoteHash\n );\n\n // pay reward to sender\n uint256 punisherReward = (penalizationAmount * rewardP) / 100;\n increaseBalance(msg.sender, punisherReward);\n }\n\n if (\n transferredAmountOrErrorCode == BRIDGE_REFUNDED_LP_ERROR_CODE ||\n transferredAmountOrErrorCode == BRIDGE_REFUNDED_USER_ERROR_CODE\n ) {\n // Bridge cap exceeded\n processedQuotes[quoteHash] = PROCESSED_QUOTE_CODE;\n delete callRegistry[quoteHash];\n emit BridgeCapExceeded(quoteHash, transferredAmountOrErrorCode);\n return transferredAmountOrErrorCode;\n }\n\n // the amount is safely assumed positive because it's already been\n // validated in lines 287/298 there's no (negative) error code being returned by the bridge.\n uint transferredAmount = uint(transferredAmountOrErrorCode);\n\n Quotes.checkAgreedAmount(quote, transferredAmount);\n\n if (callRegistry[quoteHash].timestamp > 0) {\n uint refundAmount;\n\n if (callRegistry[quoteHash].success) {\n refundAmount = min(\n transferredAmount,\n quote.value + quote.callFee\n );\n } else {\n refundAmount = min(transferredAmount, quote.callFee);\n }\n increaseBalance(quote.liquidityProviderRskAddress, refundAmount);\n uint remainingAmount = transferredAmount - refundAmount;\n\n if (remainingAmount > dust) {\n // refund rskRefundAddress, if remaining amount greater than dust\n (bool success,) = quote.rskRefundAddress.call{\n gas: MAX_REFUND_GAS_LIMIT,\n value: remainingAmount\n }(\"\");\n emit Refund(\n quote.rskRefundAddress,\n remainingAmount,\n success,\n quoteHash\n );\n\n if (!success) {\n // transfer funds to LP instead, if for some reason transfer to rskRefundAddress was unsuccessful\n increaseBalance(\n quote.liquidityProviderRskAddress,\n remainingAmount\n );\n }\n }\n } else {\n uint refundAmount = transferredAmount;\n\n if (quote.callOnRegister && refundAmount >= quote.value) {\n (bool callSuccess,) = quote.contractAddress.call{\n gas: quote.gasLimit,\n value: quote.value\n }(quote.data);\n emit CallForUser(\n msg.sender,\n quote.contractAddress,\n quote.gasLimit,\n quote.value,\n quote.data,\n callSuccess,\n quoteHash\n );\n\n if (callSuccess) {\n refundAmount -= quote.value;\n }\n }\n if (refundAmount > dust) {\n // refund rskRefundAddress, if refund amount greater than dust\n (bool success,) = quote.rskRefundAddress.call{\n gas: MAX_REFUND_GAS_LIMIT,\n value: refundAmount\n }(\"\");\n emit Refund(\n quote.rskRefundAddress,\n refundAmount,\n success,\n quoteHash\n );\n }\n }\n processedQuotes[quoteHash] = PROCESSED_QUOTE_CODE;\n delete callRegistry[quoteHash];\n emit PegInRegistered(quoteHash, transferredAmountOrErrorCode);\n return transferredAmountOrErrorCode;\n }\n\n function depositPegout( // TODO convert to calldata when contract size issues are fixed\n Quotes.PegOutQuote memory quote,\n bytes memory signature\n ) external payable {\n require(isRegisteredForPegout(quote.lpRskAddress), \"LBC037\");\n require(quote.value + quote.callFee <= msg.value, \"LBC063\");\n require(block.timestamp <= quote.depositDateLimit, \"LBC065\");\n require(block.timestamp <= quote.expireDate, \"LBC046\");\n require(block.number <= quote.expireBlock, \"LBC047\");\n bytes32 quoteHash = hashPegoutQuote(quote);\n require(\n SignatureValidator.verify(quote.lpRskAddress, quoteHash, signature),\n \"LBC029\"\n );\n\n Quotes.PegOutQuote storage registeredQuote = registeredPegoutQuotes[quoteHash];\n\n require(pegoutRegistry[quoteHash].completed == false, \"LBC064\");\n require(registeredQuote.lbcAddress == address(0), \"LBC028\");\n registeredPegoutQuotes[quoteHash] = quote;\n pegoutRegistry[quoteHash].depositTimestamp = block.timestamp;\n emit PegOutDeposit(quoteHash, msg.sender, msg.value, block.timestamp);\n }\n\n function refundUserPegOut(\n bytes32 quoteHash\n ) public nonReentrant {\n Quotes.PegOutQuote storage quote = registeredPegoutQuotes[quoteHash];\n\n require(quote.lbcAddress != address(0), \"LBC042\");\n require(\n block.timestamp > quote.expireDate &&\n block.number > quote.expireBlock,\n \"LBC041\"\n );\n\n uint valueToTransfer = quote.value + quote.callFee;\n address addressToTransfer = quote.rskRefundAddress;\n\n uint penalty = min(quote.penaltyFee, pegoutCollateral[quote.lpRskAddress]);\n pegoutCollateral[quote.lpRskAddress] -= penalty;\n\n emit Penalized(quote.lpRskAddress, penalty, quoteHash);\n emit PegOutUserRefunded(\n quoteHash,\n valueToTransfer,\n quote.rskRefundAddress\n );\n\n delete registeredPegoutQuotes[quoteHash];\n pegoutRegistry[quoteHash].completed = true;\n\n (bool sent,) = addressToTransfer.call{value: valueToTransfer}(\"\");\n require(sent, \"LBC044\");\n }\n\n function refundPegOut(\n bytes32 quoteHash,\n bytes memory btcTx,\n bytes32 btcBlockHeaderHash,\n uint256 partialMerkleTree,\n bytes32[] memory merkleBranchHashes\n ) public nonReentrant onlyRegisteredForPegout {\n require(pegoutRegistry[quoteHash].completed == false, \"LBC064\");\n Quotes.PegOutQuote storage quote = registeredPegoutQuotes[quoteHash];\n require(quote.lbcAddress != address(0), \"LBC042\");\n BtcUtils.TxRawOutput[] memory outputs = BtcUtils.getOutputs(btcTx);\n bytes32 txQuoteHash = abi.decode(BtcUtils.parseNullDataScript(outputs[QUOTE_HASH_OUTPUT].pkScript), (bytes32));\n require(quoteHash == txQuoteHash, \"LBC069\");\n require(msg.sender == quote.lpRskAddress, \"LBC048\");\n require(\n bridge.getBtcTransactionConfirmations(\n BtcUtils.hashBtcTx(btcTx),\n btcBlockHeaderHash,\n partialMerkleTree,\n merkleBranchHashes\n ) >= int(uint256(quote.transferConfirmations)),\n \"LBC049\"\n );\n require(quote.value <= outputs[PAY_TO_ADDRESS_OUTPUT].value * (10**10), \"LBC067\"); // satoshi to wei\n bytes memory btcTxDestination = BtcUtils.parsePayToPubKeyHash(outputs[PAY_TO_ADDRESS_OUTPUT]\n .pkScript, mainnet);\n require(keccak256(quote.deposityAddress) == keccak256(btcTxDestination), \"LBC068\");\n\n if (\n shouldPenalizePegOutLP(\n quote,\n txQuoteHash,\n btcBlockHeaderHash\n )\n ) {\n uint penalty = min(\n quote.penaltyFee,\n pegoutCollateral[quote.lpRskAddress]\n );\n pegoutCollateral[quote.lpRskAddress] -= penalty;\n emit Penalized(quote.lpRskAddress, penalty, txQuoteHash);\n }\n\n (bool sent,) = quote.lpRskAddress.call{\n value: quote.value + quote.callFee\n }(\"\");\n require(sent, \"LBC050\");\n\n delete registeredPegoutQuotes[txQuoteHash];\n pegoutRegistry[txQuoteHash].completed = true;\n emit PegOutRefunded(txQuoteHash);\n }\n\n function validatePeginDepositAddress(\n Quotes.PeginQuote memory quote,\n bytes memory depositAddress\n ) external view returns (bool) {\n bytes32 derivationValue = keccak256(\n bytes.concat(\n hashQuote(quote),\n quote.btcRefundAddress,\n bytes20(quote.lbcAddress),\n quote.liquidityProviderBtcAddress\n )\n );\n bytes memory flyoverRedeemScript = bytes.concat(\n hex\"20\",\n derivationValue,\n hex\"75\",\n bridge.getActivePowpegRedeemScript()\n );\n return BtcUtils.validateP2SHAdress(depositAddress, flyoverRedeemScript, mainnet);\n }\n\n /**\n @dev Calculates hash of a quote. Note: besides calculation this function also validates the quote.\n @param quote The quote of the service\n @return The hash of a quote\n */\n function hashQuote(Quotes.PeginQuote memory quote) public view returns (bytes32) {\n return validateAndHashQuote(quote);\n }\n\n function hashPegoutQuote(\n Quotes.PegOutQuote memory quote\n ) public view returns (bytes32) {\n return validateAndHashPegOutQuote(quote);\n }\n\n function validateAndHashQuote(\n Quotes.PeginQuote memory quote\n ) private view returns (bytes32) {\n require(address(this) == quote.lbcAddress, \"LBC051\");\n require(\n address(bridge) != quote.contractAddress,\n \"LBC052\"\n );\n require(\n quote.btcRefundAddress.length == 21 ||\n quote.btcRefundAddress.length == 33,\n \"LBC053\"\n );\n require(\n quote.liquidityProviderBtcAddress.length == 21,\n \"LBC054\"\n );\n require(\n quote.value + quote.callFee >= minPegIn,\n \"LBC055\"\n );\n require(\n type(uint32).max >= uint64(quote.agreementTimestamp) + uint64(quote.timeForDeposit),\n \"LBC071\"\n );\n\n return keccak256(Quotes.encodeQuote(quote));\n }\n\n function validateAndHashPegOutQuote(\n Quotes.PegOutQuote memory quote\n ) private view returns (bytes32) {\n require(address(this) == quote.lbcAddress, \"LBC056\");\n\n return keccak256(Quotes.encodePegOutQuote(quote));\n }\n\n function min(uint a, uint b) private pure returns (uint) {\n return a < b ? a : b;\n }\n\n // IMPORTANT: These methods should remain private at all costs\n function increaseBalance(address dest, uint amount) private {\n balances[dest] += amount;\n emit BalanceIncrease(dest, amount);\n }\n\n function decreaseBalance(address dest, uint amount) private {\n balances[dest] -= amount;\n emit BalanceDecrease(dest, amount);\n }\n\n /**\n @dev Checks if a liquidity provider is registered\n @param addr The address of the liquidity provider\n @return Boolean indicating whether the liquidity provider is registered\n */\n function isRegistered(address addr) private view returns (bool) {\n return collateral[addr] > 0 && resignationBlockNum[addr] == 0;\n }\n\n function isRegisteredForPegout(address addr) private view returns (bool) {\n return pegoutCollateral[addr] > 0 && resignationBlockNum[addr] == 0;\n }\n\n /**\n @dev Registers a transaction with the bridge contract\n @param quote The quote of the service\n @param btcRawTransaction The peg-in transaction\n @param partialMerkleTree The merkle tree path that proves transaction inclusion\n @param height The block that contains the transaction\n @return The total peg-in amount received from the bridge contract or an error code\n */\n function registerBridge(\n Quotes.PeginQuote memory quote,\n bytes memory btcRawTransaction,\n bytes memory partialMerkleTree,\n uint256 height,\n bytes32 derivationHash\n ) private returns (int256) {\n return\n bridge.registerFastBridgeBtcTransaction(\n btcRawTransaction,\n height,\n partialMerkleTree,\n derivationHash,\n quote.btcRefundAddress,\n payable(this),\n quote.liquidityProviderBtcAddress,\n callRegistry[derivationHash].timestamp > 0 && callRegistry[derivationHash].success\n );\n }\n\n /**\n @dev Checks if a liquidity provider should be penalized\n @param quote The quote of the service\n @param amount The transferred amount or an error code\n @param callTimestamp The time that the liquidity provider called callForUser\n @param height The block height where the peg-in transaction is included\n @return Boolean indicating whether the penalty applies\n */\n function shouldPenalizeLP(\n Quotes.PeginQuote memory quote,\n int256 amount,\n uint256 callTimestamp,\n uint256 height\n ) private view returns (bool) {\n // do not penalize if deposit amount is insufficient\n if (amount > 0 && uint256(amount) < quote.value + quote.callFee) {\n return false;\n }\n\n bytes memory firstConfirmationHeader = bridge\n .getBtcBlockchainBlockHeaderByHeight(height);\n require(firstConfirmationHeader.length > 0, \"Invalid block height\");\n\n uint256 firstConfirmationTimestamp = getBtcBlockTimestamp(\n firstConfirmationHeader\n );\n\n // do not penalize if deposit was not made on time\n // prevent overflow when collateral is less than penalty fee.\n uint timeLimit = quote.agreementTimestamp + quote.timeForDeposit;\n if (firstConfirmationTimestamp > timeLimit) {\n return false;\n }\n\n // penalize if call was not made\n if (callTimestamp == 0) {\n return true;\n }\n\n bytes memory nConfirmationsHeader = bridge\n .getBtcBlockchainBlockHeaderByHeight(\n height + quote.depositConfirmations - 1\n );\n require(nConfirmationsHeader.length > 0, \"LBC058\");\n\n uint256 nConfirmationsTimestamp = getBtcBlockTimestamp(\n nConfirmationsHeader\n );\n\n // penalize if the call was not made on time\n if (callTimestamp > nConfirmationsTimestamp + quote.callTime) {\n return true;\n }\n return false;\n }\n\n function shouldPenalizePegOutLP(\n Quotes.PegOutQuote memory quote,\n bytes32 quoteHash,\n bytes32 blockHash\n ) private view returns (bool) {\n bytes memory firstConfirmationHeader = bridge.getBtcBlockchainBlockHeaderByHash(blockHash);\n require(firstConfirmationHeader.length > 0, \"LBC059\");\n\n uint256 firstConfirmationTimestamp = getBtcBlockTimestamp(firstConfirmationHeader);\n\n // penalize if the transfer was not made on time\n if (firstConfirmationTimestamp > pegoutRegistry[quoteHash].depositTimestamp +\n quote.transferTime + btcBlockTime) {\n return true;\n }\n\n // penalize if LP is refunding after expiration\n if (block.timestamp > quote.expireDate || block.number > quote.expireBlock) {\n return true;\n }\n\n return false;\n }\n\n /**\n @dev Gets the timestamp of a Bitcoin block header\n @param header The block header\n @return The timestamp of the block header\n */\n function getBtcBlockTimestamp(\n bytes memory header\n ) public pure returns (uint256) {\n // bitcoin header is 80 bytes and timestamp is 4 bytes from byte 68 to byte 71 (both inclusive)\n require(header.length == 80, \"LBC061\");\n\n return sliceUint32FromLSB(header, 68);\n }\n\n // bytes must have at least 28 bytes before the uint32\n function sliceUint32FromLSB(\n bytes memory bs,\n uint offset\n ) internal pure returns (uint32) {\n require(bs.length >= offset + 4, \"LBC062\");\n\n return\n uint32(uint8(bs[offset])) |\n (uint32(uint8(bs[offset + 1])) << 8) |\n (uint32(uint8(bs[offset + 2])) << 16) |\n (uint32(uint8(bs[offset + 3])) << 24);\n }\n}\n", - "sourcePath": "/Users/luischavez/iov/liquidity-bridge-contract/contracts/LiquidityBridgeContract.sol", - "ast": { - "absolutePath": "project:/contracts/LiquidityBridgeContract.sol", - "exportedSymbols": { - "Bridge": [ - 4173 - ], - "BtcUtils": [ - 3743 - ], - "ContextUpgradeable": [ - 767 - ], - "Initializable": [ - 301 - ], - "LiquidityBridgeContract": [ - 7898 - ], - "OpCodes": [ - 3770 - ], - "OwnableUpgradeable": [ - 132 - ], - "Quotes": [ - 11190 - ], - "ReentrancyGuardUpgradeable": [ - 386 - ], - "SignatureValidator": [ - 11532 - ] - }, - "id": 7899, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 5033, - "literals": [ - "solidity", - "^", - "0.8", - ".18" - ], - "nodeType": "PragmaDirective", - "src": "32:24:21" - }, - { - "id": 5034, - "literals": [ - "experimental", - "ABIEncoderV2" - ], - "nodeType": "PragmaDirective", - "src": "57:33:21" - }, - { - "absolutePath": "project:/contracts/Bridge.sol", - "file": "./Bridge.sol", - "id": 5035, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 7899, - "sourceUnit": 4174, - "src": "92:22:21", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "project:/contracts/Quotes.sol", - "file": "./Quotes.sol", - "id": 5036, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 7899, - "sourceUnit": 11191, - "src": "115:22:21", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "project:/contracts/SignatureValidator.sol", - "file": "./SignatureValidator.sol", - "id": 5037, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 7899, - "sourceUnit": 11533, - "src": "138:34:21", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "@rsksmart/btc-transaction-solidity-helper/contracts/BtcUtils.sol", - "file": "@rsksmart/btc-transaction-solidity-helper/contracts/BtcUtils.sol", - "id": 5038, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 7899, - "sourceUnit": 3744, - "src": "173:74:21", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol", - "file": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol", - "id": 5039, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 7899, - "sourceUnit": 133, - "src": "248:75:21", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.sol", - "file": "@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.sol", - "id": 5040, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 7899, - "sourceUnit": 387, - "src": "324:85:21", - "symbolAliases": [], - "unitAlias": "" - }, - { - "abstract": false, - "baseContracts": [ - { - "baseName": { - "id": 5042, - "name": "Initializable", - "nameLocations": [ - "515:13:21" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 301, - "src": "515:13:21" - }, - "id": 5043, - "nodeType": "InheritanceSpecifier", - "src": "515:13:21" - }, - { - "baseName": { - "id": 5044, - "name": "OwnableUpgradeable", - "nameLocations": [ - "530:18:21" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 132, - "src": "530:18:21" - }, - "id": 5045, - "nodeType": "InheritanceSpecifier", - "src": "530:18:21" - }, - { - "baseName": { - "id": 5046, - "name": "ReentrancyGuardUpgradeable", - "nameLocations": [ - "550:26:21" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 386, - "src": "550:26:21" - }, - "id": 5047, - "nodeType": "InheritanceSpecifier", - "src": "550:26:21" - } - ], - "canonicalName": "LiquidityBridgeContract", - "contractDependencies": [], - "contractKind": "contract", - "documentation": { - "id": 5041, - "nodeType": "StructuredDocumentation", - "src": "411:66:21", - "text": "@title Contract that assists with the Flyover protocol" - }, - "fullyImplemented": true, - "id": 7898, - "linearizedBaseContracts": [ - 7898, - 386, - 132, - 767, - 301 - ], - "name": "LiquidityBridgeContract", - "nameLocation": "488:23:21", - "nodeType": "ContractDefinition", - "nodes": [ - { - "constant": true, - "functionSelector": "9d79b59b", - "id": 5050, - "mutability": "constant", - "name": "MAX_CALL_GAS_COST", - "nameLocation": "606:17:21", - "nodeType": "VariableDeclaration", - "scope": 7898, - "src": "583:48:21", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - }, - "typeName": { - "id": 5048, - "name": "uint16", - "nodeType": "ElementaryTypeName", - "src": "583:6:21", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - "value": { - "hexValue": "3335303030", - "id": 5049, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "626:5:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_35000_by_1", - "typeString": "int_const 35000" - }, - "value": "35000" - }, - "visibility": "public" - }, - { - "constant": true, - "functionSelector": "e1de16c6", - "id": 5053, - "mutability": "constant", - "name": "MAX_REFUND_GAS_LIMIT", - "nameLocation": "660:20:21", - "nodeType": "VariableDeclaration", - "scope": 7898, - "src": "637:50:21", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - }, - "typeName": { - "id": 5051, - "name": "uint16", - "nodeType": "ElementaryTypeName", - "src": "637:6:21", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - "value": { - "hexValue": "32333030", - "id": 5052, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "683:4:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_2300_by_1", - "typeString": "int_const 2300" - }, - "value": "2300" - }, - "visibility": "public" - }, - { - "constant": true, - "functionSelector": "9cd6557f", - "id": 5056, - "mutability": "constant", - "name": "UNPROCESSED_QUOTE_CODE", - "nameLocation": "716:22:21", - "nodeType": "VariableDeclaration", - "scope": 7898, - "src": "694:48:21", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "typeName": { - "id": 5054, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "694:5:21", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "value": { - "hexValue": "30", - "id": 5055, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "741:1:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "visibility": "public" - }, - { - "constant": true, - "functionSelector": "04ade855", - "id": 5059, - "mutability": "constant", - "name": "CALL_DONE_CODE", - "nameLocation": "770:14:21", - "nodeType": "VariableDeclaration", - "scope": 7898, - "src": "748:40:21", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "typeName": { - "id": 5057, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "748:5:21", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "value": { - "hexValue": "31", - "id": 5058, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "787:1:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "visibility": "public" - }, - { - "constant": true, - "functionSelector": "0a7bf57a", - "id": 5062, - "mutability": "constant", - "name": "PROCESSED_QUOTE_CODE", - "nameLocation": "816:20:21", - "nodeType": "VariableDeclaration", - "scope": 7898, - "src": "794:46:21", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "typeName": { - "id": 5060, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "794:5:21", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "value": { - "hexValue": "32", - "id": 5061, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "839:1:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_2_by_1", - "typeString": "int_const 2" - }, - "value": "2" - }, - "visibility": "public" - }, - { - "constant": true, - "functionSelector": "e8fcce71", - "id": 5066, - "mutability": "constant", - "name": "BRIDGE_REFUNDED_USER_ERROR_CODE", - "nameLocation": "869:31:21", - "nodeType": "VariableDeclaration", - "scope": 7898, - "src": "847:61:21", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int16", - "typeString": "int16" - }, - "typeName": { - "id": 5063, - "name": "int16", - "nodeType": "ElementaryTypeName", - "src": "847:5:21", - "typeDescriptions": { - "typeIdentifier": "t_int16", - "typeString": "int16" - } - }, - "value": { - "id": 5065, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "-", - "prefix": true, - "src": "903:5:21", - "subExpression": { - "hexValue": "313030", - "id": 5064, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "905:3:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_100_by_1", - "typeString": "int_const 100" - }, - "value": "100" - }, - "typeDescriptions": { - "typeIdentifier": "t_rational_minus_100_by_1", - "typeString": "int_const -100" - } - }, - "visibility": "public" - }, - { - "constant": true, - "functionSelector": "e30e6ea3", - "id": 5070, - "mutability": "constant", - "name": "BRIDGE_REFUNDED_LP_ERROR_CODE", - "nameLocation": "936:29:21", - "nodeType": "VariableDeclaration", - "scope": 7898, - "src": "914:59:21", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int16", - "typeString": "int16" - }, - "typeName": { - "id": 5067, - "name": "int16", - "nodeType": "ElementaryTypeName", - "src": "914:5:21", - "typeDescriptions": { - "typeIdentifier": "t_int16", - "typeString": "int16" - } - }, - "value": { - "id": 5069, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "-", - "prefix": true, - "src": "968:5:21", - "subExpression": { - "hexValue": "323030", - "id": 5068, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "970:3:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_200_by_1", - "typeString": "int_const 200" - }, - "value": "200" - }, - "typeDescriptions": { - "typeIdentifier": "t_rational_minus_200_by_1", - "typeString": "int_const -200" - } - }, - "visibility": "public" - }, - { - "constant": true, - "functionSelector": "ae76ce86", - "id": 5074, - "mutability": "constant", - "name": "BRIDGE_UNPROCESSABLE_TX_NOT_CONTRACT_ERROR_CODE", - "nameLocation": "1001:47:21", - "nodeType": "VariableDeclaration", - "scope": 7898, - "src": "979:77:21", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int16", - "typeString": "int16" - }, - "typeName": { - "id": 5071, - "name": "int16", - "nodeType": "ElementaryTypeName", - "src": "979:5:21", - "typeDescriptions": { - "typeIdentifier": "t_int16", - "typeString": "int16" - } - }, - "value": { - "id": 5073, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "-", - "prefix": true, - "src": "1051:5:21", - "subExpression": { - "hexValue": "333030", - "id": 5072, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1053:3:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_300_by_1", - "typeString": "int_const 300" - }, - "value": "300" - }, - "typeDescriptions": { - "typeIdentifier": "t_rational_minus_300_by_1", - "typeString": "int_const -300" - } - }, - "visibility": "public" - }, - { - "constant": true, - "functionSelector": "8d597939", - "id": 5078, - "mutability": "constant", - "name": "BRIDGE_UNPROCESSABLE_TX_INVALID_SENDER_ERROR_CODE", - "nameLocation": "1084:49:21", - "nodeType": "VariableDeclaration", - "scope": 7898, - "src": "1062:79:21", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int16", - "typeString": "int16" - }, - "typeName": { - "id": 5075, - "name": "int16", - "nodeType": "ElementaryTypeName", - "src": "1062:5:21", - "typeDescriptions": { - "typeIdentifier": "t_int16", - "typeString": "int16" - } - }, - "value": { - "id": 5077, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "-", - "prefix": true, - "src": "1136:5:21", - "subExpression": { - "hexValue": "333031", - "id": 5076, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1138:3:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_301_by_1", - "typeString": "int_const 301" - }, - "value": "301" - }, - "typeDescriptions": { - "typeIdentifier": "t_rational_minus_301_by_1", - "typeString": "int_const -301" - } - }, - "visibility": "public" - }, - { - "constant": true, - "functionSelector": "a93bb247", - "id": 5082, - "mutability": "constant", - "name": "BRIDGE_UNPROCESSABLE_TX_ALREADY_PROCESSED_ERROR_CODE", - "nameLocation": "1169:52:21", - "nodeType": "VariableDeclaration", - "scope": 7898, - "src": "1147:82:21", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int16", - "typeString": "int16" - }, - "typeName": { - "id": 5079, - "name": "int16", - "nodeType": "ElementaryTypeName", - "src": "1147:5:21", - "typeDescriptions": { - "typeIdentifier": "t_int16", - "typeString": "int16" - } - }, - "value": { - "id": 5081, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "-", - "prefix": true, - "src": "1224:5:21", - "subExpression": { - "hexValue": "333032", - "id": 5080, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1226:3:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_302_by_1", - "typeString": "int_const 302" - }, - "value": "302" - }, - "typeDescriptions": { - "typeIdentifier": "t_rational_minus_302_by_1", - "typeString": "int_const -302" - } - }, - "visibility": "public" - }, - { - "constant": true, - "functionSelector": "c525cdd8", - "id": 5086, - "mutability": "constant", - "name": "BRIDGE_UNPROCESSABLE_TX_VALIDATIONS_ERROR", - "nameLocation": "1257:41:21", - "nodeType": "VariableDeclaration", - "scope": 7898, - "src": "1235:71:21", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int16", - "typeString": "int16" - }, - "typeName": { - "id": 5083, - "name": "int16", - "nodeType": "ElementaryTypeName", - "src": "1235:5:21", - "typeDescriptions": { - "typeIdentifier": "t_int16", - "typeString": "int16" - } - }, - "value": { - "id": 5085, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "-", - "prefix": true, - "src": "1301:5:21", - "subExpression": { - "hexValue": "333033", - "id": 5084, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1303:3:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_303_by_1", - "typeString": "int_const 303" - }, - "value": "303" - }, - "typeDescriptions": { - "typeIdentifier": "t_rational_minus_303_by_1", - "typeString": "int_const -303" - } - }, - "visibility": "public" - }, - { - "constant": true, - "functionSelector": "cfb92f0a", - "id": 5090, - "mutability": "constant", - "name": "BRIDGE_UNPROCESSABLE_TX_VALUE_ZERO_ERROR", - "nameLocation": "1334:40:21", - "nodeType": "VariableDeclaration", - "scope": 7898, - "src": "1312:70:21", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int16", - "typeString": "int16" - }, - "typeName": { - "id": 5087, - "name": "int16", - "nodeType": "ElementaryTypeName", - "src": "1312:5:21", - "typeDescriptions": { - "typeIdentifier": "t_int16", - "typeString": "int16" - } - }, - "value": { - "id": 5089, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "-", - "prefix": true, - "src": "1377:5:21", - "subExpression": { - "hexValue": "333034", - "id": 5088, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1379:3:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_304_by_1", - "typeString": "int_const 304" - }, - "value": "304" - }, - "typeDescriptions": { - "typeIdentifier": "t_rational_minus_304_by_1", - "typeString": "int_const -304" - } - }, - "visibility": "public" - }, - { - "constant": true, - "functionSelector": "418663a2", - "id": 5094, - "mutability": "constant", - "name": "BRIDGE_UNPROCESSABLE_TX_UTXO_AMOUNT_SENT_BELOW_MINIMUM_ERROR", - "nameLocation": "1410:60:21", - "nodeType": "VariableDeclaration", - "scope": 7898, - "src": "1388:94:21", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int16", - "typeString": "int16" - }, - "typeName": { - "id": 5091, - "name": "int16", - "nodeType": "ElementaryTypeName", - "src": "1388:5:21", - "typeDescriptions": { - "typeIdentifier": "t_int16", - "typeString": "int16" - } - }, - "value": { - "id": 5093, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "-", - "prefix": true, - "src": "1477:5:21", - "subExpression": { - "hexValue": "333035", - "id": 5092, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1479:3:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_305_by_1", - "typeString": "int_const 305" - }, - "value": "305" - }, - "typeDescriptions": { - "typeIdentifier": "t_rational_minus_305_by_1", - "typeString": "int_const -305" - } - }, - "visibility": "public" - }, - { - "constant": true, - "functionSelector": "ae93b67b", - "id": 5098, - "mutability": "constant", - "name": "BRIDGE_GENERIC_ERROR", - "nameLocation": "1510:20:21", - "nodeType": "VariableDeclaration", - "scope": 7898, - "src": "1488:50:21", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int16", - "typeString": "int16" - }, - "typeName": { - "id": 5095, - "name": "int16", - "nodeType": "ElementaryTypeName", - "src": "1488:5:21", - "typeDescriptions": { - "typeIdentifier": "t_int16", - "typeString": "int16" - } - }, - "value": { - "id": 5097, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "-", - "prefix": true, - "src": "1533:5:21", - "subExpression": { - "hexValue": "393030", - "id": 5096, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1535:3:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_900_by_1", - "typeString": "int_const 900" - }, - "value": "900" - }, - "typeDescriptions": { - "typeIdentifier": "t_rational_minus_900_by_1", - "typeString": "int_const -900" - } - }, - "visibility": "public" - }, - { - "constant": true, - "functionSelector": "e5b5019a", - "id": 5105, - "mutability": "constant", - "name": "MAX_UINT", - "nameLocation": "1565:8:21", - "nodeType": "VariableDeclaration", - "scope": 7898, - "src": "1544:44:21", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5099, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "1544:4:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": { - "commonType": { - "typeIdentifier": "t_rational_115792089237316195423570985008687907853269984665640564039457584007913129639935_by_1", - "typeString": "int_const 1157...(70 digits omitted)...9935" - }, - "id": 5104, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_rational_115792089237316195423570985008687907853269984665640564039457584007913129639936_by_1", - "typeString": "int_const 1157...(70 digits omitted)...9936" - }, - "id": 5102, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "leftExpression": { - "hexValue": "32", - "id": 5100, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1576:1:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_2_by_1", - "typeString": "int_const 2" - }, - "value": "2" - }, - "nodeType": "BinaryOperation", - "operator": "**", - "rightExpression": { - "hexValue": "323536", - "id": 5101, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1581:3:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_256_by_1", - "typeString": "int_const 256" - }, - "value": "256" - }, - "src": "1576:8:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_115792089237316195423570985008687907853269984665640564039457584007913129639936_by_1", - "typeString": "int_const 1157...(70 digits omitted)...9936" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "hexValue": "31", - "id": 5103, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1587:1:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "1576:12:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_115792089237316195423570985008687907853269984665640564039457584007913129639935_by_1", - "typeString": "int_const 1157...(70 digits omitted)...9935" - } - }, - "visibility": "public" - }, - { - "constant": true, - "functionSelector": "be6de4eb", - "id": 5108, - "mutability": "constant", - "name": "PAY_TO_ADDRESS_OUTPUT", - "nameLocation": "1615:21:21", - "nodeType": "VariableDeclaration", - "scope": 7898, - "src": "1594:46:21", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5106, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "1594:4:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": { - "hexValue": "30", - "id": 5107, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1639:1:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "visibility": "public" - }, - { - "constant": true, - "functionSelector": "a4a5ba50", - "id": 5111, - "mutability": "constant", - "name": "QUOTE_HASH_OUTPUT", - "nameLocation": "1667:17:21", - "nodeType": "VariableDeclaration", - "scope": 7898, - "src": "1646:42:21", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5109, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "1646:4:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": { - "hexValue": "31", - "id": 5110, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1687:1:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "visibility": "public" - }, - { - "canonicalName": "LiquidityBridgeContract.Registry", - "id": 5116, - "members": [ - { - "constant": false, - "id": 5113, - "mutability": "mutable", - "name": "timestamp", - "nameLocation": "1728:9:21", - "nodeType": "VariableDeclaration", - "scope": 5116, - "src": "1721:16:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "typeName": { - "id": 5112, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "1721:6:21", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5115, - "mutability": "mutable", - "name": "success", - "nameLocation": "1752:7:21", - "nodeType": "VariableDeclaration", - "scope": 5116, - "src": "1747:12:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 5114, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1747:4:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "name": "Registry", - "nameLocation": "1702:8:21", - "nodeType": "StructDefinition", - "scope": 7898, - "src": "1695:71:21", - "visibility": "public" - }, - { - "canonicalName": "LiquidityBridgeContract.PegoutRecord", - "id": 5121, - "members": [ - { - "constant": false, - "id": 5118, - "mutability": "mutable", - "name": "depositTimestamp", - "nameLocation": "1810:16:21", - "nodeType": "VariableDeclaration", - "scope": 5121, - "src": "1802:24:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5117, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1802:7:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5120, - "mutability": "mutable", - "name": "completed", - "nameLocation": "1841:9:21", - "nodeType": "VariableDeclaration", - "scope": 5121, - "src": "1836:14:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 5119, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1836:4:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "name": "PegoutRecord", - "nameLocation": "1779:12:21", - "nodeType": "StructDefinition", - "scope": 7898, - "src": "1772:85:21", - "visibility": "public" - }, - { - "canonicalName": "LiquidityBridgeContract.LiquidityProvider", - "id": 5134, - "members": [ - { - "constant": false, - "id": 5123, - "mutability": "mutable", - "name": "id", - "nameLocation": "1903:2:21", - "nodeType": "VariableDeclaration", - "scope": 5134, - "src": "1898:7:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5122, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "1898:4:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5125, - "mutability": "mutable", - "name": "provider", - "nameLocation": "1923:8:21", - "nodeType": "VariableDeclaration", - "scope": 5134, - "src": "1915:16:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 5124, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1915:7:21", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5127, - "mutability": "mutable", - "name": "name", - "nameLocation": "1948:4:21", - "nodeType": "VariableDeclaration", - "scope": 5134, - "src": "1941:11:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - }, - "typeName": { - "id": 5126, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1941:6:21", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5129, - "mutability": "mutable", - "name": "apiBaseUrl", - "nameLocation": "1969:10:21", - "nodeType": "VariableDeclaration", - "scope": 5134, - "src": "1962:17:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - }, - "typeName": { - "id": 5128, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1962:6:21", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5131, - "mutability": "mutable", - "name": "status", - "nameLocation": "1994:6:21", - "nodeType": "VariableDeclaration", - "scope": 5134, - "src": "1989:11:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 5130, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1989:4:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5133, - "mutability": "mutable", - "name": "providerType", - "nameLocation": "2017:12:21", - "nodeType": "VariableDeclaration", - "scope": 5134, - "src": "2010:19:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - }, - "typeName": { - "id": 5132, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2010:6:21", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "name": "LiquidityProvider", - "nameLocation": "1870:17:21", - "nodeType": "StructDefinition", - "scope": 7898, - "src": "1863:173:21", - "visibility": "public" - }, - { - "anonymous": false, - "eventSelector": "a9d44d6e13bb3fee938c3f66d1103e91f8dc6b12d4405a55eea558e8f275aa6e", - "id": 5142, - "name": "Register", - "nameLocation": "2048:8:21", - "nodeType": "EventDefinition", - "parameters": { - "id": 5141, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5136, - "indexed": false, - "mutability": "mutable", - "name": "id", - "nameLocation": "2062:2:21", - "nodeType": "VariableDeclaration", - "scope": 5142, - "src": "2057:7:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5135, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "2057:4:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5138, - "indexed": true, - "mutability": "mutable", - "name": "from", - "nameLocation": "2082:4:21", - "nodeType": "VariableDeclaration", - "scope": 5142, - "src": "2066:20:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 5137, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2066:7:21", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5140, - "indexed": false, - "mutability": "mutable", - "name": "amount", - "nameLocation": "2096:6:21", - "nodeType": "VariableDeclaration", - "scope": 5142, - "src": "2088:14:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5139, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2088:7:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "2056:47:21" - }, - "src": "2042:62:21" - }, - { - "anonymous": false, - "eventSelector": "e1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c", - "id": 5148, - "name": "Deposit", - "nameLocation": "2115:7:21", - "nodeType": "EventDefinition", - "parameters": { - "id": 5147, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5144, - "indexed": false, - "mutability": "mutable", - "name": "from", - "nameLocation": "2131:4:21", - "nodeType": "VariableDeclaration", - "scope": 5148, - "src": "2123:12:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 5143, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2123:7:21", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5146, - "indexed": false, - "mutability": "mutable", - "name": "amount", - "nameLocation": "2145:6:21", - "nodeType": "VariableDeclaration", - "scope": 5148, - "src": "2137:14:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5145, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2137:7:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "2122:30:21" - }, - "src": "2109:44:21" - }, - { - "anonymous": false, - "eventSelector": "456e0f4ea86ac283092c750200e8c877f6ad8901ae575f90e02081acd455af84", - "id": 5154, - "name": "CollateralIncrease", - "nameLocation": "2164:18:21", - "nodeType": "EventDefinition", - "parameters": { - "id": 5153, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5150, - "indexed": false, - "mutability": "mutable", - "name": "from", - "nameLocation": "2191:4:21", - "nodeType": "VariableDeclaration", - "scope": 5154, - "src": "2183:12:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 5149, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2183:7:21", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5152, - "indexed": false, - "mutability": "mutable", - "name": "amount", - "nameLocation": "2205:6:21", - "nodeType": "VariableDeclaration", - "scope": 5154, - "src": "2197:14:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5151, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2197:7:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "2182:30:21" - }, - "src": "2158:55:21" - }, - { - "anonymous": false, - "eventSelector": "873d5a2949567203ad4f0cceef41c2813c87b9a397ee777d87a8acdaec2c6fa9", - "id": 5160, - "name": "PegoutCollateralIncrease", - "nameLocation": "2224:24:21", - "nodeType": "EventDefinition", - "parameters": { - "id": 5159, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5156, - "indexed": false, - "mutability": "mutable", - "name": "from", - "nameLocation": "2257:4:21", - "nodeType": "VariableDeclaration", - "scope": 5160, - "src": "2249:12:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 5155, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2249:7:21", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5158, - "indexed": false, - "mutability": "mutable", - "name": "amount", - "nameLocation": "2271:6:21", - "nodeType": "VariableDeclaration", - "scope": 5160, - "src": "2263:14:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5157, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2263:7:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "2248:30:21" - }, - "src": "2218:61:21" - }, - { - "anonymous": false, - "eventSelector": "7fcf532c15f0a6db0bd6d0e038bea71d30d808c7d98cb3bf7268a95bf5081b65", - "id": 5166, - "name": "Withdrawal", - "nameLocation": "2290:10:21", - "nodeType": "EventDefinition", - "parameters": { - "id": 5165, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5162, - "indexed": false, - "mutability": "mutable", - "name": "from", - "nameLocation": "2309:4:21", - "nodeType": "VariableDeclaration", - "scope": 5166, - "src": "2301:12:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 5161, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2301:7:21", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5164, - "indexed": false, - "mutability": "mutable", - "name": "amount", - "nameLocation": "2323:6:21", - "nodeType": "VariableDeclaration", - "scope": 5166, - "src": "2315:14:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5163, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2315:7:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "2300:30:21" - }, - "src": "2284:47:21" - }, - { - "anonymous": false, - "eventSelector": "a8e76b822fc682be77f3b1c822ea81f6bda5aed92ba82e6873bfd889f328d1d2", - "id": 5172, - "name": "WithdrawCollateral", - "nameLocation": "2342:18:21", - "nodeType": "EventDefinition", - "parameters": { - "id": 5171, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5168, - "indexed": false, - "mutability": "mutable", - "name": "from", - "nameLocation": "2369:4:21", - "nodeType": "VariableDeclaration", - "scope": 5172, - "src": "2361:12:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 5167, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2361:7:21", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5170, - "indexed": false, - "mutability": "mutable", - "name": "amount", - "nameLocation": "2383:6:21", - "nodeType": "VariableDeclaration", - "scope": 5172, - "src": "2375:14:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5169, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2375:7:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "2360:30:21" - }, - "src": "2336:55:21" - }, - { - "anonymous": false, - "eventSelector": "fc72299650b405e7b0480ca8fb0fb3948fb10a77ac02f797cc9de1f4aaa55db7", - "id": 5178, - "name": "PegoutWithdrawCollateral", - "nameLocation": "2402:24:21", - "nodeType": "EventDefinition", - "parameters": { - "id": 5177, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5174, - "indexed": false, - "mutability": "mutable", - "name": "from", - "nameLocation": "2435:4:21", - "nodeType": "VariableDeclaration", - "scope": 5178, - "src": "2427:12:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 5173, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2427:7:21", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5176, - "indexed": false, - "mutability": "mutable", - "name": "amount", - "nameLocation": "2449:6:21", - "nodeType": "VariableDeclaration", - "scope": 5178, - "src": "2441:14:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5175, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2441:7:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "2426:30:21" - }, - "src": "2396:61:21" - }, - { - "anonymous": false, - "eventSelector": "a6674aa33cd1b7435474751667707bf05fde99e537d67043ec5f907782577d86", - "id": 5182, - "name": "Resigned", - "nameLocation": "2468:8:21", - "nodeType": "EventDefinition", - "parameters": { - "id": 5181, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5180, - "indexed": false, - "mutability": "mutable", - "name": "from", - "nameLocation": "2485:4:21", - "nodeType": "VariableDeclaration", - "scope": 5182, - "src": "2477:12:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 5179, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2477:7:21", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "2476:14:21" - }, - "src": "2462:29:21" - }, - { - "anonymous": false, - "eventSelector": "bfc7404e6fe464f0646fe2c6ab942b92d56be722bb39f8c6bc4830d2d32fb80d", - "id": 5198, - "name": "CallForUser", - "nameLocation": "2502:11:21", - "nodeType": "EventDefinition", - "parameters": { - "id": 5197, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5184, - "indexed": true, - "mutability": "mutable", - "name": "from", - "nameLocation": "2539:4:21", - "nodeType": "VariableDeclaration", - "scope": 5198, - "src": "2523:20:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 5183, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2523:7:21", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5186, - "indexed": true, - "mutability": "mutable", - "name": "dest", - "nameLocation": "2569:4:21", - "nodeType": "VariableDeclaration", - "scope": 5198, - "src": "2553:20:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 5185, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2553:7:21", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5188, - "indexed": false, - "mutability": "mutable", - "name": "gasLimit", - "nameLocation": "2588:8:21", - "nodeType": "VariableDeclaration", - "scope": 5198, - "src": "2583:13:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5187, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "2583:4:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5190, - "indexed": false, - "mutability": "mutable", - "name": "value", - "nameLocation": "2611:5:21", - "nodeType": "VariableDeclaration", - "scope": 5198, - "src": "2606:10:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5189, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "2606:4:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5192, - "indexed": false, - "mutability": "mutable", - "name": "data", - "nameLocation": "2632:4:21", - "nodeType": "VariableDeclaration", - "scope": 5198, - "src": "2626:10:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 5191, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "2626:5:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5194, - "indexed": false, - "mutability": "mutable", - "name": "success", - "nameLocation": "2651:7:21", - "nodeType": "VariableDeclaration", - "scope": 5198, - "src": "2646:12:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 5193, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "2646:4:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5196, - "indexed": false, - "mutability": "mutable", - "name": "quoteHash", - "nameLocation": "2676:9:21", - "nodeType": "VariableDeclaration", - "scope": 5198, - "src": "2668:17:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 5195, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "2668:7:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "2513:178:21" - }, - "src": "2496:196:21" - }, - { - "anonymous": false, - "eventSelector": "0629ae9d1dc61501b0ca90670a9a9b88daaf7504b54537b53e1219de794c63d2", - "id": 5204, - "name": "PegInRegistered", - "nameLocation": "2703:15:21", - "nodeType": "EventDefinition", - "parameters": { - "id": 5203, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5200, - "indexed": true, - "mutability": "mutable", - "name": "quoteHash", - "nameLocation": "2735:9:21", - "nodeType": "VariableDeclaration", - "scope": 5204, - "src": "2719:25:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 5199, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "2719:7:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5202, - "indexed": false, - "mutability": "mutable", - "name": "transferredAmount", - "nameLocation": "2753:17:21", - "nodeType": "VariableDeclaration", - "scope": 5204, - "src": "2746:24:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 5201, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "2746:6:21", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "2718:53:21" - }, - "src": "2697:75:21" - }, - { - "anonymous": false, - "eventSelector": "9685484093cc596fdaeab51abf645b1753dbb7d869bfd2eb21e2c646e47a36f4", - "id": 5212, - "name": "Penalized", - "nameLocation": "2783:9:21", - "nodeType": "EventDefinition", - "parameters": { - "id": 5211, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5206, - "indexed": false, - "mutability": "mutable", - "name": "liquidityProvider", - "nameLocation": "2801:17:21", - "nodeType": "VariableDeclaration", - "scope": 5212, - "src": "2793:25:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 5205, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2793:7:21", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5208, - "indexed": false, - "mutability": "mutable", - "name": "penalty", - "nameLocation": "2825:7:21", - "nodeType": "VariableDeclaration", - "scope": 5212, - "src": "2820:12:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5207, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "2820:4:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5210, - "indexed": false, - "mutability": "mutable", - "name": "quoteHash", - "nameLocation": "2842:9:21", - "nodeType": "VariableDeclaration", - "scope": 5212, - "src": "2834:17:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 5209, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "2834:7:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "2792:60:21" - }, - "src": "2777:76:21" - }, - { - "anonymous": false, - "eventSelector": "fb209329d5ab5b7bcb2e92f45f4534814b6e68fa5ad1f171dabc1d17d26f0ebe", - "id": 5218, - "name": "BridgeCapExceeded", - "nameLocation": "2864:17:21", - "nodeType": "EventDefinition", - "parameters": { - "id": 5217, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5214, - "indexed": false, - "mutability": "mutable", - "name": "quoteHash", - "nameLocation": "2890:9:21", - "nodeType": "VariableDeclaration", - "scope": 5218, - "src": "2882:17:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 5213, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "2882:7:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5216, - "indexed": false, - "mutability": "mutable", - "name": "errorCode", - "nameLocation": "2908:9:21", - "nodeType": "VariableDeclaration", - "scope": 5218, - "src": "2901:16:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 5215, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "2901:6:21", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "2881:37:21" - }, - "src": "2858:61:21" - }, - { - "anonymous": false, - "eventSelector": "42cfb81a915ac5a674852db250bf722637bee705a267633b68cab3a2dde06f53", - "id": 5224, - "name": "BalanceIncrease", - "nameLocation": "2930:15:21", - "nodeType": "EventDefinition", - "parameters": { - "id": 5223, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5220, - "indexed": false, - "mutability": "mutable", - "name": "dest", - "nameLocation": "2954:4:21", - "nodeType": "VariableDeclaration", - "scope": 5224, - "src": "2946:12:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 5219, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2946:7:21", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5222, - "indexed": false, - "mutability": "mutable", - "name": "amount", - "nameLocation": "2965:6:21", - "nodeType": "VariableDeclaration", - "scope": 5224, - "src": "2960:11:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5221, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "2960:4:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "2945:27:21" - }, - "src": "2924:49:21" - }, - { - "anonymous": false, - "eventSelector": "8e51a4493a6f66c76e13fd9e3b754eafbfe21343c04508deb61be8ccc0064587", - "id": 5230, - "name": "BalanceDecrease", - "nameLocation": "2984:15:21", - "nodeType": "EventDefinition", - "parameters": { - "id": 5229, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5226, - "indexed": false, - "mutability": "mutable", - "name": "dest", - "nameLocation": "3008:4:21", - "nodeType": "VariableDeclaration", - "scope": 5230, - "src": "3000:12:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 5225, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3000:7:21", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5228, - "indexed": false, - "mutability": "mutable", - "name": "amount", - "nameLocation": "3019:6:21", - "nodeType": "VariableDeclaration", - "scope": 5230, - "src": "3014:11:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5227, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "3014:4:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "2999:27:21" - }, - "src": "2978:49:21" - }, - { - "anonymous": false, - "eventSelector": "3052ea2f7e0d74fdc1c1e1f858ff1ae3d91ab1609717c3efedb95db603b255f6", - "id": 5240, - "name": "Refund", - "nameLocation": "3038:6:21", - "nodeType": "EventDefinition", - "parameters": { - "id": 5239, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5232, - "indexed": false, - "mutability": "mutable", - "name": "dest", - "nameLocation": "3053:4:21", - "nodeType": "VariableDeclaration", - "scope": 5240, - "src": "3045:12:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 5231, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3045:7:21", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5234, - "indexed": false, - "mutability": "mutable", - "name": "amount", - "nameLocation": "3064:6:21", - "nodeType": "VariableDeclaration", - "scope": 5240, - "src": "3059:11:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5233, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "3059:4:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5236, - "indexed": false, - "mutability": "mutable", - "name": "success", - "nameLocation": "3077:7:21", - "nodeType": "VariableDeclaration", - "scope": 5240, - "src": "3072:12:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 5235, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "3072:4:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5238, - "indexed": false, - "mutability": "mutable", - "name": "quoteHash", - "nameLocation": "3094:9:21", - "nodeType": "VariableDeclaration", - "scope": 5240, - "src": "3086:17:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 5237, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "3086:7:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "3044:60:21" - }, - "src": "3032:73:21" - }, - { - "anonymous": false, - "eventSelector": "ed3e6789842b3369f529c844ab6575be53f29ffeabd4d8b84c04c8431535b1ec", - "id": 5250, - "name": "PegOut", - "nameLocation": "3116:6:21", - "nodeType": "EventDefinition", - "parameters": { - "id": 5249, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5242, - "indexed": false, - "mutability": "mutable", - "name": "from", - "nameLocation": "3140:4:21", - "nodeType": "VariableDeclaration", - "scope": 5250, - "src": "3132:12:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 5241, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3132:7:21", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5244, - "indexed": false, - "mutability": "mutable", - "name": "amount", - "nameLocation": "3162:6:21", - "nodeType": "VariableDeclaration", - "scope": 5250, - "src": "3154:14:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5243, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3154:7:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5246, - "indexed": false, - "mutability": "mutable", - "name": "quotehash", - "nameLocation": "3186:9:21", - "nodeType": "VariableDeclaration", - "scope": 5250, - "src": "3178:17:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 5245, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "3178:7:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5248, - "indexed": false, - "mutability": "mutable", - "name": "processed", - "nameLocation": "3210:9:21", - "nodeType": "VariableDeclaration", - "scope": 5250, - "src": "3205:14:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5247, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "3205:4:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "3122:103:21" - }, - "src": "3110:116:21" - }, - { - "anonymous": false, - "eventSelector": "b781856ec73fd0dc39351043d1634ea22cd3277b0866ab93e7ec1801766bb384", - "id": 5254, - "name": "PegOutRefunded", - "nameLocation": "3237:14:21", - "nodeType": "EventDefinition", - "parameters": { - "id": 5253, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5252, - "indexed": true, - "mutability": "mutable", - "name": "quoteHash", - "nameLocation": "3268:9:21", - "nodeType": "VariableDeclaration", - "scope": 5254, - "src": "3252:25:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 5251, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "3252:7:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "3251:27:21" - }, - "src": "3231:48:21" - }, - { - "anonymous": false, - "eventSelector": "b1bc7bfc0dab19777eb03aa0a5643378fc9f186c8fc5a36620d21136fbea570f", - "id": 5264, - "name": "PegOutDeposit", - "nameLocation": "3290:13:21", - "nodeType": "EventDefinition", - "parameters": { - "id": 5263, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5256, - "indexed": true, - "mutability": "mutable", - "name": "quoteHash", - "nameLocation": "3329:9:21", - "nodeType": "VariableDeclaration", - "scope": 5264, - "src": "3313:25:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 5255, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "3313:7:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5258, - "indexed": true, - "mutability": "mutable", - "name": "sender", - "nameLocation": "3364:6:21", - "nodeType": "VariableDeclaration", - "scope": 5264, - "src": "3348:22:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 5257, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3348:7:21", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5260, - "indexed": false, - "mutability": "mutable", - "name": "amount", - "nameLocation": "3388:6:21", - "nodeType": "VariableDeclaration", - "scope": 5264, - "src": "3380:14:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5259, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3380:7:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5262, - "indexed": false, - "mutability": "mutable", - "name": "timestamp", - "nameLocation": "3412:9:21", - "nodeType": "VariableDeclaration", - "scope": 5264, - "src": "3404:17:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5261, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3404:7:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "3303:124:21" - }, - "src": "3284:144:21" - }, - { - "anonymous": false, - "eventSelector": "9ccbeffc442024e2a6ade18ff0978af9a4c4d6562ae38adb51ccf8256cf42b41", - "id": 5272, - "name": "PegOutUserRefunded", - "nameLocation": "3439:18:21", - "nodeType": "EventDefinition", - "parameters": { - "id": 5271, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5266, - "indexed": true, - "mutability": "mutable", - "name": "quoteHash", - "nameLocation": "3483:9:21", - "nodeType": "VariableDeclaration", - "scope": 5272, - "src": "3467:25:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 5265, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "3467:7:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5268, - "indexed": false, - "mutability": "mutable", - "name": "value", - "nameLocation": "3510:5:21", - "nodeType": "VariableDeclaration", - "scope": 5272, - "src": "3502:13:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5267, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3502:7:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5270, - "indexed": false, - "mutability": "mutable", - "name": "userAddress", - "nameLocation": "3533:11:21", - "nodeType": "VariableDeclaration", - "scope": 5272, - "src": "3525:19:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 5269, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3525:7:21", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "3457:93:21" - }, - "src": "3433:118:21" - }, - { - "constant": false, - "functionSelector": "e78cea92", - "id": 5275, - "mutability": "mutable", - "name": "bridge", - "nameLocation": "3571:6:21", - "nodeType": "VariableDeclaration", - "scope": 7898, - "src": "3557:20:21", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Bridge_$4173", - "typeString": "contract Bridge" - }, - "typeName": { - "id": 5274, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 5273, - "name": "Bridge", - "nameLocations": [ - "3557:6:21" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 4173, - "src": "3557:6:21" - }, - "referencedDeclaration": 4173, - "src": "3557:6:21", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Bridge_$4173", - "typeString": "contract Bridge" - } - }, - "visibility": "public" - }, - { - "constant": false, - "id": 5279, - "mutability": "mutable", - "name": "balances", - "nameLocation": "3619:8:21", - "nodeType": "VariableDeclaration", - "scope": 7898, - "src": "3583:44:21", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - }, - "typeName": { - "id": 5278, - "keyName": "", - "keyNameLocation": "-1:-1:-1", - "keyType": { - "id": 5276, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3591:7:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Mapping", - "src": "3583:27:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - }, - "valueName": "", - "valueNameLocation": "-1:-1:-1", - "valueType": { - "id": 5277, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3602:7:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - }, - "visibility": "private" - }, - { - "constant": false, - "id": 5283, - "mutability": "mutable", - "name": "collateral", - "nameLocation": "3669:10:21", - "nodeType": "VariableDeclaration", - "scope": 7898, - "src": "3633:46:21", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - }, - "typeName": { - "id": 5282, - "keyName": "", - "keyNameLocation": "-1:-1:-1", - "keyType": { - "id": 5280, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3641:7:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Mapping", - "src": "3633:27:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - }, - "valueName": "", - "valueNameLocation": "-1:-1:-1", - "valueType": { - "id": 5281, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3652:7:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - }, - "visibility": "private" - }, - { - "constant": false, - "id": 5287, - "mutability": "mutable", - "name": "pegoutCollateral", - "nameLocation": "3721:16:21", - "nodeType": "VariableDeclaration", - "scope": 7898, - "src": "3685:52:21", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - }, - "typeName": { - "id": 5286, - "keyName": "", - "keyNameLocation": "-1:-1:-1", - "keyType": { - "id": 5284, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3693:7:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Mapping", - "src": "3685:27:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - }, - "valueName": "", - "valueNameLocation": "-1:-1:-1", - "valueType": { - "id": 5285, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3704:7:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - }, - "visibility": "private" - }, - { - "constant": false, - "id": 5292, - "mutability": "mutable", - "name": "liquidityProviders", - "nameLocation": "3786:18:21", - "nodeType": "VariableDeclaration", - "scope": 7898, - "src": "3743:61:21", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_LiquidityProvider_$5134_storage_$", - "typeString": "mapping(uint256 => struct LiquidityBridgeContract.LiquidityProvider)" - }, - "typeName": { - "id": 5291, - "keyName": "", - "keyNameLocation": "-1:-1:-1", - "keyType": { - "id": 5288, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "3751:4:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Mapping", - "src": "3743:34:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_LiquidityProvider_$5134_storage_$", - "typeString": "mapping(uint256 => struct LiquidityBridgeContract.LiquidityProvider)" - }, - "valueName": "", - "valueNameLocation": "-1:-1:-1", - "valueType": { - "id": 5290, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 5289, - "name": "LiquidityProvider", - "nameLocations": [ - "3759:17:21" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 5134, - "src": "3759:17:21" - }, - "referencedDeclaration": 5134, - "src": "3759:17:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$5134_storage_ptr", - "typeString": "struct LiquidityBridgeContract.LiquidityProvider" - } - } - }, - "visibility": "private" - }, - { - "constant": false, - "id": 5297, - "mutability": "mutable", - "name": "callRegistry", - "nameLocation": "3847:12:21", - "nodeType": "VariableDeclaration", - "scope": 7898, - "src": "3810:49:21", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$5116_storage_$", - "typeString": "mapping(bytes32 => struct LiquidityBridgeContract.Registry)" - }, - "typeName": { - "id": 5296, - "keyName": "", - "keyNameLocation": "-1:-1:-1", - "keyType": { - "id": 5293, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "3818:7:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "Mapping", - "src": "3810:28:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$5116_storage_$", - "typeString": "mapping(bytes32 => struct LiquidityBridgeContract.Registry)" - }, - "valueName": "", - "valueNameLocation": "-1:-1:-1", - "valueType": { - "id": 5295, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 5294, - "name": "Registry", - "nameLocations": [ - "3829:8:21" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 5116, - "src": "3829:8:21" - }, - "referencedDeclaration": 5116, - "src": "3829:8:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Registry_$5116_storage_ptr", - "typeString": "struct LiquidityBridgeContract.Registry" - } - } - }, - "visibility": "private" - }, - { - "constant": false, - "id": 5301, - "mutability": "mutable", - "name": "resignationBlockNum", - "nameLocation": "3901:19:21", - "nodeType": "VariableDeclaration", - "scope": 7898, - "src": "3865:55:21", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - }, - "typeName": { - "id": 5300, - "keyName": "", - "keyNameLocation": "-1:-1:-1", - "keyType": { - "id": 5298, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3873:7:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Mapping", - "src": "3865:27:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - }, - "valueName": "", - "valueNameLocation": "-1:-1:-1", - "valueType": { - "id": 5299, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3884:7:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - }, - "visibility": "private" - }, - { - "constant": false, - "id": 5303, - "mutability": "mutable", - "name": "minCollateral", - "nameLocation": "3943:13:21", - "nodeType": "VariableDeclaration", - "scope": 7898, - "src": "3927:29:21", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5302, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3927:7:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "private" - }, - { - "constant": false, - "id": 5305, - "mutability": "mutable", - "name": "minPegIn", - "nameLocation": "3978:8:21", - "nodeType": "VariableDeclaration", - "scope": 7898, - "src": "3962:24:21", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5304, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3962:7:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "private" - }, - { - "constant": false, - "id": 5307, - "mutability": "mutable", - "name": "rewardP", - "nameLocation": "4008:7:21", - "nodeType": "VariableDeclaration", - "scope": 7898, - "src": "3993:22:21", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "typeName": { - "id": 5306, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "3993:6:21", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "visibility": "private" - }, - { - "constant": false, - "id": 5309, - "mutability": "mutable", - "name": "resignDelayInBlocks", - "nameLocation": "4036:19:21", - "nodeType": "VariableDeclaration", - "scope": 7898, - "src": "4021:34:21", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "typeName": { - "id": 5308, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "4021:6:21", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "visibility": "private" - }, - { - "constant": false, - "id": 5311, - "mutability": "mutable", - "name": "dust", - "nameLocation": "4074:4:21", - "nodeType": "VariableDeclaration", - "scope": 7898, - "src": "4061:17:21", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5310, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "4061:4:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "private" - }, - { - "constant": false, - "functionSelector": "8490a8df", - "id": 5313, - "mutability": "mutable", - "name": "providerId", - "nameLocation": "4096:10:21", - "nodeType": "VariableDeclaration", - "scope": 7898, - "src": "4084:22:21", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5312, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "4084:4:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "public" - }, - { - "constant": false, - "id": 5315, - "mutability": "mutable", - "name": "btcBlockTime", - "nameLocation": "4126:12:21", - "nodeType": "VariableDeclaration", - "scope": 7898, - "src": "4113:25:21", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5314, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "4113:4:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "private" - }, - { - "constant": false, - "id": 5317, - "mutability": "mutable", - "name": "mainnet", - "nameLocation": "4157:7:21", - "nodeType": "VariableDeclaration", - "scope": 7898, - "src": "4144:20:21", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 5316, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "4144:4:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "private" - }, - { - "constant": false, - "id": 5321, - "mutability": "mutable", - "name": "processedQuotes", - "nameLocation": "4205:15:21", - "nodeType": "VariableDeclaration", - "scope": 7898, - "src": "4171:49:21", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint8_$", - "typeString": "mapping(bytes32 => uint8)" - }, - "typeName": { - "id": 5320, - "keyName": "", - "keyNameLocation": "-1:-1:-1", - "keyType": { - "id": 5318, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "4179:7:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "Mapping", - "src": "4171:25:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint8_$", - "typeString": "mapping(bytes32 => uint8)" - }, - "valueName": "", - "valueNameLocation": "-1:-1:-1", - "valueType": { - "id": 5319, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "4190:5:21", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - } - }, - "visibility": "private" - }, - { - "constant": false, - "id": 5326, - "mutability": "mutable", - "name": "registeredPegoutQuotes", - "nameLocation": "4273:22:21", - "nodeType": "VariableDeclaration", - "scope": 7898, - "src": "4226:69:21", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegOutQuote_$10997_storage_$", - "typeString": "mapping(bytes32 => struct Quotes.PegOutQuote)" - }, - "typeName": { - "id": 5325, - "keyName": "", - "keyNameLocation": "-1:-1:-1", - "keyType": { - "id": 5322, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "4234:7:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "Mapping", - "src": "4226:38:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegOutQuote_$10997_storage_$", - "typeString": "mapping(bytes32 => struct Quotes.PegOutQuote)" - }, - "valueName": "", - "valueNameLocation": "-1:-1:-1", - "valueType": { - "id": 5324, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 5323, - "name": "Quotes.PegOutQuote", - "nameLocations": [ - "4245:6:21", - "4252:11:21" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 10997, - "src": "4245:18:21" - }, - "referencedDeclaration": 10997, - "src": "4245:18:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_storage_ptr", - "typeString": "struct Quotes.PegOutQuote" - } - } - }, - "visibility": "private" - }, - { - "constant": false, - "id": 5331, - "mutability": "mutable", - "name": "pegoutRegistry", - "nameLocation": "4342:14:21", - "nodeType": "VariableDeclaration", - "scope": 7898, - "src": "4301:55:21", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegoutRecord_$5121_storage_$", - "typeString": "mapping(bytes32 => struct LiquidityBridgeContract.PegoutRecord)" - }, - "typeName": { - "id": 5330, - "keyName": "", - "keyNameLocation": "-1:-1:-1", - "keyType": { - "id": 5327, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "4309:7:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "Mapping", - "src": "4301:32:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegoutRecord_$5121_storage_$", - "typeString": "mapping(bytes32 => struct LiquidityBridgeContract.PegoutRecord)" - }, - "valueName": "", - "valueNameLocation": "-1:-1:-1", - "valueType": { - "id": 5329, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 5328, - "name": "PegoutRecord", - "nameLocations": [ - "4320:12:21" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 5121, - "src": "4320:12:21" - }, - "referencedDeclaration": 5121, - "src": "4320:12:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegoutRecord_$5121_storage_ptr", - "typeString": "struct LiquidityBridgeContract.PegoutRecord" - } - } - }, - "visibility": "private" - }, - { - "body": { - "id": 5342, - "nodeType": "Block", - "src": "4389:71:21", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "expression": { - "id": 5335, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "4420:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 5336, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "4424:6:21", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "4420:10:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 5334, - "name": "isRegistered", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7554, - "src": "4407:12:21", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", - "typeString": "function (address) view returns (bool)" - } - }, - "id": 5337, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4407:24:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303031", - "id": 5338, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4433:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_a509ede2323476f3f5be48987391c5516e4ea8116b376287322ed2188be0e53c", - "typeString": "literal_string \"LBC001\"" - }, - "value": "LBC001" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_a509ede2323476f3f5be48987391c5516e4ea8116b376287322ed2188be0e53c", - "typeString": "literal_string \"LBC001\"" - } - ], - "id": 5333, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "4399:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 5339, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4399:43:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 5340, - "nodeType": "ExpressionStatement", - "src": "4399:43:21" - }, - { - "id": 5341, - "nodeType": "PlaceholderStatement", - "src": "4452:1:21" - } - ] - }, - "id": 5343, - "name": "onlyRegistered", - "nameLocation": "4372:14:21", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 5332, - "nodeType": "ParameterList", - "parameters": [], - "src": "4386:2:21" - }, - "src": "4363:97:21", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 5354, - "nodeType": "Block", - "src": "4501:80:21", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "expression": { - "id": 5347, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "4541:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 5348, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "4545:6:21", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "4541:10:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 5346, - "name": "isRegisteredForPegout", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7574, - "src": "4519:21:21", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", - "typeString": "function (address) view returns (bool)" - } - }, - "id": 5349, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4519:33:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303031", - "id": 5350, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4554:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_a509ede2323476f3f5be48987391c5516e4ea8116b376287322ed2188be0e53c", - "typeString": "literal_string \"LBC001\"" - }, - "value": "LBC001" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_a509ede2323476f3f5be48987391c5516e4ea8116b376287322ed2188be0e53c", - "typeString": "literal_string \"LBC001\"" - } - ], - "id": 5345, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "4511:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 5351, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4511:52:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 5352, - "nodeType": "ExpressionStatement", - "src": "4511:52:21" - }, - { - "id": 5353, - "nodeType": "PlaceholderStatement", - "src": "4573:1:21" - } - ] - }, - "id": 5355, - "name": "onlyRegisteredForPegout", - "nameLocation": "4475:23:21", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 5344, - "nodeType": "ParameterList", - "parameters": [], - "src": "4498:2:21" - }, - "src": "4466:115:21", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 5367, - "nodeType": "Block", - "src": "4606:70:21", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 5362, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 5358, - "name": "tx", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967270, - "src": "4624:2:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_transaction", - "typeString": "tx" - } - }, - "id": 5359, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "4627:6:21", - "memberName": "origin", - "nodeType": "MemberAccess", - "src": "4624:9:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 5360, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "4637:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 5361, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "4641:6:21", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "4637:10:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "4624:23:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303033", - "id": 5363, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4649:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_7e21a7b13292bf184f2fc166cca229506aa89a730258f15cdce6a2f8dc225415", - "typeString": "literal_string \"LBC003\"" - }, - "value": "LBC003" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_7e21a7b13292bf184f2fc166cca229506aa89a730258f15cdce6a2f8dc225415", - "typeString": "literal_string \"LBC003\"" - } - ], - "id": 5357, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "4616:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 5364, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4616:42:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 5365, - "nodeType": "ExpressionStatement", - "src": "4616:42:21" - }, - { - "id": 5366, - "nodeType": "PlaceholderStatement", - "src": "4668:1:21" - } - ] - }, - "id": 5368, - "name": "onlyEoa", - "nameLocation": "4596:7:21", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 5356, - "nodeType": "ParameterList", - "parameters": [], - "src": "4603:2:21" - }, - "src": "4587:89:21", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 5448, - "nodeType": "Block", - "src": "5606:513:21", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "id": 5393, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 5391, - "name": "_rewardPercentage", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5377, - "src": "5624:17:21", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "nodeType": "BinaryOperation", - "operator": "<=", - "rightExpression": { - "hexValue": "313030", - "id": 5392, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5645:3:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_100_by_1", - "typeString": "int_const 100" - }, - "value": "100" - }, - "src": "5624:24:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303034", - "id": 5394, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5650:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_b08af29ae9ab6d901d6564b35ffdb791cf633ea45a36ea23bf660bfada2612fe", - "typeString": "literal_string \"LBC004\"" - }, - "value": "LBC004" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_b08af29ae9ab6d901d6564b35ffdb791cf633ea45a36ea23bf660bfada2612fe", - "typeString": "literal_string \"LBC004\"" - } - ], - "id": 5390, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "5616:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 5395, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5616:43:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 5396, - "nodeType": "ExpressionStatement", - "src": "5616:43:21" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 5400, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 5398, - "name": "_minimumCollateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5373, - "src": "5677:18:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "hexValue": "302e3033", - "id": 5399, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5699:10:21", - "subdenomination": "ether", - "typeDescriptions": { - "typeIdentifier": "t_rational_30000000000000000_by_1", - "typeString": "int_const 30000000000000000" - }, - "value": "0.03" - }, - "src": "5677:32:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303732", - "id": 5401, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5711:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_aef7c38006d01c174c6b5b14fe8e6059baae2f7a6dd6bce99907771d261c0abd", - "typeString": "literal_string \"LBC072\"" - }, - "value": "LBC072" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_aef7c38006d01c174c6b5b14fe8e6059baae2f7a6dd6bce99907771d261c0abd", - "typeString": "literal_string \"LBC072\"" - } - ], - "id": 5397, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "5669:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 5402, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5669:51:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 5403, - "nodeType": "ExpressionStatement", - "src": "5669:51:21" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "id": 5407, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 5405, - "name": "_resignDelayBlocks", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5379, - "src": "5738:18:21", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "hexValue": "3630", - "id": 5406, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5760:2:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_60_by_1", - "typeString": "int_const 60" - }, - "value": "60" - }, - "src": "5738:24:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303733", - "id": 5408, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5764:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_b87a2fdd3e8805c862b0b631e2cf43b048cd2e48956f7516ed8be20eb14ec931", - "typeString": "literal_string \"LBC073\"" - }, - "value": "LBC073" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_b87a2fdd3e8805c862b0b631e2cf43b048cd2e48956f7516ed8be20eb14ec931", - "typeString": "literal_string \"LBC073\"" - } - ], - "id": 5404, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "5730:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 5409, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5730:43:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 5410, - "nodeType": "ExpressionStatement", - "src": "5730:43:21" - }, - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 5411, - "name": "__Ownable_init_unchained", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 38, - "src": "5783:24:21", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", - "typeString": "function ()" - } - }, - "id": 5412, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5783:26:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 5413, - "nodeType": "ExpressionStatement", - "src": "5783:26:21" - }, - { - "expression": { - "id": 5418, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 5414, - "name": "bridge", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5275, - "src": "5819:6:21", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Bridge_$4173", - "typeString": "contract Bridge" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 5416, - "name": "_bridgeAddress", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5371, - "src": "5835:14:21", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - ], - "id": 5415, - "name": "Bridge", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4173, - "src": "5828:6:21", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_Bridge_$4173_$", - "typeString": "type(contract Bridge)" - } - }, - "id": 5417, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5828:22:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_contract$_Bridge_$4173", - "typeString": "contract Bridge" - } - }, - "src": "5819:31:21", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Bridge_$4173", - "typeString": "contract Bridge" - } - }, - "id": 5419, - "nodeType": "ExpressionStatement", - "src": "5819:31:21" - }, - { - "expression": { - "id": 5422, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 5420, - "name": "minCollateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5303, - "src": "5860:13:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 5421, - "name": "_minimumCollateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5373, - "src": "5876:18:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "5860:34:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 5423, - "nodeType": "ExpressionStatement", - "src": "5860:34:21" - }, - { - "expression": { - "id": 5426, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 5424, - "name": "minPegIn", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5305, - "src": "5904:8:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 5425, - "name": "_minimumPegIn", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5375, - "src": "5915:13:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "5904:24:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 5427, - "nodeType": "ExpressionStatement", - "src": "5904:24:21" - }, - { - "expression": { - "id": 5430, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 5428, - "name": "rewardP", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5307, - "src": "5938:7:21", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 5429, - "name": "_rewardPercentage", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5377, - "src": "5948:17:21", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "src": "5938:27:21", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "id": 5431, - "nodeType": "ExpressionStatement", - "src": "5938:27:21" - }, - { - "expression": { - "id": 5434, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 5432, - "name": "resignDelayInBlocks", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5309, - "src": "5975:19:21", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 5433, - "name": "_resignDelayBlocks", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5379, - "src": "5997:18:21", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "src": "5975:40:21", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "id": 5435, - "nodeType": "ExpressionStatement", - "src": "5975:40:21" - }, - { - "expression": { - "id": 5438, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 5436, - "name": "dust", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5311, - "src": "6025:4:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 5437, - "name": "_dustThreshold", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5381, - "src": "6032:14:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "6025:21:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 5439, - "nodeType": "ExpressionStatement", - "src": "6025:21:21" - }, - { - "expression": { - "id": 5442, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 5440, - "name": "btcBlockTime", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5315, - "src": "6056:12:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 5441, - "name": "_btcBlockTime", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5383, - "src": "6071:13:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "6056:28:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 5443, - "nodeType": "ExpressionStatement", - "src": "6056:28:21" - }, - { - "expression": { - "id": 5446, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 5444, - "name": "mainnet", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5317, - "src": "6094:7:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 5445, - "name": "_mainnet", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5385, - "src": "6104:8:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "6094:18:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 5447, - "nodeType": "ExpressionStatement", - "src": "6094:18:21" - } - ] - }, - "documentation": { - "id": 5369, - "nodeType": "StructuredDocumentation", - "src": "4682:618:21", - "text": "@param _bridgeAddress The address of the bridge contract\n@param _minimumCollateral The minimum required collateral for liquidity providers\n@param _minimumPegIn The minimum peg-in amount\n@param _rewardPercentage The percentage of the penalty fee that an honest party\n// receives when calling registerPegIn in case of a liquidity provider misbehaving\n@param _resignDelayBlocks The number of block confirmations that a liquidity\n// provider needs to wait before it can withdraw its collateral\n@param _dustThreshold Amount that is considered dust" - }, - "functionSelector": "4533ac1c", - "id": 5449, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "id": 5388, - "kind": "modifierInvocation", - "modifierName": { - "id": 5387, - "name": "initializer", - "nameLocations": [ - "5594:11:21" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 203, - "src": "5594:11:21" - }, - "nodeType": "ModifierInvocation", - "src": "5594:11:21" - } - ], - "name": "initialize", - "nameLocation": "5314:10:21", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 5386, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5371, - "mutability": "mutable", - "name": "_bridgeAddress", - "nameLocation": "5350:14:21", - "nodeType": "VariableDeclaration", - "scope": 5449, - "src": "5334:30:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - }, - "typeName": { - "id": 5370, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "5334:15:21", - "stateMutability": "payable", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5373, - "mutability": "mutable", - "name": "_minimumCollateral", - "nameLocation": "5382:18:21", - "nodeType": "VariableDeclaration", - "scope": 5449, - "src": "5374:26:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5372, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "5374:7:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5375, - "mutability": "mutable", - "name": "_minimumPegIn", - "nameLocation": "5418:13:21", - "nodeType": "VariableDeclaration", - "scope": 5449, - "src": "5410:21:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5374, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "5410:7:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5377, - "mutability": "mutable", - "name": "_rewardPercentage", - "nameLocation": "5448:17:21", - "nodeType": "VariableDeclaration", - "scope": 5449, - "src": "5441:24:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "typeName": { - "id": 5376, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "5441:6:21", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5379, - "mutability": "mutable", - "name": "_resignDelayBlocks", - "nameLocation": "5482:18:21", - "nodeType": "VariableDeclaration", - "scope": 5449, - "src": "5475:25:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "typeName": { - "id": 5378, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "5475:6:21", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5381, - "mutability": "mutable", - "name": "_dustThreshold", - "nameLocation": "5515:14:21", - "nodeType": "VariableDeclaration", - "scope": 5449, - "src": "5510:19:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5380, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "5510:4:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5383, - "mutability": "mutable", - "name": "_btcBlockTime", - "nameLocation": "5544:13:21", - "nodeType": "VariableDeclaration", - "scope": 5449, - "src": "5539:18:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5382, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "5539:4:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5385, - "mutability": "mutable", - "name": "_mainnet", - "nameLocation": "5572:8:21", - "nodeType": "VariableDeclaration", - "scope": 5449, - "src": "5567:13:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 5384, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "5567:4:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "5324:262:21" - }, - "returnParameters": { - "id": 5389, - "nodeType": "ParameterList", - "parameters": [], - "src": "5606:0:21" - }, - "scope": 7898, - "src": "5305:814:21", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 5471, - "nodeType": "Block", - "src": "6173:172:21", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 5466, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 5458, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 5454, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "6204:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 5455, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "6208:6:21", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "6204:10:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 5456, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 55, - "src": "6218:5:21", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", - "typeString": "function () view returns (address)" - } - }, - "id": 5457, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "6218:7:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "6204:21:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 5465, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 5459, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "6241:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 5460, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "6245:6:21", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "6241:10:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "baseExpression": { - "id": 5461, - "name": "liquidityProviders", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5292, - "src": "6255:18:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_LiquidityProvider_$5134_storage_$", - "typeString": "mapping(uint256 => struct LiquidityBridgeContract.LiquidityProvider storage ref)" - } - }, - "id": 5463, - "indexExpression": { - "id": 5462, - "name": "_providerId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5451, - "src": "6274:11:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "6255:31:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$5134_storage", - "typeString": "struct LiquidityBridgeContract.LiquidityProvider storage ref" - } - }, - "id": 5464, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "6287:8:21", - "memberName": "provider", - "nodeType": "MemberAccess", - "referencedDeclaration": 5125, - "src": "6255:40:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "6241:54:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "6204:91:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303035", - "id": 5467, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6309:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_0a36b25bf1b768acf545d4a7d22e9fceeba3414a7a19dc34973fc2e1be01a831", - "typeString": "literal_string \"LBC005\"" - }, - "value": "LBC005" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_0a36b25bf1b768acf545d4a7d22e9fceeba3414a7a19dc34973fc2e1be01a831", - "typeString": "literal_string \"LBC005\"" - } - ], - "id": 5453, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "6183:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 5468, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "6183:144:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 5469, - "nodeType": "ExpressionStatement", - "src": "6183:144:21" - }, - { - "id": 5470, - "nodeType": "PlaceholderStatement", - "src": "6337:1:21" - } - ] - }, - "id": 5472, - "name": "onlyOwnerAndProvider", - "nameLocation": "6134:20:21", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 5452, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5451, - "mutability": "mutable", - "name": "_providerId", - "nameLocation": "6160:11:21", - "nodeType": "VariableDeclaration", - "scope": 5472, - "src": "6155:16:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5450, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "6155:4:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "6154:18:21" - }, - "src": "6125:220:21", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 5489, - "nodeType": "Block", - "src": "6472:64:21", - "statements": [ - { - "expression": { - "id": 5487, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "baseExpression": { - "id": 5482, - "name": "liquidityProviders", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5292, - "src": "6482:18:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_LiquidityProvider_$5134_storage_$", - "typeString": "mapping(uint256 => struct LiquidityBridgeContract.LiquidityProvider storage ref)" - } - }, - "id": 5484, - "indexExpression": { - "id": 5483, - "name": "_providerId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5474, - "src": "6501:11:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "6482:31:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$5134_storage", - "typeString": "struct LiquidityBridgeContract.LiquidityProvider storage ref" - } - }, - "id": 5485, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberLocation": "6514:6:21", - "memberName": "status", - "nodeType": "MemberAccess", - "referencedDeclaration": 5131, - "src": "6482:38:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 5486, - "name": "status", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5476, - "src": "6523:6:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "6482:47:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 5488, - "nodeType": "ExpressionStatement", - "src": "6482:47:21" - } - ] - }, - "functionSelector": "72cbf4e8", - "id": 5490, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "arguments": [ - { - "id": 5479, - "name": "_providerId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5474, - "src": "6459:11:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "id": 5480, - "kind": "modifierInvocation", - "modifierName": { - "id": 5478, - "name": "onlyOwnerAndProvider", - "nameLocations": [ - "6438:20:21" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 5472, - "src": "6438:20:21" - }, - "nodeType": "ModifierInvocation", - "src": "6438:33:21" - } - ], - "name": "setProviderStatus", - "nameLocation": "6360:17:21", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 5477, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5474, - "mutability": "mutable", - "name": "_providerId", - "nameLocation": "6392:11:21", - "nodeType": "VariableDeclaration", - "scope": 5490, - "src": "6387:16:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5473, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "6387:4:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5476, - "mutability": "mutable", - "name": "status", - "nameLocation": "6418:6:21", - "nodeType": "VariableDeclaration", - "scope": 5490, - "src": "6413:11:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 5475, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "6413:4:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "6377:53:21" - }, - "returnParameters": { - "id": 5481, - "nodeType": "ParameterList", - "parameters": [], - "src": "6472:0:21" - }, - "scope": 7898, - "src": "6351:185:21", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 5504, - "nodeType": "Block", - "src": "6569:65:21", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 5500, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 5494, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "6587:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 5495, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "6591:6:21", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "6587:10:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "arguments": [ - { - "id": 5498, - "name": "bridge", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5275, - "src": "6609:6:21", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Bridge_$4173", - "typeString": "contract Bridge" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_Bridge_$4173", - "typeString": "contract Bridge" - } - ], - "id": 5497, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "6601:7:21", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 5496, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "6601:7:21", - "typeDescriptions": {} - } - }, - "id": 5499, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "6601:15:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "6587:29:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303037", - "id": 5501, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6618:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_a23daf30bd1e42cc69e3bea751166702f08d640860ab6f4c84d6bacb970360da", - "typeString": "literal_string \"LBC007\"" - }, - "value": "LBC007" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_a23daf30bd1e42cc69e3bea751166702f08d640860ab6f4c84d6bacb970360da", - "typeString": "literal_string \"LBC007\"" - } - ], - "id": 5493, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "6579:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 5502, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "6579:48:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 5503, - "nodeType": "ExpressionStatement", - "src": "6579:48:21" - } - ] - }, - "id": 5505, - "implemented": true, - "kind": "receive", - "modifiers": [], - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 5491, - "nodeType": "ParameterList", - "parameters": [], - "src": "6549:2:21" - }, - "returnParameters": { - "id": 5492, - "nodeType": "ParameterList", - "parameters": [], - "src": "6569:0:21" - }, - "scope": 7898, - "src": "6542:92:21", - "stateMutability": "payable", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 5512, - "nodeType": "Block", - "src": "6695:34:21", - "statements": [ - { - "expression": { - "id": 5510, - "name": "providerId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5313, - "src": "6712:10:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 5509, - "id": 5511, - "nodeType": "Return", - "src": "6705:17:21" - } - ] - }, - "functionSelector": "0a9cb4a7", - "id": 5513, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getProviderIds", - "nameLocation": "6649:14:21", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 5506, - "nodeType": "ParameterList", - "parameters": [], - "src": "6663:2:21" - }, - "returnParameters": { - "id": 5509, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5508, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 5513, - "src": "6689:4:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5507, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "6689:4:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "6688:6:21" - }, - "scope": 7898, - "src": "6640:89:21", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 5523, - "nodeType": "Block", - "src": "6795:39:21", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 5520, - "name": "bridge", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5275, - "src": "6820:6:21", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Bridge_$4173", - "typeString": "contract Bridge" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_Bridge_$4173", - "typeString": "contract Bridge" - } - ], - "id": 5519, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "6812:7:21", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 5518, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "6812:7:21", - "typeDescriptions": {} - } - }, - "id": 5521, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "6812:15:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "functionReturnParameters": 5517, - "id": 5522, - "nodeType": "Return", - "src": "6805:22:21" - } - ] - }, - "functionSelector": "fb32c508", - "id": 5524, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getBridgeAddress", - "nameLocation": "6744:16:21", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 5514, - "nodeType": "ParameterList", - "parameters": [], - "src": "6760:2:21" - }, - "returnParameters": { - "id": 5517, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5516, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 5524, - "src": "6786:7:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 5515, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "6786:7:21", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "6785:9:21" - }, - "scope": 7898, - "src": "6735:99:21", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 5531, - "nodeType": "Block", - "src": "6895:37:21", - "statements": [ - { - "expression": { - "id": 5529, - "name": "minCollateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5303, - "src": "6912:13:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 5528, - "id": 5530, - "nodeType": "Return", - "src": "6905:20:21" - } - ] - }, - "functionSelector": "e830b690", - "id": 5532, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getMinCollateral", - "nameLocation": "6849:16:21", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 5525, - "nodeType": "ParameterList", - "parameters": [], - "src": "6865:2:21" - }, - "returnParameters": { - "id": 5528, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5527, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 5532, - "src": "6889:4:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5526, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "6889:4:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "6888:6:21" - }, - "scope": 7898, - "src": "6840:92:21", - "stateMutability": "view", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 5539, - "nodeType": "Block", - "src": "6990:32:21", - "statements": [ - { - "expression": { - "id": 5537, - "name": "minPegIn", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5305, - "src": "7007:8:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 5536, - "id": 5538, - "nodeType": "Return", - "src": "7000:15:21" - } - ] - }, - "functionSelector": "fa88dcde", - "id": 5540, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getMinPegIn", - "nameLocation": "6947:11:21", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 5533, - "nodeType": "ParameterList", - "parameters": [], - "src": "6958:2:21" - }, - "returnParameters": { - "id": 5536, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5535, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 5540, - "src": "6984:4:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5534, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "6984:4:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "6983:6:21" - }, - "scope": 7898, - "src": "6938:84:21", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 5547, - "nodeType": "Block", - "src": "7088:31:21", - "statements": [ - { - "expression": { - "id": 5545, - "name": "rewardP", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5307, - "src": "7105:7:21", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "functionReturnParameters": 5544, - "id": 5546, - "nodeType": "Return", - "src": "7098:14:21" - } - ] - }, - "functionSelector": "c7213163", - "id": 5548, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getRewardPercentage", - "nameLocation": "7037:19:21", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 5541, - "nodeType": "ParameterList", - "parameters": [], - "src": "7056:2:21" - }, - "returnParameters": { - "id": 5544, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5543, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 5548, - "src": "7082:4:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5542, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "7082:4:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "7081:6:21" - }, - "scope": 7898, - "src": "7028:91:21", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 5555, - "nodeType": "Block", - "src": "7186:43:21", - "statements": [ - { - "expression": { - "id": 5553, - "name": "resignDelayInBlocks", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5309, - "src": "7203:19:21", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "functionReturnParameters": 5552, - "id": 5554, - "nodeType": "Return", - "src": "7196:26:21" - } - ] - }, - "functionSelector": "bd5798c3", - "id": 5556, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getResignDelayBlocks", - "nameLocation": "7134:20:21", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 5549, - "nodeType": "ParameterList", - "parameters": [], - "src": "7154:2:21" - }, - "returnParameters": { - "id": 5552, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5551, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 5556, - "src": "7180:4:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5550, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "7180:4:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "7179:6:21" - }, - "scope": 7898, - "src": "7125:104:21", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 5563, - "nodeType": "Block", - "src": "7292:28:21", - "statements": [ - { - "expression": { - "id": 5561, - "name": "dust", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5311, - "src": "7309:4:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 5560, - "id": 5562, - "nodeType": "Return", - "src": "7302:11:21" - } - ] - }, - "functionSelector": "33f07ad3", - "id": 5564, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getDustThreshold", - "nameLocation": "7244:16:21", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 5557, - "nodeType": "ParameterList", - "parameters": [], - "src": "7260:2:21" - }, - "returnParameters": { - "id": 5560, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5559, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 5564, - "src": "7286:4:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5558, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "7286:4:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "7285:6:21" - }, - "scope": 7898, - "src": "7235:85:21", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 5576, - "nodeType": "Block", - "src": "7443:57:21", - "statements": [ - { - "expression": { - "baseExpression": { - "id": 5572, - "name": "registeredPegoutQuotes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5326, - "src": "7460:22:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegOutQuote_$10997_storage_$", - "typeString": "mapping(bytes32 => struct Quotes.PegOutQuote storage ref)" - } - }, - "id": 5574, - "indexExpression": { - "id": 5573, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5566, - "src": "7483:9:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "7460:33:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_storage", - "typeString": "struct Quotes.PegOutQuote storage ref" - } - }, - "functionReturnParameters": 5571, - "id": 5575, - "nodeType": "Return", - "src": "7453:40:21" - } - ] - }, - "functionSelector": "e90d2ddb", - "id": 5577, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getRegisteredPegOutQuote", - "nameLocation": "7335:24:21", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 5567, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5566, - "mutability": "mutable", - "name": "quoteHash", - "nameLocation": "7377:9:21", - "nodeType": "VariableDeclaration", - "scope": 5577, - "src": "7369:17:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 5565, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "7369:7:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "7359:33:21" - }, - "returnParameters": { - "id": 5571, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5570, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 5577, - "src": "7416:25:21", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_memory_ptr", - "typeString": "struct Quotes.PegOutQuote" - }, - "typeName": { - "id": 5569, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 5568, - "name": "Quotes.PegOutQuote", - "nameLocations": [ - "7416:6:21", - "7423:11:21" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 10997, - "src": "7416:18:21" - }, - "referencedDeclaration": 10997, - "src": "7416:18:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_storage_ptr", - "typeString": "struct Quotes.PegOutQuote" - } - }, - "visibility": "internal" - } - ], - "src": "7415:27:21" - }, - "scope": 7898, - "src": "7326:174:21", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 5589, - "nodeType": "Block", - "src": "7586:59:21", - "statements": [ - { - "expression": { - "expression": { - "baseExpression": { - "id": 5584, - "name": "pegoutRegistry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5331, - "src": "7603:14:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegoutRecord_$5121_storage_$", - "typeString": "mapping(bytes32 => struct LiquidityBridgeContract.PegoutRecord storage ref)" - } - }, - "id": 5586, - "indexExpression": { - "id": 5585, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5579, - "src": "7618:9:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "7603:25:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegoutRecord_$5121_storage", - "typeString": "struct LiquidityBridgeContract.PegoutRecord storage ref" - } - }, - "id": 5587, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "7629:9:21", - "memberName": "completed", - "nodeType": "MemberAccess", - "referencedDeclaration": 5120, - "src": "7603:35:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 5583, - "id": 5588, - "nodeType": "Return", - "src": "7596:42:21" - } - ] - }, - "functionSelector": "54015ee0", - "id": 5590, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "isPegOutQuoteCompleted", - "nameLocation": "7515:22:21", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 5580, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5579, - "mutability": "mutable", - "name": "quoteHash", - "nameLocation": "7546:9:21", - "nodeType": "VariableDeclaration", - "scope": 5590, - "src": "7538:17:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 5578, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "7538:7:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "7537:19:21" - }, - "returnParameters": { - "id": 5583, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5582, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 5590, - "src": "7580:4:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 5581, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "7580:4:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "7579:6:21" - }, - "scope": 7898, - "src": "7506:139:21", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 5608, - "nodeType": "Block", - "src": "7904:79:21", - "statements": [ - { - "expression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 5606, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "id": 5599, - "name": "addr", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5593, - "src": "7934:4:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 5598, - "name": "isRegistered", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7554, - "src": "7921:12:21", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", - "typeString": "function (address) view returns (bool)" - } - }, - "id": 5600, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "7921:18:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 5605, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "id": 5601, - "name": "collateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5283, - "src": "7943:10:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 5603, - "indexExpression": { - "id": 5602, - "name": "addr", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5593, - "src": "7954:4:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "7943:16:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "id": 5604, - "name": "minCollateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5303, - "src": "7963:13:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "7943:33:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "7921:55:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 5597, - "id": 5607, - "nodeType": "Return", - "src": "7914:62:21" - } - ] - }, - "documentation": { - "id": 5591, - "nodeType": "StructuredDocumentation", - "src": "7651:182:21", - "text": "@dev Checks whether a liquidity provider can deliver a pegin service\n@return Whether the liquidity provider is registered and has enough locked collateral" - }, - "functionSelector": "457385f2", - "id": 5609, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "isOperational", - "nameLocation": "7847:13:21", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 5594, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5593, - "mutability": "mutable", - "name": "addr", - "nameLocation": "7869:4:21", - "nodeType": "VariableDeclaration", - "scope": 5609, - "src": "7861:12:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 5592, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "7861:7:21", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "7860:14:21" - }, - "returnParameters": { - "id": 5597, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5596, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 5609, - "src": "7898:4:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 5595, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "7898:4:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "7897:6:21" - }, - "scope": 7898, - "src": "7838:145:21", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 5627, - "nodeType": "Block", - "src": "8252:110:21", - "statements": [ - { - "expression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 5625, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "id": 5618, - "name": "addr", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5612, - "src": "8299:4:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 5617, - "name": "isRegisteredForPegout", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7574, - "src": "8277:21:21", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", - "typeString": "function (address) view returns (bool)" - } - }, - "id": 5619, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "8277:27:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 5624, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "id": 5620, - "name": "pegoutCollateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5287, - "src": "8316:16:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 5622, - "indexExpression": { - "id": 5621, - "name": "addr", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5612, - "src": "8333:4:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "8316:22:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "id": 5623, - "name": "minCollateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5303, - "src": "8342:13:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "8316:39:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "8277:78:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 5616, - "id": 5626, - "nodeType": "Return", - "src": "8262:93:21" - } - ] - }, - "documentation": { - "id": 5610, - "nodeType": "StructuredDocumentation", - "src": "7989:183:21", - "text": "@dev Checks whether a liquidity provider can deliver a pegout service\n@return Whether the liquidity provider is registered and has enough locked collateral" - }, - "functionSelector": "4d0ec971", - "id": 5628, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "isOperationalForPegout", - "nameLocation": "8186:22:21", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 5613, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5612, - "mutability": "mutable", - "name": "addr", - "nameLocation": "8217:4:21", - "nodeType": "VariableDeclaration", - "scope": 5628, - "src": "8209:12:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 5611, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "8209:7:21", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "8208:14:21" - }, - "returnParameters": { - "id": 5616, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5615, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 5628, - "src": "8246:4:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 5614, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "8246:4:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "8245:6:21" - }, - "scope": 7898, - "src": "8177:185:21", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 5809, - "nodeType": "Block", - "src": "8658:1473:21", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 5645, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5631, - "src": "8778:5:21", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "id": 5646, - "name": "_apiBaseUrl", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5633, - "src": "8797:11:21", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "id": 5647, - "name": "_providerType", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5637, - "src": "8822:13:21", - "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" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 5644, - "name": "validateRegisterParameters", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5888, - "src": "8738:26:21", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory,string memory,string memory) pure" - } - }, - "id": 5648, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "8738:107:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 5649, - "nodeType": "ExpressionStatement", - "src": "8738:107:21" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 5663, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 5656, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "id": 5651, - "name": "collateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5283, - "src": "8864:10:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 5654, - "indexExpression": { - "expression": { - "id": 5652, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "8875:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 5653, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "8879:6:21", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "8875:10:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "8864:22:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 5655, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "8890:1:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "8864:27:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 5662, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "id": 5657, - "name": "pegoutCollateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5287, - "src": "8895:16:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 5660, - "indexExpression": { - "expression": { - "id": 5658, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "8912:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 5659, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "8916:6:21", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "8912:10:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "8895:28:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 5661, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "8927:1:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "8895:33:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "8864:64:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303730", - "id": 5664, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "8930:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_a80fe4c2764b7c4b52829ebb2b1bb3117b2b8ffa6a6401dbe00248ec851a73a8", - "typeString": "literal_string \"LBC070\"" - }, - "value": "LBC070" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_a80fe4c2764b7c4b52829ebb2b1bb3117b2b8ffa6a6401dbe00248ec851a73a8", - "typeString": "literal_string \"LBC070\"" - } - ], - "id": 5650, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "8856:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 5665, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "8856:83:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 5666, - "nodeType": "ExpressionStatement", - "src": "8856:83:21" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 5673, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "id": 5668, - "name": "resignationBlockNum", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5301, - "src": "8970:19:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 5671, - "indexExpression": { - "expression": { - "id": 5669, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "8990:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 5670, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "8994:6:21", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "8990:10:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "8970:31:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 5672, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9005:1:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "8970:36:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303039", - "id": 5674, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9020:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_f838e22b544c153329abcc9856d1b1f7e7f6c83118dc13d7a0606e65edb3cdd8", - "typeString": "literal_string \"LBC009\"" - }, - "value": "LBC009" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_f838e22b544c153329abcc9856d1b1f7e7f6c83118dc13d7a0606e65edb3cdd8", - "typeString": "literal_string \"LBC009\"" - } - ], - "id": 5667, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "8949:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 5675, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "8949:89:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 5676, - "nodeType": "ExpressionStatement", - "src": "8949:89:21" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "id": 5689, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "arguments": [ - { - "id": 5680, - "name": "_providerType", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5637, - "src": "9080:13:21", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "expression": { - "id": 5678, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "9063:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 5679, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "9067:12:21", - "memberName": "encodePacked", - "nodeType": "MemberAccess", - "src": "9063:16:21", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 5681, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "9063:31:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 5677, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967288, - "src": "9053:9:21", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 5682, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "9053:42:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "arguments": [ - { - "arguments": [ - { - "hexValue": "706567696e", - "id": 5686, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9126:7:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_4dc7b383aaca8b1076677685b160d1864e4801cbbaf42c8044d4665ea1c41120", - "typeString": "literal_string \"pegin\"" - }, - "value": "pegin" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_4dc7b383aaca8b1076677685b160d1864e4801cbbaf42c8044d4665ea1c41120", - "typeString": "literal_string \"pegin\"" - } - ], - "expression": { - "id": 5684, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "9109:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 5685, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "9113:12:21", - "memberName": "encodePacked", - "nodeType": "MemberAccess", - "src": "9109:16:21", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 5687, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "9109:25:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 5683, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967288, - "src": "9099:9:21", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 5688, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "9099:36:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "src": "9053:82:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "condition": { - "commonType": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "id": 5719, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "arguments": [ - { - "id": 5710, - "name": "_providerType", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5637, - "src": "9292:13:21", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "expression": { - "id": 5708, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "9275:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 5709, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "9279:12:21", - "memberName": "encodePacked", - "nodeType": "MemberAccess", - "src": "9275:16:21", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 5711, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "9275:31:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 5707, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967288, - "src": "9265:9:21", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 5712, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "9265:42:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "arguments": [ - { - "arguments": [ - { - "hexValue": "7065676f7574", - "id": 5716, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9338:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_ac320a165668abf6cbe2f0b8e46bf2426fe38861df98fc1861161bf05a853587", - "typeString": "literal_string \"pegout\"" - }, - "value": "pegout" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_ac320a165668abf6cbe2f0b8e46bf2426fe38861df98fc1861161bf05a853587", - "typeString": "literal_string \"pegout\"" - } - ], - "expression": { - "id": 5714, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "9321:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 5715, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "9325:12:21", - "memberName": "encodePacked", - "nodeType": "MemberAccess", - "src": "9321:16:21", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 5717, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "9321:26:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 5713, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967288, - "src": "9311:9:21", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 5718, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "9311:37:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "src": "9265:83:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 5778, - "nodeType": "Block", - "src": "9480:269:21", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 5743, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 5738, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "9502:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 5739, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "9506:5:21", - "memberName": "value", - "nodeType": "MemberAccess", - "src": "9502:9:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 5742, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 5740, - "name": "minCollateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5303, - "src": "9515:13:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "*", - "rightExpression": { - "hexValue": "32", - "id": 5741, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9531:1:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_2_by_1", - "typeString": "int_const 2" - }, - "value": "2" - }, - "src": "9515:17:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "9502:30:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303038", - "id": 5744, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9534:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_26efcc4d852e81be6f75389e4f50496331355ea059764b90ab1412936d29ab69", - "typeString": "literal_string \"LBC008\"" - }, - "value": "LBC008" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_26efcc4d852e81be6f75389e4f50496331355ea059764b90ab1412936d29ab69", - "typeString": "literal_string \"LBC008\"" - } - ], - "id": 5737, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "9494:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 5745, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "9494:49:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 5746, - "nodeType": "ExpressionStatement", - "src": "9494:49:21" - }, - { - "assignments": [ - 5748 - ], - "declarations": [ - { - "constant": false, - "id": 5748, - "mutability": "mutable", - "name": "halfMsgValue", - "nameLocation": "9562:12:21", - "nodeType": "VariableDeclaration", - "scope": 5778, - "src": "9557:17:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5747, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "9557:4:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 5753, - "initialValue": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 5752, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 5749, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "9577:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 5750, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "9581:5:21", - "memberName": "value", - "nodeType": "MemberAccess", - "src": "9577:9:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "/", - "rightExpression": { - "hexValue": "32", - "id": 5751, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9589:1:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_2_by_1", - "typeString": "int_const 2" - }, - "value": "2" - }, - "src": "9577:13:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "9557:33:21" - }, - { - "expression": { - "id": 5769, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 5754, - "name": "collateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5283, - "src": "9604:10:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 5757, - "indexExpression": { - "expression": { - "id": 5755, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "9615:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 5756, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "9619:6:21", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "9615:10:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "9604:22:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 5763, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 5761, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 5758, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "9629:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 5759, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "9633:5:21", - "memberName": "value", - "nodeType": "MemberAccess", - "src": "9629:9:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "%", - "rightExpression": { - "hexValue": "32", - "id": 5760, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9641:1:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_2_by_1", - "typeString": "int_const 2" - }, - "value": "2" - }, - "src": "9629:13:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 5762, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9646:1:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "9629:18:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 5767, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 5765, - "name": "halfMsgValue", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5748, - "src": "9665:12:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "hexValue": "31", - "id": 5766, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9680:1:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "9665:16:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 5768, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "Conditional", - "src": "9629:52:21", - "trueExpression": { - "id": 5764, - "name": "halfMsgValue", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5748, - "src": "9650:12:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "9604:77:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 5770, - "nodeType": "ExpressionStatement", - "src": "9604:77:21" - }, - { - "expression": { - "id": 5776, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 5771, - "name": "pegoutCollateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5287, - "src": "9695:16:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 5774, - "indexExpression": { - "expression": { - "id": 5772, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "9712:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 5773, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "9716:6:21", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "9712:10:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "9695:28:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 5775, - "name": "halfMsgValue", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5748, - "src": "9726:12:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "9695:43:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 5777, - "nodeType": "ExpressionStatement", - "src": "9695:43:21" - } - ] - }, - "id": 5779, - "nodeType": "IfStatement", - "src": "9261:488:21", - "trueBody": { - "id": 5736, - "nodeType": "Block", - "src": "9350:124:21", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 5724, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 5721, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "9372:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 5722, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "9376:5:21", - "memberName": "value", - "nodeType": "MemberAccess", - "src": "9372:9:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "id": 5723, - "name": "minCollateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5303, - "src": "9385:13:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "9372:26:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303038", - "id": 5725, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9400:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_26efcc4d852e81be6f75389e4f50496331355ea059764b90ab1412936d29ab69", - "typeString": "literal_string \"LBC008\"" - }, - "value": "LBC008" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_26efcc4d852e81be6f75389e4f50496331355ea059764b90ab1412936d29ab69", - "typeString": "literal_string \"LBC008\"" - } - ], - "id": 5720, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "9364:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 5726, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "9364:45:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 5727, - "nodeType": "ExpressionStatement", - "src": "9364:45:21" - }, - { - "expression": { - "id": 5734, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 5728, - "name": "pegoutCollateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5287, - "src": "9423:16:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 5731, - "indexExpression": { - "expression": { - "id": 5729, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "9440:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 5730, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "9444:6:21", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "9440:10:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "9423:28:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "expression": { - "id": 5732, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "9454:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 5733, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "9458:5:21", - "memberName": "value", - "nodeType": "MemberAccess", - "src": "9454:9:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "9423:40:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 5735, - "nodeType": "ExpressionStatement", - "src": "9423:40:21" - } - ] - } - }, - "id": 5780, - "nodeType": "IfStatement", - "src": "9049:700:21", - "trueBody": { - "id": 5706, - "nodeType": "Block", - "src": "9137:118:21", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 5694, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 5691, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "9159:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 5692, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "9163:5:21", - "memberName": "value", - "nodeType": "MemberAccess", - "src": "9159:9:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "id": 5693, - "name": "minCollateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5303, - "src": "9172:13:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "9159:26:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303038", - "id": 5695, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9187:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_26efcc4d852e81be6f75389e4f50496331355ea059764b90ab1412936d29ab69", - "typeString": "literal_string \"LBC008\"" - }, - "value": "LBC008" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_26efcc4d852e81be6f75389e4f50496331355ea059764b90ab1412936d29ab69", - "typeString": "literal_string \"LBC008\"" - } - ], - "id": 5690, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "9151:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 5696, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "9151:45:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 5697, - "nodeType": "ExpressionStatement", - "src": "9151:45:21" - }, - { - "expression": { - "id": 5704, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 5698, - "name": "collateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5283, - "src": "9210:10:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 5701, - "indexExpression": { - "expression": { - "id": 5699, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "9221:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 5700, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "9225:6:21", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "9221:10:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "9210:22:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "expression": { - "id": 5702, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "9235:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 5703, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "9239:5:21", - "memberName": "value", - "nodeType": "MemberAccess", - "src": "9235:9:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "9210:34:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 5705, - "nodeType": "ExpressionStatement", - "src": "9210:34:21" - } - ] - } - }, - { - "expression": { - "id": 5782, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "9759:12:21", - "subExpression": { - "id": 5781, - "name": "providerId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5313, - "src": "9759:10:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 5783, - "nodeType": "ExpressionStatement", - "src": "9759:12:21" - }, - { - "expression": { - "id": 5796, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 5784, - "name": "liquidityProviders", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5292, - "src": "9781:18:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_LiquidityProvider_$5134_storage_$", - "typeString": "mapping(uint256 => struct LiquidityBridgeContract.LiquidityProvider storage ref)" - } - }, - "id": 5786, - "indexExpression": { - "id": 5785, - "name": "providerId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5313, - "src": "9800:10:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "9781:30:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$5134_storage", - "typeString": "struct LiquidityBridgeContract.LiquidityProvider storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 5788, - "name": "providerId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5313, - "src": "9850:10:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "expression": { - "id": 5789, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "9884:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 5790, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "9888:6:21", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "9884:10:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 5791, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5631, - "src": "9914:5:21", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "id": 5792, - "name": "_apiBaseUrl", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5633, - "src": "9945:11:21", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "id": 5793, - "name": "_status", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5635, - "src": "9978:7:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "id": 5794, - "name": "_providerType", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5637, - "src": "10013:13:21", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 5787, - "name": "LiquidityProvider", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5134, - "src": "9814:17:21", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_struct$_LiquidityProvider_$5134_storage_ptr_$", - "typeString": "type(struct LiquidityBridgeContract.LiquidityProvider storage pointer)" - } - }, - "id": 5795, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "structConstructorCall", - "lValueRequested": false, - "nameLocations": [ - "9846:2:21", - "9874:8:21", - "9908:4:21", - "9933:10:21", - "9970:6:21", - "9999:12:21" - ], - "names": [ - "id", - "provider", - "name", - "apiBaseUrl", - "status", - "providerType" - ], - "nodeType": "FunctionCall", - "src": "9814:223:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$5134_memory_ptr", - "typeString": "struct LiquidityBridgeContract.LiquidityProvider memory" - } - }, - "src": "9781:256:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$5134_storage", - "typeString": "struct LiquidityBridgeContract.LiquidityProvider storage ref" - } - }, - "id": 5797, - "nodeType": "ExpressionStatement", - "src": "9781:256:21" - }, - { - "eventCall": { - "arguments": [ - { - "id": 5799, - "name": "providerId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5313, - "src": "10061:10:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "expression": { - "id": 5800, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "10073:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 5801, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "10077:6:21", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "10073:10:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 5802, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "10085:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 5803, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "10089:5:21", - "memberName": "value", - "nodeType": "MemberAccess", - "src": "10085:9:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 5798, - "name": "Register", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5142, - "src": "10052:8:21", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (uint256,address,uint256)" - } - }, - "id": 5804, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "10052:43:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 5805, - "nodeType": "EmitStatement", - "src": "10047:48:21" - }, - { - "expression": { - "components": [ - { - "id": 5806, - "name": "providerId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5313, - "src": "10113:10:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "id": 5807, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "10112:12:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 5643, - "id": 5808, - "nodeType": "Return", - "src": "10105:19:21" - } - ] - }, - "documentation": { - "id": 5629, - "nodeType": "StructuredDocumentation", - "src": "8368:98:21", - "text": "@dev Registers msg.sender as a liquidity provider with msg.value as collateral" - }, - "functionSelector": "41705518", - "id": 5810, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "id": 5640, - "kind": "modifierInvocation", - "modifierName": { - "id": 5639, - "name": "onlyEoa", - "nameLocations": [ - "8635:7:21" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 5368, - "src": "8635:7:21" - }, - "nodeType": "ModifierInvocation", - "src": "8635:7:21" - } - ], - "name": "register", - "nameLocation": "8480:8:21", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 5638, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5631, - "mutability": "mutable", - "name": "_name", - "nameLocation": "8512:5:21", - "nodeType": "VariableDeclaration", - "scope": 5810, - "src": "8498:19:21", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 5630, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "8498:6:21", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5633, - "mutability": "mutable", - "name": "_apiBaseUrl", - "nameLocation": "8541:11:21", - "nodeType": "VariableDeclaration", - "scope": 5810, - "src": "8527:25:21", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 5632, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "8527:6:21", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5635, - "mutability": "mutable", - "name": "_status", - "nameLocation": "8567:7:21", - "nodeType": "VariableDeclaration", - "scope": 5810, - "src": "8562:12:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 5634, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "8562:4:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5637, - "mutability": "mutable", - "name": "_providerType", - "nameLocation": "8598:13:21", - "nodeType": "VariableDeclaration", - "scope": 5810, - "src": "8584:27:21", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 5636, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "8584:6:21", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "8488:129:21" - }, - "returnParameters": { - "id": 5643, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5642, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 5810, - "src": "8652:4:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5641, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "8652:4:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "8651:6:21" - }, - "scope": 7898, - "src": "8471:1660:21", - "stateMutability": "payable", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 5887, - "nodeType": "Block", - "src": "10373:591:21", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 5827, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "arguments": [ - { - "id": 5823, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5813, - "src": "10397:5:21", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 5822, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "10391:5:21", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": { - "id": 5821, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "10391:5:21", - "typeDescriptions": {} - } - }, - "id": 5824, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "10391:12:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 5825, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "10404:6:21", - "memberName": "length", - "nodeType": "MemberAccess", - "src": "10391:19:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 5826, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "10413:1:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "10391:23:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303130", - "id": 5828, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "10416:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_b91014d5c812b217b1f7abf06d04044851a14f3d4efa9b6795d3964c23897cc9", - "typeString": "literal_string \"LBC010\"" - }, - "value": "LBC010" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_b91014d5c812b217b1f7abf06d04044851a14f3d4efa9b6795d3964c23897cc9", - "typeString": "literal_string \"LBC010\"" - } - ], - "id": 5820, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "10383:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 5829, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "10383:42:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 5830, - "nodeType": "ExpressionStatement", - "src": "10383:42:21" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 5838, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "arguments": [ - { - "id": 5834, - "name": "_apiBaseUrl", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5815, - "src": "10462:11:21", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 5833, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "10456:5:21", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": { - "id": 5832, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "10456:5:21", - "typeDescriptions": {} - } - }, - "id": 5835, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "10456:18:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 5836, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "10475:6:21", - "memberName": "length", - "nodeType": "MemberAccess", - "src": "10456:25:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 5837, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "10484:1:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "10456:29:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303137", - "id": 5839, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "10499:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_849663c0a27b21987cfc03f3233af0a7a46b23f0af09d39a18720d9610bcba81", - "typeString": "literal_string \"LBC017\"" - }, - "value": "LBC017" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_849663c0a27b21987cfc03f3233af0a7a46b23f0af09d39a18720d9610bcba81", - "typeString": "literal_string \"LBC017\"" - } - ], - "id": 5831, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "10435:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 5840, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "10435:82:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 5841, - "nodeType": "ExpressionStatement", - "src": "10435:82:21" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 5883, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 5869, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "id": 5855, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "arguments": [ - { - "id": 5846, - "name": "_providerType", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5817, - "src": "10638:13:21", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "expression": { - "id": 5844, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "10621:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 5845, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "10625:12:21", - "memberName": "encodePacked", - "nodeType": "MemberAccess", - "src": "10621:16:21", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 5847, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "10621:31:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 5843, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967288, - "src": "10611:9:21", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 5848, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "10611:42:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "arguments": [ - { - "arguments": [ - { - "hexValue": "706567696e", - "id": 5852, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "10696:7:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_4dc7b383aaca8b1076677685b160d1864e4801cbbaf42c8044d4665ea1c41120", - "typeString": "literal_string \"pegin\"" - }, - "value": "pegin" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_4dc7b383aaca8b1076677685b160d1864e4801cbbaf42c8044d4665ea1c41120", - "typeString": "literal_string \"pegin\"" - } - ], - "expression": { - "id": 5850, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "10679:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 5851, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "10683:12:21", - "memberName": "encodePacked", - "nodeType": "MemberAccess", - "src": "10679:16:21", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 5853, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "10679:25:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 5849, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967288, - "src": "10669:9:21", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 5854, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "10669:36:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "src": "10611:94:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "id": 5868, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "arguments": [ - { - "id": 5859, - "name": "_providerType", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5817, - "src": "10748:13:21", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "expression": { - "id": 5857, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "10731:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 5858, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "10735:12:21", - "memberName": "encodePacked", - "nodeType": "MemberAccess", - "src": "10731:16:21", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 5860, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "10731:31:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 5856, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967288, - "src": "10721:9:21", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 5861, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "10721:42:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "arguments": [ - { - "arguments": [ - { - "hexValue": "7065676f7574", - "id": 5865, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "10806:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_ac320a165668abf6cbe2f0b8e46bf2426fe38861df98fc1861161bf05a853587", - "typeString": "literal_string \"pegout\"" - }, - "value": "pegout" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_ac320a165668abf6cbe2f0b8e46bf2426fe38861df98fc1861161bf05a853587", - "typeString": "literal_string \"pegout\"" - } - ], - "expression": { - "id": 5863, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "10789:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 5864, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "10793:12:21", - "memberName": "encodePacked", - "nodeType": "MemberAccess", - "src": "10789:16:21", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 5866, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "10789:26:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 5862, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967288, - "src": "10779:9:21", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 5867, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "10779:37:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "src": "10721:95:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "10611:205:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "id": 5882, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "arguments": [ - { - "id": 5873, - "name": "_providerType", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5817, - "src": "10859:13:21", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "expression": { - "id": 5871, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "10842:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 5872, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "10846:12:21", - "memberName": "encodePacked", - "nodeType": "MemberAccess", - "src": "10842:16:21", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 5874, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "10842:31:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 5870, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967288, - "src": "10832:9:21", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 5875, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "10832:42:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "arguments": [ - { - "arguments": [ - { - "hexValue": "626f7468", - "id": 5879, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "10917:6:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_36ad643d447cde9387780ae6f5b371120b595aaff5d56b8440952d5f7116fa16", - "typeString": "literal_string \"both\"" - }, - "value": "both" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_36ad643d447cde9387780ae6f5b371120b595aaff5d56b8440952d5f7116fa16", - "typeString": "literal_string \"both\"" - } - ], - "expression": { - "id": 5877, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "10900:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 5878, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "10904:12:21", - "memberName": "encodePacked", - "nodeType": "MemberAccess", - "src": "10900:16:21", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 5880, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "10900:24:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 5876, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967288, - "src": "10890:9:21", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 5881, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "10890:35:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "src": "10832:93:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "10611:314:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303138", - "id": 5884, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "10939:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c8a2f96b1c149a2cda2dda6db9bbdafbecddac69bce104e31ad4dd14842e4820", - "typeString": "literal_string \"LBC018\"" - }, - "value": "LBC018" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_c8a2f96b1c149a2cda2dda6db9bbdafbecddac69bce104e31ad4dd14842e4820", - "typeString": "literal_string \"LBC018\"" - } - ], - "id": 5842, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "10590:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 5885, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "10590:367:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 5886, - "nodeType": "ExpressionStatement", - "src": "10590:367:21" - } - ] - }, - "documentation": { - "id": 5811, - "nodeType": "StructuredDocumentation", - "src": "10137:74:21", - "text": "@dev Validates input parameters for the register function" - }, - "id": 5888, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "validateRegisterParameters", - "nameLocation": "10225:26:21", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 5818, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5813, - "mutability": "mutable", - "name": "_name", - "nameLocation": "10275:5:21", - "nodeType": "VariableDeclaration", - "scope": 5888, - "src": "10261:19:21", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 5812, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "10261:6:21", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5815, - "mutability": "mutable", - "name": "_apiBaseUrl", - "nameLocation": "10304:11:21", - "nodeType": "VariableDeclaration", - "scope": 5888, - "src": "10290:25:21", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 5814, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "10290:6:21", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 5817, - "mutability": "mutable", - "name": "_providerType", - "nameLocation": "10339:13:21", - "nodeType": "VariableDeclaration", - "scope": 5888, - "src": "10325:27:21", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 5816, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "10325:6:21", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "10251:107:21" - }, - "returnParameters": { - "id": 5819, - "nodeType": "ParameterList", - "parameters": [], - "src": "10373:0:21" - }, - "scope": 7898, - "src": "10216:748:21", - "stateMutability": "pure", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 5968, - "nodeType": "Block", - "src": "11084:618:21", - "statements": [ - { - "assignments": [ - 5902 - ], - "declarations": [ - { - "constant": false, - "id": 5902, - "mutability": "mutable", - "name": "providersToReturn", - "nameLocation": "11121:17:21", - "nodeType": "VariableDeclaration", - "scope": 5968, - "src": "11094:44:21", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_LiquidityProvider_$5134_memory_ptr_$dyn_memory_ptr", - "typeString": "struct LiquidityBridgeContract.LiquidityProvider[]" - }, - "typeName": { - "baseType": { - "id": 5900, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 5899, - "name": "LiquidityProvider", - "nameLocations": [ - "11094:17:21" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 5134, - "src": "11094:17:21" - }, - "referencedDeclaration": 5134, - "src": "11094:17:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$5134_storage_ptr", - "typeString": "struct LiquidityBridgeContract.LiquidityProvider" - } - }, - "id": 5901, - "nodeType": "ArrayTypeName", - "src": "11094:19:21", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_LiquidityProvider_$5134_storage_$dyn_storage_ptr", - "typeString": "struct LiquidityBridgeContract.LiquidityProvider[]" - } - }, - "visibility": "internal" - } - ], - "id": 5910, - "initialValue": { - "arguments": [ - { - "expression": { - "id": 5907, - "name": "providerIds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5891, - "src": "11178:11:21", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", - "typeString": "uint256[] memory" - } - }, - "id": 5908, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "11190:6:21", - "memberName": "length", - "nodeType": "MemberAccess", - "src": "11178:18:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 5906, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "NewExpression", - "src": "11141:23:21", - "typeDescriptions": { - "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_struct$_LiquidityProvider_$5134_memory_ptr_$dyn_memory_ptr_$", - "typeString": "function (uint256) pure returns (struct LiquidityBridgeContract.LiquidityProvider memory[] memory)" - }, - "typeName": { - "baseType": { - "id": 5904, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 5903, - "name": "LiquidityProvider", - "nameLocations": [ - "11145:17:21" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 5134, - "src": "11145:17:21" - }, - "referencedDeclaration": 5134, - "src": "11145:17:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$5134_storage_ptr", - "typeString": "struct LiquidityBridgeContract.LiquidityProvider" - } - }, - "id": 5905, - "nodeType": "ArrayTypeName", - "src": "11145:19:21", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_LiquidityProvider_$5134_storage_$dyn_storage_ptr", - "typeString": "struct LiquidityBridgeContract.LiquidityProvider[]" - } - } - }, - "id": 5909, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "11141:65:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_LiquidityProvider_$5134_memory_ptr_$dyn_memory_ptr", - "typeString": "struct LiquidityBridgeContract.LiquidityProvider memory[] memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "11094:112:21" - }, - { - "assignments": [ - 5912 - ], - "declarations": [ - { - "constant": false, - "id": 5912, - "mutability": "mutable", - "name": "count", - "nameLocation": "11221:5:21", - "nodeType": "VariableDeclaration", - "scope": 5968, - "src": "11216:10:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5911, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "11216:4:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 5914, - "initialValue": { - "hexValue": "30", - "id": 5913, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "11229:1:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "11216:14:21" - }, - { - "body": { - "id": 5964, - "nodeType": "Block", - "src": "11287:375:21", - "statements": [ - { - "assignments": [ - 5927 - ], - "declarations": [ - { - "constant": false, - "id": 5927, - "mutability": "mutable", - "name": "id", - "nameLocation": "11306:2:21", - "nodeType": "VariableDeclaration", - "scope": 5964, - "src": "11301:7:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5926, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "11301:4:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 5931, - "initialValue": { - "baseExpression": { - "id": 5928, - "name": "providerIds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5891, - "src": "11311:11:21", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", - "typeString": "uint256[] memory" - } - }, - "id": 5930, - "indexExpression": { - "id": 5929, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5916, - "src": "11323:1:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "11311:14:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "11301:24:21" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 5950, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "components": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 5944, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "expression": { - "baseExpression": { - "id": 5933, - "name": "liquidityProviders", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5292, - "src": "11374:18:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_LiquidityProvider_$5134_storage_$", - "typeString": "mapping(uint256 => struct LiquidityBridgeContract.LiquidityProvider storage ref)" - } - }, - "id": 5935, - "indexExpression": { - "id": 5934, - "name": "id", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5927, - "src": "11393:2:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "11374:22:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$5134_storage", - "typeString": "struct LiquidityBridgeContract.LiquidityProvider storage ref" - } - }, - "id": 5936, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "11397:8:21", - "memberName": "provider", - "nodeType": "MemberAccess", - "referencedDeclaration": 5125, - "src": "11374:31:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 5932, - "name": "isRegistered", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7554, - "src": "11361:12:21", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", - "typeString": "function (address) view returns (bool)" - } - }, - "id": 5937, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "11361:45:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "arguments": [ - { - "expression": { - "baseExpression": { - "id": 5939, - "name": "liquidityProviders", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5292, - "src": "11448:18:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_LiquidityProvider_$5134_storage_$", - "typeString": "mapping(uint256 => struct LiquidityBridgeContract.LiquidityProvider storage ref)" - } - }, - "id": 5941, - "indexExpression": { - "id": 5940, - "name": "id", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5927, - "src": "11467:2:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "11448:22:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$5134_storage", - "typeString": "struct LiquidityBridgeContract.LiquidityProvider storage ref" - } - }, - "id": 5942, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "11471:8:21", - "memberName": "provider", - "nodeType": "MemberAccess", - "referencedDeclaration": 5125, - "src": "11448:31:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 5938, - "name": "isRegisteredForPegout", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7574, - "src": "11426:21:21", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", - "typeString": "function (address) view returns (bool)" - } - }, - "id": 5943, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "11426:54:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "11361:119:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "id": 5945, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "11360:121:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "expression": { - "baseExpression": { - "id": 5946, - "name": "liquidityProviders", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5292, - "src": "11501:18:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_LiquidityProvider_$5134_storage_$", - "typeString": "mapping(uint256 => struct LiquidityBridgeContract.LiquidityProvider storage ref)" - } - }, - "id": 5948, - "indexExpression": { - "id": 5947, - "name": "id", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5927, - "src": "11520:2:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "11501:22:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$5134_storage", - "typeString": "struct LiquidityBridgeContract.LiquidityProvider storage ref" - } - }, - "id": 5949, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "11524:6:21", - "memberName": "status", - "nodeType": "MemberAccess", - "referencedDeclaration": 5131, - "src": "11501:29:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "11360:170:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 5963, - "nodeType": "IfStatement", - "src": "11339:313:21", - "trueBody": { - "id": 5962, - "nodeType": "Block", - "src": "11545:107:21", - "statements": [ - { - "expression": { - "id": 5957, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 5951, - "name": "providersToReturn", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5902, - "src": "11563:17:21", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_LiquidityProvider_$5134_memory_ptr_$dyn_memory_ptr", - "typeString": "struct LiquidityBridgeContract.LiquidityProvider memory[] memory" - } - }, - "id": 5953, - "indexExpression": { - "id": 5952, - "name": "count", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5912, - "src": "11581:5:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "11563:24:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$5134_memory_ptr", - "typeString": "struct LiquidityBridgeContract.LiquidityProvider memory" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "baseExpression": { - "id": 5954, - "name": "liquidityProviders", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5292, - "src": "11590:18:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_LiquidityProvider_$5134_storage_$", - "typeString": "mapping(uint256 => struct LiquidityBridgeContract.LiquidityProvider storage ref)" - } - }, - "id": 5956, - "indexExpression": { - "id": 5955, - "name": "id", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5927, - "src": "11609:2:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "11590:22:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$5134_storage", - "typeString": "struct LiquidityBridgeContract.LiquidityProvider storage ref" - } - }, - "src": "11563:49:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$5134_memory_ptr", - "typeString": "struct LiquidityBridgeContract.LiquidityProvider memory" - } - }, - "id": 5958, - "nodeType": "ExpressionStatement", - "src": "11563:49:21" - }, - { - "expression": { - "id": 5960, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "11630:7:21", - "subExpression": { - "id": 5959, - "name": "count", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5912, - "src": "11630:5:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 5961, - "nodeType": "ExpressionStatement", - "src": "11630:7:21" - } - ] - } - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 5922, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 5919, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5916, - "src": "11258:1:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "expression": { - "id": 5920, - "name": "providerIds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5891, - "src": "11262:11:21", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", - "typeString": "uint256[] memory" - } - }, - "id": 5921, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "11274:6:21", - "memberName": "length", - "nodeType": "MemberAccess", - "src": "11262:18:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "11258:22:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 5965, - "initializationExpression": { - "assignments": [ - 5916 - ], - "declarations": [ - { - "constant": false, - "id": 5916, - "mutability": "mutable", - "name": "i", - "nameLocation": "11251:1:21", - "nodeType": "VariableDeclaration", - "scope": 5965, - "src": "11246:6:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 5915, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "11246:4:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 5918, - "initialValue": { - "hexValue": "30", - "id": 5917, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "11255:1:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "11246:10:21" - }, - "loopExpression": { - "expression": { - "id": 5924, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "11282:3:21", - "subExpression": { - "id": 5923, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5916, - "src": "11282:1:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 5925, - "nodeType": "ExpressionStatement", - "src": "11282:3:21" - }, - "nodeType": "ForStatement", - "src": "11241:421:21" - }, - { - "expression": { - "id": 5966, - "name": "providersToReturn", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5902, - "src": "11678:17:21", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_LiquidityProvider_$5134_memory_ptr_$dyn_memory_ptr", - "typeString": "struct LiquidityBridgeContract.LiquidityProvider memory[] memory" - } - }, - "functionReturnParameters": 5897, - "id": 5967, - "nodeType": "Return", - "src": "11671:24:21" - } - ] - }, - "functionSelector": "668dbd83", - "id": 5969, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getProviders", - "nameLocation": "10979:12:21", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 5892, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5891, - "mutability": "mutable", - "name": "providerIds", - "nameLocation": "11015:11:21", - "nodeType": "VariableDeclaration", - "scope": 5969, - "src": "11001:25:21", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", - "typeString": "uint256[]" - }, - "typeName": { - "baseType": { - "id": 5889, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "11001:4:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 5890, - "nodeType": "ArrayTypeName", - "src": "11001:6:21", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", - "typeString": "uint256[]" - } - }, - "visibility": "internal" - } - ], - "src": "10991:41:21" - }, - "returnParameters": { - "id": 5897, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 5896, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 5969, - "src": "11056:26:21", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_LiquidityProvider_$5134_memory_ptr_$dyn_memory_ptr", - "typeString": "struct LiquidityBridgeContract.LiquidityProvider[]" - }, - "typeName": { - "baseType": { - "id": 5894, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 5893, - "name": "LiquidityProvider", - "nameLocations": [ - "11056:17:21" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 5134, - "src": "11056:17:21" - }, - "referencedDeclaration": 5134, - "src": "11056:17:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$5134_storage_ptr", - "typeString": "struct LiquidityBridgeContract.LiquidityProvider" - } - }, - "id": 5895, - "nodeType": "ArrayTypeName", - "src": "11056:19:21", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_LiquidityProvider_$5134_storage_$dyn_storage_ptr", - "typeString": "struct LiquidityBridgeContract.LiquidityProvider[]" - } - }, - "visibility": "internal" - } - ], - "src": "11055:28:21" - }, - "scope": 7898, - "src": "10970:732:21", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 5990, - "nodeType": "Block", - "src": "11843:108:21", - "statements": [ - { - "expression": { - "id": 5981, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 5975, - "name": "collateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5283, - "src": "11853:10:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 5978, - "indexExpression": { - "expression": { - "id": 5976, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "11864:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 5977, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "11868:6:21", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "11864:10:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "11853:22:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "+=", - "rightHandSide": { - "expression": { - "id": 5979, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "11879:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 5980, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "11883:5:21", - "memberName": "value", - "nodeType": "MemberAccess", - "src": "11879:9:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "11853:35:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 5982, - "nodeType": "ExpressionStatement", - "src": "11853:35:21" - }, - { - "eventCall": { - "arguments": [ - { - "expression": { - "id": 5984, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "11922:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 5985, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "11926:6:21", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "11922:10:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 5986, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "11934:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 5987, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "11938:5:21", - "memberName": "value", - "nodeType": "MemberAccess", - "src": "11934:9:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 5983, - "name": "CollateralIncrease", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5154, - "src": "11903:18:21", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,uint256)" - } - }, - "id": 5988, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "11903:41:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 5989, - "nodeType": "EmitStatement", - "src": "11898:46:21" - } - ] - }, - "documentation": { - "id": 5970, - "nodeType": "StructuredDocumentation", - "src": "11708:73:21", - "text": "@dev Increases the amount of collateral of the sender" - }, - "functionSelector": "9e816999", - "id": 5991, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "id": 5973, - "kind": "modifierInvocation", - "modifierName": { - "id": 5972, - "name": "onlyRegistered", - "nameLocations": [ - "11828:14:21" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 5343, - "src": "11828:14:21" - }, - "nodeType": "ModifierInvocation", - "src": "11828:14:21" - } - ], - "name": "addCollateral", - "nameLocation": "11795:13:21", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 5971, - "nodeType": "ParameterList", - "parameters": [], - "src": "11808:2:21" - }, - "returnParameters": { - "id": 5974, - "nodeType": "ParameterList", - "parameters": [], - "src": "11843:0:21" - }, - "scope": 7898, - "src": "11786:165:21", - "stateMutability": "payable", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 6011, - "nodeType": "Block", - "src": "12029:120:21", - "statements": [ - { - "expression": { - "id": 6002, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 5996, - "name": "pegoutCollateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5287, - "src": "12039:16:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 5999, - "indexExpression": { - "expression": { - "id": 5997, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "12056:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 5998, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "12060:6:21", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "12056:10:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "12039:28:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "+=", - "rightHandSide": { - "expression": { - "id": 6000, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "12071:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 6001, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "12075:5:21", - "memberName": "value", - "nodeType": "MemberAccess", - "src": "12071:9:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "12039:41:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 6003, - "nodeType": "ExpressionStatement", - "src": "12039:41:21" - }, - { - "eventCall": { - "arguments": [ - { - "expression": { - "id": 6005, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "12120:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 6006, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "12124:6:21", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "12120:10:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 6007, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "12132:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 6008, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "12136:5:21", - "memberName": "value", - "nodeType": "MemberAccess", - "src": "12132:9:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 6004, - "name": "PegoutCollateralIncrease", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5160, - "src": "12095:24:21", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,uint256)" - } - }, - "id": 6009, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "12095:47:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 6010, - "nodeType": "EmitStatement", - "src": "12090:52:21" - } - ] - }, - "functionSelector": "4198687e", - "id": 6012, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "id": 5994, - "kind": "modifierInvocation", - "modifierName": { - "id": 5993, - "name": "onlyRegisteredForPegout", - "nameLocations": [ - "12005:23:21" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 5355, - "src": "12005:23:21" - }, - "nodeType": "ModifierInvocation", - "src": "12005:23:21" - } - ], - "name": "addPegoutCollateral", - "nameLocation": "11966:19:21", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 5992, - "nodeType": "ParameterList", - "parameters": [], - "src": "11985:2:21" - }, - "returnParameters": { - "id": 5995, - "nodeType": "ParameterList", - "parameters": [], - "src": "12029:0:21" - }, - "scope": 7898, - "src": "11957:192:21", - "stateMutability": "payable", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 6025, - "nodeType": "Block", - "src": "12271:55:21", - "statements": [ - { - "expression": { - "arguments": [ - { - "expression": { - "id": 6019, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "12297:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 6020, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "12301:6:21", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "12297:10:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 6021, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "12309:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 6022, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "12313:5:21", - "memberName": "value", - "nodeType": "MemberAccess", - "src": "12309:9:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 6018, - "name": "increaseBalance", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7514, - "src": "12281:15:21", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,uint256)" - } - }, - "id": 6023, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "12281:38:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 6024, - "nodeType": "ExpressionStatement", - "src": "12281:38:21" - } - ] - }, - "documentation": { - "id": 6013, - "nodeType": "StructuredDocumentation", - "src": "12155:60:21", - "text": "@dev Increases the balance of the sender" - }, - "functionSelector": "d0e30db0", - "id": 6026, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "id": 6016, - "kind": "modifierInvocation", - "modifierName": { - "id": 6015, - "name": "onlyRegistered", - "nameLocations": [ - "12256:14:21" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 5343, - "src": "12256:14:21" - }, - "nodeType": "ModifierInvocation", - "src": "12256:14:21" - } - ], - "name": "deposit", - "nameLocation": "12229:7:21", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 6014, - "nodeType": "ParameterList", - "parameters": [], - "src": "12236:2:21" - }, - "returnParameters": { - "id": 6017, - "nodeType": "ParameterList", - "parameters": [], - "src": "12271:0:21" - }, - "scope": 7898, - "src": "12220:106:21", - "stateMutability": "payable", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 6070, - "nodeType": "Block", - "src": "12472:249:21", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 6038, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "id": 6033, - "name": "balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5279, - "src": "12490:8:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 6036, - "indexExpression": { - "expression": { - "id": 6034, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "12499:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 6035, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "12503:6:21", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "12499:10:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "12490:20:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "id": 6037, - "name": "amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6029, - "src": "12514:6:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "12490:30:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303139", - "id": 6039, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "12522:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_41f42e8d0f67be0e87abf05a33ed728b4868df2f2b92840d9519a852352eb909", - "typeString": "literal_string \"LBC019\"" - }, - "value": "LBC019" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_41f42e8d0f67be0e87abf05a33ed728b4868df2f2b92840d9519a852352eb909", - "typeString": "literal_string \"LBC019\"" - } - ], - "id": 6032, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "12482:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 6040, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "12482:49:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 6041, - "nodeType": "ExpressionStatement", - "src": "12482:49:21" - }, - { - "expression": { - "id": 6047, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 6042, - "name": "balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5279, - "src": "12541:8:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 6045, - "indexExpression": { - "expression": { - "id": 6043, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "12550:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 6044, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "12554:6:21", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "12550:10:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "12541:20:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "-=", - "rightHandSide": { - "id": 6046, - "name": "amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6029, - "src": "12565:6:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "12541:30:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 6048, - "nodeType": "ExpressionStatement", - "src": "12541:30:21" - }, - { - "assignments": [ - 6050, - null - ], - "declarations": [ - { - "constant": false, - "id": 6050, - "mutability": "mutable", - "name": "success", - "nameLocation": "12587:7:21", - "nodeType": "VariableDeclaration", - "scope": 6070, - "src": "12582:12:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 6049, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "12582:4:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - null - ], - "id": 6058, - "initialValue": { - "arguments": [ - { - "hexValue": "", - "id": 6056, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "12630:2:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - }, - "value": "" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - } - ], - "expression": { - "expression": { - "id": 6051, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "12599:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 6052, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "12603:6:21", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "12599:10:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 6053, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "12610:4:21", - "memberName": "call", - "nodeType": "MemberAccess", - "src": "12599:15:21", - "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": 6055, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "names": [ - "value" - ], - "nodeType": "FunctionCallOptions", - "options": [ - { - "id": 6054, - "name": "amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6029, - "src": "12622:6:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "src": "12599:30:21", - "typeDescriptions": { - "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$value", - "typeString": "function (bytes memory) payable returns (bool,bytes memory)" - } - }, - "id": 6057, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "12599:34:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "tuple(bool,bytes memory)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "12581:52:21" - }, - { - "expression": { - "arguments": [ - { - "id": 6060, - "name": "success", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6050, - "src": "12651:7:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303230", - "id": 6061, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "12660:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_5c242c0534fa00b11577be4ea886875d641e4a1ad40749685bb740e7c1a67fc9", - "typeString": "literal_string \"LBC020\"" - }, - "value": "LBC020" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_5c242c0534fa00b11577be4ea886875d641e4a1ad40749685bb740e7c1a67fc9", - "typeString": "literal_string \"LBC020\"" - } - ], - "id": 6059, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "12643:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 6062, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "12643:26:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 6063, - "nodeType": "ExpressionStatement", - "src": "12643:26:21" - }, - { - "eventCall": { - "arguments": [ - { - "expression": { - "id": 6065, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "12695:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 6066, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "12699:6:21", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "12695:10:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 6067, - "name": "amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6029, - "src": "12707:6:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 6064, - "name": "Withdrawal", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5166, - "src": "12684:10:21", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,uint256)" - } - }, - "id": 6068, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "12684:30:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 6069, - "nodeType": "EmitStatement", - "src": "12679:35:21" - } - ] - }, - "documentation": { - "id": 6027, - "nodeType": "StructuredDocumentation", - "src": "12332:92:21", - "text": "@dev Used to withdraw funds\n@param amount The amount to withdraw" - }, - "functionSelector": "2e1a7d4d", - "id": 6071, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "withdraw", - "nameLocation": "12438:8:21", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 6030, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 6029, - "mutability": "mutable", - "name": "amount", - "nameLocation": "12455:6:21", - "nodeType": "VariableDeclaration", - "scope": 6071, - "src": "12447:14:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 6028, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "12447:7:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "12446:16:21" - }, - "returnParameters": { - "id": 6031, - "nodeType": "ParameterList", - "parameters": [], - "src": "12472:0:21" - }, - "scope": 7898, - "src": "12429:292:21", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 6140, - "nodeType": "Block", - "src": "12834:493:21", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 6081, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "id": 6076, - "name": "resignationBlockNum", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5301, - "src": "12852:19:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 6079, - "indexExpression": { - "expression": { - "id": 6077, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "12872:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 6078, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "12876:6:21", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "12872:10:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "12852:31:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 6080, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "12886:1:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "12852:35:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303231", - "id": 6082, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "12889:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_ccfdeeda37cff52b8b53c7f459ead001a00858d8cd279133dc1e599c6257c485", - "typeString": "literal_string \"LBC021\"" - }, - "value": "LBC021" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_ccfdeeda37cff52b8b53c7f459ead001a00858d8cd279133dc1e599c6257c485", - "typeString": "literal_string \"LBC021\"" - } - ], - "id": 6075, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "12844:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 6083, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "12844:54:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 6084, - "nodeType": "ExpressionStatement", - "src": "12844:54:21" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 6094, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 6092, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 6086, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967292, - "src": "12929:5:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 6087, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "12935:6:21", - "memberName": "number", - "nodeType": "MemberAccess", - "src": "12929:12:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "baseExpression": { - "id": 6088, - "name": "resignationBlockNum", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5301, - "src": "12944:19:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 6091, - "indexExpression": { - "expression": { - "id": 6089, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "12964:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 6090, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "12968:6:21", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "12964:10:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "12944:31:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "12929:46:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "id": 6093, - "name": "resignDelayInBlocks", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5309, - "src": "12991:19:21", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "src": "12929:81:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303232", - "id": 6095, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "13024:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_ae5a5bd2536c79a56736074670f517df1b8a17deb822b59dfa1648888074b4cc", - "typeString": "literal_string \"LBC022\"" - }, - "value": "LBC022" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_ae5a5bd2536c79a56736074670f517df1b8a17deb822b59dfa1648888074b4cc", - "typeString": "literal_string \"LBC022\"" - } - ], - "id": 6085, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "12908:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 6096, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "12908:134:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 6097, - "nodeType": "ExpressionStatement", - "src": "12908:134:21" - }, - { - "assignments": [ - 6099 - ], - "declarations": [ - { - "constant": false, - "id": 6099, - "mutability": "mutable", - "name": "amount", - "nameLocation": "13057:6:21", - "nodeType": "VariableDeclaration", - "scope": 6140, - "src": "13052:11:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 6098, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "13052:4:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 6104, - "initialValue": { - "baseExpression": { - "id": 6100, - "name": "collateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5283, - "src": "13066:10:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 6103, - "indexExpression": { - "expression": { - "id": 6101, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "13077:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 6102, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "13081:6:21", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "13077:10:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "13066:22:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "13052:36:21" - }, - { - "expression": { - "id": 6110, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 6105, - "name": "collateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5283, - "src": "13098:10:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 6108, - "indexExpression": { - "expression": { - "id": 6106, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "13109:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 6107, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "13113:6:21", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "13109:10:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "13098:22:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "hexValue": "30", - "id": 6109, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "13123:1:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "13098:26:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 6111, - "nodeType": "ExpressionStatement", - "src": "13098:26:21" - }, - { - "expression": { - "id": 6117, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 6112, - "name": "resignationBlockNum", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5301, - "src": "13134:19:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 6115, - "indexExpression": { - "expression": { - "id": 6113, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "13154:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 6114, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "13158:6:21", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "13154:10:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "13134:31:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "hexValue": "30", - "id": 6116, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "13168:1:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "13134:35:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 6118, - "nodeType": "ExpressionStatement", - "src": "13134:35:21" - }, - { - "assignments": [ - 6120, - null - ], - "declarations": [ - { - "constant": false, - "id": 6120, - "mutability": "mutable", - "name": "success", - "nameLocation": "13185:7:21", - "nodeType": "VariableDeclaration", - "scope": 6140, - "src": "13180:12:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 6119, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "13180:4:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - null - ], - "id": 6128, - "initialValue": { - "arguments": [ - { - "hexValue": "", - "id": 6126, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "13228:2:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - }, - "value": "" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - } - ], - "expression": { - "expression": { - "id": 6121, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "13197:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 6122, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "13201:6:21", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "13197:10:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 6123, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "13208:4:21", - "memberName": "call", - "nodeType": "MemberAccess", - "src": "13197:15:21", - "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": 6125, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "names": [ - "value" - ], - "nodeType": "FunctionCallOptions", - "options": [ - { - "id": 6124, - "name": "amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6099, - "src": "13220:6:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "src": "13197:30:21", - "typeDescriptions": { - "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$value", - "typeString": "function (bytes memory) payable returns (bool,bytes memory)" - } - }, - "id": 6127, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "13197:34:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "tuple(bool,bytes memory)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "13179:52:21" - }, - { - "expression": { - "arguments": [ - { - "id": 6130, - "name": "success", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6120, - "src": "13249:7:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303230", - "id": 6131, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "13258:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_5c242c0534fa00b11577be4ea886875d641e4a1ad40749685bb740e7c1a67fc9", - "typeString": "literal_string \"LBC020\"" - }, - "value": "LBC020" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_5c242c0534fa00b11577be4ea886875d641e4a1ad40749685bb740e7c1a67fc9", - "typeString": "literal_string \"LBC020\"" - } - ], - "id": 6129, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "13241:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 6132, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "13241:26:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 6133, - "nodeType": "ExpressionStatement", - "src": "13241:26:21" - }, - { - "eventCall": { - "arguments": [ - { - "expression": { - "id": 6135, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "13301:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 6136, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "13305:6:21", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "13301:10:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 6137, - "name": "amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6099, - "src": "13313:6:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 6134, - "name": "WithdrawCollateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5172, - "src": "13282:18:21", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,uint256)" - } - }, - "id": 6138, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "13282:38:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 6139, - "nodeType": "EmitStatement", - "src": "13277:43:21" - } - ] - }, - "documentation": { - "id": 6072, - "nodeType": "StructuredDocumentation", - "src": "12727:63:21", - "text": "@dev Used to withdraw the locked collateral" - }, - "functionSelector": "59c153be", - "id": 6141, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "withdrawCollateral", - "nameLocation": "12804:18:21", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 6073, - "nodeType": "ParameterList", - "parameters": [], - "src": "12822:2:21" - }, - "returnParameters": { - "id": 6074, - "nodeType": "ParameterList", - "parameters": [], - "src": "12834:0:21" - }, - "scope": 7898, - "src": "12795:532:21", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 6209, - "nodeType": "Block", - "src": "13378:511:21", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 6150, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "id": 6145, - "name": "resignationBlockNum", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5301, - "src": "13396:19:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 6148, - "indexExpression": { - "expression": { - "id": 6146, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "13416:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 6147, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "13420:6:21", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "13416:10:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "13396:31:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 6149, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "13430:1:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "13396:35:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303231", - "id": 6151, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "13433:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_ccfdeeda37cff52b8b53c7f459ead001a00858d8cd279133dc1e599c6257c485", - "typeString": "literal_string \"LBC021\"" - }, - "value": "LBC021" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_ccfdeeda37cff52b8b53c7f459ead001a00858d8cd279133dc1e599c6257c485", - "typeString": "literal_string \"LBC021\"" - } - ], - "id": 6144, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "13388:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 6152, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "13388:54:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 6153, - "nodeType": "ExpressionStatement", - "src": "13388:54:21" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 6163, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 6161, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 6155, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967292, - "src": "13473:5:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 6156, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "13479:6:21", - "memberName": "number", - "nodeType": "MemberAccess", - "src": "13473:12:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "baseExpression": { - "id": 6157, - "name": "resignationBlockNum", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5301, - "src": "13488:19:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 6160, - "indexExpression": { - "expression": { - "id": 6158, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "13508:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 6159, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "13512:6:21", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "13508:10:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "13488:31:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "13473:46:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "id": 6162, - "name": "resignDelayInBlocks", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5309, - "src": "13535:19:21", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "src": "13473:81:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303232", - "id": 6164, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "13568:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_ae5a5bd2536c79a56736074670f517df1b8a17deb822b59dfa1648888074b4cc", - "typeString": "literal_string \"LBC022\"" - }, - "value": "LBC022" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_ae5a5bd2536c79a56736074670f517df1b8a17deb822b59dfa1648888074b4cc", - "typeString": "literal_string \"LBC022\"" - } - ], - "id": 6154, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "13452:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 6165, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "13452:134:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 6166, - "nodeType": "ExpressionStatement", - "src": "13452:134:21" - }, - { - "assignments": [ - 6168 - ], - "declarations": [ - { - "constant": false, - "id": 6168, - "mutability": "mutable", - "name": "amount", - "nameLocation": "13601:6:21", - "nodeType": "VariableDeclaration", - "scope": 6209, - "src": "13596:11:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 6167, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "13596:4:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 6173, - "initialValue": { - "baseExpression": { - "id": 6169, - "name": "pegoutCollateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5287, - "src": "13610:16:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 6172, - "indexExpression": { - "expression": { - "id": 6170, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "13627:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 6171, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "13631:6:21", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "13627:10:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "13610:28:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "13596:42:21" - }, - { - "expression": { - "id": 6179, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 6174, - "name": "pegoutCollateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5287, - "src": "13648:16:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 6177, - "indexExpression": { - "expression": { - "id": 6175, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "13665:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 6176, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "13669:6:21", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "13665:10:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "13648:28:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "hexValue": "30", - "id": 6178, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "13679:1:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "13648:32:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 6180, - "nodeType": "ExpressionStatement", - "src": "13648:32:21" - }, - { - "expression": { - "id": 6186, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 6181, - "name": "resignationBlockNum", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5301, - "src": "13690:19:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 6184, - "indexExpression": { - "expression": { - "id": 6182, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "13710:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 6183, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "13714:6:21", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "13710:10:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "13690:31:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "hexValue": "30", - "id": 6185, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "13724:1:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "13690:35:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 6187, - "nodeType": "ExpressionStatement", - "src": "13690:35:21" - }, - { - "assignments": [ - 6189, - null - ], - "declarations": [ - { - "constant": false, - "id": 6189, - "mutability": "mutable", - "name": "success", - "nameLocation": "13741:7:21", - "nodeType": "VariableDeclaration", - "scope": 6209, - "src": "13736:12:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 6188, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "13736:4:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - null - ], - "id": 6197, - "initialValue": { - "arguments": [ - { - "hexValue": "", - "id": 6195, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "13784:2:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - }, - "value": "" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - } - ], - "expression": { - "expression": { - "id": 6190, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "13753:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 6191, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "13757:6:21", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "13753:10:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 6192, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "13764:4:21", - "memberName": "call", - "nodeType": "MemberAccess", - "src": "13753:15:21", - "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": 6194, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "names": [ - "value" - ], - "nodeType": "FunctionCallOptions", - "options": [ - { - "id": 6193, - "name": "amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6168, - "src": "13776:6:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "src": "13753:30:21", - "typeDescriptions": { - "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$value", - "typeString": "function (bytes memory) payable returns (bool,bytes memory)" - } - }, - "id": 6196, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "13753:34:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "tuple(bool,bytes memory)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "13735:52:21" - }, - { - "expression": { - "arguments": [ - { - "id": 6199, - "name": "success", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6189, - "src": "13805:7:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303230", - "id": 6200, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "13814:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_5c242c0534fa00b11577be4ea886875d641e4a1ad40749685bb740e7c1a67fc9", - "typeString": "literal_string \"LBC020\"" - }, - "value": "LBC020" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_5c242c0534fa00b11577be4ea886875d641e4a1ad40749685bb740e7c1a67fc9", - "typeString": "literal_string \"LBC020\"" - } - ], - "id": 6198, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "13797:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 6201, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "13797:26:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 6202, - "nodeType": "ExpressionStatement", - "src": "13797:26:21" - }, - { - "eventCall": { - "arguments": [ - { - "expression": { - "id": 6204, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "13863:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 6205, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "13867:6:21", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "13863:10:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 6206, - "name": "amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6168, - "src": "13875:6:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 6203, - "name": "PegoutWithdrawCollateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5178, - "src": "13838:24:21", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,uint256)" - } - }, - "id": 6207, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "13838:44:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 6208, - "nodeType": "EmitStatement", - "src": "13833:49:21" - } - ] - }, - "functionSelector": "35510a7d", - "id": 6210, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "withdrawPegoutCollateral", - "nameLocation": "13342:24:21", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 6142, - "nodeType": "ParameterList", - "parameters": [], - "src": "13366:2:21" - }, - "returnParameters": { - "id": 6143, - "nodeType": "ParameterList", - "parameters": [], - "src": "13378:0:21" - }, - "scope": 7898, - "src": "13333:556:21", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 6239, - "nodeType": "Block", - "src": "14005:163:21", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 6222, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "id": 6217, - "name": "resignationBlockNum", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5301, - "src": "14023:19:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 6220, - "indexExpression": { - "expression": { - "id": 6218, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "14043:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 6219, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "14047:6:21", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "14043:10:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "14023:31:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 6221, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "14058:1:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "14023:36:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303233", - "id": 6223, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "14061:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_1e153c8413fa71b1dc88c42214ae3211e20bbd7d323adc3a7cb82fb90c05d672", - "typeString": "literal_string \"LBC023\"" - }, - "value": "LBC023" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_1e153c8413fa71b1dc88c42214ae3211e20bbd7d323adc3a7cb82fb90c05d672", - "typeString": "literal_string \"LBC023\"" - } - ], - "id": 6216, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "14015:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 6224, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "14015:55:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 6225, - "nodeType": "ExpressionStatement", - "src": "14015:55:21" - }, - { - "expression": { - "id": 6232, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 6226, - "name": "resignationBlockNum", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5301, - "src": "14080:19:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 6229, - "indexExpression": { - "expression": { - "id": 6227, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "14100:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 6228, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "14104:6:21", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "14100:10:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "14080:31:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "expression": { - "id": 6230, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967292, - "src": "14114:5:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 6231, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "14120:6:21", - "memberName": "number", - "nodeType": "MemberAccess", - "src": "14114:12:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "14080:46:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 6233, - "nodeType": "ExpressionStatement", - "src": "14080:46:21" - }, - { - "eventCall": { - "arguments": [ - { - "expression": { - "id": 6235, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "14150:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 6236, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "14154:6:21", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "14150:10:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 6234, - "name": "Resigned", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5182, - "src": "14141:8:21", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$returns$__$", - "typeString": "function (address)" - } - }, - "id": 6237, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "14141:20:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 6238, - "nodeType": "EmitStatement", - "src": "14136:25:21" - } - ] - }, - "documentation": { - "id": 6211, - "nodeType": "StructuredDocumentation", - "src": "13895:63:21", - "text": "@dev Used to resign as a liquidity provider" - }, - "functionSelector": "69652fcf", - "id": 6240, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "id": 6214, - "kind": "modifierInvocation", - "modifierName": { - "id": 6213, - "name": "onlyRegistered", - "nameLocations": [ - "13990:14:21" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 5343, - "src": "13990:14:21" - }, - "nodeType": "ModifierInvocation", - "src": "13990:14:21" - } - ], - "name": "resign", - "nameLocation": "13972:6:21", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 6212, - "nodeType": "ParameterList", - "parameters": [], - "src": "13978:2:21" - }, - "returnParameters": { - "id": 6215, - "nodeType": "ParameterList", - "parameters": [], - "src": "14005:0:21" - }, - "scope": 7898, - "src": "13963:205:21", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 6252, - "nodeType": "Block", - "src": "14435:40:21", - "statements": [ - { - "expression": { - "baseExpression": { - "id": 6248, - "name": "collateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5283, - "src": "14452:10:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 6250, - "indexExpression": { - "id": 6249, - "name": "addr", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6243, - "src": "14463:4:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "14452:16:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 6247, - "id": 6251, - "nodeType": "Return", - "src": "14445:23:21" - } - ] - }, - "documentation": { - "id": 6241, - "nodeType": "StructuredDocumentation", - "src": "14174:187:21", - "text": "@dev Returns the amount of collateral of a liquidity provider\n@param addr The address of the liquidity provider\n@return The amount of locked collateral" - }, - "functionSelector": "9b56d6c9", - "id": 6253, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getCollateral", - "nameLocation": "14375:13:21", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 6244, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 6243, - "mutability": "mutable", - "name": "addr", - "nameLocation": "14397:4:21", - "nodeType": "VariableDeclaration", - "scope": 6253, - "src": "14389:12:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 6242, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "14389:7:21", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "14388:14:21" - }, - "returnParameters": { - "id": 6247, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 6246, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 6253, - "src": "14426:7:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 6245, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "14426:7:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "14425:9:21" - }, - "scope": 7898, - "src": "14366:109:21", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 6264, - "nodeType": "Block", - "src": "14556:46:21", - "statements": [ - { - "expression": { - "baseExpression": { - "id": 6260, - "name": "pegoutCollateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5287, - "src": "14573:16:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 6262, - "indexExpression": { - "id": 6261, - "name": "addr", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6255, - "src": "14590:4:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "14573:22:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 6259, - "id": 6263, - "nodeType": "Return", - "src": "14566:29:21" - } - ] - }, - "functionSelector": "bd519eff", - "id": 6265, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getPegoutCollateral", - "nameLocation": "14490:19:21", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 6256, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 6255, - "mutability": "mutable", - "name": "addr", - "nameLocation": "14518:4:21", - "nodeType": "VariableDeclaration", - "scope": 6265, - "src": "14510:12:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 6254, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "14510:7:21", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "14509:14:21" - }, - "returnParameters": { - "id": 6259, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 6258, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 6265, - "src": "14547:7:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 6257, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "14547:7:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "14546:9:21" - }, - "scope": 7898, - "src": "14481:121:21", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 6277, - "nodeType": "Block", - "src": "14867:38:21", - "statements": [ - { - "expression": { - "baseExpression": { - "id": 6273, - "name": "balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5279, - "src": "14884:8:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 6275, - "indexExpression": { - "id": 6274, - "name": "addr", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6268, - "src": "14893:4:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "14884:14:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 6272, - "id": 6276, - "nodeType": "Return", - "src": "14877:21:21" - } - ] - }, - "documentation": { - "id": 6266, - "nodeType": "StructuredDocumentation", - "src": "14608:188:21", - "text": "@dev Returns the amount of funds of a liquidity provider\n@param addr The address of the liquidity provider\n@return The balance of the liquidity provider" - }, - "functionSelector": "f8b2cb4f", - "id": 6278, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getBalance", - "nameLocation": "14810:10:21", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 6269, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 6268, - "mutability": "mutable", - "name": "addr", - "nameLocation": "14829:4:21", - "nodeType": "VariableDeclaration", - "scope": 6278, - "src": "14821:12:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 6267, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "14821:7:21", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "14820:14:21" - }, - "returnParameters": { - "id": 6272, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 6271, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 6278, - "src": "14858:7:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 6270, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "14858:7:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "14857:9:21" - }, - "scope": 7898, - "src": "14801:104:21", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 6424, - "nodeType": "Block", - "src": "15229:1462:21", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 6296, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 6292, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "15260:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 6293, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "15264:6:21", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "15260:10:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 6294, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6282, - "src": "15274:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 6295, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "15280:27:21", - "memberName": "liquidityProviderRskAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 10931, - "src": "15274:33:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "15260:47:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303234", - "id": 6297, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "15321:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_9c6c58d5603e5b2aab0d13c183f0136466f0ce13826630d90e079bf910078715", - "typeString": "literal_string \"LBC024\"" - }, - "value": "LBC024" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_9c6c58d5603e5b2aab0d13c183f0136466f0ce13826630d90e079bf910078715", - "typeString": "literal_string \"LBC024\"" - } - ], - "id": 6291, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "15239:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 6298, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "15239:100:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 6299, - "nodeType": "ExpressionStatement", - "src": "15239:100:21" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 6310, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 6307, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "id": 6301, - "name": "balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5279, - "src": "15370:8:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 6304, - "indexExpression": { - "expression": { - "id": 6302, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6282, - "src": "15379:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 6303, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "15385:27:21", - "memberName": "liquidityProviderRskAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 10931, - "src": "15379:33:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "15370:43:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "expression": { - "id": 6305, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "15416:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 6306, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "15420:5:21", - "memberName": "value", - "nodeType": "MemberAccess", - "src": "15416:9:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "15370:55:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "expression": { - "id": 6308, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6282, - "src": "15441:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 6309, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "15447:5:21", - "memberName": "value", - "nodeType": "MemberAccess", - "referencedDeclaration": 10951, - "src": "15441:11:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "15370:82:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303139", - "id": 6311, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "15466:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_41f42e8d0f67be0e87abf05a33ed728b4868df2f2b92840d9519a852352eb909", - "typeString": "literal_string \"LBC019\"" - }, - "value": "LBC019" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_41f42e8d0f67be0e87abf05a33ed728b4868df2f2b92840d9519a852352eb909", - "typeString": "literal_string \"LBC019\"" - } - ], - "id": 6300, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "15349:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 6312, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "15349:135:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 6313, - "nodeType": "ExpressionStatement", - "src": "15349:135:21" - }, - { - "assignments": [ - 6315 - ], - "declarations": [ - { - "constant": false, - "id": 6315, - "mutability": "mutable", - "name": "quoteHash", - "nameLocation": "15503:9:21", - "nodeType": "VariableDeclaration", - "scope": 6424, - "src": "15495:17:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 6314, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "15495:7:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "id": 6319, - "initialValue": { - "arguments": [ - { - "id": 6317, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6282, - "src": "15536:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - ], - "id": 6316, - "name": "validateAndHashQuote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7451, - "src": "15515:20:21", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_PeginQuote_$10962_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (struct Quotes.PeginQuote memory) view returns (bytes32)" - } - }, - "id": 6318, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "15515:27:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "15495:47:21" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "id": 6325, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "id": 6321, - "name": "processedQuotes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5321, - "src": "15573:15:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint8_$", - "typeString": "mapping(bytes32 => uint8)" - } - }, - "id": 6323, - "indexExpression": { - "id": 6322, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6315, - "src": "15589:9:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "15573:26:21", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "id": 6324, - "name": "UNPROCESSED_QUOTE_CODE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5056, - "src": "15603:22:21", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "src": "15573:52:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303235", - "id": 6326, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "15639:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_ceda09d74f8a59745bfad5393e75482469dc6db77c24fde6f52df4409a3f744c", - "typeString": "literal_string \"LBC025\"" - }, - "value": "LBC025" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_ceda09d74f8a59745bfad5393e75482469dc6db77c24fde6f52df4409a3f744c", - "typeString": "literal_string \"LBC025\"" - } - ], - "id": 6320, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "15552:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 6327, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "15552:105:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 6328, - "nodeType": "ExpressionStatement", - "src": "15552:105:21" - }, - { - "expression": { - "arguments": [ - { - "expression": { - "id": 6330, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6282, - "src": "15684:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 6331, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "15690:27:21", - "memberName": "liquidityProviderRskAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 10931, - "src": "15684:33:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 6332, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "15719:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 6333, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "15723:5:21", - "memberName": "value", - "nodeType": "MemberAccess", - "src": "15719:9:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 6329, - "name": "increaseBalance", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7514, - "src": "15668:15:21", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,uint256)" - } - }, - "id": 6334, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "15668:61:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 6335, - "nodeType": "ExpressionStatement", - "src": "15668:61:21" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 6343, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 6337, - "name": "gasleft", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967289, - "src": "15862:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_gasleft_view$__$returns$_t_uint256_$", - "typeString": "function () view returns (uint256)" - } - }, - "id": 6338, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "15862:9:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "id": 6342, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 6339, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6282, - "src": "15875:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 6340, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "15881:8:21", - "memberName": "gasLimit", - "nodeType": "MemberAccess", - "referencedDeclaration": 10947, - "src": "15875:14:21", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "id": 6341, - "name": "MAX_CALL_GAS_COST", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5050, - "src": "15892:17:21", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - "src": "15875:34:21", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "src": "15862:47:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303236", - "id": 6344, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "15923:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_2d63cc93f65e3c34ca5cba24271c3d6869155fb2ffc83f083d82378f26d56cb0", - "typeString": "literal_string \"LBC026\"" - }, - "value": "LBC026" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_2d63cc93f65e3c34ca5cba24271c3d6869155fb2ffc83f083d82378f26d56cb0", - "typeString": "literal_string \"LBC026\"" - } - ], - "id": 6336, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "15841:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 6345, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "15841:100:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 6346, - "nodeType": "ExpressionStatement", - "src": "15841:100:21" - }, - { - "assignments": [ - 6348, - null - ], - "declarations": [ - { - "constant": false, - "id": 6348, - "mutability": "mutable", - "name": "success", - "nameLocation": "15957:7:21", - "nodeType": "VariableDeclaration", - "scope": 6424, - "src": "15952:12:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 6347, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "15952:4:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - null - ], - "id": 6360, - "initialValue": { - "arguments": [ - { - "expression": { - "id": 6357, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6282, - "src": "16083:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 6358, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "16089:4:21", - "memberName": "data", - "nodeType": "MemberAccess", - "referencedDeclaration": 10945, - "src": "16083:10:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "expression": { - "id": 6349, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6282, - "src": "15969:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 6350, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "15975:15:21", - "memberName": "contractAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 10943, - "src": "15969:21:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 6351, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "15991:4:21", - "memberName": "call", - "nodeType": "MemberAccess", - "src": "15969:26:21", - "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": 6356, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "names": [ - "gas", - "value" - ], - "nodeType": "FunctionCallOptions", - "options": [ - { - "expression": { - "id": 6352, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6282, - "src": "16018:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 6353, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "16024:8:21", - "memberName": "gasLimit", - "nodeType": "MemberAccess", - "referencedDeclaration": 10947, - "src": "16018:14:21", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - { - "expression": { - "id": 6354, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6282, - "src": "16057:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 6355, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "16063:5:21", - "memberName": "value", - "nodeType": "MemberAccess", - "referencedDeclaration": 10951, - "src": "16057:11:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "src": "15969:113:21", - "typeDescriptions": { - "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$gasvalue", - "typeString": "function (bytes memory) payable returns (bool,bytes memory)" - } - }, - "id": 6359, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "15969:125:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "tuple(bool,bytes memory)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "15951:143:21" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 6369, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 6362, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967292, - "src": "16113:5:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 6363, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "16119:9:21", - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "16113:15:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<=", - "rightExpression": { - "expression": { - "arguments": [ - { - "id": 6366, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "16137:6:21", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint32_$", - "typeString": "type(uint32)" - }, - "typeName": { - "id": 6365, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "16137:6:21", - "typeDescriptions": {} - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_type$_t_uint32_$", - "typeString": "type(uint32)" - } - ], - "id": 6364, - "name": "type", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967269, - "src": "16132:4:21", - "typeDescriptions": { - "typeIdentifier": "t_function_metatype_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 6367, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "16132:12:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_magic_meta_type_t_uint32", - "typeString": "type(uint32)" - } - }, - "id": 6368, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "16145:3:21", - "memberName": "max", - "nodeType": "MemberAccess", - "src": "16132:16:21", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "src": "16113:35:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303237", - "id": 6370, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "16150:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_5a937cad92792f08abdaf15eed65a070909c29d924f856ec65923c138fd39a48", - "typeString": "literal_string \"LBC027\"" - }, - "value": "LBC027" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_5a937cad92792f08abdaf15eed65a070909c29d924f856ec65923c138fd39a48", - "typeString": "literal_string \"LBC027\"" - } - ], - "id": 6361, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "16105:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 6371, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "16105:54:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 6372, - "nodeType": "ExpressionStatement", - "src": "16105:54:21" - }, - { - "expression": { - "id": 6382, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "baseExpression": { - "id": 6373, - "name": "callRegistry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5297, - "src": "16169:12:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$5116_storage_$", - "typeString": "mapping(bytes32 => struct LiquidityBridgeContract.Registry storage ref)" - } - }, - "id": 6375, - "indexExpression": { - "id": 6374, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6315, - "src": "16182:9:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "16169:23:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Registry_$5116_storage", - "typeString": "struct LiquidityBridgeContract.Registry storage ref" - } - }, - "id": 6376, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberLocation": "16193:9:21", - "memberName": "timestamp", - "nodeType": "MemberAccess", - "referencedDeclaration": 5113, - "src": "16169:33:21", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "expression": { - "id": 6379, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967292, - "src": "16212:5:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 6380, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "16218:9:21", - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "16212:15:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 6378, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "16205:6:21", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint32_$", - "typeString": "type(uint32)" - }, - "typeName": { - "id": 6377, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "16205:6:21", - "typeDescriptions": {} - } - }, - "id": 6381, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "16205:23:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "src": "16169:59:21", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "id": 6383, - "nodeType": "ExpressionStatement", - "src": "16169:59:21" - }, - { - "condition": { - "id": 6384, - "name": "success", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6348, - "src": "16243:7:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 6400, - "nodeType": "IfStatement", - "src": "16239:153:21", - "trueBody": { - "id": 6399, - "nodeType": "Block", - "src": "16252:140:21", - "statements": [ - { - "expression": { - "id": 6390, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "baseExpression": { - "id": 6385, - "name": "callRegistry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5297, - "src": "16266:12:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$5116_storage_$", - "typeString": "mapping(bytes32 => struct LiquidityBridgeContract.Registry storage ref)" - } - }, - "id": 6387, - "indexExpression": { - "id": 6386, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6315, - "src": "16279:9:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "16266:23:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Registry_$5116_storage", - "typeString": "struct LiquidityBridgeContract.Registry storage ref" - } - }, - "id": 6388, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberLocation": "16290:7:21", - "memberName": "success", - "nodeType": "MemberAccess", - "referencedDeclaration": 5115, - "src": "16266:31:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "hexValue": "74727565", - "id": 6389, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "16300:4:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "src": "16266:38:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 6391, - "nodeType": "ExpressionStatement", - "src": "16266:38:21" - }, - { - "expression": { - "arguments": [ - { - "expression": { - "id": 6393, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6282, - "src": "16334:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 6394, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "16340:27:21", - "memberName": "liquidityProviderRskAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 10931, - "src": "16334:33:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 6395, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6282, - "src": "16369:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 6396, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "16375:5:21", - "memberName": "value", - "nodeType": "MemberAccess", - "referencedDeclaration": 10951, - "src": "16369:11:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 6392, - "name": "decreaseBalance", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7533, - "src": "16318:15:21", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,uint256)" - } - }, - "id": 6397, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "16318:63:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 6398, - "nodeType": "ExpressionStatement", - "src": "16318:63:21" - } - ] - } - }, - { - "eventCall": { - "arguments": [ - { - "expression": { - "id": 6402, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "16431:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 6403, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "16435:6:21", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "16431:10:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 6404, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6282, - "src": "16455:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 6405, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "16461:15:21", - "memberName": "contractAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 10943, - "src": "16455:21:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 6406, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6282, - "src": "16490:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 6407, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "16496:8:21", - "memberName": "gasLimit", - "nodeType": "MemberAccess", - "referencedDeclaration": 10947, - "src": "16490:14:21", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - { - "expression": { - "id": 6408, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6282, - "src": "16518:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 6409, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "16524:5:21", - "memberName": "value", - "nodeType": "MemberAccess", - "referencedDeclaration": 10951, - "src": "16518:11:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "expression": { - "id": 6410, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6282, - "src": "16543:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 6411, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "16549:4:21", - "memberName": "data", - "nodeType": "MemberAccess", - "referencedDeclaration": 10945, - "src": "16543:10:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "id": 6412, - "name": "success", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6348, - "src": "16567:7:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "id": 6413, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6315, - "src": "16588:9:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "id": 6401, - "name": "CallForUser", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5198, - "src": "16406:11:21", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_uint256_$_t_bytes_memory_ptr_$_t_bool_$_t_bytes32_$returns$__$", - "typeString": "function (address,address,uint256,uint256,bytes memory,bool,bytes32)" - } - }, - "id": 6414, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "16406:201:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 6415, - "nodeType": "EmitStatement", - "src": "16401:206:21" - }, - { - "expression": { - "id": 6420, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 6416, - "name": "processedQuotes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5321, - "src": "16617:15:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint8_$", - "typeString": "mapping(bytes32 => uint8)" - } - }, - "id": 6418, - "indexExpression": { - "id": 6417, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6315, - "src": "16633:9:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "16617:26:21", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 6419, - "name": "CALL_DONE_CODE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5059, - "src": "16646:14:21", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "src": "16617:43:21", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "id": 6421, - "nodeType": "ExpressionStatement", - "src": "16617:43:21" - }, - { - "expression": { - "id": 6422, - "name": "success", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6348, - "src": "16677:7:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 6290, - "id": 6423, - "nodeType": "Return", - "src": "16670:14:21" - } - ] - }, - "documentation": { - "id": 6279, - "nodeType": "StructuredDocumentation", - "src": "14911:186:21", - "text": "@dev Performs a call on behalf of a user\n@param quote The quote that identifies the service\n@return Boolean indicating whether the call was successful" - }, - "functionSelector": "ac29d744", - "id": 6425, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "id": 6285, - "kind": "modifierInvocation", - "modifierName": { - "id": 6284, - "name": "onlyRegistered", - "nameLocations": [ - "15186:14:21" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 5343, - "src": "15186:14:21" - }, - "nodeType": "ModifierInvocation", - "src": "15186:14:21" - }, - { - "id": 6287, - "kind": "modifierInvocation", - "modifierName": { - "id": 6286, - "name": "nonReentrant", - "nameLocations": [ - "15201:12:21" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 346, - "src": "15201:12:21" - }, - "nodeType": "ModifierInvocation", - "src": "15201:12:21" - } - ], - "name": "callForUser", - "nameLocation": "15111:11:21", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 6283, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 6282, - "mutability": "mutable", - "name": "quote", - "nameLocation": "15157:5:21", - "nodeType": "VariableDeclaration", - "scope": 6425, - "src": "15132:30:21", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote" - }, - "typeName": { - "id": 6281, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 6280, - "name": "Quotes.PeginQuote", - "nameLocations": [ - "15132:6:21", - "15139:10:21" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 10962, - "src": "15132:17:21" - }, - "referencedDeclaration": 10962, - "src": "15132:17:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_storage_ptr", - "typeString": "struct Quotes.PeginQuote" - } - }, - "visibility": "internal" - } - ], - "src": "15122:46:21" - }, - "returnParameters": { - "id": 6290, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 6289, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 6425, - "src": "15223:4:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 6288, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "15223:4:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "15222:6:21" - }, - "scope": 7898, - "src": "15102:1589:21", - "stateMutability": "payable", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 6815, - "nodeType": "Block", - "src": "17450:6157:21", - "statements": [ - { - "assignments": [ - 6445 - ], - "declarations": [ - { - "constant": false, - "id": 6445, - "mutability": "mutable", - "name": "quoteHash", - "nameLocation": "17468:9:21", - "nodeType": "VariableDeclaration", - "scope": 6815, - "src": "17460:17:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 6444, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "17460:7:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "id": 6449, - "initialValue": { - "arguments": [ - { - "id": 6447, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6429, - "src": "17501:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - ], - "id": 6446, - "name": "validateAndHashQuote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7451, - "src": "17480:20:21", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_PeginQuote_$10962_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (struct Quotes.PeginQuote memory) view returns (bytes32)" - } - }, - "id": 6448, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "17480:27:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "17460:47:21" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "id": 6455, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "id": 6451, - "name": "processedQuotes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5321, - "src": "17633:15:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint8_$", - "typeString": "mapping(bytes32 => uint8)" - } - }, - "id": 6453, - "indexExpression": { - "id": 6452, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6445, - "src": "17649:9:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "17633:26:21", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "BinaryOperation", - "operator": "<=", - "rightExpression": { - "id": 6454, - "name": "CALL_DONE_CODE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5059, - "src": "17663:14:21", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "src": "17633:44:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303238", - "id": 6456, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "17691:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_4c4b8fd0ae53a3caa85e74f53bba210cefdcb0e1d1c519eb8385d2cd3741f7fb", - "typeString": "literal_string \"LBC028\"" - }, - "value": "LBC028" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_4c4b8fd0ae53a3caa85e74f53bba210cefdcb0e1d1c519eb8385d2cd3741f7fb", - "typeString": "literal_string \"LBC028\"" - } - ], - "id": 6450, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "17612:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 6457, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "17612:97:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 6458, - "nodeType": "ExpressionStatement", - "src": "17612:97:21" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "expression": { - "id": 6462, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6429, - "src": "17783:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 6463, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "17789:27:21", - "memberName": "liquidityProviderRskAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 10931, - "src": "17783:33:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 6464, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6445, - "src": "17834:9:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 6465, - "name": "signature", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6431, - "src": "17861:9:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "id": 6460, - "name": "SignatureValidator", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11532, - "src": "17740:18:21", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_SignatureValidator_$11532_$", - "typeString": "type(library SignatureValidator)" - } - }, - "id": 6461, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "17759:6:21", - "memberName": "verify", - "nodeType": "MemberAccess", - "referencedDeclaration": 11531, - "src": "17740:25:21", - "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_pure$_t_address_$_t_bytes32_$_t_bytes_memory_ptr_$returns$_t_bool_$", - "typeString": "function (address,bytes32,bytes memory) pure returns (bool)" - } - }, - "id": 6466, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "17740:144:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303239", - "id": 6467, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "17898:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_ebb41fd1c3d95b8eaff1e56d491f7a983f7f3039fac57e6fad7993de139e2216", - "typeString": "literal_string \"LBC029\"" - }, - "value": "LBC029" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_ebb41fd1c3d95b8eaff1e56d491f7a983f7f3039fac57e6fad7993de139e2216", - "typeString": "literal_string \"LBC029\"" - } - ], - "id": 6459, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "17719:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 6468, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "17719:197:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 6469, - "nodeType": "ExpressionStatement", - "src": "17719:197:21" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 6483, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 6471, - "name": "height", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6437, - "src": "17934:6:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "arguments": [ - { - "arguments": [ - { - "expression": { - "arguments": [ - { - "id": 6478, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "17963:5:21", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_int32_$", - "typeString": "type(int32)" - }, - "typeName": { - "id": 6477, - "name": "int32", - "nodeType": "ElementaryTypeName", - "src": "17963:5:21", - "typeDescriptions": {} - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_type$_t_int32_$", - "typeString": "type(int32)" - } - ], - "id": 6476, - "name": "type", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967269, - "src": "17958:4:21", - "typeDescriptions": { - "typeIdentifier": "t_function_metatype_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 6479, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "17958:11:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_magic_meta_type_t_int32", - "typeString": "type(int32)" - } - }, - "id": 6480, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "17970:3:21", - "memberName": "max", - "nodeType": "MemberAccess", - "src": "17958:15:21", - "typeDescriptions": { - "typeIdentifier": "t_int32", - "typeString": "int32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_int32", - "typeString": "int32" - } - ], - "id": 6475, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "17951:6:21", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_int256_$", - "typeString": "type(int256)" - }, - "typeName": { - "id": 6474, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "17951:6:21", - "typeDescriptions": {} - } - }, - "id": 6481, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "17951:23:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - ], - "id": 6473, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "17943:7:21", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint256_$", - "typeString": "type(uint256)" - }, - "typeName": { - "id": 6472, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "17943:7:21", - "typeDescriptions": {} - } - }, - "id": 6482, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "17943:32:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "17934:41:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303330", - "id": 6484, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "17977:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_6b987c2142a6ed89e76021f4d9a60f3cbfc2f7110bd81bc33ff58ad7cf27befa", - "typeString": "literal_string \"LBC030\"" - }, - "value": "LBC030" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_6b987c2142a6ed89e76021f4d9a60f3cbfc2f7110bd81bc33ff58ad7cf27befa", - "typeString": "literal_string \"LBC030\"" - } - ], - "id": 6470, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "17926:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 6485, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "17926:60:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 6486, - "nodeType": "ExpressionStatement", - "src": "17926:60:21" - }, - { - "assignments": [ - 6488 - ], - "declarations": [ - { - "constant": false, - "id": 6488, - "mutability": "mutable", - "name": "transferredAmountOrErrorCode", - "nameLocation": "18004:28:21", - "nodeType": "VariableDeclaration", - "scope": 6815, - "src": "17997:35:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 6487, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "17997:6:21", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "id": 6496, - "initialValue": { - "arguments": [ - { - "id": 6490, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6429, - "src": "18063:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - { - "id": 6491, - "name": "btcRawTransaction", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6433, - "src": "18082:17:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "id": 6492, - "name": "partialMerkleTree", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6435, - "src": "18113:17:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "id": 6493, - "name": "height", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6437, - "src": "18144:6:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 6494, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6445, - "src": "18164:9:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "id": 6489, - "name": "registerBridge", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7619, - "src": "18035:14:21", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_PeginQuote_$10962_memory_ptr_$_t_bytes_memory_ptr_$_t_bytes_memory_ptr_$_t_uint256_$_t_bytes32_$returns$_t_int256_$", - "typeString": "function (struct Quotes.PeginQuote memory,bytes memory,bytes memory,uint256,bytes32) returns (int256)" - } - }, - "id": 6495, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "18035:148:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "17997:186:21" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "id": 6500, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 6498, - "name": "transferredAmountOrErrorCode", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6488, - "src": "18215:28:21", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "id": 6499, - "name": "BRIDGE_UNPROCESSABLE_TX_VALIDATIONS_ERROR", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5086, - "src": "18259:41:21", - "typeDescriptions": { - "typeIdentifier": "t_int16", - "typeString": "int16" - } - }, - "src": "18215:85:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303331", - "id": 6501, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "18314:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_b9f5a33cea5e5738277827f2f81faa92d1d3c73cf030e2542a7b80c6f7bdc8a7", - "typeString": "literal_string \"LBC031\"" - }, - "value": "LBC031" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_b9f5a33cea5e5738277827f2f81faa92d1d3c73cf030e2542a7b80c6f7bdc8a7", - "typeString": "literal_string \"LBC031\"" - } - ], - "id": 6497, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "18194:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 6502, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "18194:138:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 6503, - "nodeType": "ExpressionStatement", - "src": "18194:138:21" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "id": 6507, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 6505, - "name": "transferredAmountOrErrorCode", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6488, - "src": "18363:28:21", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "id": 6506, - "name": "BRIDGE_UNPROCESSABLE_TX_ALREADY_PROCESSED_ERROR_CODE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5082, - "src": "18407:52:21", - "typeDescriptions": { - "typeIdentifier": "t_int16", - "typeString": "int16" - } - }, - "src": "18363:96:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303332", - "id": 6508, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "18473:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_5d8d108d93a53583cf1949d2287cc7f0af5603bd102faf9db90e7e6bbc90ade8", - "typeString": "literal_string \"LBC032\"" - }, - "value": "LBC032" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_5d8d108d93a53583cf1949d2287cc7f0af5603bd102faf9db90e7e6bbc90ade8", - "typeString": "literal_string \"LBC032\"" - } - ], - "id": 6504, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "18342:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 6509, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "18342:149:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 6510, - "nodeType": "ExpressionStatement", - "src": "18342:149:21" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "id": 6514, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 6512, - "name": "transferredAmountOrErrorCode", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6488, - "src": "18522:28:21", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "id": 6513, - "name": "BRIDGE_UNPROCESSABLE_TX_VALUE_ZERO_ERROR", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5090, - "src": "18566:40:21", - "typeDescriptions": { - "typeIdentifier": "t_int16", - "typeString": "int16" - } - }, - "src": "18522:84:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303333", - "id": 6515, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "18620:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_e976d8a3febca36c67dcd5b38ae845ffd2f248a24eaf2d7a97f208ffd80ff125", - "typeString": "literal_string \"LBC033\"" - }, - "value": "LBC033" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_e976d8a3febca36c67dcd5b38ae845ffd2f248a24eaf2d7a97f208ffd80ff125", - "typeString": "literal_string \"LBC033\"" - } - ], - "id": 6511, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "18501:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 6516, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "18501:137:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 6517, - "nodeType": "ExpressionStatement", - "src": "18501:137:21" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "id": 6521, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 6519, - "name": "transferredAmountOrErrorCode", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6488, - "src": "18669:28:21", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "id": 6520, - "name": "BRIDGE_UNPROCESSABLE_TX_UTXO_AMOUNT_SENT_BELOW_MINIMUM_ERROR", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5094, - "src": "18713:60:21", - "typeDescriptions": { - "typeIdentifier": "t_int16", - "typeString": "int16" - } - }, - "src": "18669:104:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303334", - "id": 6522, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "18787:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_745436b16371784f7b451bf4bed6f0978e2f007f74e71dfa0c49414b3a522759", - "typeString": "literal_string \"LBC034\"" - }, - "value": "LBC034" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_745436b16371784f7b451bf4bed6f0978e2f007f74e71dfa0c49414b3a522759", - "typeString": "literal_string \"LBC034\"" - } - ], - "id": 6518, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "18648:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 6523, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "18648:157:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 6524, - "nodeType": "ExpressionStatement", - "src": "18648:157:21" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "id": 6528, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 6526, - "name": "transferredAmountOrErrorCode", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6488, - "src": "18836:28:21", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "id": 6527, - "name": "BRIDGE_GENERIC_ERROR", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5098, - "src": "18868:20:21", - "typeDescriptions": { - "typeIdentifier": "t_int16", - "typeString": "int16" - } - }, - "src": "18836:52:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303335", - "id": 6529, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "18902:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_37570ea73114ff69cb8aab9e09d6f5beb11b36ce1a2ae19ee6f5de28dc42d754", - "typeString": "literal_string \"LBC035\"" - }, - "value": "LBC035" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_37570ea73114ff69cb8aab9e09d6f5beb11b36ce1a2ae19ee6f5de28dc42d754", - "typeString": "literal_string \"LBC035\"" - } - ], - "id": 6525, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "18815:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 6530, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "18815:105:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 6531, - "nodeType": "ExpressionStatement", - "src": "18815:105:21" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 6543, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 6539, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "id": 6535, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 6533, - "name": "transferredAmountOrErrorCode", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6488, - "src": "18951:28:21", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 6534, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "18982:1:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "18951:32:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "id": 6538, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 6536, - "name": "transferredAmountOrErrorCode", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6488, - "src": "18999:28:21", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "id": 6537, - "name": "BRIDGE_REFUNDED_LP_ERROR_CODE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5070, - "src": "19031:29:21", - "typeDescriptions": { - "typeIdentifier": "t_int16", - "typeString": "int16" - } - }, - "src": "18999:61:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "18951:109:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "id": 6542, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 6540, - "name": "transferredAmountOrErrorCode", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6488, - "src": "19076:28:21", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "id": 6541, - "name": "BRIDGE_REFUNDED_USER_ERROR_CODE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5066, - "src": "19108:31:21", - "typeDescriptions": { - "typeIdentifier": "t_int16", - "typeString": "int16" - } - }, - "src": "19076:63:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "18951:188:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303336", - "id": 6544, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "19153:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_5ccb4449252c316623411606962515c0966208bcce5fe352c2e850b058d1077c", - "typeString": "literal_string \"LBC036\"" - }, - "value": "LBC036" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_5ccb4449252c316623411606962515c0966208bcce5fe352c2e850b058d1077c", - "typeString": "literal_string \"LBC036\"" - } - ], - "id": 6532, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "18930:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 6545, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "18930:241:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 6546, - "nodeType": "ExpressionStatement", - "src": "18930:241:21" - }, - { - "condition": { - "arguments": [ - { - "id": 6548, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6429, - "src": "19229:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - { - "id": 6549, - "name": "transferredAmountOrErrorCode", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6488, - "src": "19248:28:21", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - { - "expression": { - "baseExpression": { - "id": 6550, - "name": "callRegistry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5297, - "src": "19290:12:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$5116_storage_$", - "typeString": "mapping(bytes32 => struct LiquidityBridgeContract.Registry storage ref)" - } - }, - "id": 6552, - "indexExpression": { - "id": 6551, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6445, - "src": "19303:9:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "19290:23:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Registry_$5116_storage", - "typeString": "struct LiquidityBridgeContract.Registry storage ref" - } - }, - "id": 6553, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "19314:9:21", - "memberName": "timestamp", - "nodeType": "MemberAccess", - "referencedDeclaration": 5113, - "src": "19290:33:21", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - { - "id": 6554, - "name": "height", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6437, - "src": "19337:6:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - }, - { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 6547, - "name": "shouldPenalizeLP", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7734, - "src": "19199:16:21", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_PeginQuote_$10962_memory_ptr_$_t_int256_$_t_uint256_$_t_uint256_$returns$_t_bool_$", - "typeString": "function (struct Quotes.PeginQuote memory,int256,uint256,uint256) view returns (bool)" - } - }, - "id": 6555, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "19199:154:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 6597, - "nodeType": "IfStatement", - "src": "19182:816:21", - "trueBody": { - "id": 6596, - "nodeType": "Block", - "src": "19364:634:21", - "statements": [ - { - "assignments": [ - 6557 - ], - "declarations": [ - { - "constant": false, - "id": 6557, - "mutability": "mutable", - "name": "penalizationAmount", - "nameLocation": "19383:18:21", - "nodeType": "VariableDeclaration", - "scope": 6596, - "src": "19378:23:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 6556, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "19378:4:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 6566, - "initialValue": { - "arguments": [ - { - "expression": { - "id": 6559, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6429, - "src": "19425:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 6560, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "19431:10:21", - "memberName": "penaltyFee", - "nodeType": "MemberAccess", - "referencedDeclaration": 10941, - "src": "19425:16:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "baseExpression": { - "id": 6561, - "name": "collateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5283, - "src": "19459:10:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 6564, - "indexExpression": { - "expression": { - "id": 6562, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6429, - "src": "19470:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 6563, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "19476:27:21", - "memberName": "liquidityProviderRskAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 10931, - "src": "19470:33:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "19459:45:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 6558, - "name": "min", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7495, - "src": "19404:3:21", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$", - "typeString": "function (uint256,uint256) pure returns (uint256)" - } - }, - "id": 6565, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "19404:114:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "19378:140:21" - }, - { - "expression": { - "id": 6572, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 6567, - "name": "collateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5283, - "src": "19595:10:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 6570, - "indexExpression": { - "expression": { - "id": 6568, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6429, - "src": "19606:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 6569, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "19612:27:21", - "memberName": "liquidityProviderRskAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 10931, - "src": "19606:33:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "19595:45:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "-=", - "rightHandSide": { - "id": 6571, - "name": "penalizationAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6557, - "src": "19644:18:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "19595:67:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 6573, - "nodeType": "ExpressionStatement", - "src": "19595:67:21" - }, - { - "eventCall": { - "arguments": [ - { - "expression": { - "id": 6575, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6429, - "src": "19708:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 6576, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "19714:27:21", - "memberName": "liquidityProviderRskAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 10931, - "src": "19708:33:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 6577, - "name": "penalizationAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6557, - "src": "19759:18:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 6578, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6445, - "src": "19795:9:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "id": 6574, - "name": "Penalized", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5212, - "src": "19681:9:21", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_bytes32_$returns$__$", - "typeString": "function (address,uint256,bytes32)" - } - }, - "id": 6579, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "19681:137:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 6580, - "nodeType": "EmitStatement", - "src": "19676:142:21" - }, - { - "assignments": [ - 6582 - ], - "declarations": [ - { - "constant": false, - "id": 6582, - "mutability": "mutable", - "name": "punisherReward", - "nameLocation": "19877:14:21", - "nodeType": "VariableDeclaration", - "scope": 6596, - "src": "19869:22:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 6581, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "19869:7:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 6589, - "initialValue": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 6588, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "components": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 6585, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 6583, - "name": "penalizationAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6557, - "src": "19895:18:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "*", - "rightExpression": { - "id": 6584, - "name": "rewardP", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5307, - "src": "19916:7:21", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "src": "19895:28:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "id": 6586, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "19894:30:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "/", - "rightExpression": { - "hexValue": "313030", - "id": 6587, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "19927:3:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_100_by_1", - "typeString": "int_const 100" - }, - "value": "100" - }, - "src": "19894:36:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "19869:61:21" - }, - { - "expression": { - "arguments": [ - { - "expression": { - "id": 6591, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "19960:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 6592, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "19964:6:21", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "19960:10:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 6593, - "name": "punisherReward", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6582, - "src": "19972:14:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 6590, - "name": "increaseBalance", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7514, - "src": "19944:15:21", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,uint256)" - } - }, - "id": 6594, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "19944:43:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 6595, - "nodeType": "ExpressionStatement", - "src": "19944:43:21" - } - ] - } - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 6604, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "id": 6600, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 6598, - "name": "transferredAmountOrErrorCode", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6488, - "src": "20025:28:21", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "id": 6599, - "name": "BRIDGE_REFUNDED_LP_ERROR_CODE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5070, - "src": "20057:29:21", - "typeDescriptions": { - "typeIdentifier": "t_int16", - "typeString": "int16" - } - }, - "src": "20025:61:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "id": 6603, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 6601, - "name": "transferredAmountOrErrorCode", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6488, - "src": "20102:28:21", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "id": 6602, - "name": "BRIDGE_REFUNDED_USER_ERROR_CODE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5066, - "src": "20134:31:21", - "typeDescriptions": { - "typeIdentifier": "t_int16", - "typeString": "int16" - } - }, - "src": "20102:63:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "20025:140:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 6624, - "nodeType": "IfStatement", - "src": "20008:447:21", - "trueBody": { - "id": 6623, - "nodeType": "Block", - "src": "20176:279:21", - "statements": [ - { - "expression": { - "id": 6609, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 6605, - "name": "processedQuotes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5321, - "src": "20225:15:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint8_$", - "typeString": "mapping(bytes32 => uint8)" - } - }, - "id": 6607, - "indexExpression": { - "id": 6606, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6445, - "src": "20241:9:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "20225:26:21", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 6608, - "name": "PROCESSED_QUOTE_CODE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5062, - "src": "20254:20:21", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "src": "20225:49:21", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "id": 6610, - "nodeType": "ExpressionStatement", - "src": "20225:49:21" - }, - { - "expression": { - "id": 6614, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "delete", - "prefix": true, - "src": "20288:30:21", - "subExpression": { - "baseExpression": { - "id": 6611, - "name": "callRegistry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5297, - "src": "20295:12:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$5116_storage_$", - "typeString": "mapping(bytes32 => struct LiquidityBridgeContract.Registry storage ref)" - } - }, - "id": 6613, - "indexExpression": { - "id": 6612, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6445, - "src": "20308:9:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "20295:23:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Registry_$5116_storage", - "typeString": "struct LiquidityBridgeContract.Registry storage ref" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 6615, - "nodeType": "ExpressionStatement", - "src": "20288:30:21" - }, - { - "eventCall": { - "arguments": [ - { - "id": 6617, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6445, - "src": "20355:9:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 6618, - "name": "transferredAmountOrErrorCode", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6488, - "src": "20366:28:21", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - ], - "id": 6616, - "name": "BridgeCapExceeded", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5218, - "src": "20337:17:21", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_int256_$returns$__$", - "typeString": "function (bytes32,int256)" - } - }, - "id": 6619, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "20337:58:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 6620, - "nodeType": "EmitStatement", - "src": "20332:63:21" - }, - { - "expression": { - "id": 6621, - "name": "transferredAmountOrErrorCode", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6488, - "src": "20416:28:21", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "functionReturnParameters": 6443, - "id": 6622, - "nodeType": "Return", - "src": "20409:35:21" - } - ] - } - }, - { - "assignments": [ - 6626 - ], - "declarations": [ - { - "constant": false, - "id": 6626, - "mutability": "mutable", - "name": "transferredAmount", - "nameLocation": "20646:17:21", - "nodeType": "VariableDeclaration", - "scope": 6815, - "src": "20641:22:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 6625, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "20641:4:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 6631, - "initialValue": { - "arguments": [ - { - "id": 6629, - "name": "transferredAmountOrErrorCode", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6488, - "src": "20671:28:21", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - ], - "id": 6628, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "20666:4:21", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint256_$", - "typeString": "type(uint256)" - }, - "typeName": { - "id": 6627, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "20666:4:21", - "typeDescriptions": {} - } - }, - "id": 6630, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "20666:34:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "20641:59:21" - }, - { - "expression": { - "arguments": [ - { - "id": 6635, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6429, - "src": "20736:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - { - "id": 6636, - "name": "transferredAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6626, - "src": "20743:17:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 6632, - "name": "Quotes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11190, - "src": "20711:6:21", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_Quotes_$11190_$", - "typeString": "type(library Quotes)" - } - }, - "id": 6634, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "20718:17:21", - "memberName": "checkAgreedAmount", - "nodeType": "MemberAccess", - "referencedDeclaration": 11189, - "src": "20711:24:21", - "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_pure$_t_struct$_PeginQuote_$10962_memory_ptr_$_t_uint256_$returns$__$", - "typeString": "function (struct Quotes.PeginQuote memory,uint256) pure" - } - }, - "id": 6637, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "20711:50:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 6638, - "nodeType": "ExpressionStatement", - "src": "20711:50:21" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "id": 6644, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "baseExpression": { - "id": 6639, - "name": "callRegistry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5297, - "src": "20776:12:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$5116_storage_$", - "typeString": "mapping(bytes32 => struct LiquidityBridgeContract.Registry storage ref)" - } - }, - "id": 6641, - "indexExpression": { - "id": 6640, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6445, - "src": "20789:9:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "20776:23:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Registry_$5116_storage", - "typeString": "struct LiquidityBridgeContract.Registry storage ref" - } - }, - "id": 6642, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "20800:9:21", - "memberName": "timestamp", - "nodeType": "MemberAccess", - "referencedDeclaration": 5113, - "src": "20776:33:21", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 6643, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "20812:1:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "20776:37:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 6795, - "nodeType": "Block", - "src": "22152:1234:21", - "statements": [ - { - "assignments": [ - 6722 - ], - "declarations": [ - { - "constant": false, - "id": 6722, - "mutability": "mutable", - "name": "refundAmount", - "nameLocation": "22171:12:21", - "nodeType": "VariableDeclaration", - "scope": 6795, - "src": "22166:17:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 6721, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "22166:4:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 6724, - "initialValue": { - "id": 6723, - "name": "transferredAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6626, - "src": "22186:17:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "22166:37:21" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 6731, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 6725, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6429, - "src": "22222:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 6726, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "22228:14:21", - "memberName": "callOnRegister", - "nodeType": "MemberAccess", - "referencedDeclaration": 10961, - "src": "22222:20:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 6730, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 6727, - "name": "refundAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6722, - "src": "22246:12:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "expression": { - "id": 6728, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6429, - "src": "22262:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 6729, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "22268:5:21", - "memberName": "value", - "nodeType": "MemberAccess", - "referencedDeclaration": 10951, - "src": "22262:11:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "22246:27:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "22222:51:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 6770, - "nodeType": "IfStatement", - "src": "22218:656:21", - "trueBody": { - "id": 6769, - "nodeType": "Block", - "src": "22275:599:21", - "statements": [ - { - "assignments": [ - 6733, - null - ], - "declarations": [ - { - "constant": false, - "id": 6733, - "mutability": "mutable", - "name": "callSuccess", - "nameLocation": "22299:11:21", - "nodeType": "VariableDeclaration", - "scope": 6769, - "src": "22294:16:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 6732, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "22294:4:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - null - ], - "id": 6745, - "initialValue": { - "arguments": [ - { - "expression": { - "id": 6742, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6429, - "src": "22453:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 6743, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "22459:4:21", - "memberName": "data", - "nodeType": "MemberAccess", - "referencedDeclaration": 10945, - "src": "22453:10:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "expression": { - "id": 6734, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6429, - "src": "22315:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 6735, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "22321:15:21", - "memberName": "contractAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 10943, - "src": "22315:21:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 6736, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "22337:4:21", - "memberName": "call", - "nodeType": "MemberAccess", - "src": "22315:26:21", - "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": 6741, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "names": [ - "gas", - "value" - ], - "nodeType": "FunctionCallOptions", - "options": [ - { - "expression": { - "id": 6737, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6429, - "src": "22372:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 6738, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "22378:8:21", - "memberName": "gasLimit", - "nodeType": "MemberAccess", - "referencedDeclaration": 10947, - "src": "22372:14:21", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - { - "expression": { - "id": 6739, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6429, - "src": "22419:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 6740, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "22425:5:21", - "memberName": "value", - "nodeType": "MemberAccess", - "referencedDeclaration": 10951, - "src": "22419:11:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "src": "22315:137:21", - "typeDescriptions": { - "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$gasvalue", - "typeString": "function (bytes memory) payable returns (bool,bytes memory)" - } - }, - "id": 6744, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "22315:149:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "tuple(bool,bytes memory)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "22293:171:21" - }, - { - "eventCall": { - "arguments": [ - { - "expression": { - "id": 6747, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "22520:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 6748, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "22524:6:21", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "22520:10:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 6749, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6429, - "src": "22552:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 6750, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "22558:15:21", - "memberName": "contractAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 10943, - "src": "22552:21:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 6751, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6429, - "src": "22595:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 6752, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "22601:8:21", - "memberName": "gasLimit", - "nodeType": "MemberAccess", - "referencedDeclaration": 10947, - "src": "22595:14:21", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - { - "expression": { - "id": 6753, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6429, - "src": "22631:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 6754, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "22637:5:21", - "memberName": "value", - "nodeType": "MemberAccess", - "referencedDeclaration": 10951, - "src": "22631:11:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "expression": { - "id": 6755, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6429, - "src": "22664:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 6756, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "22670:4:21", - "memberName": "data", - "nodeType": "MemberAccess", - "referencedDeclaration": 10945, - "src": "22664:10:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "id": 6757, - "name": "callSuccess", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6733, - "src": "22696:11:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "id": 6758, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6445, - "src": "22729:9:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "id": 6746, - "name": "CallForUser", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5198, - "src": "22487:11:21", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_uint256_$_t_bytes_memory_ptr_$_t_bool_$_t_bytes32_$returns$__$", - "typeString": "function (address,address,uint256,uint256,bytes memory,bool,bytes32)" - } - }, - "id": 6759, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "22487:269:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 6760, - "nodeType": "EmitStatement", - "src": "22482:274:21" - }, - { - "condition": { - "id": 6761, - "name": "callSuccess", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6733, - "src": "22779:11:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 6768, - "nodeType": "IfStatement", - "src": "22775:85:21", - "trueBody": { - "id": 6767, - "nodeType": "Block", - "src": "22792:68:21", - "statements": [ - { - "expression": { - "id": 6765, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 6762, - "name": "refundAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6722, - "src": "22814:12:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "-=", - "rightHandSide": { - "expression": { - "id": 6763, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6429, - "src": "22830:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 6764, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "22836:5:21", - "memberName": "value", - "nodeType": "MemberAccess", - "referencedDeclaration": 10951, - "src": "22830:11:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "22814:27:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 6766, - "nodeType": "ExpressionStatement", - "src": "22814:27:21" - } - ] - } - } - ] - } - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 6773, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 6771, - "name": "refundAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6722, - "src": "22891:12:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "id": 6772, - "name": "dust", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5311, - "src": "22906:4:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "22891:19:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 6794, - "nodeType": "IfStatement", - "src": "22887:489:21", - "trueBody": { - "id": 6793, - "nodeType": "Block", - "src": "22912:464:21", - "statements": [ - { - "assignments": [ - 6775, - null - ], - "declarations": [ - { - "constant": false, - "id": 6775, - "mutability": "mutable", - "name": "success", - "nameLocation": "23015:7:21", - "nodeType": "VariableDeclaration", - "scope": 6793, - "src": "23010:12:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 6774, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "23010:4:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - null - ], - "id": 6784, - "initialValue": { - "arguments": [ - { - "hexValue": "", - "id": 6782, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "23173:2:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - }, - "value": "" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - } - ], - "expression": { - "expression": { - "id": 6776, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6429, - "src": "23027:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 6777, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "23033:16:21", - "memberName": "rskRefundAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 10935, - "src": "23027:22:21", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "id": 6778, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "23050:4:21", - "memberName": "call", - "nodeType": "MemberAccess", - "src": "23027:27:21", - "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": 6781, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "names": [ - "gas", - "value" - ], - "nodeType": "FunctionCallOptions", - "options": [ - { - "id": 6779, - "name": "MAX_REFUND_GAS_LIMIT", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5053, - "src": "23085:20:21", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - { - "id": 6780, - "name": "refundAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6722, - "src": "23138:12:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "src": "23027:145:21", - "typeDescriptions": { - "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$gasvalue", - "typeString": "function (bytes memory) payable returns (bool,bytes memory)" - } - }, - "id": 6783, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "23027:149:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "tuple(bool,bytes memory)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "23009:167:21" - }, - { - "eventCall": { - "arguments": [ - { - "expression": { - "id": 6786, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6429, - "src": "23227:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 6787, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "23233:16:21", - "memberName": "rskRefundAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 10935, - "src": "23227:22:21", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - { - "id": 6788, - "name": "refundAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6722, - "src": "23271:12:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 6789, - "name": "success", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6775, - "src": "23305:7:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "id": 6790, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6445, - "src": "23334:9:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "id": 6785, - "name": "Refund", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5240, - "src": "23199:6:21", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_bool_$_t_bytes32_$returns$__$", - "typeString": "function (address,uint256,bool,bytes32)" - } - }, - "id": 6791, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "23199:162:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 6792, - "nodeType": "EmitStatement", - "src": "23194:167:21" - } - ] - } - } - ] - }, - "id": 6796, - "nodeType": "IfStatement", - "src": "20772:2614:21", - "trueBody": { - "id": 6720, - "nodeType": "Block", - "src": "20815:1331:21", - "statements": [ - { - "assignments": [ - 6646 - ], - "declarations": [ - { - "constant": false, - "id": 6646, - "mutability": "mutable", - "name": "refundAmount", - "nameLocation": "20834:12:21", - "nodeType": "VariableDeclaration", - "scope": 6720, - "src": "20829:17:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 6645, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "20829:4:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 6647, - "nodeType": "VariableDeclarationStatement", - "src": "20829:17:21" - }, - { - "condition": { - "expression": { - "baseExpression": { - "id": 6648, - "name": "callRegistry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5297, - "src": "20865:12:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$5116_storage_$", - "typeString": "mapping(bytes32 => struct LiquidityBridgeContract.Registry storage ref)" - } - }, - "id": 6650, - "indexExpression": { - "id": 6649, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6445, - "src": "20878:9:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "20865:23:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Registry_$5116_storage", - "typeString": "struct LiquidityBridgeContract.Registry storage ref" - } - }, - "id": 6651, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "20889:7:21", - "memberName": "success", - "nodeType": "MemberAccess", - "referencedDeclaration": 5115, - "src": "20865:31:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 6672, - "nodeType": "Block", - "src": "21061:85:21", - "statements": [ - { - "expression": { - "id": 6670, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 6664, - "name": "refundAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6646, - "src": "21079:12:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 6666, - "name": "transferredAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6626, - "src": "21098:17:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "expression": { - "id": 6667, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6429, - "src": "21117:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 6668, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "21123:7:21", - "memberName": "callFee", - "nodeType": "MemberAccess", - "referencedDeclaration": 10939, - "src": "21117:13:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 6665, - "name": "min", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7495, - "src": "21094:3:21", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$", - "typeString": "function (uint256,uint256) pure returns (uint256)" - } - }, - "id": 6669, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "21094:37:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "21079:52:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 6671, - "nodeType": "ExpressionStatement", - "src": "21079:52:21" - } - ] - }, - "id": 6673, - "nodeType": "IfStatement", - "src": "20861:285:21", - "trueBody": { - "id": 6663, - "nodeType": "Block", - "src": "20898:157:21", - "statements": [ - { - "expression": { - "id": 6661, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 6652, - "name": "refundAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6646, - "src": "20916:12:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 6654, - "name": "transferredAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6626, - "src": "20956:17:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 6659, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 6655, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6429, - "src": "20995:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 6656, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "21001:5:21", - "memberName": "value", - "nodeType": "MemberAccess", - "referencedDeclaration": 10951, - "src": "20995:11:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "expression": { - "id": 6657, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6429, - "src": "21009:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 6658, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "21015:7:21", - "memberName": "callFee", - "nodeType": "MemberAccess", - "referencedDeclaration": 10939, - "src": "21009:13:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "20995:27:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 6653, - "name": "min", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7495, - "src": "20931:3:21", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$", - "typeString": "function (uint256,uint256) pure returns (uint256)" - } - }, - "id": 6660, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "20931:109:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "20916:124:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 6662, - "nodeType": "ExpressionStatement", - "src": "20916:124:21" - } - ] - } - }, - { - "expression": { - "arguments": [ - { - "expression": { - "id": 6675, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6429, - "src": "21175:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 6676, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "21181:27:21", - "memberName": "liquidityProviderRskAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 10931, - "src": "21175:33:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 6677, - "name": "refundAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6646, - "src": "21210:12:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 6674, - "name": "increaseBalance", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7514, - "src": "21159:15:21", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,uint256)" - } - }, - "id": 6678, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "21159:64:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 6679, - "nodeType": "ExpressionStatement", - "src": "21159:64:21" - }, - { - "assignments": [ - 6681 - ], - "declarations": [ - { - "constant": false, - "id": 6681, - "mutability": "mutable", - "name": "remainingAmount", - "nameLocation": "21242:15:21", - "nodeType": "VariableDeclaration", - "scope": 6720, - "src": "21237:20:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 6680, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "21237:4:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 6685, - "initialValue": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 6684, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 6682, - "name": "transferredAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6626, - "src": "21260:17:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "id": 6683, - "name": "refundAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6646, - "src": "21280:12:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "21260:32:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "21237:55:21" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 6688, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 6686, - "name": "remainingAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6681, - "src": "21311:15:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "id": 6687, - "name": "dust", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5311, - "src": "21329:4:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "21311:22:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 6719, - "nodeType": "IfStatement", - "src": "21307:829:21", - "trueBody": { - "id": 6718, - "nodeType": "Block", - "src": "21335:801:21", - "statements": [ - { - "assignments": [ - 6690, - null - ], - "declarations": [ - { - "constant": false, - "id": 6690, - "mutability": "mutable", - "name": "success", - "nameLocation": "21441:7:21", - "nodeType": "VariableDeclaration", - "scope": 6718, - "src": "21436:12:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 6689, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "21436:4:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - null - ], - "id": 6699, - "initialValue": { - "arguments": [ - { - "hexValue": "", - "id": 6697, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "21602:2:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - }, - "value": "" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - } - ], - "expression": { - "expression": { - "id": 6691, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6429, - "src": "21453:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 6692, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "21459:16:21", - "memberName": "rskRefundAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 10935, - "src": "21453:22:21", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "id": 6693, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "21476:4:21", - "memberName": "call", - "nodeType": "MemberAccess", - "src": "21453:27:21", - "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": 6696, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "names": [ - "gas", - "value" - ], - "nodeType": "FunctionCallOptions", - "options": [ - { - "id": 6694, - "name": "MAX_REFUND_GAS_LIMIT", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5053, - "src": "21511:20:21", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - { - "id": 6695, - "name": "remainingAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6681, - "src": "21564:15:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "src": "21453:148:21", - "typeDescriptions": { - "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$gasvalue", - "typeString": "function (bytes memory) payable returns (bool,bytes memory)" - } - }, - "id": 6698, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "21453:152:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "tuple(bool,bytes memory)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "21435:170:21" - }, - { - "eventCall": { - "arguments": [ - { - "expression": { - "id": 6701, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6429, - "src": "21656:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 6702, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "21662:16:21", - "memberName": "rskRefundAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 10935, - "src": "21656:22:21", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - { - "id": 6703, - "name": "remainingAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6681, - "src": "21700:15:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 6704, - "name": "success", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6690, - "src": "21737:7:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "id": 6705, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6445, - "src": "21766:9:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "id": 6700, - "name": "Refund", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5240, - "src": "21628:6:21", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_bool_$_t_bytes32_$returns$__$", - "typeString": "function (address,uint256,bool,bytes32)" - } - }, - "id": 6706, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "21628:165:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 6707, - "nodeType": "EmitStatement", - "src": "21623:170:21" - }, - { - "condition": { - "id": 6709, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "!", - "prefix": true, - "src": "21816:8:21", - "subExpression": { - "id": 6708, - "name": "success", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6690, - "src": "21817:7:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 6717, - "nodeType": "IfStatement", - "src": "21812:310:21", - "trueBody": { - "id": 6716, - "nodeType": "Block", - "src": "21826:296:21", - "statements": [ - { - "expression": { - "arguments": [ - { - "expression": { - "id": 6711, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6429, - "src": "22007:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 6712, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "22013:27:21", - "memberName": "liquidityProviderRskAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 10931, - "src": "22007:33:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 6713, - "name": "remainingAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6681, - "src": "22066:15:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 6710, - "name": "increaseBalance", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7514, - "src": "21966:15:21", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,uint256)" - } - }, - "id": 6714, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "21966:137:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 6715, - "nodeType": "ExpressionStatement", - "src": "21966:137:21" - } - ] - } - } - ] - } - } - ] - } - }, - { - "expression": { - "id": 6801, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 6797, - "name": "processedQuotes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5321, - "src": "23395:15:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint8_$", - "typeString": "mapping(bytes32 => uint8)" - } - }, - "id": 6799, - "indexExpression": { - "id": 6798, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6445, - "src": "23411:9:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "23395:26:21", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 6800, - "name": "PROCESSED_QUOTE_CODE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5062, - "src": "23424:20:21", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "src": "23395:49:21", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "id": 6802, - "nodeType": "ExpressionStatement", - "src": "23395:49:21" - }, - { - "expression": { - "id": 6806, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "delete", - "prefix": true, - "src": "23454:30:21", - "subExpression": { - "baseExpression": { - "id": 6803, - "name": "callRegistry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5297, - "src": "23461:12:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$5116_storage_$", - "typeString": "mapping(bytes32 => struct LiquidityBridgeContract.Registry storage ref)" - } - }, - "id": 6805, - "indexExpression": { - "id": 6804, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6445, - "src": "23474:9:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "23461:23:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Registry_$5116_storage", - "typeString": "struct LiquidityBridgeContract.Registry storage ref" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 6807, - "nodeType": "ExpressionStatement", - "src": "23454:30:21" - }, - { - "eventCall": { - "arguments": [ - { - "id": 6809, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6445, - "src": "23515:9:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 6810, - "name": "transferredAmountOrErrorCode", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6488, - "src": "23526:28:21", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - ], - "id": 6808, - "name": "PegInRegistered", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5204, - "src": "23499:15:21", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_int256_$returns$__$", - "typeString": "function (bytes32,int256)" - } - }, - "id": 6811, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "23499:56:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 6812, - "nodeType": "EmitStatement", - "src": "23494:61:21" - }, - { - "expression": { - "id": 6813, - "name": "transferredAmountOrErrorCode", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6488, - "src": "23572:28:21", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "functionReturnParameters": 6443, - "id": 6814, - "nodeType": "Return", - "src": "23565:35:21" - } - ] - }, - "documentation": { - "id": 6426, - "nodeType": "StructuredDocumentation", - "src": "16697:506:21", - "text": "@dev Registers a peg-in transaction with the bridge and pays to the involved parties\n@param quote The quote of the service\n@param signature The signature of the quote\n@param btcRawTransaction The peg-in transaction\n@param partialMerkleTree The merkle tree path that proves transaction inclusion\n@param height The block that contains the peg-in transaction\n@return The total peg-in amount received from the bridge contract or an error code" - }, - "functionSelector": "6e2e8c70", - "id": 6816, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "id": 6440, - "kind": "modifierInvocation", - "modifierName": { - "id": 6439, - "name": "nonReentrant", - "nameLocations": [ - "17420:12:21" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 346, - "src": "17420:12:21" - }, - "nodeType": "ModifierInvocation", - "src": "17420:12:21" - } - ], - "name": "registerPegIn", - "nameLocation": "17217:13:21", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 6438, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 6429, - "mutability": "mutable", - "name": "quote", - "nameLocation": "17265:5:21", - "nodeType": "VariableDeclaration", - "scope": 6816, - "src": "17240:30:21", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote" - }, - "typeName": { - "id": 6428, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 6427, - "name": "Quotes.PeginQuote", - "nameLocations": [ - "17240:6:21", - "17247:10:21" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 10962, - "src": "17240:17:21" - }, - "referencedDeclaration": 10962, - "src": "17240:17:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_storage_ptr", - "typeString": "struct Quotes.PeginQuote" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 6431, - "mutability": "mutable", - "name": "signature", - "nameLocation": "17293:9:21", - "nodeType": "VariableDeclaration", - "scope": 6816, - "src": "17280:22:21", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 6430, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "17280:5:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 6433, - "mutability": "mutable", - "name": "btcRawTransaction", - "nameLocation": "17325:17:21", - "nodeType": "VariableDeclaration", - "scope": 6816, - "src": "17312:30:21", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 6432, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "17312:5:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 6435, - "mutability": "mutable", - "name": "partialMerkleTree", - "nameLocation": "17365:17:21", - "nodeType": "VariableDeclaration", - "scope": 6816, - "src": "17352:30:21", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 6434, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "17352:5:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 6437, - "mutability": "mutable", - "name": "height", - "nameLocation": "17400:6:21", - "nodeType": "VariableDeclaration", - "scope": 6816, - "src": "17392:14:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 6436, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "17392:7:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "17230:182:21" - }, - "returnParameters": { - "id": 6443, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 6442, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 6816, - "src": "17442:6:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 6441, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "17442:6:21", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "17441:8:21" - }, - "scope": 7898, - "src": "17208:6399:21", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 6942, - "nodeType": "Block", - "src": "23796:956:21", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "expression": { - "id": 6826, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6819, - "src": "23836:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_memory_ptr", - "typeString": "struct Quotes.PegOutQuote memory" - } - }, - "id": 6827, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "23842:12:21", - "memberName": "lpRskAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 10966, - "src": "23836:18:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 6825, - "name": "isRegisteredForPegout", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7574, - "src": "23814:21:21", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", - "typeString": "function (address) view returns (bool)" - } - }, - "id": 6828, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "23814:41:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303337", - "id": 6829, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "23857:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_ecc75ee801269ba7670799af84ad7f1d968d59315783a708807424c72ec63d04", - "typeString": "literal_string \"LBC037\"" - }, - "value": "LBC037" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_ecc75ee801269ba7670799af84ad7f1d968d59315783a708807424c72ec63d04", - "typeString": "literal_string \"LBC037\"" - } - ], - "id": 6824, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "23806:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 6830, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "23806:60:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 6831, - "nodeType": "ExpressionStatement", - "src": "23806:60:21" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 6840, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 6837, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 6833, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6819, - "src": "23884:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_memory_ptr", - "typeString": "struct Quotes.PegOutQuote memory" - } - }, - "id": 6834, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "23890:5:21", - "memberName": "value", - "nodeType": "MemberAccess", - "referencedDeclaration": 10982, - "src": "23884:11:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "expression": { - "id": 6835, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6819, - "src": "23898:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_memory_ptr", - "typeString": "struct Quotes.PegOutQuote memory" - } - }, - "id": 6836, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "23904:7:21", - "memberName": "callFee", - "nodeType": "MemberAccess", - "referencedDeclaration": 10974, - "src": "23898:13:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "23884:27:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<=", - "rightExpression": { - "expression": { - "id": 6838, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "23915:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 6839, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "23919:5:21", - "memberName": "value", - "nodeType": "MemberAccess", - "src": "23915:9:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "23884:40:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303633", - "id": 6841, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "23926:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_0267b5bcac1113eea8a4dc81e170e6fe59336df7f2c6a4d2ae7ad240f894a2f9", - "typeString": "literal_string \"LBC063\"" - }, - "value": "LBC063" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_0267b5bcac1113eea8a4dc81e170e6fe59336df7f2c6a4d2ae7ad240f894a2f9", - "typeString": "literal_string \"LBC063\"" - } - ], - "id": 6832, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "23876:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 6842, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "23876:59:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 6843, - "nodeType": "ExpressionStatement", - "src": "23876:59:21" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 6849, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 6845, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967292, - "src": "23953:5:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 6846, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "23959:9:21", - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "23953:15:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<=", - "rightExpression": { - "expression": { - "id": 6847, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6819, - "src": "23972:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_memory_ptr", - "typeString": "struct Quotes.PegOutQuote memory" - } - }, - "id": 6848, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "23978:16:21", - "memberName": "depositDateLimit", - "nodeType": "MemberAccess", - "referencedDeclaration": 10986, - "src": "23972:22:21", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "src": "23953:41:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303635", - "id": 6850, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "23996:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_39eacc26aa588693c014f46e6dd86f6cac22eb3287098210ddf746f1a6af8214", - "typeString": "literal_string \"LBC065\"" - }, - "value": "LBC065" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_39eacc26aa588693c014f46e6dd86f6cac22eb3287098210ddf746f1a6af8214", - "typeString": "literal_string \"LBC065\"" - } - ], - "id": 6844, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "23945:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 6851, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "23945:60:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 6852, - "nodeType": "ExpressionStatement", - "src": "23945:60:21" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 6858, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 6854, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967292, - "src": "24023:5:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 6855, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "24029:9:21", - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "24023:15:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<=", - "rightExpression": { - "expression": { - "id": 6856, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6819, - "src": "24042:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_memory_ptr", - "typeString": "struct Quotes.PegOutQuote memory" - } - }, - "id": 6857, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "24048:10:21", - "memberName": "expireDate", - "nodeType": "MemberAccess", - "referencedDeclaration": 10994, - "src": "24042:16:21", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "src": "24023:35:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303436", - "id": 6859, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "24060:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c8999eb883ba6531127283b89d3773d87761ac547946da55d1f52c5931d8838f", - "typeString": "literal_string \"LBC046\"" - }, - "value": "LBC046" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_c8999eb883ba6531127283b89d3773d87761ac547946da55d1f52c5931d8838f", - "typeString": "literal_string \"LBC046\"" - } - ], - "id": 6853, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "24015:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 6860, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "24015:54:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 6861, - "nodeType": "ExpressionStatement", - "src": "24015:54:21" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 6867, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 6863, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967292, - "src": "24087:5:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 6864, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "24093:6:21", - "memberName": "number", - "nodeType": "MemberAccess", - "src": "24087:12:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<=", - "rightExpression": { - "expression": { - "id": 6865, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6819, - "src": "24103:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_memory_ptr", - "typeString": "struct Quotes.PegOutQuote memory" - } - }, - "id": 6866, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "24109:11:21", - "memberName": "expireBlock", - "nodeType": "MemberAccess", - "referencedDeclaration": 10996, - "src": "24103:17:21", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "src": "24087:33:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303437", - "id": 6868, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "24122:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_b400745c4fd650850c2059b2d13f12980ca63b7ccd87c008204992f11af559c2", - "typeString": "literal_string \"LBC047\"" - }, - "value": "LBC047" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_b400745c4fd650850c2059b2d13f12980ca63b7ccd87c008204992f11af559c2", - "typeString": "literal_string \"LBC047\"" - } - ], - "id": 6862, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "24079:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 6869, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "24079:52:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 6870, - "nodeType": "ExpressionStatement", - "src": "24079:52:21" - }, - { - "assignments": [ - 6872 - ], - "declarations": [ - { - "constant": false, - "id": 6872, - "mutability": "mutable", - "name": "quoteHash", - "nameLocation": "24149:9:21", - "nodeType": "VariableDeclaration", - "scope": 6942, - "src": "24141:17:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 6871, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "24141:7:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "id": 6876, - "initialValue": { - "arguments": [ - { - "id": 6874, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6819, - "src": "24177:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_memory_ptr", - "typeString": "struct Quotes.PegOutQuote memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_memory_ptr", - "typeString": "struct Quotes.PegOutQuote memory" - } - ], - "id": 6873, - "name": "hashPegoutQuote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7357, - "src": "24161:15:21", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_PegOutQuote_$10997_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (struct Quotes.PegOutQuote memory) view returns (bytes32)" - } - }, - "id": 6875, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "24161:22:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "24141:42:21" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "expression": { - "id": 6880, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6819, - "src": "24240:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_memory_ptr", - "typeString": "struct Quotes.PegOutQuote memory" - } - }, - "id": 6881, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "24246:12:21", - "memberName": "lpRskAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 10966, - "src": "24240:18:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 6882, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6872, - "src": "24260:9:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 6883, - "name": "signature", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6821, - "src": "24271:9:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "id": 6878, - "name": "SignatureValidator", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11532, - "src": "24214:18:21", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_SignatureValidator_$11532_$", - "typeString": "type(library SignatureValidator)" - } - }, - "id": 6879, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "24233:6:21", - "memberName": "verify", - "nodeType": "MemberAccess", - "referencedDeclaration": 11531, - "src": "24214:25:21", - "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_pure$_t_address_$_t_bytes32_$_t_bytes_memory_ptr_$returns$_t_bool_$", - "typeString": "function (address,bytes32,bytes memory) pure returns (bool)" - } - }, - "id": 6884, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "24214:67:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303239", - "id": 6885, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "24295:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_ebb41fd1c3d95b8eaff1e56d491f7a983f7f3039fac57e6fad7993de139e2216", - "typeString": "literal_string \"LBC029\"" - }, - "value": "LBC029" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_ebb41fd1c3d95b8eaff1e56d491f7a983f7f3039fac57e6fad7993de139e2216", - "typeString": "literal_string \"LBC029\"" - } - ], - "id": 6877, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "24193:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 6886, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "24193:120:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 6887, - "nodeType": "ExpressionStatement", - "src": "24193:120:21" - }, - { - "assignments": [ - 6892 - ], - "declarations": [ - { - "constant": false, - "id": 6892, - "mutability": "mutable", - "name": "registeredQuote", - "nameLocation": "24351:15:21", - "nodeType": "VariableDeclaration", - "scope": 6942, - "src": "24324:42:21", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_storage_ptr", - "typeString": "struct Quotes.PegOutQuote" - }, - "typeName": { - "id": 6891, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 6890, - "name": "Quotes.PegOutQuote", - "nameLocations": [ - "24324:6:21", - "24331:11:21" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 10997, - "src": "24324:18:21" - }, - "referencedDeclaration": 10997, - "src": "24324:18:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_storage_ptr", - "typeString": "struct Quotes.PegOutQuote" - } - }, - "visibility": "internal" - } - ], - "id": 6896, - "initialValue": { - "baseExpression": { - "id": 6893, - "name": "registeredPegoutQuotes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5326, - "src": "24369:22:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegOutQuote_$10997_storage_$", - "typeString": "mapping(bytes32 => struct Quotes.PegOutQuote storage ref)" - } - }, - "id": 6895, - "indexExpression": { - "id": 6894, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6872, - "src": "24392:9:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "24369:33:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_storage", - "typeString": "struct Quotes.PegOutQuote storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "24324:78:21" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 6903, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "baseExpression": { - "id": 6898, - "name": "pegoutRegistry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5331, - "src": "24421:14:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegoutRecord_$5121_storage_$", - "typeString": "mapping(bytes32 => struct LiquidityBridgeContract.PegoutRecord storage ref)" - } - }, - "id": 6900, - "indexExpression": { - "id": 6899, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6872, - "src": "24436:9:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "24421:25:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegoutRecord_$5121_storage", - "typeString": "struct LiquidityBridgeContract.PegoutRecord storage ref" - } - }, - "id": 6901, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "24447:9:21", - "memberName": "completed", - "nodeType": "MemberAccess", - "referencedDeclaration": 5120, - "src": "24421:35:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "66616c7365", - "id": 6902, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "24460:5:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "false" - }, - "src": "24421:44:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303634", - "id": 6904, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "24467:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_35937926b0033772f3bb574f0cbcffec40211211a6070977d47733885bf234eb", - "typeString": "literal_string \"LBC064\"" - }, - "value": "LBC064" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_35937926b0033772f3bb574f0cbcffec40211211a6070977d47733885bf234eb", - "typeString": "literal_string \"LBC064\"" - } - ], - "id": 6897, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "24413:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 6905, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "24413:63:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 6906, - "nodeType": "ExpressionStatement", - "src": "24413:63:21" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 6914, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 6908, - "name": "registeredQuote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6892, - "src": "24494:15:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_storage_ptr", - "typeString": "struct Quotes.PegOutQuote storage pointer" - } - }, - "id": 6909, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "24510:10:21", - "memberName": "lbcAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 10964, - "src": "24494:26:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "arguments": [ - { - "hexValue": "30", - "id": 6912, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "24532:1:21", - "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": 6911, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "24524:7:21", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 6910, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "24524:7:21", - "typeDescriptions": {} - } - }, - "id": 6913, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "24524:10:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "24494:40:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303238", - "id": 6915, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "24536:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_4c4b8fd0ae53a3caa85e74f53bba210cefdcb0e1d1c519eb8385d2cd3741f7fb", - "typeString": "literal_string \"LBC028\"" - }, - "value": "LBC028" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_4c4b8fd0ae53a3caa85e74f53bba210cefdcb0e1d1c519eb8385d2cd3741f7fb", - "typeString": "literal_string \"LBC028\"" - } - ], - "id": 6907, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "24486:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 6916, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "24486:59:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 6917, - "nodeType": "ExpressionStatement", - "src": "24486:59:21" - }, - { - "expression": { - "id": 6922, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 6918, - "name": "registeredPegoutQuotes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5326, - "src": "24555:22:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegOutQuote_$10997_storage_$", - "typeString": "mapping(bytes32 => struct Quotes.PegOutQuote storage ref)" - } - }, - "id": 6920, - "indexExpression": { - "id": 6919, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6872, - "src": "24578:9:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "24555:33:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_storage", - "typeString": "struct Quotes.PegOutQuote storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 6921, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6819, - "src": "24591:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_memory_ptr", - "typeString": "struct Quotes.PegOutQuote memory" - } - }, - "src": "24555:41:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_storage", - "typeString": "struct Quotes.PegOutQuote storage ref" - } - }, - "id": 6923, - "nodeType": "ExpressionStatement", - "src": "24555:41:21" - }, - { - "expression": { - "id": 6930, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "baseExpression": { - "id": 6924, - "name": "pegoutRegistry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5331, - "src": "24606:14:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegoutRecord_$5121_storage_$", - "typeString": "mapping(bytes32 => struct LiquidityBridgeContract.PegoutRecord storage ref)" - } - }, - "id": 6926, - "indexExpression": { - "id": 6925, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6872, - "src": "24621:9:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "24606:25:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegoutRecord_$5121_storage", - "typeString": "struct LiquidityBridgeContract.PegoutRecord storage ref" - } - }, - "id": 6927, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberLocation": "24632:16:21", - "memberName": "depositTimestamp", - "nodeType": "MemberAccess", - "referencedDeclaration": 5118, - "src": "24606:42:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "expression": { - "id": 6928, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967292, - "src": "24651:5:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 6929, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "24657:9:21", - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "24651:15:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "24606:60:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 6931, - "nodeType": "ExpressionStatement", - "src": "24606:60:21" - }, - { - "eventCall": { - "arguments": [ - { - "id": 6933, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6872, - "src": "24695:9:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "expression": { - "id": 6934, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "24706:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 6935, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "24710:6:21", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "24706:10:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 6936, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "24718:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 6937, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "24722:5:21", - "memberName": "value", - "nodeType": "MemberAccess", - "src": "24718:9:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "expression": { - "id": 6938, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967292, - "src": "24729:5:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 6939, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "24735:9:21", - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "24729:15:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 6932, - "name": "PegOutDeposit", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5264, - "src": "24681:13:21", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_address_$_t_uint256_$_t_uint256_$returns$__$", - "typeString": "function (bytes32,address,uint256,uint256)" - } - }, - "id": 6940, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "24681:64:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 6941, - "nodeType": "EmitStatement", - "src": "24676:69:21" - } - ] - }, - "functionSelector": "7b78837f", - "id": 6943, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "depositPegout", - "nameLocation": "23622:13:21", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 6822, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 6819, - "mutability": "mutable", - "name": "quote", - "nameLocation": "23735:5:21", - "nodeType": "VariableDeclaration", - "scope": 6943, - "src": "23709:31:21", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_memory_ptr", - "typeString": "struct Quotes.PegOutQuote" - }, - "typeName": { - "id": 6818, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 6817, - "name": "Quotes.PegOutQuote", - "nameLocations": [ - "23709:6:21", - "23716:11:21" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 10997, - "src": "23709:18:21" - }, - "referencedDeclaration": 10997, - "src": "23709:18:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_storage_ptr", - "typeString": "struct Quotes.PegOutQuote" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 6821, - "mutability": "mutable", - "name": "signature", - "nameLocation": "23763:9:21", - "nodeType": "VariableDeclaration", - "scope": 6943, - "src": "23750:22:21", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 6820, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "23750:5:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "23635:143:21" - }, - "returnParameters": { - "id": 6823, - "nodeType": "ParameterList", - "parameters": [], - "src": "23796:0:21" - }, - "scope": 7898, - "src": "23613:1139:21", - "stateMutability": "payable", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 7056, - "nodeType": "Block", - "src": "24837:961:21", - "statements": [ - { - "assignments": [ - 6954 - ], - "declarations": [ - { - "constant": false, - "id": 6954, - "mutability": "mutable", - "name": "quote", - "nameLocation": "24874:5:21", - "nodeType": "VariableDeclaration", - "scope": 7056, - "src": "24847:32:21", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_storage_ptr", - "typeString": "struct Quotes.PegOutQuote" - }, - "typeName": { - "id": 6953, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 6952, - "name": "Quotes.PegOutQuote", - "nameLocations": [ - "24847:6:21", - "24854:11:21" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 10997, - "src": "24847:18:21" - }, - "referencedDeclaration": 10997, - "src": "24847:18:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_storage_ptr", - "typeString": "struct Quotes.PegOutQuote" - } - }, - "visibility": "internal" - } - ], - "id": 6958, - "initialValue": { - "baseExpression": { - "id": 6955, - "name": "registeredPegoutQuotes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5326, - "src": "24882:22:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegOutQuote_$10997_storage_$", - "typeString": "mapping(bytes32 => struct Quotes.PegOutQuote storage ref)" - } - }, - "id": 6957, - "indexExpression": { - "id": 6956, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6945, - "src": "24905:9:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "24882:33:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_storage", - "typeString": "struct Quotes.PegOutQuote storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "24847:68:21" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 6966, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 6960, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6954, - "src": "24934:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_storage_ptr", - "typeString": "struct Quotes.PegOutQuote storage pointer" - } - }, - "id": 6961, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "24940:10:21", - "memberName": "lbcAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 10964, - "src": "24934:16:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "arguments": [ - { - "hexValue": "30", - "id": 6964, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "24962:1:21", - "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": 6963, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "24954:7:21", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 6962, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "24954:7:21", - "typeDescriptions": {} - } - }, - "id": 6965, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "24954:10:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "24934:30:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303432", - "id": 6967, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "24966:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_100fb89310beea959f828c5ca2a95ca4d28be5d0ba0e61e54b1345b68d14b6a1", - "typeString": "literal_string \"LBC042\"" - }, - "value": "LBC042" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_100fb89310beea959f828c5ca2a95ca4d28be5d0ba0e61e54b1345b68d14b6a1", - "typeString": "literal_string \"LBC042\"" - } - ], - "id": 6959, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "24926:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 6968, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "24926:49:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 6969, - "nodeType": "ExpressionStatement", - "src": "24926:49:21" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 6981, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 6975, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 6971, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967292, - "src": "25006:5:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 6972, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "25012:9:21", - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "25006:15:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "expression": { - "id": 6973, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6954, - "src": "25024:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_storage_ptr", - "typeString": "struct Quotes.PegOutQuote storage pointer" - } - }, - "id": 6974, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "25030:10:21", - "memberName": "expireDate", - "nodeType": "MemberAccess", - "referencedDeclaration": 10994, - "src": "25024:16:21", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "src": "25006:34:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 6980, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 6976, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967292, - "src": "25056:5:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 6977, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "25062:6:21", - "memberName": "number", - "nodeType": "MemberAccess", - "src": "25056:12:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "expression": { - "id": 6978, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6954, - "src": "25071:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_storage_ptr", - "typeString": "struct Quotes.PegOutQuote storage pointer" - } - }, - "id": 6979, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "25077:11:21", - "memberName": "expireBlock", - "nodeType": "MemberAccess", - "referencedDeclaration": 10996, - "src": "25071:17:21", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "src": "25056:32:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "25006:82:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303431", - "id": 6982, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "25102:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_476e33256b298fee7fc3dab0c339427caa3a9a4a44654f7f02b328083d44ca74", - "typeString": "literal_string \"LBC041\"" - }, - "value": "LBC041" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_476e33256b298fee7fc3dab0c339427caa3a9a4a44654f7f02b328083d44ca74", - "typeString": "literal_string \"LBC041\"" - } - ], - "id": 6970, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "24985:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 6983, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "24985:135:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 6984, - "nodeType": "ExpressionStatement", - "src": "24985:135:21" - }, - { - "assignments": [ - 6986 - ], - "declarations": [ - { - "constant": false, - "id": 6986, - "mutability": "mutable", - "name": "valueToTransfer", - "nameLocation": "25136:15:21", - "nodeType": "VariableDeclaration", - "scope": 7056, - "src": "25131:20:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 6985, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "25131:4:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 6992, - "initialValue": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 6991, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 6987, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6954, - "src": "25154:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_storage_ptr", - "typeString": "struct Quotes.PegOutQuote storage pointer" - } - }, - "id": 6988, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "25160:5:21", - "memberName": "value", - "nodeType": "MemberAccess", - "referencedDeclaration": 10982, - "src": "25154:11:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "expression": { - "id": 6989, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6954, - "src": "25168:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_storage_ptr", - "typeString": "struct Quotes.PegOutQuote storage pointer" - } - }, - "id": 6990, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "25174:7:21", - "memberName": "callFee", - "nodeType": "MemberAccess", - "referencedDeclaration": 10974, - "src": "25168:13:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "25154:27:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "25131:50:21" - }, - { - "assignments": [ - 6994 - ], - "declarations": [ - { - "constant": false, - "id": 6994, - "mutability": "mutable", - "name": "addressToTransfer", - "nameLocation": "25199:17:21", - "nodeType": "VariableDeclaration", - "scope": 7056, - "src": "25191:25:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 6993, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "25191:7:21", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "id": 6997, - "initialValue": { - "expression": { - "id": 6995, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6954, - "src": "25219:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_storage_ptr", - "typeString": "struct Quotes.PegOutQuote storage pointer" - } - }, - "id": 6996, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "25225:16:21", - "memberName": "rskRefundAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 10970, - "src": "25219:22:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "25191:50:21" - }, - { - "assignments": [ - 6999 - ], - "declarations": [ - { - "constant": false, - "id": 6999, - "mutability": "mutable", - "name": "penalty", - "nameLocation": "25257:7:21", - "nodeType": "VariableDeclaration", - "scope": 7056, - "src": "25252:12:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 6998, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "25252:4:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 7008, - "initialValue": { - "arguments": [ - { - "expression": { - "id": 7001, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6954, - "src": "25271:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_storage_ptr", - "typeString": "struct Quotes.PegOutQuote storage pointer" - } - }, - "id": 7002, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "25277:10:21", - "memberName": "penaltyFee", - "nodeType": "MemberAccess", - "referencedDeclaration": 10976, - "src": "25271:16:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "baseExpression": { - "id": 7003, - "name": "pegoutCollateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5287, - "src": "25289:16:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 7006, - "indexExpression": { - "expression": { - "id": 7004, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6954, - "src": "25306:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_storage_ptr", - "typeString": "struct Quotes.PegOutQuote storage pointer" - } - }, - "id": 7005, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "25312:12:21", - "memberName": "lpRskAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 10966, - "src": "25306:18:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "25289:36:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 7000, - "name": "min", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7495, - "src": "25267:3:21", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$", - "typeString": "function (uint256,uint256) pure returns (uint256)" - } - }, - "id": 7007, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "25267:59:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "25252:74:21" - }, - { - "expression": { - "id": 7014, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 7009, - "name": "pegoutCollateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5287, - "src": "25336:16:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 7012, - "indexExpression": { - "expression": { - "id": 7010, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6954, - "src": "25353:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_storage_ptr", - "typeString": "struct Quotes.PegOutQuote storage pointer" - } - }, - "id": 7011, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "25359:12:21", - "memberName": "lpRskAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 10966, - "src": "25353:18:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "25336:36:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "-=", - "rightHandSide": { - "id": 7013, - "name": "penalty", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6999, - "src": "25376:7:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "25336:47:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 7015, - "nodeType": "ExpressionStatement", - "src": "25336:47:21" - }, - { - "eventCall": { - "arguments": [ - { - "expression": { - "id": 7017, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6954, - "src": "25409:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_storage_ptr", - "typeString": "struct Quotes.PegOutQuote storage pointer" - } - }, - "id": 7018, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "25415:12:21", - "memberName": "lpRskAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 10966, - "src": "25409:18:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 7019, - "name": "penalty", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6999, - "src": "25429:7:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 7020, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6945, - "src": "25438:9:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "id": 7016, - "name": "Penalized", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5212, - "src": "25399:9:21", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_bytes32_$returns$__$", - "typeString": "function (address,uint256,bytes32)" - } - }, - "id": 7021, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "25399:49:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 7022, - "nodeType": "EmitStatement", - "src": "25394:54:21" - }, - { - "eventCall": { - "arguments": [ - { - "id": 7024, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6945, - "src": "25495:9:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 7025, - "name": "valueToTransfer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6986, - "src": "25518:15:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "expression": { - "id": 7026, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6954, - "src": "25547:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_storage_ptr", - "typeString": "struct Quotes.PegOutQuote storage pointer" - } - }, - "id": 7027, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "25553:16:21", - "memberName": "rskRefundAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 10970, - "src": "25547:22:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 7023, - "name": "PegOutUserRefunded", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5272, - "src": "25463:18:21", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint256_$_t_address_$returns$__$", - "typeString": "function (bytes32,uint256,address)" - } - }, - "id": 7028, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "25463:116:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 7029, - "nodeType": "EmitStatement", - "src": "25458:121:21" - }, - { - "expression": { - "id": 7033, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "delete", - "prefix": true, - "src": "25590:40:21", - "subExpression": { - "baseExpression": { - "id": 7030, - "name": "registeredPegoutQuotes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5326, - "src": "25597:22:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegOutQuote_$10997_storage_$", - "typeString": "mapping(bytes32 => struct Quotes.PegOutQuote storage ref)" - } - }, - "id": 7032, - "indexExpression": { - "id": 7031, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6945, - "src": "25620:9:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "25597:33:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_storage", - "typeString": "struct Quotes.PegOutQuote storage ref" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 7034, - "nodeType": "ExpressionStatement", - "src": "25590:40:21" - }, - { - "expression": { - "id": 7040, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "baseExpression": { - "id": 7035, - "name": "pegoutRegistry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5331, - "src": "25640:14:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegoutRecord_$5121_storage_$", - "typeString": "mapping(bytes32 => struct LiquidityBridgeContract.PegoutRecord storage ref)" - } - }, - "id": 7037, - "indexExpression": { - "id": 7036, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6945, - "src": "25655:9:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "25640:25:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegoutRecord_$5121_storage", - "typeString": "struct LiquidityBridgeContract.PegoutRecord storage ref" - } - }, - "id": 7038, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberLocation": "25666:9:21", - "memberName": "completed", - "nodeType": "MemberAccess", - "referencedDeclaration": 5120, - "src": "25640:35:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "hexValue": "74727565", - "id": 7039, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "25678:4:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "src": "25640:42:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 7041, - "nodeType": "ExpressionStatement", - "src": "25640:42:21" - }, - { - "assignments": [ - 7043, - null - ], - "declarations": [ - { - "constant": false, - "id": 7043, - "mutability": "mutable", - "name": "sent", - "nameLocation": "25699:4:21", - "nodeType": "VariableDeclaration", - "scope": 7056, - "src": "25694:9:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 7042, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "25694:4:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - null - ], - "id": 7050, - "initialValue": { - "arguments": [ - { - "hexValue": "", - "id": 7048, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "25755:2:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - }, - "value": "" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - } - ], - "expression": { - "id": 7044, - "name": "addressToTransfer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6994, - "src": "25708:17:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 7045, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "25726:4:21", - "memberName": "call", - "nodeType": "MemberAccess", - "src": "25708:22:21", - "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": 7047, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "names": [ - "value" - ], - "nodeType": "FunctionCallOptions", - "options": [ - { - "id": 7046, - "name": "valueToTransfer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 6986, - "src": "25738:15:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "src": "25708:46:21", - "typeDescriptions": { - "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$value", - "typeString": "function (bytes memory) payable returns (bool,bytes memory)" - } - }, - "id": 7049, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "25708:50:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "tuple(bool,bytes memory)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "25693:65:21" - }, - { - "expression": { - "arguments": [ - { - "id": 7052, - "name": "sent", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7043, - "src": "25776:4:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303434", - "id": 7053, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "25782:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_0a7ff570d31f7e351d06bf5b8d0ef26a9275a9d32a7dffd7981a6c6ac58227c6", - "typeString": "literal_string \"LBC044\"" - }, - "value": "LBC044" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_0a7ff570d31f7e351d06bf5b8d0ef26a9275a9d32a7dffd7981a6c6ac58227c6", - "typeString": "literal_string \"LBC044\"" - } - ], - "id": 7051, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "25768:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 7054, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "25768:23:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 7055, - "nodeType": "ExpressionStatement", - "src": "25768:23:21" - } - ] - }, - "functionSelector": "8f91797d", - "id": 7057, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "id": 6948, - "kind": "modifierInvocation", - "modifierName": { - "id": 6947, - "name": "nonReentrant", - "nameLocations": [ - "24824:12:21" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 346, - "src": "24824:12:21" - }, - "nodeType": "ModifierInvocation", - "src": "24824:12:21" - } - ], - "name": "refundUserPegOut", - "nameLocation": "24767:16:21", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 6946, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 6945, - "mutability": "mutable", - "name": "quoteHash", - "nameLocation": "24801:9:21", - "nodeType": "VariableDeclaration", - "scope": 7057, - "src": "24793:17:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 6944, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "24793:7:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "24783:33:21" - }, - "returnParameters": { - "id": 6949, - "nodeType": "ParameterList", - "parameters": [], - "src": "24837:0:21" - }, - "scope": 7898, - "src": "24758:1040:21", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 7277, - "nodeType": "Block", - "src": "26047:1910:21", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 7081, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "baseExpression": { - "id": 7076, - "name": "pegoutRegistry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5331, - "src": "26065:14:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegoutRecord_$5121_storage_$", - "typeString": "mapping(bytes32 => struct LiquidityBridgeContract.PegoutRecord storage ref)" - } - }, - "id": 7078, - "indexExpression": { - "id": 7077, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7059, - "src": "26080:9:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "26065:25:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegoutRecord_$5121_storage", - "typeString": "struct LiquidityBridgeContract.PegoutRecord storage ref" - } - }, - "id": 7079, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "26091:9:21", - "memberName": "completed", - "nodeType": "MemberAccess", - "referencedDeclaration": 5120, - "src": "26065:35:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "66616c7365", - "id": 7080, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "26104:5:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "false" - }, - "src": "26065:44:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303634", - "id": 7082, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "26111:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_35937926b0033772f3bb574f0cbcffec40211211a6070977d47733885bf234eb", - "typeString": "literal_string \"LBC064\"" - }, - "value": "LBC064" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_35937926b0033772f3bb574f0cbcffec40211211a6070977d47733885bf234eb", - "typeString": "literal_string \"LBC064\"" - } - ], - "id": 7075, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "26057:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 7083, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "26057:63:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 7084, - "nodeType": "ExpressionStatement", - "src": "26057:63:21" - }, - { - "assignments": [ - 7089 - ], - "declarations": [ - { - "constant": false, - "id": 7089, - "mutability": "mutable", - "name": "quote", - "nameLocation": "26157:5:21", - "nodeType": "VariableDeclaration", - "scope": 7277, - "src": "26130:32:21", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_storage_ptr", - "typeString": "struct Quotes.PegOutQuote" - }, - "typeName": { - "id": 7088, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 7087, - "name": "Quotes.PegOutQuote", - "nameLocations": [ - "26130:6:21", - "26137:11:21" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 10997, - "src": "26130:18:21" - }, - "referencedDeclaration": 10997, - "src": "26130:18:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_storage_ptr", - "typeString": "struct Quotes.PegOutQuote" - } - }, - "visibility": "internal" - } - ], - "id": 7093, - "initialValue": { - "baseExpression": { - "id": 7090, - "name": "registeredPegoutQuotes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5326, - "src": "26165:22:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegOutQuote_$10997_storage_$", - "typeString": "mapping(bytes32 => struct Quotes.PegOutQuote storage ref)" - } - }, - "id": 7092, - "indexExpression": { - "id": 7091, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7059, - "src": "26188:9:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "26165:33:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_storage", - "typeString": "struct Quotes.PegOutQuote storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "26130:68:21" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 7101, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 7095, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7089, - "src": "26216:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_storage_ptr", - "typeString": "struct Quotes.PegOutQuote storage pointer" - } - }, - "id": 7096, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "26222:10:21", - "memberName": "lbcAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 10964, - "src": "26216:16:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "arguments": [ - { - "hexValue": "30", - "id": 7099, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "26244:1:21", - "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": 7098, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "26236:7:21", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 7097, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "26236:7:21", - "typeDescriptions": {} - } - }, - "id": 7100, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "26236:10:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "26216:30:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303432", - "id": 7102, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "26248:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_100fb89310beea959f828c5ca2a95ca4d28be5d0ba0e61e54b1345b68d14b6a1", - "typeString": "literal_string \"LBC042\"" - }, - "value": "LBC042" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_100fb89310beea959f828c5ca2a95ca4d28be5d0ba0e61e54b1345b68d14b6a1", - "typeString": "literal_string \"LBC042\"" - } - ], - "id": 7094, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "26208:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 7103, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "26208:49:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 7104, - "nodeType": "ExpressionStatement", - "src": "26208:49:21" - }, - { - "assignments": [ - 7110 - ], - "declarations": [ - { - "constant": false, - "id": 7110, - "mutability": "mutable", - "name": "outputs", - "nameLocation": "26297:7:21", - "nodeType": "VariableDeclaration", - "scope": 7277, - "src": "26267:37:21", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2307_memory_ptr_$dyn_memory_ptr", - "typeString": "struct BtcUtils.TxRawOutput[]" - }, - "typeName": { - "baseType": { - "id": 7108, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 7107, - "name": "BtcUtils.TxRawOutput", - "nameLocations": [ - "26267:8:21", - "26276:11:21" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 2307, - "src": "26267:20:21" - }, - "referencedDeclaration": 2307, - "src": "26267:20:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TxRawOutput_$2307_storage_ptr", - "typeString": "struct BtcUtils.TxRawOutput" - } - }, - "id": 7109, - "nodeType": "ArrayTypeName", - "src": "26267:22:21", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2307_storage_$dyn_storage_ptr", - "typeString": "struct BtcUtils.TxRawOutput[]" - } - }, - "visibility": "internal" - } - ], - "id": 7115, - "initialValue": { - "arguments": [ - { - "id": 7113, - "name": "btcTx", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7061, - "src": "26327:5:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "id": 7111, - "name": "BtcUtils", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3743, - "src": "26307:8:21", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_BtcUtils_$3743_$", - "typeString": "type(library BtcUtils)" - } - }, - "id": 7112, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "26316:10:21", - "memberName": "getOutputs", - "nodeType": "MemberAccess", - "referencedDeclaration": 2454, - "src": "26307:19:21", - "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_pure$_t_bytes_memory_ptr_$returns$_t_array$_t_struct$_TxRawOutput_$2307_memory_ptr_$dyn_memory_ptr_$", - "typeString": "function (bytes memory) pure returns (struct BtcUtils.TxRawOutput memory[] memory)" - } - }, - "id": 7114, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "26307:26:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2307_memory_ptr_$dyn_memory_ptr", - "typeString": "struct BtcUtils.TxRawOutput memory[] memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "26267:66:21" - }, - { - "assignments": [ - 7117 - ], - "declarations": [ - { - "constant": false, - "id": 7117, - "mutability": "mutable", - "name": "txQuoteHash", - "nameLocation": "26351:11:21", - "nodeType": "VariableDeclaration", - "scope": 7277, - "src": "26343:19:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 7116, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "26343:7:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "id": 7131, - "initialValue": { - "arguments": [ - { - "arguments": [ - { - "expression": { - "baseExpression": { - "id": 7122, - "name": "outputs", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7110, - "src": "26405:7:21", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2307_memory_ptr_$dyn_memory_ptr", - "typeString": "struct BtcUtils.TxRawOutput memory[] memory" - } - }, - "id": 7124, - "indexExpression": { - "id": 7123, - "name": "QUOTE_HASH_OUTPUT", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5111, - "src": "26413:17:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "26405:26:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TxRawOutput_$2307_memory_ptr", - "typeString": "struct BtcUtils.TxRawOutput memory" - } - }, - "id": 7125, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "26432:8:21", - "memberName": "pkScript", - "nodeType": "MemberAccess", - "referencedDeclaration": 2302, - "src": "26405:35:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "id": 7120, - "name": "BtcUtils", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3743, - "src": "26376:8:21", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_BtcUtils_$3743_$", - "typeString": "type(library BtcUtils)" - } - }, - "id": 7121, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "26385:19:21", - "memberName": "parseNullDataScript", - "nodeType": "MemberAccess", - "referencedDeclaration": 3176, - "src": "26376:28:21", - "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_pure$_t_bytes_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (bytes memory) pure returns (bytes memory)" - } - }, - "id": 7126, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "26376:65:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "components": [ - { - "id": 7128, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "26444:7:21", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes32_$", - "typeString": "type(bytes32)" - }, - "typeName": { - "id": 7127, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "26444:7:21", - "typeDescriptions": {} - } - } - ], - "id": 7129, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "26443:9:21", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes32_$", - "typeString": "type(bytes32)" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_type$_t_bytes32_$", - "typeString": "type(bytes32)" - } - ], - "expression": { - "id": 7118, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "26365:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 7119, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "26369:6:21", - "memberName": "decode", - "nodeType": "MemberAccess", - "src": "26365:10:21", - "typeDescriptions": { - "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 7130, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "26365:88:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "26343:110:21" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "id": 7135, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 7133, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7059, - "src": "26471:9:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "id": 7134, - "name": "txQuoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7117, - "src": "26484:11:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "src": "26471:24:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303639", - "id": 7136, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "26497:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_5cf5f7c75a2357c5697933702fe9f20c432f8f5205def7bf18572d390cea5cc1", - "typeString": "literal_string \"LBC069\"" - }, - "value": "LBC069" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_5cf5f7c75a2357c5697933702fe9f20c432f8f5205def7bf18572d390cea5cc1", - "typeString": "literal_string \"LBC069\"" - } - ], - "id": 7132, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "26463:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 7137, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "26463:43:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 7138, - "nodeType": "ExpressionStatement", - "src": "26463:43:21" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 7144, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 7140, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "26524:3:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 7141, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "26528:6:21", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "26524:10:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 7142, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7089, - "src": "26538:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_storage_ptr", - "typeString": "struct Quotes.PegOutQuote storage pointer" - } - }, - "id": 7143, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "26544:12:21", - "memberName": "lpRskAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 10966, - "src": "26538:18:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "26524:32:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303438", - "id": 7145, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "26558:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_3c14ff4570332247d29826742fdf7f014a86ddbee2c49b0252a79ef49351f196", - "typeString": "literal_string \"LBC048\"" - }, - "value": "LBC048" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_3c14ff4570332247d29826742fdf7f014a86ddbee2c49b0252a79ef49351f196", - "typeString": "literal_string \"LBC048\"" - } - ], - "id": 7139, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "26516:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 7146, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "26516:51:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 7147, - "nodeType": "ExpressionStatement", - "src": "26516:51:21" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "id": 7167, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "arguments": [ - { - "id": 7153, - "name": "btcTx", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7061, - "src": "26672:5:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "id": 7151, - "name": "BtcUtils", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3743, - "src": "26653:8:21", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_BtcUtils_$3743_$", - "typeString": "type(library BtcUtils)" - } - }, - "id": 7152, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "26662:9:21", - "memberName": "hashBtcTx", - "nodeType": "MemberAccess", - "referencedDeclaration": 3244, - "src": "26653:18:21", - "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 7154, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "26653:25:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 7155, - "name": "btcBlockHeaderHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7063, - "src": "26696:18:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 7156, - "name": "partialMerkleTree", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7065, - "src": "26732:17:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 7157, - "name": "merkleBranchHashes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7068, - "src": "26767:18:21", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", - "typeString": "bytes32[] memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", - "typeString": "bytes32[] memory" - } - ], - "expression": { - "id": 7149, - "name": "bridge", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5275, - "src": "26598:6:21", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Bridge_$4173", - "typeString": "contract Bridge" - } - }, - "id": 7150, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "26605:30:21", - "memberName": "getBtcTransactionConfirmations", - "nodeType": "MemberAccess", - "referencedDeclaration": 4083, - "src": "26598:37:21", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_bytes32_$_t_bytes32_$_t_uint256_$_t_array$_t_bytes32_$dyn_memory_ptr_$returns$_t_int256_$", - "typeString": "function (bytes32,bytes32,uint256,bytes32[] memory) view external returns (int256)" - } - }, - "id": 7158, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "26598:201:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "arguments": [ - { - "arguments": [ - { - "expression": { - "id": 7163, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7089, - "src": "26815:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_storage_ptr", - "typeString": "struct Quotes.PegOutQuote storage pointer" - } - }, - "id": 7164, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "26821:21:21", - "memberName": "transferConfirmations", - "nodeType": "MemberAccess", - "referencedDeclaration": 10990, - "src": "26815:27:21", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - ], - "id": 7162, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "26807:7:21", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint256_$", - "typeString": "type(uint256)" - }, - "typeName": { - "id": 7161, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "26807:7:21", - "typeDescriptions": {} - } - }, - "id": 7165, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "26807:36:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 7160, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "26803:3:21", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_int256_$", - "typeString": "type(int256)" - }, - "typeName": { - "id": 7159, - "name": "int", - "nodeType": "ElementaryTypeName", - "src": "26803:3:21", - "typeDescriptions": {} - } - }, - "id": 7166, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "26803:41:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "src": "26598:246:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303439", - "id": 7168, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "26858:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_41cc9877d5a72c2a0ef0c602e024ddc86a1f279ef7306bab75dd3c5447ffb6e0", - "typeString": "literal_string \"LBC049\"" - }, - "value": "LBC049" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_41cc9877d5a72c2a0ef0c602e024ddc86a1f279ef7306bab75dd3c5447ffb6e0", - "typeString": "literal_string \"LBC049\"" - } - ], - "id": 7148, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "26577:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 7169, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "26577:299:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 7170, - "nodeType": "ExpressionStatement", - "src": "26577:299:21" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 7183, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 7172, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7089, - "src": "26894:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_storage_ptr", - "typeString": "struct Quotes.PegOutQuote storage pointer" - } - }, - "id": 7173, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "26900:5:21", - "memberName": "value", - "nodeType": "MemberAccess", - "referencedDeclaration": 10982, - "src": "26894:11:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<=", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "id": 7182, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "baseExpression": { - "id": 7174, - "name": "outputs", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7110, - "src": "26909:7:21", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2307_memory_ptr_$dyn_memory_ptr", - "typeString": "struct BtcUtils.TxRawOutput memory[] memory" - } - }, - "id": 7176, - "indexExpression": { - "id": 7175, - "name": "PAY_TO_ADDRESS_OUTPUT", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5108, - "src": "26917:21:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "26909:30:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TxRawOutput_$2307_memory_ptr", - "typeString": "struct BtcUtils.TxRawOutput memory" - } - }, - "id": 7177, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "26940:5:21", - "memberName": "value", - "nodeType": "MemberAccess", - "referencedDeclaration": 2300, - "src": "26909:36:21", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "nodeType": "BinaryOperation", - "operator": "*", - "rightExpression": { - "components": [ - { - "commonType": { - "typeIdentifier": "t_rational_10000000000_by_1", - "typeString": "int_const 10000000000" - }, - "id": 7180, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "leftExpression": { - "hexValue": "3130", - "id": 7178, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "26949:2:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_10_by_1", - "typeString": "int_const 10" - }, - "value": "10" - }, - "nodeType": "BinaryOperation", - "operator": "**", - "rightExpression": { - "hexValue": "3130", - "id": 7179, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "26953:2:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_10_by_1", - "typeString": "int_const 10" - }, - "value": "10" - }, - "src": "26949:6:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_10000000000_by_1", - "typeString": "int_const 10000000000" - } - } - ], - "id": 7181, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "26948:8:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_10000000000_by_1", - "typeString": "int_const 10000000000" - } - }, - "src": "26909:47:21", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "26894:62:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303637", - "id": 7184, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "26958:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_94643b69f05d64f660a022cd48046be494c1ed271b5d9ae602f6fdadc77976be", - "typeString": "literal_string \"LBC067\"" - }, - "value": "LBC067" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_94643b69f05d64f660a022cd48046be494c1ed271b5d9ae602f6fdadc77976be", - "typeString": "literal_string \"LBC067\"" - } - ], - "id": 7171, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "26886:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 7185, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "26886:81:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 7186, - "nodeType": "ExpressionStatement", - "src": "26886:81:21" - }, - { - "assignments": [ - 7188 - ], - "declarations": [ - { - "constant": false, - "id": 7188, - "mutability": "mutable", - "name": "btcTxDestination", - "nameLocation": "27008:16:21", - "nodeType": "VariableDeclaration", - "scope": 7277, - "src": "26995:29:21", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 7187, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "26995:5:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 7197, - "initialValue": { - "arguments": [ - { - "expression": { - "baseExpression": { - "id": 7191, - "name": "outputs", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7110, - "src": "27057:7:21", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2307_memory_ptr_$dyn_memory_ptr", - "typeString": "struct BtcUtils.TxRawOutput memory[] memory" - } - }, - "id": 7193, - "indexExpression": { - "id": 7192, - "name": "PAY_TO_ADDRESS_OUTPUT", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5108, - "src": "27065:21:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "27057:30:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TxRawOutput_$2307_memory_ptr", - "typeString": "struct BtcUtils.TxRawOutput memory" - } - }, - "id": 7194, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "27101:8:21", - "memberName": "pkScript", - "nodeType": "MemberAccess", - "referencedDeclaration": 2302, - "src": "27057:52:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "id": 7195, - "name": "mainnet", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5317, - "src": "27111:7:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "expression": { - "id": 7189, - "name": "BtcUtils", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3743, - "src": "27027:8:21", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_BtcUtils_$3743_$", - "typeString": "type(library BtcUtils)" - } - }, - "id": 7190, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "27036:20:21", - "memberName": "parsePayToPubKeyHash", - "nodeType": "MemberAccess", - "referencedDeclaration": 2874, - "src": "27027:29:21", - "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_pure$_t_bytes_memory_ptr_$_t_bool_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (bytes memory,bool) pure returns (bytes memory)" - } - }, - "id": 7196, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "27027:92:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "26995:124:21" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "id": 7206, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "expression": { - "id": 7200, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7089, - "src": "27147:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_storage_ptr", - "typeString": "struct Quotes.PegOutQuote storage pointer" - } - }, - "id": 7201, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "27153:15:21", - "memberName": "deposityAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 10980, - "src": "27147:21:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - ], - "id": 7199, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967288, - "src": "27137:9:21", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 7202, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "27137:32:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "arguments": [ - { - "id": 7204, - "name": "btcTxDestination", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7188, - "src": "27183:16:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 7203, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967288, - "src": "27173:9:21", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 7205, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "27173:27:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "src": "27137:63:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303638", - "id": 7207, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "27202:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_7cd3d68dd2419ceccbacf2f69bda9c4c2f3bdb0c0535db4bbef90be788c8f7de", - "typeString": "literal_string \"LBC068\"" - }, - "value": "LBC068" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_7cd3d68dd2419ceccbacf2f69bda9c4c2f3bdb0c0535db4bbef90be788c8f7de", - "typeString": "literal_string \"LBC068\"" - } - ], - "id": 7198, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "27129:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 7208, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "27129:82:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 7209, - "nodeType": "ExpressionStatement", - "src": "27129:82:21" - }, - { - "condition": { - "arguments": [ - { - "id": 7211, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7089, - "src": "27279:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_storage_ptr", - "typeString": "struct Quotes.PegOutQuote storage pointer" - } - }, - { - "id": 7212, - "name": "txQuoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7117, - "src": "27302:11:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 7213, - "name": "btcBlockHeaderHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7063, - "src": "27331:18:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_storage_ptr", - "typeString": "struct Quotes.PegOutQuote storage pointer" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "id": 7210, - "name": "shouldPenalizePegOutLP", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7800, - "src": "27239:22:21", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_PegOutQuote_$10997_memory_ptr_$_t_bytes32_$_t_bytes32_$returns$_t_bool_$", - "typeString": "function (struct Quotes.PegOutQuote memory,bytes32,bytes32) view returns (bool)" - } - }, - "id": 7214, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "27239:124:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 7241, - "nodeType": "IfStatement", - "src": "27222:428:21", - "trueBody": { - "id": 7240, - "nodeType": "Block", - "src": "27374:276:21", - "statements": [ - { - "assignments": [ - 7216 - ], - "declarations": [ - { - "constant": false, - "id": 7216, - "mutability": "mutable", - "name": "penalty", - "nameLocation": "27393:7:21", - "nodeType": "VariableDeclaration", - "scope": 7240, - "src": "27388:12:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 7215, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "27388:4:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 7225, - "initialValue": { - "arguments": [ - { - "expression": { - "id": 7218, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7089, - "src": "27424:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_storage_ptr", - "typeString": "struct Quotes.PegOutQuote storage pointer" - } - }, - "id": 7219, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "27430:10:21", - "memberName": "penaltyFee", - "nodeType": "MemberAccess", - "referencedDeclaration": 10976, - "src": "27424:16:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "baseExpression": { - "id": 7220, - "name": "pegoutCollateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5287, - "src": "27458:16:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 7223, - "indexExpression": { - "expression": { - "id": 7221, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7089, - "src": "27475:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_storage_ptr", - "typeString": "struct Quotes.PegOutQuote storage pointer" - } - }, - "id": 7222, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "27481:12:21", - "memberName": "lpRskAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 10966, - "src": "27475:18:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "27458:36:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 7217, - "name": "min", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7495, - "src": "27403:3:21", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$", - "typeString": "function (uint256,uint256) pure returns (uint256)" - } - }, - "id": 7224, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "27403:105:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "27388:120:21" - }, - { - "expression": { - "id": 7231, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 7226, - "name": "pegoutCollateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5287, - "src": "27522:16:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 7229, - "indexExpression": { - "expression": { - "id": 7227, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7089, - "src": "27539:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_storage_ptr", - "typeString": "struct Quotes.PegOutQuote storage pointer" - } - }, - "id": 7228, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "27545:12:21", - "memberName": "lpRskAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 10966, - "src": "27539:18:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "27522:36:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "-=", - "rightHandSide": { - "id": 7230, - "name": "penalty", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7216, - "src": "27562:7:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "27522:47:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 7232, - "nodeType": "ExpressionStatement", - "src": "27522:47:21" - }, - { - "eventCall": { - "arguments": [ - { - "expression": { - "id": 7234, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7089, - "src": "27598:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_storage_ptr", - "typeString": "struct Quotes.PegOutQuote storage pointer" - } - }, - "id": 7235, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "27604:12:21", - "memberName": "lpRskAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 10966, - "src": "27598:18:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 7236, - "name": "penalty", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7216, - "src": "27618:7:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 7237, - "name": "txQuoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7117, - "src": "27627:11:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "id": 7233, - "name": "Penalized", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5212, - "src": "27588:9:21", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_bytes32_$returns$__$", - "typeString": "function (address,uint256,bytes32)" - } - }, - "id": 7238, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "27588:51:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 7239, - "nodeType": "EmitStatement", - "src": "27583:56:21" - } - ] - } - }, - { - "assignments": [ - 7243, - null - ], - "declarations": [ - { - "constant": false, - "id": 7243, - "mutability": "mutable", - "name": "sent", - "nameLocation": "27666:4:21", - "nodeType": "VariableDeclaration", - "scope": 7277, - "src": "27661:9:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 7242, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "27661:4:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - null - ], - "id": 7255, - "initialValue": { - "arguments": [ - { - "hexValue": "", - "id": 7253, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "27765:2:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - }, - "value": "" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - } - ], - "expression": { - "expression": { - "id": 7244, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7089, - "src": "27675:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_storage_ptr", - "typeString": "struct Quotes.PegOutQuote storage pointer" - } - }, - "id": 7245, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "27681:12:21", - "memberName": "lpRskAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 10966, - "src": "27675:18:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 7246, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "27694:4:21", - "memberName": "call", - "nodeType": "MemberAccess", - "src": "27675:23:21", - "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": 7252, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "names": [ - "value" - ], - "nodeType": "FunctionCallOptions", - "options": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 7251, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 7247, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7089, - "src": "27723:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_storage_ptr", - "typeString": "struct Quotes.PegOutQuote storage pointer" - } - }, - "id": 7248, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "27729:5:21", - "memberName": "value", - "nodeType": "MemberAccess", - "referencedDeclaration": 10982, - "src": "27723:11:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "expression": { - "id": 7249, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7089, - "src": "27737:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_storage_ptr", - "typeString": "struct Quotes.PegOutQuote storage pointer" - } - }, - "id": 7250, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "27743:7:21", - "memberName": "callFee", - "nodeType": "MemberAccess", - "referencedDeclaration": 10974, - "src": "27737:13:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "27723:27:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "src": "27675:89:21", - "typeDescriptions": { - "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$value", - "typeString": "function (bytes memory) payable returns (bool,bytes memory)" - } - }, - "id": 7254, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "27675:93:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "tuple(bool,bytes memory)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "27660:108:21" - }, - { - "expression": { - "arguments": [ - { - "id": 7257, - "name": "sent", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7243, - "src": "27786:4:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303530", - "id": 7258, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "27792:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_3dcf1159943f9eee729b997e5df9acd0f1771321696b1fb47efa6e54bee2f352", - "typeString": "literal_string \"LBC050\"" - }, - "value": "LBC050" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_3dcf1159943f9eee729b997e5df9acd0f1771321696b1fb47efa6e54bee2f352", - "typeString": "literal_string \"LBC050\"" - } - ], - "id": 7256, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "27778:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 7259, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "27778:23:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 7260, - "nodeType": "ExpressionStatement", - "src": "27778:23:21" - }, - { - "expression": { - "id": 7264, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "delete", - "prefix": true, - "src": "27812:42:21", - "subExpression": { - "baseExpression": { - "id": 7261, - "name": "registeredPegoutQuotes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5326, - "src": "27819:22:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegOutQuote_$10997_storage_$", - "typeString": "mapping(bytes32 => struct Quotes.PegOutQuote storage ref)" - } - }, - "id": 7263, - "indexExpression": { - "id": 7262, - "name": "txQuoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7117, - "src": "27842:11:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "27819:35:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_storage", - "typeString": "struct Quotes.PegOutQuote storage ref" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 7265, - "nodeType": "ExpressionStatement", - "src": "27812:42:21" - }, - { - "expression": { - "id": 7271, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "baseExpression": { - "id": 7266, - "name": "pegoutRegistry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5331, - "src": "27864:14:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegoutRecord_$5121_storage_$", - "typeString": "mapping(bytes32 => struct LiquidityBridgeContract.PegoutRecord storage ref)" - } - }, - "id": 7268, - "indexExpression": { - "id": 7267, - "name": "txQuoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7117, - "src": "27879:11:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "27864:27:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegoutRecord_$5121_storage", - "typeString": "struct LiquidityBridgeContract.PegoutRecord storage ref" - } - }, - "id": 7269, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberLocation": "27892:9:21", - "memberName": "completed", - "nodeType": "MemberAccess", - "referencedDeclaration": 5120, - "src": "27864:37:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "hexValue": "74727565", - "id": 7270, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "27904:4:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "src": "27864:44:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 7272, - "nodeType": "ExpressionStatement", - "src": "27864:44:21" - }, - { - "eventCall": { - "arguments": [ - { - "id": 7274, - "name": "txQuoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7117, - "src": "27938:11:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "id": 7273, - "name": "PegOutRefunded", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5254, - "src": "27923:14:21", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$returns$__$", - "typeString": "function (bytes32)" - } - }, - "id": 7275, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "27923:27:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 7276, - "nodeType": "EmitStatement", - "src": "27918:32:21" - } - ] - }, - "functionSelector": "d6c70de8", - "id": 7278, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "id": 7071, - "kind": "modifierInvocation", - "modifierName": { - "id": 7070, - "name": "nonReentrant", - "nameLocations": [ - "26010:12:21" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 346, - "src": "26010:12:21" - }, - "nodeType": "ModifierInvocation", - "src": "26010:12:21" - }, - { - "id": 7073, - "kind": "modifierInvocation", - "modifierName": { - "id": 7072, - "name": "onlyRegisteredForPegout", - "nameLocations": [ - "26023:23:21" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 5355, - "src": "26023:23:21" - }, - "nodeType": "ModifierInvocation", - "src": "26023:23:21" - } - ], - "name": "refundPegOut", - "nameLocation": "25813:12:21", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 7069, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 7059, - "mutability": "mutable", - "name": "quoteHash", - "nameLocation": "25843:9:21", - "nodeType": "VariableDeclaration", - "scope": 7278, - "src": "25835:17:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 7058, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "25835:7:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 7061, - "mutability": "mutable", - "name": "btcTx", - "nameLocation": "25875:5:21", - "nodeType": "VariableDeclaration", - "scope": 7278, - "src": "25862:18:21", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 7060, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "25862:5:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 7063, - "mutability": "mutable", - "name": "btcBlockHeaderHash", - "nameLocation": "25898:18:21", - "nodeType": "VariableDeclaration", - "scope": 7278, - "src": "25890:26:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 7062, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "25890:7:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 7065, - "mutability": "mutable", - "name": "partialMerkleTree", - "nameLocation": "25934:17:21", - "nodeType": "VariableDeclaration", - "scope": 7278, - "src": "25926:25:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 7064, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "25926:7:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 7068, - "mutability": "mutable", - "name": "merkleBranchHashes", - "nameLocation": "25978:18:21", - "nodeType": "VariableDeclaration", - "scope": 7278, - "src": "25961:35:21", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", - "typeString": "bytes32[]" - }, - "typeName": { - "baseType": { - "id": 7066, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "25961:7:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "id": 7067, - "nodeType": "ArrayTypeName", - "src": "25961:9:21", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr", - "typeString": "bytes32[]" - } - }, - "visibility": "internal" - } - ], - "src": "25825:177:21" - }, - "returnParameters": { - "id": 7074, - "nodeType": "ParameterList", - "parameters": [], - "src": "26047:0:21" - }, - "scope": 7898, - "src": "25804:2153:21", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 7329, - "nodeType": "Block", - "src": "28111:548:21", - "statements": [ - { - "assignments": [ - 7289 - ], - "declarations": [ - { - "constant": false, - "id": 7289, - "mutability": "mutable", - "name": "derivationValue", - "nameLocation": "28129:15:21", - "nodeType": "VariableDeclaration", - "scope": 7329, - "src": "28121:23:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 7288, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "28121:7:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "id": 7308, - "initialValue": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "id": 7295, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7281, - "src": "28210:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - ], - "id": 7294, - "name": "hashQuote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7344, - "src": "28200:9:21", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_PeginQuote_$10962_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (struct Quotes.PeginQuote memory) view returns (bytes32)" - } - }, - "id": 7296, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "28200:16:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "expression": { - "id": 7297, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7281, - "src": "28234:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 7298, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "28240:16:21", - "memberName": "btcRefundAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 10933, - "src": "28234:22:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "arguments": [ - { - "expression": { - "id": 7301, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7281, - "src": "28282:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 7302, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "28288:10:21", - "memberName": "lbcAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 10929, - "src": "28282:16:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 7300, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "28274:7:21", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes20_$", - "typeString": "type(bytes20)" - }, - "typeName": { - "id": 7299, - "name": "bytes20", - "nodeType": "ElementaryTypeName", - "src": "28274:7:21", - "typeDescriptions": {} - } - }, - "id": 7303, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "28274:25:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes20", - "typeString": "bytes20" - } - }, - { - "expression": { - "id": 7304, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7281, - "src": "28317:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 7305, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "28323:27:21", - "memberName": "liquidityProviderBtcAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 10937, - "src": "28317:33:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_bytes20", - "typeString": "bytes20" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "id": 7292, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "28170:5:21", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": { - "id": 7291, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "28170:5:21", - "typeDescriptions": {} - } - }, - "id": 7293, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "28176:6:21", - "memberName": "concat", - "nodeType": "MemberAccess", - "src": "28170:12:21", - "typeDescriptions": { - "typeIdentifier": "t_function_bytesconcat_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 7306, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "28170:194:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 7290, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967288, - "src": "28147:9:21", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 7307, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "28147:227:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "28121:253:21" - }, - { - "assignments": [ - 7310 - ], - "declarations": [ - { - "constant": false, - "id": 7310, - "mutability": "mutable", - "name": "flyoverRedeemScript", - "nameLocation": "28397:19:21", - "nodeType": "VariableDeclaration", - "scope": 7329, - "src": "28384:32:21", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 7309, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "28384:5:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 7321, - "initialValue": { - "arguments": [ - { - "hexValue": "20", - "id": 7314, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "hexString", - "lValueRequested": false, - "nodeType": "Literal", - "src": "28445:7:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_681afa780d17da29203322b473d3f210a7d621259a4e6ce9e403f5a266ff719a", - "typeString": "literal_string \" \"" - }, - "value": " " - }, - { - "id": 7315, - "name": "derivationValue", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7289, - "src": "28466:15:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "hexValue": "75", - "id": 7316, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "hexString", - "lValueRequested": false, - "nodeType": "Literal", - "src": "28495:7:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_32cefdcd8e794145c9af8dd1f4b1fbd92d6e547ae855553080fc8bd19c4883a0", - "typeString": "literal_string \"u\"" - }, - "value": "u" - }, - { - "arguments": [], - "expression": { - "argumentTypes": [], - "expression": { - "id": 7317, - "name": "bridge", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5275, - "src": "28516:6:21", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Bridge_$4173", - "typeString": "contract Bridge" - } - }, - "id": 7318, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "28523:27:21", - "memberName": "getActivePowpegRedeemScript", - "nodeType": "MemberAccess", - "referencedDeclaration": 4146, - "src": "28516:34:21", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () view external returns (bytes memory)" - } - }, - "id": 7319, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "28516:36:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_681afa780d17da29203322b473d3f210a7d621259a4e6ce9e403f5a266ff719a", - "typeString": "literal_string \" \"" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_stringliteral_32cefdcd8e794145c9af8dd1f4b1fbd92d6e547ae855553080fc8bd19c4883a0", - "typeString": "literal_string \"u\"" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "id": 7312, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "28419:5:21", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": { - "id": 7311, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "28419:5:21", - "typeDescriptions": {} - } - }, - "id": 7313, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "28425:6:21", - "memberName": "concat", - "nodeType": "MemberAccess", - "src": "28419:12:21", - "typeDescriptions": { - "typeIdentifier": "t_function_bytesconcat_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 7320, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "28419:143:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "28384:178:21" - }, - { - "expression": { - "arguments": [ - { - "id": 7324, - "name": "depositAddress", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7283, - "src": "28607:14:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "id": 7325, - "name": "flyoverRedeemScript", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7310, - "src": "28623:19:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "id": 7326, - "name": "mainnet", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5317, - "src": "28644:7:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "expression": { - "id": 7322, - "name": "BtcUtils", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3743, - "src": "28579:8:21", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_BtcUtils_$3743_$", - "typeString": "type(library BtcUtils)" - } - }, - "id": 7323, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "28588:18:21", - "memberName": "validateP2SHAdress", - "nodeType": "MemberAccess", - "referencedDeclaration": 3370, - "src": "28579:27:21", - "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_pure$_t_bytes_memory_ptr_$_t_bytes_memory_ptr_$_t_bool_$returns$_t_bool_$", - "typeString": "function (bytes memory,bytes memory,bool) pure returns (bool)" - } - }, - "id": 7327, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "28579:73:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 7287, - "id": 7328, - "nodeType": "Return", - "src": "28572:80:21" - } - ] - }, - "functionSelector": "a0d25037", - "id": 7330, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "validatePeginDepositAddress", - "nameLocation": "27971:27:21", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 7284, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 7281, - "mutability": "mutable", - "name": "quote", - "nameLocation": "28033:5:21", - "nodeType": "VariableDeclaration", - "scope": 7330, - "src": "28008:30:21", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote" - }, - "typeName": { - "id": 7280, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 7279, - "name": "Quotes.PeginQuote", - "nameLocations": [ - "28008:6:21", - "28015:10:21" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 10962, - "src": "28008:17:21" - }, - "referencedDeclaration": 10962, - "src": "28008:17:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_storage_ptr", - "typeString": "struct Quotes.PeginQuote" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 7283, - "mutability": "mutable", - "name": "depositAddress", - "nameLocation": "28061:14:21", - "nodeType": "VariableDeclaration", - "scope": 7330, - "src": "28048:27:21", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 7282, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "28048:5:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "27998:83:21" - }, - "returnParameters": { - "id": 7287, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 7286, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 7330, - "src": "28105:4:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 7285, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "28105:4:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "28104:6:21" - }, - "scope": 7898, - "src": "27962:697:21", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 7343, - "nodeType": "Block", - "src": "28951:51:21", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 7340, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7334, - "src": "28989:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - ], - "id": 7339, - "name": "validateAndHashQuote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7451, - "src": "28968:20:21", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_PeginQuote_$10962_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (struct Quotes.PeginQuote memory) view returns (bytes32)" - } - }, - "id": 7341, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "28968:27:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "functionReturnParameters": 7338, - "id": 7342, - "nodeType": "Return", - "src": "28961:34:21" - } - ] - }, - "documentation": { - "id": 7331, - "nodeType": "StructuredDocumentation", - "src": "28665:200:21", - "text": "@dev Calculates hash of a quote. Note: besides calculation this function also validates the quote.\n@param quote The quote of the service\n@return The hash of a quote" - }, - "functionSelector": "1b032188", - "id": 7344, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "hashQuote", - "nameLocation": "28879:9:21", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 7335, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 7334, - "mutability": "mutable", - "name": "quote", - "nameLocation": "28914:5:21", - "nodeType": "VariableDeclaration", - "scope": 7344, - "src": "28889:30:21", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote" - }, - "typeName": { - "id": 7333, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 7332, - "name": "Quotes.PeginQuote", - "nameLocations": [ - "28889:6:21", - "28896:10:21" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 10962, - "src": "28889:17:21" - }, - "referencedDeclaration": 10962, - "src": "28889:17:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_storage_ptr", - "typeString": "struct Quotes.PeginQuote" - } - }, - "visibility": "internal" - } - ], - "src": "28888:32:21" - }, - "returnParameters": { - "id": 7338, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 7337, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 7344, - "src": "28942:7:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 7336, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "28942:7:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "28941:9:21" - }, - "scope": 7898, - "src": "28870:132:21", - "stateMutability": "view", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 7356, - "nodeType": "Block", - "src": "29110:57:21", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 7353, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7347, - "src": "29154:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_memory_ptr", - "typeString": "struct Quotes.PegOutQuote memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_memory_ptr", - "typeString": "struct Quotes.PegOutQuote memory" - } - ], - "id": 7352, - "name": "validateAndHashPegOutQuote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7478, - "src": "29127:26:21", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_PegOutQuote_$10997_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (struct Quotes.PegOutQuote memory) view returns (bytes32)" - } - }, - "id": 7354, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "29127:33:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "functionReturnParameters": 7351, - "id": 7355, - "nodeType": "Return", - "src": "29120:40:21" - } - ] - }, - "functionSelector": "69023235", - "id": 7357, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "hashPegoutQuote", - "nameLocation": "29017:15:21", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 7348, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 7347, - "mutability": "mutable", - "name": "quote", - "nameLocation": "29068:5:21", - "nodeType": "VariableDeclaration", - "scope": 7357, - "src": "29042:31:21", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_memory_ptr", - "typeString": "struct Quotes.PegOutQuote" - }, - "typeName": { - "id": 7346, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 7345, - "name": "Quotes.PegOutQuote", - "nameLocations": [ - "29042:6:21", - "29049:11:21" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 10997, - "src": "29042:18:21" - }, - "referencedDeclaration": 10997, - "src": "29042:18:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_storage_ptr", - "typeString": "struct Quotes.PegOutQuote" - } - }, - "visibility": "internal" - } - ], - "src": "29032:47:21" - }, - "returnParameters": { - "id": 7351, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 7350, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 7357, - "src": "29101:7:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 7349, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "29101:7:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "29100:9:21" - }, - "scope": 7898, - "src": "29008:159:21", - "stateMutability": "view", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 7450, - "nodeType": "Block", - "src": "29280:732:21", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 7372, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "id": 7368, - "name": "this", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967268, - "src": "29306:4:21", - "typeDescriptions": { - "typeIdentifier": "t_contract$_LiquidityBridgeContract_$7898", - "typeString": "contract LiquidityBridgeContract" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_LiquidityBridgeContract_$7898", - "typeString": "contract LiquidityBridgeContract" - } - ], - "id": 7367, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "29298:7:21", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 7366, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "29298:7:21", - "typeDescriptions": {} - } - }, - "id": 7369, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "29298:13:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 7370, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7360, - "src": "29315:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 7371, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "29321:10:21", - "memberName": "lbcAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 10929, - "src": "29315:16:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "29298:33:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303531", - "id": 7373, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "29333:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_ed7029e52dbf10ed9f0aafb2c33265c713a3f4dfd10cc113f22ba3c1270e1ddb", - "typeString": "literal_string \"LBC051\"" - }, - "value": "LBC051" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_ed7029e52dbf10ed9f0aafb2c33265c713a3f4dfd10cc113f22ba3c1270e1ddb", - "typeString": "literal_string \"LBC051\"" - } - ], - "id": 7365, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "29290:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 7374, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "29290:52:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 7375, - "nodeType": "ExpressionStatement", - "src": "29290:52:21" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 7383, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "id": 7379, - "name": "bridge", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5275, - "src": "29381:6:21", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Bridge_$4173", - "typeString": "contract Bridge" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_Bridge_$4173", - "typeString": "contract Bridge" - } - ], - "id": 7378, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "29373:7:21", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 7377, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "29373:7:21", - "typeDescriptions": {} - } - }, - "id": 7380, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "29373:15:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "expression": { - "id": 7381, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7360, - "src": "29392:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 7382, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "29398:15:21", - "memberName": "contractAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 10943, - "src": "29392:21:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "29373:40:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303532", - "id": 7384, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "29427:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_a1a398356814e2eac3017ce127db7657cbb8e2f1d90a78bc426eaa92c56969eb", - "typeString": "literal_string \"LBC052\"" - }, - "value": "LBC052" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_a1a398356814e2eac3017ce127db7657cbb8e2f1d90a78bc426eaa92c56969eb", - "typeString": "literal_string \"LBC052\"" - } - ], - "id": 7376, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "29352:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 7385, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "29352:93:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 7386, - "nodeType": "ExpressionStatement", - "src": "29352:93:21" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 7398, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 7392, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "expression": { - "id": 7388, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7360, - "src": "29476:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 7389, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "29482:16:21", - "memberName": "btcRefundAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 10933, - "src": "29476:22:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 7390, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "29499:6:21", - "memberName": "length", - "nodeType": "MemberAccess", - "src": "29476:29:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "3231", - "id": 7391, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "29509:2:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_21_by_1", - "typeString": "int_const 21" - }, - "value": "21" - }, - "src": "29476:35:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 7397, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "expression": { - "id": 7393, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7360, - "src": "29527:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 7394, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "29533:16:21", - "memberName": "btcRefundAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 10933, - "src": "29527:22:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 7395, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "29550:6:21", - "memberName": "length", - "nodeType": "MemberAccess", - "src": "29527:29:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "3333", - "id": 7396, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "29560:2:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_33_by_1", - "typeString": "int_const 33" - }, - "value": "33" - }, - "src": "29527:35:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "29476:86:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303533", - "id": 7399, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "29576:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_923b965409721a83cf4ae76f34fa52de6eb09679d5b7141d2c0fc518a94192db", - "typeString": "literal_string \"LBC053\"" - }, - "value": "LBC053" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_923b965409721a83cf4ae76f34fa52de6eb09679d5b7141d2c0fc518a94192db", - "typeString": "literal_string \"LBC053\"" - } - ], - "id": 7387, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "29455:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 7400, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "29455:139:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 7401, - "nodeType": "ExpressionStatement", - "src": "29455:139:21" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 7407, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "expression": { - "id": 7403, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7360, - "src": "29625:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 7404, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "29631:27:21", - "memberName": "liquidityProviderBtcAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 10937, - "src": "29625:33:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 7405, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "29659:6:21", - "memberName": "length", - "nodeType": "MemberAccess", - "src": "29625:40:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "3231", - "id": 7406, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "29669:2:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_21_by_1", - "typeString": "int_const 21" - }, - "value": "21" - }, - "src": "29625:46:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303534", - "id": 7408, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "29685:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_472231c5f3abacc190b5fd56153fbfc4b6c39c18040d443b29faee14791d54d9", - "typeString": "literal_string \"LBC054\"" - }, - "value": "LBC054" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_472231c5f3abacc190b5fd56153fbfc4b6c39c18040d443b29faee14791d54d9", - "typeString": "literal_string \"LBC054\"" - } - ], - "id": 7402, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "29604:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 7409, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "29604:99:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 7410, - "nodeType": "ExpressionStatement", - "src": "29604:99:21" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 7418, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 7416, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 7412, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7360, - "src": "29734:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 7413, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "29740:5:21", - "memberName": "value", - "nodeType": "MemberAccess", - "referencedDeclaration": 10951, - "src": "29734:11:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "expression": { - "id": 7414, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7360, - "src": "29748:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 7415, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "29754:7:21", - "memberName": "callFee", - "nodeType": "MemberAccess", - "referencedDeclaration": 10939, - "src": "29748:13:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "29734:27:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "id": 7417, - "name": "minPegIn", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5305, - "src": "29765:8:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "29734:39:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303535", - "id": 7419, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "29787:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_1bdc71792e300c3b19739ad62e7651b4b49de502b7d1b6227970563bffaad71e", - "typeString": "literal_string \"LBC055\"" - }, - "value": "LBC055" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_1bdc71792e300c3b19739ad62e7651b4b49de502b7d1b6227970563bffaad71e", - "typeString": "literal_string \"LBC055\"" - } - ], - "id": 7411, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "29713:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 7420, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "29713:92:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 7421, - "nodeType": "ExpressionStatement", - "src": "29713:92:21" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "id": 7439, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "arguments": [ - { - "id": 7425, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "29841:6:21", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint32_$", - "typeString": "type(uint32)" - }, - "typeName": { - "id": 7424, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "29841:6:21", - "typeDescriptions": {} - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_type$_t_uint32_$", - "typeString": "type(uint32)" - } - ], - "id": 7423, - "name": "type", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967269, - "src": "29836:4:21", - "typeDescriptions": { - "typeIdentifier": "t_function_metatype_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 7426, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "29836:12:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_magic_meta_type_t_uint32", - "typeString": "type(uint32)" - } - }, - "id": 7427, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "29849:3:21", - "memberName": "max", - "nodeType": "MemberAccess", - "src": "29836:16:21", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "id": 7438, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "expression": { - "id": 7430, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7360, - "src": "29863:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 7431, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "29869:18:21", - "memberName": "agreementTimestamp", - "nodeType": "MemberAccess", - "referencedDeclaration": 10953, - "src": "29863:24:21", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - ], - "id": 7429, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "29856:6:21", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint64_$", - "typeString": "type(uint64)" - }, - "typeName": { - "id": 7428, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "29856:6:21", - "typeDescriptions": {} - } - }, - "id": 7432, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "29856:32:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "arguments": [ - { - "expression": { - "id": 7435, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7360, - "src": "29898:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 7436, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "29904:14:21", - "memberName": "timeForDeposit", - "nodeType": "MemberAccess", - "referencedDeclaration": 10955, - "src": "29898:20:21", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - ], - "id": 7434, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "29891:6:21", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint64_$", - "typeString": "type(uint64)" - }, - "typeName": { - "id": 7433, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "29891:6:21", - "typeDescriptions": {} - } - }, - "id": 7437, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "29891:28:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "29856:63:21", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "29836:83:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303731", - "id": 7440, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "29933:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_79d3c6c4bda42d819072ed97d83e6147bd9ad75bd5415529ecb6a41984271fb2", - "typeString": "literal_string \"LBC071\"" - }, - "value": "LBC071" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_79d3c6c4bda42d819072ed97d83e6147bd9ad75bd5415529ecb6a41984271fb2", - "typeString": "literal_string \"LBC071\"" - } - ], - "id": 7422, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "29815:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 7441, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "29815:136:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 7442, - "nodeType": "ExpressionStatement", - "src": "29815:136:21" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "id": 7446, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7360, - "src": "29998:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - ], - "expression": { - "id": 7444, - "name": "Quotes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11190, - "src": "29979:6:21", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_Quotes_$11190_$", - "typeString": "type(library Quotes)" - } - }, - "id": 7445, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "29986:11:21", - "memberName": "encodeQuote", - "nodeType": "MemberAccess", - "referencedDeclaration": 11016, - "src": "29979:18:21", - "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_pure$_t_struct$_PeginQuote_$10962_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (struct Quotes.PeginQuote memory) pure returns (bytes memory)" - } - }, - "id": 7447, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "29979:25:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 7443, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967288, - "src": "29969:9:21", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 7448, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "29969:36:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "functionReturnParameters": 7364, - "id": 7449, - "nodeType": "Return", - "src": "29962:43:21" - } - ] - }, - "id": 7451, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "validateAndHashQuote", - "nameLocation": "29182:20:21", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 7361, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 7360, - "mutability": "mutable", - "name": "quote", - "nameLocation": "29237:5:21", - "nodeType": "VariableDeclaration", - "scope": 7451, - "src": "29212:30:21", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote" - }, - "typeName": { - "id": 7359, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 7358, - "name": "Quotes.PeginQuote", - "nameLocations": [ - "29212:6:21", - "29219:10:21" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 10962, - "src": "29212:17:21" - }, - "referencedDeclaration": 10962, - "src": "29212:17:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_storage_ptr", - "typeString": "struct Quotes.PeginQuote" - } - }, - "visibility": "internal" - } - ], - "src": "29202:46:21" - }, - "returnParameters": { - "id": 7364, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 7363, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 7451, - "src": "29271:7:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 7362, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "29271:7:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "29270:9:21" - }, - "scope": 7898, - "src": "29173:839:21", - "stateMutability": "view", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 7477, - "nodeType": "Block", - "src": "30132:129:21", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 7466, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "id": 7462, - "name": "this", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967268, - "src": "30158:4:21", - "typeDescriptions": { - "typeIdentifier": "t_contract$_LiquidityBridgeContract_$7898", - "typeString": "contract LiquidityBridgeContract" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_LiquidityBridgeContract_$7898", - "typeString": "contract LiquidityBridgeContract" - } - ], - "id": 7461, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "30150:7:21", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 7460, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "30150:7:21", - "typeDescriptions": {} - } - }, - "id": 7463, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "30150:13:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 7464, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7454, - "src": "30167:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_memory_ptr", - "typeString": "struct Quotes.PegOutQuote memory" - } - }, - "id": 7465, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "30173:10:21", - "memberName": "lbcAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 10964, - "src": "30167:16:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "30150:33:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303536", - "id": 7467, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "30185:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_5004352c178489e456f74ee0937a3403e68ee3fa72f6afa5bff20fe549075132", - "typeString": "literal_string \"LBC056\"" - }, - "value": "LBC056" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_5004352c178489e456f74ee0937a3403e68ee3fa72f6afa5bff20fe549075132", - "typeString": "literal_string \"LBC056\"" - } - ], - "id": 7459, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "30142:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 7468, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "30142:52:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 7469, - "nodeType": "ExpressionStatement", - "src": "30142:52:21" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "id": 7473, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7454, - "src": "30247:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_memory_ptr", - "typeString": "struct Quotes.PegOutQuote memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_memory_ptr", - "typeString": "struct Quotes.PegOutQuote memory" - } - ], - "expression": { - "id": 7471, - "name": "Quotes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11190, - "src": "30222:6:21", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_Quotes_$11190_$", - "typeString": "type(library Quotes)" - } - }, - "id": 7472, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "30229:17:21", - "memberName": "encodePegOutQuote", - "nodeType": "MemberAccess", - "referencedDeclaration": 11035, - "src": "30222:24:21", - "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_pure$_t_struct$_PegOutQuote_$10997_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (struct Quotes.PegOutQuote memory) pure returns (bytes memory)" - } - }, - "id": 7474, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "30222:31:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 7470, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967288, - "src": "30212:9:21", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 7475, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "30212:42:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "functionReturnParameters": 7458, - "id": 7476, - "nodeType": "Return", - "src": "30205:49:21" - } - ] - }, - "id": 7478, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "validateAndHashPegOutQuote", - "nameLocation": "30027:26:21", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 7455, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 7454, - "mutability": "mutable", - "name": "quote", - "nameLocation": "30089:5:21", - "nodeType": "VariableDeclaration", - "scope": 7478, - "src": "30063:31:21", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_memory_ptr", - "typeString": "struct Quotes.PegOutQuote" - }, - "typeName": { - "id": 7453, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 7452, - "name": "Quotes.PegOutQuote", - "nameLocations": [ - "30063:6:21", - "30070:11:21" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 10997, - "src": "30063:18:21" - }, - "referencedDeclaration": 10997, - "src": "30063:18:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_storage_ptr", - "typeString": "struct Quotes.PegOutQuote" - } - }, - "visibility": "internal" - } - ], - "src": "30053:47:21" - }, - "returnParameters": { - "id": 7458, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 7457, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 7478, - "src": "30123:7:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 7456, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "30123:7:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "30122:9:21" - }, - "scope": 7898, - "src": "30018:243:21", - "stateMutability": "view", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 7494, - "nodeType": "Block", - "src": "30324:37:21", - "statements": [ - { - "expression": { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 7489, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 7487, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7480, - "src": "30341:1:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "id": 7488, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7482, - "src": "30345:1:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "30341:5:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseExpression": { - "id": 7491, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7482, - "src": "30353:1:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 7492, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "Conditional", - "src": "30341:13:21", - "trueExpression": { - "id": 7490, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7480, - "src": "30349:1:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 7486, - "id": 7493, - "nodeType": "Return", - "src": "30334:20:21" - } - ] - }, - "id": 7495, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "min", - "nameLocation": "30276:3:21", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 7483, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 7480, - "mutability": "mutable", - "name": "a", - "nameLocation": "30285:1:21", - "nodeType": "VariableDeclaration", - "scope": 7495, - "src": "30280:6:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 7479, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "30280:4:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 7482, - "mutability": "mutable", - "name": "b", - "nameLocation": "30293:1:21", - "nodeType": "VariableDeclaration", - "scope": 7495, - "src": "30288:6:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 7481, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "30288:4:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "30279:16:21" - }, - "returnParameters": { - "id": 7486, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 7485, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 7495, - "src": "30318:4:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 7484, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "30318:4:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "30317:6:21" - }, - "scope": 7898, - "src": "30267:94:21", - "stateMutability": "pure", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 7513, - "nodeType": "Block", - "src": "30494:85:21", - "statements": [ - { - "expression": { - "id": 7506, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 7502, - "name": "balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5279, - "src": "30504:8:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 7504, - "indexExpression": { - "id": 7503, - "name": "dest", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7497, - "src": "30513:4:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "30504:14:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "+=", - "rightHandSide": { - "id": 7505, - "name": "amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7499, - "src": "30522:6:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "30504:24:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 7507, - "nodeType": "ExpressionStatement", - "src": "30504:24:21" - }, - { - "eventCall": { - "arguments": [ - { - "id": 7509, - "name": "dest", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7497, - "src": "30559:4:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 7510, - "name": "amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7499, - "src": "30565:6:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 7508, - "name": "BalanceIncrease", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5224, - "src": "30543:15:21", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,uint256)" - } - }, - "id": 7511, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "30543:29:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 7512, - "nodeType": "EmitStatement", - "src": "30538:34:21" - } - ] - }, - "id": 7514, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "increaseBalance", - "nameLocation": "30443:15:21", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 7500, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 7497, - "mutability": "mutable", - "name": "dest", - "nameLocation": "30467:4:21", - "nodeType": "VariableDeclaration", - "scope": 7514, - "src": "30459:12:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 7496, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "30459:7:21", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 7499, - "mutability": "mutable", - "name": "amount", - "nameLocation": "30478:6:21", - "nodeType": "VariableDeclaration", - "scope": 7514, - "src": "30473:11:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 7498, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "30473:4:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "30458:27:21" - }, - "returnParameters": { - "id": 7501, - "nodeType": "ParameterList", - "parameters": [], - "src": "30494:0:21" - }, - "scope": 7898, - "src": "30434:145:21", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 7532, - "nodeType": "Block", - "src": "30645:85:21", - "statements": [ - { - "expression": { - "id": 7525, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 7521, - "name": "balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5279, - "src": "30655:8:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 7523, - "indexExpression": { - "id": 7522, - "name": "dest", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7516, - "src": "30664:4:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "30655:14:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "-=", - "rightHandSide": { - "id": 7524, - "name": "amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7518, - "src": "30673:6:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "30655:24:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 7526, - "nodeType": "ExpressionStatement", - "src": "30655:24:21" - }, - { - "eventCall": { - "arguments": [ - { - "id": 7528, - "name": "dest", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7516, - "src": "30710:4:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 7529, - "name": "amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7518, - "src": "30716:6:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 7527, - "name": "BalanceDecrease", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5230, - "src": "30694:15:21", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,uint256)" - } - }, - "id": 7530, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "30694:29:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 7531, - "nodeType": "EmitStatement", - "src": "30689:34:21" - } - ] - }, - "id": 7533, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "decreaseBalance", - "nameLocation": "30594:15:21", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 7519, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 7516, - "mutability": "mutable", - "name": "dest", - "nameLocation": "30618:4:21", - "nodeType": "VariableDeclaration", - "scope": 7533, - "src": "30610:12:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 7515, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "30610:7:21", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 7518, - "mutability": "mutable", - "name": "amount", - "nameLocation": "30629:6:21", - "nodeType": "VariableDeclaration", - "scope": 7533, - "src": "30624:11:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 7517, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "30624:4:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "30609:27:21" - }, - "returnParameters": { - "id": 7520, - "nodeType": "ParameterList", - "parameters": [], - "src": "30645:0:21" - }, - "scope": 7898, - "src": "30585:145:21", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 7553, - "nodeType": "Block", - "src": "31012:78:21", - "statements": [ - { - "expression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 7551, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 7545, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "id": 7541, - "name": "collateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5283, - "src": "31029:10:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 7543, - "indexExpression": { - "id": 7542, - "name": "addr", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7536, - "src": "31040:4:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "31029:16:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 7544, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "31048:1:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "31029:20:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 7550, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "id": 7546, - "name": "resignationBlockNum", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5301, - "src": "31053:19:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 7548, - "indexExpression": { - "id": 7547, - "name": "addr", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7536, - "src": "31073:4:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "31053:25:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 7549, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "31082:1:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "31053:30:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "31029:54:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 7540, - "id": 7552, - "nodeType": "Return", - "src": "31022:61:21" - } - ] - }, - "documentation": { - "id": 7534, - "nodeType": "StructuredDocumentation", - "src": "30736:207:21", - "text": "@dev Checks if a liquidity provider is registered\n@param addr The address of the liquidity provider\n@return Boolean indicating whether the liquidity provider is registered" - }, - "id": 7554, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "isRegistered", - "nameLocation": "30957:12:21", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 7537, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 7536, - "mutability": "mutable", - "name": "addr", - "nameLocation": "30978:4:21", - "nodeType": "VariableDeclaration", - "scope": 7554, - "src": "30970:12:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 7535, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "30970:7:21", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "30969:14:21" - }, - "returnParameters": { - "id": 7540, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 7539, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 7554, - "src": "31006:4:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 7538, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "31006:4:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "31005:6:21" - }, - "scope": 7898, - "src": "30948:142:21", - "stateMutability": "view", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 7573, - "nodeType": "Block", - "src": "31169:84:21", - "statements": [ - { - "expression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 7571, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 7565, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "id": 7561, - "name": "pegoutCollateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5287, - "src": "31186:16:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 7563, - "indexExpression": { - "id": 7562, - "name": "addr", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7556, - "src": "31203:4:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "31186:22:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 7564, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "31211:1:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "31186:26:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 7570, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "id": 7566, - "name": "resignationBlockNum", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5301, - "src": "31216:19:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 7568, - "indexExpression": { - "id": 7567, - "name": "addr", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7556, - "src": "31236:4:21", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "31216:25:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 7569, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "31245:1:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "31216:30:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "31186:60:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 7560, - "id": 7572, - "nodeType": "Return", - "src": "31179:67:21" - } - ] - }, - "id": 7574, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "isRegisteredForPegout", - "nameLocation": "31105:21:21", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 7557, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 7556, - "mutability": "mutable", - "name": "addr", - "nameLocation": "31135:4:21", - "nodeType": "VariableDeclaration", - "scope": 7574, - "src": "31127:12:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 7555, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "31127:7:21", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "31126:14:21" - }, - "returnParameters": { - "id": 7560, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 7559, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 7574, - "src": "31163:4:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 7558, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "31163:4:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "31162:6:21" - }, - "scope": 7898, - "src": "31096:157:21", - "stateMutability": "view", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 7618, - "nodeType": "Block", - "src": "31911:397:21", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 7593, - "name": "btcRawTransaction", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7580, - "src": "31989:17:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "id": 7594, - "name": "height", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7584, - "src": "32020:6:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 7595, - "name": "partialMerkleTree", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7582, - "src": "32040:17:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "id": 7596, - "name": "derivationHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7586, - "src": "32071:14:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "expression": { - "id": 7597, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7578, - "src": "32099:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 7598, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "32105:16:21", - "memberName": "btcRefundAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 10933, - "src": "32099:22:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "arguments": [ - { - "id": 7601, - "name": "this", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967268, - "src": "32143:4:21", - "typeDescriptions": { - "typeIdentifier": "t_contract$_LiquidityBridgeContract_$7898", - "typeString": "contract LiquidityBridgeContract" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_LiquidityBridgeContract_$7898", - "typeString": "contract LiquidityBridgeContract" - } - ], - "id": 7600, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "32135:8:21", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_payable_$", - "typeString": "type(address payable)" - }, - "typeName": { - "id": 7599, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "32135:8:21", - "stateMutability": "payable", - "typeDescriptions": {} - } - }, - "id": 7602, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "32135:13:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - { - "expression": { - "id": 7603, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7578, - "src": "32162:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 7604, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "32168:27:21", - "memberName": "liquidityProviderBtcAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 10937, - "src": "32162:33:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 7615, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "id": 7610, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "baseExpression": { - "id": 7605, - "name": "callRegistry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5297, - "src": "32209:12:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$5116_storage_$", - "typeString": "mapping(bytes32 => struct LiquidityBridgeContract.Registry storage ref)" - } - }, - "id": 7607, - "indexExpression": { - "id": 7606, - "name": "derivationHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7586, - "src": "32222:14:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "32209:28:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Registry_$5116_storage", - "typeString": "struct LiquidityBridgeContract.Registry storage ref" - } - }, - "id": 7608, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "32238:9:21", - "memberName": "timestamp", - "nodeType": "MemberAccess", - "referencedDeclaration": 5113, - "src": "32209:38:21", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 7609, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "32250:1:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "32209:42:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "expression": { - "baseExpression": { - "id": 7611, - "name": "callRegistry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5297, - "src": "32255:12:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$5116_storage_$", - "typeString": "mapping(bytes32 => struct LiquidityBridgeContract.Registry storage ref)" - } - }, - "id": 7613, - "indexExpression": { - "id": 7612, - "name": "derivationHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7586, - "src": "32268:14:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "32255:28:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Registry_$5116_storage", - "typeString": "struct LiquidityBridgeContract.Registry storage ref" - } - }, - "id": 7614, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "32284:7:21", - "memberName": "success", - "nodeType": "MemberAccess", - "referencedDeclaration": 5115, - "src": "32255:36:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "32209:82:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "expression": { - "id": 7591, - "name": "bridge", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5275, - "src": "31936:6:21", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Bridge_$4173", - "typeString": "contract Bridge" - } - }, - "id": 7592, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "31943:32:21", - "memberName": "registerFastBridgeBtcTransaction", - "nodeType": "MemberAccess", - "referencedDeclaration": 4136, - "src": "31936:39:21", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$_t_bytes_memory_ptr_$_t_uint256_$_t_bytes_memory_ptr_$_t_bytes32_$_t_bytes_memory_ptr_$_t_address_payable_$_t_bytes_memory_ptr_$_t_bool_$returns$_t_int256_$", - "typeString": "function (bytes memory,uint256,bytes memory,bytes32,bytes memory,address payable,bytes memory,bool) external returns (int256)" - } - }, - "id": 7616, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "31936:365:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "functionReturnParameters": 7590, - "id": 7617, - "nodeType": "Return", - "src": "31921:380:21" - } - ] - }, - "documentation": { - "id": 7575, - "nodeType": "StructuredDocumentation", - "src": "31259:416:21", - "text": "@dev Registers a transaction with the bridge contract\n@param quote The quote of the service\n@param btcRawTransaction The peg-in transaction\n@param partialMerkleTree The merkle tree path that proves transaction inclusion\n@param height The block that contains the transaction\n@return The total peg-in amount received from the bridge contract or an error code" - }, - "id": 7619, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "registerBridge", - "nameLocation": "31689:14:21", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 7587, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 7578, - "mutability": "mutable", - "name": "quote", - "nameLocation": "31738:5:21", - "nodeType": "VariableDeclaration", - "scope": 7619, - "src": "31713:30:21", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote" - }, - "typeName": { - "id": 7577, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 7576, - "name": "Quotes.PeginQuote", - "nameLocations": [ - "31713:6:21", - "31720:10:21" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 10962, - "src": "31713:17:21" - }, - "referencedDeclaration": 10962, - "src": "31713:17:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_storage_ptr", - "typeString": "struct Quotes.PeginQuote" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 7580, - "mutability": "mutable", - "name": "btcRawTransaction", - "nameLocation": "31766:17:21", - "nodeType": "VariableDeclaration", - "scope": 7619, - "src": "31753:30:21", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 7579, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "31753:5:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 7582, - "mutability": "mutable", - "name": "partialMerkleTree", - "nameLocation": "31806:17:21", - "nodeType": "VariableDeclaration", - "scope": 7619, - "src": "31793:30:21", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 7581, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "31793:5:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 7584, - "mutability": "mutable", - "name": "height", - "nameLocation": "31841:6:21", - "nodeType": "VariableDeclaration", - "scope": 7619, - "src": "31833:14:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 7583, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "31833:7:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 7586, - "mutability": "mutable", - "name": "derivationHash", - "nameLocation": "31865:14:21", - "nodeType": "VariableDeclaration", - "scope": 7619, - "src": "31857:22:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 7585, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "31857:7:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "31703:182:21" - }, - "returnParameters": { - "id": 7590, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 7589, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 7619, - "src": "31903:6:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 7588, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "31903:6:21", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "31902:8:21" - }, - "scope": 7898, - "src": "31680:628:21", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 7733, - "nodeType": "Block", - "src": "32908:1398:21", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 7647, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "id": 7636, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 7634, - "name": "amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7625, - "src": "32983:6:21", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 7635, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "32992:1:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "32983:10:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 7646, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "id": 7639, - "name": "amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7625, - "src": "33005:6:21", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - ], - "id": 7638, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "32997:7:21", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint256_$", - "typeString": "type(uint256)" - }, - "typeName": { - "id": 7637, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "32997:7:21", - "typeDescriptions": {} - } - }, - "id": 7640, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "32997:15:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 7645, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 7641, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7623, - "src": "33015:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 7642, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "33021:5:21", - "memberName": "value", - "nodeType": "MemberAccess", - "referencedDeclaration": 10951, - "src": "33015:11:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "expression": { - "id": 7643, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7623, - "src": "33029:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 7644, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "33035:7:21", - "memberName": "callFee", - "nodeType": "MemberAccess", - "referencedDeclaration": 10939, - "src": "33029:13:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "33015:27:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "32997:45:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "32983:59:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 7651, - "nodeType": "IfStatement", - "src": "32979:102:21", - "trueBody": { - "id": 7650, - "nodeType": "Block", - "src": "33044:37:21", - "statements": [ - { - "expression": { - "hexValue": "66616c7365", - "id": 7648, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "33065:5:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "false" - }, - "functionReturnParameters": 7633, - "id": 7649, - "nodeType": "Return", - "src": "33058:12:21" - } - ] - } - }, - { - "assignments": [ - 7653 - ], - "declarations": [ - { - "constant": false, - "id": 7653, - "mutability": "mutable", - "name": "firstConfirmationHeader", - "nameLocation": "33104:23:21", - "nodeType": "VariableDeclaration", - "scope": 7733, - "src": "33091:36:21", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 7652, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "33091:5:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 7658, - "initialValue": { - "arguments": [ - { - "id": 7656, - "name": "height", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7629, - "src": "33182:6:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 7654, - "name": "bridge", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5275, - "src": "33130:6:21", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Bridge_$4173", - "typeString": "contract Bridge" - } - }, - "id": 7655, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "33146:35:21", - "memberName": "getBtcBlockchainBlockHeaderByHeight", - "nodeType": "MemberAccess", - "referencedDeclaration": 4165, - "src": "33130:51:21", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_uint256_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (uint256) view external returns (bytes memory)" - } - }, - "id": 7657, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "33130:59:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "33091:98:21" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 7663, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 7660, - "name": "firstConfirmationHeader", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7653, - "src": "33207:23:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 7661, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "33231:6:21", - "memberName": "length", - "nodeType": "MemberAccess", - "src": "33207:30:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 7662, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "33240:1:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "33207:34:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "496e76616c696420626c6f636b20686569676874", - "id": 7664, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "33243:22:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_b13cbe420d932534b4c4c376e19a45f25e0ca05c6f1a458489ccb0574b26a6d9", - "typeString": "literal_string \"Invalid block height\"" - }, - "value": "Invalid block height" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_b13cbe420d932534b4c4c376e19a45f25e0ca05c6f1a458489ccb0574b26a6d9", - "typeString": "literal_string \"Invalid block height\"" - } - ], - "id": 7659, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "33199:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 7665, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "33199:67:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 7666, - "nodeType": "ExpressionStatement", - "src": "33199:67:21" - }, - { - "assignments": [ - 7668 - ], - "declarations": [ - { - "constant": false, - "id": 7668, - "mutability": "mutable", - "name": "firstConfirmationTimestamp", - "nameLocation": "33285:26:21", - "nodeType": "VariableDeclaration", - "scope": 7733, - "src": "33277:34:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 7667, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "33277:7:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 7672, - "initialValue": { - "arguments": [ - { - "id": 7670, - "name": "firstConfirmationHeader", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7653, - "src": "33348:23:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 7669, - "name": "getBtcBlockTimestamp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7822, - "src": "33314:20:21", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_uint256_$", - "typeString": "function (bytes memory) pure returns (uint256)" - } - }, - "id": 7671, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "33314:67:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "33277:104:21" - }, - { - "assignments": [ - 7674 - ], - "declarations": [ - { - "constant": false, - "id": 7674, - "mutability": "mutable", - "name": "timeLimit", - "nameLocation": "33526:9:21", - "nodeType": "VariableDeclaration", - "scope": 7733, - "src": "33521:14:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 7673, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "33521:4:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 7680, - "initialValue": { - "commonType": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "id": 7679, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 7675, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7623, - "src": "33538:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 7676, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "33544:18:21", - "memberName": "agreementTimestamp", - "nodeType": "MemberAccess", - "referencedDeclaration": 10953, - "src": "33538:24:21", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "expression": { - "id": 7677, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7623, - "src": "33565:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 7678, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "33571:14:21", - "memberName": "timeForDeposit", - "nodeType": "MemberAccess", - "referencedDeclaration": 10955, - "src": "33565:20:21", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "src": "33538:47:21", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "33521:64:21" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 7683, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 7681, - "name": "firstConfirmationTimestamp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7668, - "src": "33599:26:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "id": 7682, - "name": "timeLimit", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7674, - "src": "33628:9:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "33599:38:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 7687, - "nodeType": "IfStatement", - "src": "33595:81:21", - "trueBody": { - "id": 7686, - "nodeType": "Block", - "src": "33639:37:21", - "statements": [ - { - "expression": { - "hexValue": "66616c7365", - "id": 7684, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "33660:5:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "false" - }, - "functionReturnParameters": 7633, - "id": 7685, - "nodeType": "Return", - "src": "33653:12:21" - } - ] - } - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 7690, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 7688, - "name": "callTimestamp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7627, - "src": "33731:13:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 7689, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "33748:1:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "33731:18:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 7694, - "nodeType": "IfStatement", - "src": "33727:60:21", - "trueBody": { - "id": 7693, - "nodeType": "Block", - "src": "33751:36:21", - "statements": [ - { - "expression": { - "hexValue": "74727565", - "id": 7691, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "33772:4:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "functionReturnParameters": 7633, - "id": 7692, - "nodeType": "Return", - "src": "33765:11:21" - } - ] - } - }, - { - "assignments": [ - 7696 - ], - "declarations": [ - { - "constant": false, - "id": 7696, - "mutability": "mutable", - "name": "nConfirmationsHeader", - "nameLocation": "33810:20:21", - "nodeType": "VariableDeclaration", - "scope": 7733, - "src": "33797:33:21", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 7695, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "33797:5:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 7706, - "initialValue": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 7704, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 7702, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 7699, - "name": "height", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7629, - "src": "33898:6:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "expression": { - "id": 7700, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7623, - "src": "33907:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 7701, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "33913:20:21", - "memberName": "depositConfirmations", - "nodeType": "MemberAccess", - "referencedDeclaration": 10959, - "src": "33907:26:21", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - "src": "33898:35:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "hexValue": "31", - "id": 7703, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "33936:1:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "33898:39:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 7697, - "name": "bridge", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5275, - "src": "33833:6:21", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Bridge_$4173", - "typeString": "contract Bridge" - } - }, - "id": 7698, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "33849:35:21", - "memberName": "getBtcBlockchainBlockHeaderByHeight", - "nodeType": "MemberAccess", - "referencedDeclaration": 4165, - "src": "33833:51:21", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_uint256_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (uint256) view external returns (bytes memory)" - } - }, - "id": 7705, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "33833:114:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "33797:150:21" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 7711, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 7708, - "name": "nConfirmationsHeader", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7696, - "src": "33965:20:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 7709, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "33986:6:21", - "memberName": "length", - "nodeType": "MemberAccess", - "src": "33965:27:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 7710, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "33995:1:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "33965:31:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303538", - "id": 7712, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "33998:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_bac19bb4c4dce4ec87196bdccebfa1c4310f60332f1259cdc0bb93303ee1c2a0", - "typeString": "literal_string \"LBC058\"" - }, - "value": "LBC058" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_bac19bb4c4dce4ec87196bdccebfa1c4310f60332f1259cdc0bb93303ee1c2a0", - "typeString": "literal_string \"LBC058\"" - } - ], - "id": 7707, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "33957:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 7713, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "33957:50:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 7714, - "nodeType": "ExpressionStatement", - "src": "33957:50:21" - }, - { - "assignments": [ - 7716 - ], - "declarations": [ - { - "constant": false, - "id": 7716, - "mutability": "mutable", - "name": "nConfirmationsTimestamp", - "nameLocation": "34026:23:21", - "nodeType": "VariableDeclaration", - "scope": 7733, - "src": "34018:31:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 7715, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "34018:7:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 7720, - "initialValue": { - "arguments": [ - { - "id": 7718, - "name": "nConfirmationsHeader", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7696, - "src": "34086:20:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 7717, - "name": "getBtcBlockTimestamp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7822, - "src": "34052:20:21", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_uint256_$", - "typeString": "function (bytes memory) pure returns (uint256)" - } - }, - "id": 7719, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "34052:64:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "34018:98:21" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 7726, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 7721, - "name": "callTimestamp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7627, - "src": "34184:13:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 7725, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 7722, - "name": "nConfirmationsTimestamp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7716, - "src": "34200:23:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "expression": { - "id": 7723, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7623, - "src": "34226:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 7724, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "34232:8:21", - "memberName": "callTime", - "nodeType": "MemberAccess", - "referencedDeclaration": 10957, - "src": "34226:14:21", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "src": "34200:40:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "34184:56:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 7730, - "nodeType": "IfStatement", - "src": "34180:98:21", - "trueBody": { - "id": 7729, - "nodeType": "Block", - "src": "34242:36:21", - "statements": [ - { - "expression": { - "hexValue": "74727565", - "id": 7727, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "34263:4:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "functionReturnParameters": 7633, - "id": 7728, - "nodeType": "Return", - "src": "34256:11:21" - } - ] - } - }, - { - "expression": { - "hexValue": "66616c7365", - "id": 7731, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "34294:5:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "false" - }, - "functionReturnParameters": 7633, - "id": 7732, - "nodeType": "Return", - "src": "34287:12:21" - } - ] - }, - "documentation": { - "id": 7620, - "nodeType": "StructuredDocumentation", - "src": "32314:411:21", - "text": "@dev Checks if a liquidity provider should be penalized\n@param quote The quote of the service\n@param amount The transferred amount or an error code\n@param callTimestamp The time that the liquidity provider called callForUser\n@param height The block height where the peg-in transaction is included\n@return Boolean indicating whether the penalty applies" - }, - "id": 7734, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "shouldPenalizeLP", - "nameLocation": "32739:16:21", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 7630, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 7623, - "mutability": "mutable", - "name": "quote", - "nameLocation": "32790:5:21", - "nodeType": "VariableDeclaration", - "scope": 7734, - "src": "32765:30:21", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote" - }, - "typeName": { - "id": 7622, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 7621, - "name": "Quotes.PeginQuote", - "nameLocations": [ - "32765:6:21", - "32772:10:21" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 10962, - "src": "32765:17:21" - }, - "referencedDeclaration": 10962, - "src": "32765:17:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_storage_ptr", - "typeString": "struct Quotes.PeginQuote" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 7625, - "mutability": "mutable", - "name": "amount", - "nameLocation": "32812:6:21", - "nodeType": "VariableDeclaration", - "scope": 7734, - "src": "32805:13:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 7624, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "32805:6:21", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 7627, - "mutability": "mutable", - "name": "callTimestamp", - "nameLocation": "32836:13:21", - "nodeType": "VariableDeclaration", - "scope": 7734, - "src": "32828:21:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 7626, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "32828:7:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 7629, - "mutability": "mutable", - "name": "height", - "nameLocation": "32867:6:21", - "nodeType": "VariableDeclaration", - "scope": 7734, - "src": "32859:14:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 7628, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "32859:7:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "32755:124:21" - }, - "returnParameters": { - "id": 7633, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 7632, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 7734, - "src": "32902:4:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 7631, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "32902:4:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "32901:6:21" - }, - "scope": 7898, - "src": "32730:1576:21", - "stateMutability": "view", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 7799, - "nodeType": "Block", - "src": "34473:692:21", - "statements": [ - { - "assignments": [ - 7747 - ], - "declarations": [ - { - "constant": false, - "id": 7747, - "mutability": "mutable", - "name": "firstConfirmationHeader", - "nameLocation": "34496:23:21", - "nodeType": "VariableDeclaration", - "scope": 7799, - "src": "34483:36:21", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 7746, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "34483:5:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 7752, - "initialValue": { - "arguments": [ - { - "id": 7750, - "name": "blockHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7741, - "src": "34563:9:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "expression": { - "id": 7748, - "name": "bridge", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5275, - "src": "34522:6:21", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Bridge_$4173", - "typeString": "contract Bridge" - } - }, - "id": 7749, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "34529:33:21", - "memberName": "getBtcBlockchainBlockHeaderByHash", - "nodeType": "MemberAccess", - "referencedDeclaration": 4158, - "src": "34522:40:21", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_bytes32_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (bytes32) view external returns (bytes memory)" - } - }, - "id": 7751, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "34522:51:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "34483:90:21" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 7757, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 7754, - "name": "firstConfirmationHeader", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7747, - "src": "34591:23:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 7755, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "34615:6:21", - "memberName": "length", - "nodeType": "MemberAccess", - "src": "34591:30:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 7756, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "34624:1:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "34591:34:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303539", - "id": 7758, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "34627:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_319f398ccb7cc8c2c2304e07f301f618437c863aa2ff561ced1eaa40fcd3df63", - "typeString": "literal_string \"LBC059\"" - }, - "value": "LBC059" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_319f398ccb7cc8c2c2304e07f301f618437c863aa2ff561ced1eaa40fcd3df63", - "typeString": "literal_string \"LBC059\"" - } - ], - "id": 7753, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "34583:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 7759, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "34583:53:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 7760, - "nodeType": "ExpressionStatement", - "src": "34583:53:21" - }, - { - "assignments": [ - 7762 - ], - "declarations": [ - { - "constant": false, - "id": 7762, - "mutability": "mutable", - "name": "firstConfirmationTimestamp", - "nameLocation": "34655:26:21", - "nodeType": "VariableDeclaration", - "scope": 7799, - "src": "34647:34:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 7761, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "34647:7:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 7766, - "initialValue": { - "arguments": [ - { - "id": 7764, - "name": "firstConfirmationHeader", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7747, - "src": "34705:23:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 7763, - "name": "getBtcBlockTimestamp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7822, - "src": "34684:20:21", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_uint256_$", - "typeString": "function (bytes memory) pure returns (uint256)" - } - }, - "id": 7765, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "34684:45:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "34647:82:21" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 7777, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 7767, - "name": "firstConfirmationTimestamp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7762, - "src": "34801:26:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 7776, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 7774, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "baseExpression": { - "id": 7768, - "name": "pegoutRegistry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5331, - "src": "34830:14:21", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegoutRecord_$5121_storage_$", - "typeString": "mapping(bytes32 => struct LiquidityBridgeContract.PegoutRecord storage ref)" - } - }, - "id": 7770, - "indexExpression": { - "id": 7769, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7739, - "src": "34845:9:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "34830:25:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegoutRecord_$5121_storage", - "typeString": "struct LiquidityBridgeContract.PegoutRecord storage ref" - } - }, - "id": 7771, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "34856:16:21", - "memberName": "depositTimestamp", - "nodeType": "MemberAccess", - "referencedDeclaration": 5118, - "src": "34830:42:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "expression": { - "id": 7772, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7737, - "src": "34887:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_memory_ptr", - "typeString": "struct Quotes.PegOutQuote memory" - } - }, - "id": 7773, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "34893:12:21", - "memberName": "transferTime", - "nodeType": "MemberAccess", - "referencedDeclaration": 10992, - "src": "34887:18:21", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "src": "34830:75:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "id": 7775, - "name": "btcBlockTime", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 5315, - "src": "34908:12:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "34830:90:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "34801:119:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 7781, - "nodeType": "IfStatement", - "src": "34797:161:21", - "trueBody": { - "id": 7780, - "nodeType": "Block", - "src": "34922:36:21", - "statements": [ - { - "expression": { - "hexValue": "74727565", - "id": 7778, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "34943:4:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "functionReturnParameters": 7745, - "id": 7779, - "nodeType": "Return", - "src": "34936:11:21" - } - ] - } - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 7792, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 7786, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 7782, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967292, - "src": "35028:5:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 7783, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "35034:9:21", - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "35028:15:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "expression": { - "id": 7784, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7737, - "src": "35046:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_memory_ptr", - "typeString": "struct Quotes.PegOutQuote memory" - } - }, - "id": 7785, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "35052:10:21", - "memberName": "expireDate", - "nodeType": "MemberAccess", - "referencedDeclaration": 10994, - "src": "35046:16:21", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "src": "35028:34:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 7791, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 7787, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967292, - "src": "35066:5:21", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 7788, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "35072:6:21", - "memberName": "number", - "nodeType": "MemberAccess", - "src": "35066:12:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "expression": { - "id": 7789, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7737, - "src": "35081:5:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_memory_ptr", - "typeString": "struct Quotes.PegOutQuote memory" - } - }, - "id": 7790, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "35087:11:21", - "memberName": "expireBlock", - "nodeType": "MemberAccess", - "referencedDeclaration": 10996, - "src": "35081:17:21", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "src": "35066:32:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "35028:70:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 7796, - "nodeType": "IfStatement", - "src": "35024:112:21", - "trueBody": { - "id": 7795, - "nodeType": "Block", - "src": "35100:36:21", - "statements": [ - { - "expression": { - "hexValue": "74727565", - "id": 7793, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "35121:4:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "functionReturnParameters": 7745, - "id": 7794, - "nodeType": "Return", - "src": "35114:11:21" - } - ] - } - }, - { - "expression": { - "hexValue": "66616c7365", - "id": 7797, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "35153:5:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "false" - }, - "functionReturnParameters": 7745, - "id": 7798, - "nodeType": "Return", - "src": "35146:12:21" - } - ] - }, - "id": 7800, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "shouldPenalizePegOutLP", - "nameLocation": "34321:22:21", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 7742, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 7737, - "mutability": "mutable", - "name": "quote", - "nameLocation": "34379:5:21", - "nodeType": "VariableDeclaration", - "scope": 7800, - "src": "34353:31:21", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_memory_ptr", - "typeString": "struct Quotes.PegOutQuote" - }, - "typeName": { - "id": 7736, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 7735, - "name": "Quotes.PegOutQuote", - "nameLocations": [ - "34353:6:21", - "34360:11:21" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 10997, - "src": "34353:18:21" - }, - "referencedDeclaration": 10997, - "src": "34353:18:21", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_storage_ptr", - "typeString": "struct Quotes.PegOutQuote" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 7739, - "mutability": "mutable", - "name": "quoteHash", - "nameLocation": "34402:9:21", - "nodeType": "VariableDeclaration", - "scope": 7800, - "src": "34394:17:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 7738, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "34394:7:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 7741, - "mutability": "mutable", - "name": "blockHash", - "nameLocation": "34429:9:21", - "nodeType": "VariableDeclaration", - "scope": 7800, - "src": "34421:17:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 7740, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "34421:7:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "34343:101:21" - }, - "returnParameters": { - "id": 7745, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 7744, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 7800, - "src": "34467:4:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 7743, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "34467:4:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "34466:6:21" - }, - "scope": 7898, - "src": "34312:853:21", - "stateMutability": "view", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 7821, - "nodeType": "Block", - "src": "35429:207:21", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 7812, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 7809, - "name": "header", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7803, - "src": "35551:6:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 7810, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "35558:6:21", - "memberName": "length", - "nodeType": "MemberAccess", - "src": "35551:13:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "3830", - "id": 7811, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "35568:2:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_80_by_1", - "typeString": "int_const 80" - }, - "value": "80" - }, - "src": "35551:19:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303631", - "id": 7813, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "35572:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_438c5a176571afee566b78f09f63757218623602a6c98e887399fe40429f63df", - "typeString": "literal_string \"LBC061\"" - }, - "value": "LBC061" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_438c5a176571afee566b78f09f63757218623602a6c98e887399fe40429f63df", - "typeString": "literal_string \"LBC061\"" - } - ], - "id": 7808, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "35543:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 7814, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "35543:38:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 7815, - "nodeType": "ExpressionStatement", - "src": "35543:38:21" - }, - { - "expression": { - "arguments": [ - { - "id": 7817, - "name": "header", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7803, - "src": "35618:6:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "hexValue": "3638", - "id": 7818, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "35626:2:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_68_by_1", - "typeString": "int_const 68" - }, - "value": "68" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_rational_68_by_1", - "typeString": "int_const 68" - } - ], - "id": 7816, - "name": "sliceUint32FromLSB", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7897, - "src": "35599:18:21", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_uint32_$", - "typeString": "function (bytes memory,uint256) pure returns (uint32)" - } - }, - "id": 7819, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "35599:30:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "functionReturnParameters": 7807, - "id": 7820, - "nodeType": "Return", - "src": "35592:37:21" - } - ] - }, - "documentation": { - "id": 7801, - "nodeType": "StructuredDocumentation", - "src": "35171:158:21", - "text": "@dev Gets the timestamp of a Bitcoin block header\n@param header The block header\n@return The timestamp of the block header" - }, - "functionSelector": "a0cd70fc", - "id": 7822, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getBtcBlockTimestamp", - "nameLocation": "35343:20:21", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 7804, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 7803, - "mutability": "mutable", - "name": "header", - "nameLocation": "35386:6:21", - "nodeType": "VariableDeclaration", - "scope": 7822, - "src": "35373:19:21", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 7802, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "35373:5:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "35363:35:21" - }, - "returnParameters": { - "id": 7807, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 7806, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 7822, - "src": "35420:7:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 7805, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "35420:7:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "35419:9:21" - }, - "scope": 7898, - "src": "35334:302:21", - "stateMutability": "pure", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 7896, - "nodeType": "Block", - "src": "35812:253:21", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 7837, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 7832, - "name": "bs", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7824, - "src": "35830:2:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 7833, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "35833:6:21", - "memberName": "length", - "nodeType": "MemberAccess", - "src": "35830:9:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 7836, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 7834, - "name": "offset", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7826, - "src": "35843:6:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "hexValue": "34", - "id": 7835, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "35852:1:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_4_by_1", - "typeString": "int_const 4" - }, - "value": "4" - }, - "src": "35843:10:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "35830:23:21", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303632", - "id": 7838, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "35855:8:21", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_670f3ba0b2ca6f986efb9f8a498a40315443c3d4e263cc5de65e37011508c7c9", - "typeString": "literal_string \"LBC062\"" - }, - "value": "LBC062" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_670f3ba0b2ca6f986efb9f8a498a40315443c3d4e263cc5de65e37011508c7c9", - "typeString": "literal_string \"LBC062\"" - } - ], - "id": 7831, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "35822:7:21", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 7839, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "35822:42:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 7840, - "nodeType": "ExpressionStatement", - "src": "35822:42:21" - }, - { - "expression": { - "commonType": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "id": 7894, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "id": 7879, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "id": 7864, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "arguments": [ - { - "baseExpression": { - "id": 7845, - "name": "bs", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7824, - "src": "35903:2:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 7847, - "indexExpression": { - "id": 7846, - "name": "offset", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7826, - "src": "35906:6:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "35903:10:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - ], - "id": 7844, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "35897:5:21", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint8_$", - "typeString": "type(uint8)" - }, - "typeName": { - "id": 7843, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "35897:5:21", - "typeDescriptions": {} - } - }, - "id": 7848, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "35897:17:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - ], - "id": 7842, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "35890:6:21", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint32_$", - "typeString": "type(uint32)" - }, - "typeName": { - "id": 7841, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "35890:6:21", - "typeDescriptions": {} - } - }, - "id": 7849, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "35890:25:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "nodeType": "BinaryOperation", - "operator": "|", - "rightExpression": { - "components": [ - { - "commonType": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "id": 7862, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "arguments": [ - { - "baseExpression": { - "id": 7854, - "name": "bs", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7824, - "src": "35940:2:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 7858, - "indexExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 7857, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 7855, - "name": "offset", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7826, - "src": "35943:6:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "hexValue": "31", - "id": 7856, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "35952:1:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "35943:10:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "35940:14:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - ], - "id": 7853, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "35934:5:21", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint8_$", - "typeString": "type(uint8)" - }, - "typeName": { - "id": 7852, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "35934:5:21", - "typeDescriptions": {} - } - }, - "id": 7859, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "35934:21:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - ], - "id": 7851, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "35927:6:21", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint32_$", - "typeString": "type(uint32)" - }, - "typeName": { - "id": 7850, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "35927:6:21", - "typeDescriptions": {} - } - }, - "id": 7860, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "35927:29:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "nodeType": "BinaryOperation", - "operator": "<<", - "rightExpression": { - "hexValue": "38", - "id": 7861, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "35960:1:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_8_by_1", - "typeString": "int_const 8" - }, - "value": "8" - }, - "src": "35927:34:21", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - } - ], - "id": 7863, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "35926:36:21", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "src": "35890:72:21", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "nodeType": "BinaryOperation", - "operator": "|", - "rightExpression": { - "components": [ - { - "commonType": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "id": 7877, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "arguments": [ - { - "baseExpression": { - "id": 7869, - "name": "bs", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7824, - "src": "35987:2:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 7873, - "indexExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 7872, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 7870, - "name": "offset", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7826, - "src": "35990:6:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "hexValue": "32", - "id": 7871, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "35999:1:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_2_by_1", - "typeString": "int_const 2" - }, - "value": "2" - }, - "src": "35990:10:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "35987:14:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - ], - "id": 7868, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "35981:5:21", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint8_$", - "typeString": "type(uint8)" - }, - "typeName": { - "id": 7867, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "35981:5:21", - "typeDescriptions": {} - } - }, - "id": 7874, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "35981:21:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - ], - "id": 7866, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "35974:6:21", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint32_$", - "typeString": "type(uint32)" - }, - "typeName": { - "id": 7865, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "35974:6:21", - "typeDescriptions": {} - } - }, - "id": 7875, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "35974:29:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "nodeType": "BinaryOperation", - "operator": "<<", - "rightExpression": { - "hexValue": "3136", - "id": 7876, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "36007:2:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_16_by_1", - "typeString": "int_const 16" - }, - "value": "16" - }, - "src": "35974:35:21", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - } - ], - "id": 7878, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "35973:37:21", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "src": "35890:120:21", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "nodeType": "BinaryOperation", - "operator": "|", - "rightExpression": { - "components": [ - { - "commonType": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "id": 7892, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "arguments": [ - { - "baseExpression": { - "id": 7884, - "name": "bs", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7824, - "src": "36035:2:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 7888, - "indexExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 7887, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 7885, - "name": "offset", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7826, - "src": "36038:6:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "hexValue": "33", - "id": 7886, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "36047:1:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_3_by_1", - "typeString": "int_const 3" - }, - "value": "3" - }, - "src": "36038:10:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "36035:14:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - ], - "id": 7883, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "36029:5:21", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint8_$", - "typeString": "type(uint8)" - }, - "typeName": { - "id": 7882, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "36029:5:21", - "typeDescriptions": {} - } - }, - "id": 7889, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "36029:21:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - ], - "id": 7881, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "36022:6:21", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint32_$", - "typeString": "type(uint32)" - }, - "typeName": { - "id": 7880, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "36022:6:21", - "typeDescriptions": {} - } - }, - "id": 7890, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "36022:29:21", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "nodeType": "BinaryOperation", - "operator": "<<", - "rightExpression": { - "hexValue": "3234", - "id": 7891, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "36055:2:21", - "typeDescriptions": { - "typeIdentifier": "t_rational_24_by_1", - "typeString": "int_const 24" - }, - "value": "24" - }, - "src": "36022:35:21", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - } - ], - "id": 7893, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "36021:37:21", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "src": "35890:168:21", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "functionReturnParameters": 7830, - "id": 7895, - "nodeType": "Return", - "src": "35875:183:21" - } - ] - }, - "id": 7897, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "sliceUint32FromLSB", - "nameLocation": "35710:18:21", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 7827, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 7824, - "mutability": "mutable", - "name": "bs", - "nameLocation": "35751:2:21", - "nodeType": "VariableDeclaration", - "scope": 7897, - "src": "35738:15:21", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 7823, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "35738:5:21", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 7826, - "mutability": "mutable", - "name": "offset", - "nameLocation": "35768:6:21", - "nodeType": "VariableDeclaration", - "scope": 7897, - "src": "35763:11:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 7825, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "35763:4:21", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "35728:52:21" - }, - "returnParameters": { - "id": 7830, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 7829, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 7897, - "src": "35804:6:21", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "typeName": { - "id": 7828, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "35804:6:21", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "visibility": "internal" - } - ], - "src": "35803:8:21" - }, - "scope": 7898, - "src": "35701:364:21", - "stateMutability": "pure", - "virtual": false, - "visibility": "internal" - } - ], - "scope": 7899, - "src": "479:35588:21", - "usedErrors": [] - } - ], - "src": "32:36036:21" - }, - "compiler": { - "name": "solc", - "version": "0.8.18+commit.87f61d96.Emscripten.clang" - }, - "networks": { - "31": { - "events": {}, - "links": { - "BtcUtils": "0x147F172c8a7434D10FDac6E2c8045116683f277B" - } - } - }, - "schemaVersion": "3.4.13", - "updatedAt": "2024-12-10T18:53:54.104Z", - "networkType": "ethereum", - "devdoc": { - "events": { - "Initialized(uint8)": { - "details": "Triggered when the contract has been initialized or reinitialized." - } - }, - "kind": "dev", - "methods": { - "addCollateral()": { - "details": "Increases the amount of collateral of the sender" - }, - "callForUser((bytes20,address,address,bytes,address,bytes,uint256,uint256,address,bytes,uint32,int64,uint256,uint32,uint32,uint32,uint16,bool))": { - "details": "Performs a call on behalf of a user", - "params": { - "quote": "The quote that identifies the service" - }, - "returns": { - "_0": "Boolean indicating whether the call was successful" - } - }, - "deposit()": { - "details": "Increases the balance of the sender" - }, - "getBalance(address)": { - "details": "Returns the amount of funds of a liquidity provider", - "params": { - "addr": "The address of the liquidity provider" - }, - "returns": { - "_0": "The balance of the liquidity provider" - } - }, - "getBtcBlockTimestamp(bytes)": { - "details": "Gets the timestamp of a Bitcoin block header", - "params": { - "header": "The block header" - }, - "returns": { - "_0": "The timestamp of the block header" - } - }, - "getCollateral(address)": { - "details": "Returns the amount of collateral of a liquidity provider", - "params": { - "addr": "The address of the liquidity provider" - }, - "returns": { - "_0": "The amount of locked collateral" - } - }, - "hashQuote((bytes20,address,address,bytes,address,bytes,uint256,uint256,address,bytes,uint32,int64,uint256,uint32,uint32,uint32,uint16,bool))": { - "details": "Calculates hash of a quote. Note: besides calculation this function also validates the quote.", - "params": { - "quote": "The quote of the service" - }, - "returns": { - "_0": "The hash of a quote" - } - }, - "initialize(address,uint256,uint256,uint32,uint32,uint256,uint256,bool)": { - "params": { - "_bridgeAddress": "The address of the bridge contract", - "_dustThreshold": "Amount that is considered dust", - "_minimumCollateral": "The minimum required collateral for liquidity providers", - "_minimumPegIn": "The minimum peg-in amount", - "_resignDelayBlocks": "The number of block confirmations that a liquidity // provider needs to wait before it can withdraw its collateral", - "_rewardPercentage": "The percentage of the penalty fee that an honest party // receives when calling registerPegIn in case of a liquidity provider misbehaving" - } - }, - "isOperational(address)": { - "details": "Checks whether a liquidity provider can deliver a pegin service", - "returns": { - "_0": "Whether the liquidity provider is registered and has enough locked collateral" - } - }, - "isOperationalForPegout(address)": { - "details": "Checks whether a liquidity provider can deliver a pegout service", - "returns": { - "_0": "Whether the liquidity provider is registered and has enough locked collateral" - } - }, - "owner()": { - "details": "Returns the address of the current owner." - }, - "register(string,string,bool,string)": { - "details": "Registers msg.sender as a liquidity provider with msg.value as collateral" - }, - "registerPegIn((bytes20,address,address,bytes,address,bytes,uint256,uint256,address,bytes,uint32,int64,uint256,uint32,uint32,uint32,uint16,bool),bytes,bytes,bytes,uint256)": { - "details": "Registers a peg-in transaction with the bridge and pays to the involved parties", - "params": { - "btcRawTransaction": "The peg-in transaction", - "height": "The block that contains the peg-in transaction", - "partialMerkleTree": "The merkle tree path that proves transaction inclusion", - "quote": "The quote of the service", - "signature": "The signature of the quote" - }, - "returns": { - "_0": "The total peg-in amount received from the bridge contract or an error code" - } - }, - "renounceOwnership()": { - "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." - }, - "resign()": { - "details": "Used to resign as a liquidity provider" - }, - "transferOwnership(address)": { - "details": "Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner." - }, - "withdraw(uint256)": { - "details": "Used to withdraw funds", - "params": { - "amount": "The amount to withdraw" - } - }, - "withdrawCollateral()": { - "details": "Used to withdraw the locked collateral" - } - }, - "title": "Contract that assists with the Flyover protocol", - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } -} \ No newline at end of file diff --git a/build/contracts/LiquidityBridgeContractAdmin.json b/build/contracts/LiquidityBridgeContractAdmin.json deleted file mode 100644 index fe78a02..0000000 --- a/build/contracts/LiquidityBridgeContractAdmin.json +++ /dev/null @@ -1,3904 +0,0 @@ -{ - "contractName": "LiquidityBridgeContractAdmin", - "abi": [ - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "previousOwner", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "newOwner", - "type": "address" - } - ], - "name": "OwnershipTransferred", - "type": "event" - }, - { - "inputs": [ - { - "internalType": "contract ITransparentUpgradeableProxy", - "name": "proxy", - "type": "address" - }, - { - "internalType": "address", - "name": "newAdmin", - "type": "address" - } - ], - "name": "changeProxyAdmin", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "contract ITransparentUpgradeableProxy", - "name": "proxy", - "type": "address" - } - ], - "name": "getProxyAdmin", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "contract ITransparentUpgradeableProxy", - "name": "proxy", - "type": "address" - } - ], - "name": "getProxyImplementation", - "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": "renounceOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "newOwner", - "type": "address" - } - ], - "name": "transferOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "contract ITransparentUpgradeableProxy", - "name": "proxy", - "type": "address" - }, - { - "internalType": "address", - "name": "implementation", - "type": "address" - } - ], - "name": "upgrade", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "contract ITransparentUpgradeableProxy", - "name": "proxy", - "type": "address" - }, - { - "internalType": "address", - "name": "implementation", - "type": "address" - }, - { - "internalType": "bytes", - "name": "data", - "type": "bytes" - } - ], - "name": "upgradeAndCall", - "outputs": [], - "stateMutability": "payable", - "type": "function" - } - ], - "metadata": "{\"compiler\":{\"version\":\"0.8.18+commit.87f61d96\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"contract ITransparentUpgradeableProxy\",\"name\":\"proxy\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"newAdmin\",\"type\":\"address\"}],\"name\":\"changeProxyAdmin\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ITransparentUpgradeableProxy\",\"name\":\"proxy\",\"type\":\"address\"}],\"name\":\"getProxyAdmin\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ITransparentUpgradeableProxy\",\"name\":\"proxy\",\"type\":\"address\"}],\"name\":\"getProxyImplementation\",\"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\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ITransparentUpgradeableProxy\",\"name\":\"proxy\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"implementation\",\"type\":\"address\"}],\"name\":\"upgrade\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ITransparentUpgradeableProxy\",\"name\":\"proxy\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"implementation\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"upgradeAndCall\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"changeProxyAdmin(address,address)\":{\"details\":\"Changes the admin of `proxy` to `newAdmin`. Requirements: - This contract must be the current admin of `proxy`.\"},\"getProxyAdmin(address)\":{\"details\":\"Returns the current admin of `proxy`. Requirements: - This contract must be the admin of `proxy`.\"},\"getProxyImplementation(address)\":{\"details\":\"Returns the current implementation of `proxy`. Requirements: - This contract must be the admin of `proxy`.\"},\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"renounceOwnership()\":{\"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(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"},\"upgrade(address,address)\":{\"details\":\"Upgrades `proxy` to `implementation`. See {TransparentUpgradeableProxy-upgradeTo}. Requirements: - This contract must be the admin of `proxy`.\"},\"upgradeAndCall(address,address,bytes)\":{\"details\":\"Upgrades `proxy` to `implementation` and calls a function on the new implementation. See {TransparentUpgradeableProxy-upgradeToAndCall}. Requirements: - This contract must be the admin of `proxy`.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"project:/contracts/LiquidityBridgeContractAdmin.sol\":\"LiquidityBridgeContractAdmin\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":1},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts/access/Ownable.sol\":{\"keccak256\":\"0xba43b97fba0d32eb4254f6a5a297b39a19a247082a02d6e69349e071e2946218\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fc980984badf3984b6303b377711220e067722bbd6a135b24669ff5069ef9f32\",\"dweb:/ipfs/QmPHXMSXj99XjSVM21YsY6aNtLLjLVXDbyN76J5HQYvvrz\"]},\"@openzeppelin/contracts/interfaces/IERC1967.sol\":{\"keccak256\":\"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263\",\"dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE\"]},\"@openzeppelin/contracts/interfaces/draft-IERC1822.sol\":{\"keccak256\":\"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688\",\"dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr\"]},\"@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol\":{\"keccak256\":\"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5\",\"dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn\"]},\"@openzeppelin/contracts/proxy/ERC1967/ERC1967Upgrade.sol\":{\"keccak256\":\"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2\",\"dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82\"]},\"@openzeppelin/contracts/proxy/Proxy.sol\":{\"keccak256\":\"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472\",\"dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN\"]},\"@openzeppelin/contracts/proxy/beacon/IBeacon.sol\":{\"keccak256\":\"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354\",\"dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce\"]},\"@openzeppelin/contracts/proxy/transparent/ProxyAdmin.sol\":{\"keccak256\":\"0x8e99882a991853dc446278576c8cb9b3a5ded84642e9bcc917b1677807c2f18c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310153c1a4c739002ffbc1351ed1dd7488a0d20f5dd816353332fc2c1d81e0a3\",\"dweb:/ipfs/QmcvwXQVUBRTEAoNcvwSVFmhpHUXQ21s2Hfj79hq2uQNVM\"]},\"@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol\":{\"keccak256\":\"0x168e36d7e616bd41f6abab4a83009da64513ae9e638aa6d5980066e2a92db689\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a45c64b97311fabbcbe8dad7e94fa89e06a7f96060d5565326ef706f5f239017\",\"dweb:/ipfs/QmeU2jiBGbHhz9DqRotjbpAx5s2xExDSRQtSD5ENjuHzDq\"]},\"@openzeppelin/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]},\"@openzeppelin/contracts/utils/Context.sol\":{\"keccak256\":\"0xa92e4fa126feb6907daa0513ddd816b2eb91f30a808de54f63c17d0e162c3439\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a367861093b74443b137564d3f3c472f70bcf114739e62059c939f25e315706c\",\"dweb:/ipfs/Qmd7JMpcxD9RuQjK3uM3EzJUgSqdN8vzp8eytEiuwxQJ6h\"]},\"@openzeppelin/contracts/utils/StorageSlot.sol\":{\"keccak256\":\"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da\",\"dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q\"]},\"project:/contracts/LiquidityBridgeContractAdmin.sol\":{\"keccak256\":\"0xacc0652aae1fa3e37e577dd9c636bf2b7c16062d902e9d8e9fa9f23d16bdd637\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1a51b0d97e300c0db9c9e4adb6d8c9f34915cc441202c352b51a20f50614d9dc\",\"dweb:/ipfs/QmPezJsczFVJAJ29ptXzkshS4RkwerGrcHFZ17HWcfwP2e\"]}},\"version\":1}", - "bytecode": "0x608060405234801561001057600080fd5b5061001a3361001f565b61006f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b61069b8061007e6000396000f3fe60806040526004361061006b5760003560e01c8063204e1c7a14610070578063715018a6146100a65780637eff275e146100bd5780638da5cb5b146100dd5780639623609d146100f257806399a88ec414610105578063f2fde38b14610125578063f3b7dead14610145575b600080fd5b34801561007c57600080fd5b5061009061008b36600461048e565b610165565b60405161009d91906104b2565b60405180910390f35b3480156100b257600080fd5b506100bb6101f6565b005b3480156100c957600080fd5b506100bb6100d83660046104c6565b61020a565b3480156100e957600080fd5b50610090610274565b6100bb610100366004610515565b610283565b34801561011157600080fd5b506100bb6101203660046104c6565b6102f2565b34801561013157600080fd5b506100bb61014036600461048e565b610326565b34801561015157600080fd5b5061009061016036600461048e565b6103a4565b6000806000836001600160a01b031660405161018b90635c60da1b60e01b815260040190565b600060405180830381855afa9150503d80600081146101c6576040519150601f19603f3d011682016040523d82523d6000602084013e6101cb565b606091505b5091509150816101da57600080fd5b808060200190518101906101ee91906105ea565b949350505050565b6101fe6103ca565b6102086000610429565b565b6102126103ca565b6040516308f2839760e41b81526001600160a01b03831690638f2839709061023e9084906004016104b2565b600060405180830381600087803b15801561025857600080fd5b505af115801561026c573d6000803e3d6000fd5b505050505050565b6000546001600160a01b031690565b61028b6103ca565b60405163278f794360e11b81526001600160a01b03841690634f1ef2869034906102bb9086908690600401610607565b6000604051808303818588803b1580156102d457600080fd5b505af11580156102e8573d6000803e3d6000fd5b5050505050505050565b6102fa6103ca565b604051631b2ce7f360e11b81526001600160a01b03831690633659cfe69061023e9084906004016104b2565b61032e6103ca565b6001600160a01b0381166103985760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b6103a181610429565b50565b6000806000836001600160a01b031660405161018b906303e1469160e61b815260040190565b336103d3610274565b6001600160a01b0316146102085760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161038f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146103a157600080fd5b6000602082840312156104a057600080fd5b81356104ab81610479565b9392505050565b6001600160a01b0391909116815260200190565b600080604083850312156104d957600080fd5b82356104e481610479565b915060208301356104f481610479565b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b60008060006060848603121561052a57600080fd5b833561053581610479565b9250602084013561054581610479565b915060408401356001600160401b038082111561056157600080fd5b818601915086601f83011261057557600080fd5b813581811115610587576105876104ff565b604051601f8201601f19908116603f011681019083821181831017156105af576105af6104ff565b816040528281528960208487010111156105c857600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000602082840312156105fc57600080fd5b81516104ab81610479565b60018060a01b038316815260006020604081840152835180604085015260005b8181101561064357858101830151858201606001528201610627565b506000606082860101526060601f19601f83011685010192505050939250505056fea2646970667358221220a5e2a50010b7ed4cd850ad1a8d746984a103f1752c797122b6ce68cc16580d3f64736f6c63430008120033", - "deployedBytecode": "0x60806040526004361061006b5760003560e01c8063204e1c7a14610070578063715018a6146100a65780637eff275e146100bd5780638da5cb5b146100dd5780639623609d146100f257806399a88ec414610105578063f2fde38b14610125578063f3b7dead14610145575b600080fd5b34801561007c57600080fd5b5061009061008b36600461048e565b610165565b60405161009d91906104b2565b60405180910390f35b3480156100b257600080fd5b506100bb6101f6565b005b3480156100c957600080fd5b506100bb6100d83660046104c6565b61020a565b3480156100e957600080fd5b50610090610274565b6100bb610100366004610515565b610283565b34801561011157600080fd5b506100bb6101203660046104c6565b6102f2565b34801561013157600080fd5b506100bb61014036600461048e565b610326565b34801561015157600080fd5b5061009061016036600461048e565b6103a4565b6000806000836001600160a01b031660405161018b90635c60da1b60e01b815260040190565b600060405180830381855afa9150503d80600081146101c6576040519150601f19603f3d011682016040523d82523d6000602084013e6101cb565b606091505b5091509150816101da57600080fd5b808060200190518101906101ee91906105ea565b949350505050565b6101fe6103ca565b6102086000610429565b565b6102126103ca565b6040516308f2839760e41b81526001600160a01b03831690638f2839709061023e9084906004016104b2565b600060405180830381600087803b15801561025857600080fd5b505af115801561026c573d6000803e3d6000fd5b505050505050565b6000546001600160a01b031690565b61028b6103ca565b60405163278f794360e11b81526001600160a01b03841690634f1ef2869034906102bb9086908690600401610607565b6000604051808303818588803b1580156102d457600080fd5b505af11580156102e8573d6000803e3d6000fd5b5050505050505050565b6102fa6103ca565b604051631b2ce7f360e11b81526001600160a01b03831690633659cfe69061023e9084906004016104b2565b61032e6103ca565b6001600160a01b0381166103985760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b6103a181610429565b50565b6000806000836001600160a01b031660405161018b906303e1469160e61b815260040190565b336103d3610274565b6001600160a01b0316146102085760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161038f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146103a157600080fd5b6000602082840312156104a057600080fd5b81356104ab81610479565b9392505050565b6001600160a01b0391909116815260200190565b600080604083850312156104d957600080fd5b82356104e481610479565b915060208301356104f481610479565b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b60008060006060848603121561052a57600080fd5b833561053581610479565b9250602084013561054581610479565b915060408401356001600160401b038082111561056157600080fd5b818601915086601f83011261057557600080fd5b813581811115610587576105876104ff565b604051601f8201601f19908116603f011681019083821181831017156105af576105af6104ff565b816040528281528960208487010111156105c857600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000602082840312156105fc57600080fd5b81516104ab81610479565b60018060a01b038316815260006020604081840152835180604085015260005b8181101561064357858101830151858201606001528201610627565b506000606082860101526060601f19601f83011685010192505050939250505056fea2646970667358221220a5e2a50010b7ed4cd850ad1a8d746984a103f1752c797122b6ce68cc16580d3f64736f6c63430008120033", - "immutableReferences": {}, - "generatedSources": [], - "deployedGeneratedSources": [ - { - "ast": { - "nodeType": "YulBlock", - "src": "0:5161:32", - "statements": [ - { - "nodeType": "YulBlock", - "src": "6:3:32", - "statements": [] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "89:86:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "153:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "162:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "165:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "155:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "155:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "155:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "112:5:32" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "123:5:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "138:3:32", - "type": "", - "value": "160" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "143:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "134:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "134:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "147:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "130:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "130:19:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "119:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "119:31:32" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "109:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "109:42:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "102:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "102:50:32" - }, - "nodeType": "YulIf", - "src": "99:70:32" - } - ] - }, - "name": "validator_revert_contract_ITransparentUpgradeableProxy", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "78:5:32", - "type": "" - } - ], - "src": "14:161:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "287:207:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "333:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "342:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "345:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "335:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "335:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "335:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "308:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "317:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "304:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "304:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "329:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "300:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "300:32:32" - }, - "nodeType": "YulIf", - "src": "297:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "358:36:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "384:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "371:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "371:23:32" - }, - "variables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "362:5:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "458:5:32" - } - ], - "functionName": { - "name": "validator_revert_contract_ITransparentUpgradeableProxy", - "nodeType": "YulIdentifier", - "src": "403:54:32" - }, - "nodeType": "YulFunctionCall", - "src": "403:61:32" - }, - "nodeType": "YulExpressionStatement", - "src": "403:61:32" - }, - { - "nodeType": "YulAssignment", - "src": "473:15:32", - "value": { - "name": "value", - "nodeType": "YulIdentifier", - "src": "483:5:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "473:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_contract$_ITransparentUpgradeableProxy_$1484", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "253:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "264:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "276:6:32", - "type": "" - } - ], - "src": "180:314:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "600:102:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "610:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "622:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "633:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "618:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "618:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "610:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "652:9:32" - }, - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "667:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "683:3:32", - "type": "", - "value": "160" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "688:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "679:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "679:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "692:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "675:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "675:19:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "663:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "663:32:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "645:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "645:51:32" - }, - "nodeType": "YulExpressionStatement", - "src": "645:51:32" - } - ] - }, - "name": "abi_encode_tuple_t_address__to_t_address__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "569:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "580:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "591:4:32", - "type": "" - } - ], - "src": "499:203:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "831:361:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "877:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "886:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "889:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "879:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "879:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "879:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "852:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "861:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "848:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "848:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "873:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "844:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "844:32:32" - }, - "nodeType": "YulIf", - "src": "841:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "902:36:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "928:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "915:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "915:23:32" - }, - "variables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "906:5:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "1002:5:32" - } - ], - "functionName": { - "name": "validator_revert_contract_ITransparentUpgradeableProxy", - "nodeType": "YulIdentifier", - "src": "947:54:32" - }, - "nodeType": "YulFunctionCall", - "src": "947:61:32" - }, - "nodeType": "YulExpressionStatement", - "src": "947:61:32" - }, - { - "nodeType": "YulAssignment", - "src": "1017:15:32", - "value": { - "name": "value", - "nodeType": "YulIdentifier", - "src": "1027:5:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "1017:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1041:47:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1073:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1084:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1069:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1069:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "1056:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "1056:32:32" - }, - "variables": [ - { - "name": "value_1", - "nodeType": "YulTypedName", - "src": "1045:7:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value_1", - "nodeType": "YulIdentifier", - "src": "1152:7:32" - } - ], - "functionName": { - "name": "validator_revert_contract_ITransparentUpgradeableProxy", - "nodeType": "YulIdentifier", - "src": "1097:54:32" - }, - "nodeType": "YulFunctionCall", - "src": "1097:63:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1097:63:32" - }, - { - "nodeType": "YulAssignment", - "src": "1169:17:32", - "value": { - "name": "value_1", - "nodeType": "YulIdentifier", - "src": "1179:7:32" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "1169:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_contract$_ITransparentUpgradeableProxy_$1484t_address", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "789:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "800:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "812:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "820:6:32", - "type": "" - } - ], - "src": "707:485:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1229:95:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1246:1:32", - "type": "", - "value": "0" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1253:3:32", - "type": "", - "value": "224" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1258:10:32", - "type": "", - "value": "0x4e487b71" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "1249:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1249:20:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1239:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1239:31:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1239:31:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1286:1:32", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1289:4:32", - "type": "", - "value": "0x41" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1279:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1279:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1279:15:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1310:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1313:4:32", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1303:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1303:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1303:15:32" - } - ] - }, - "name": "panic_error_0x41", - "nodeType": "YulFunctionDefinition", - "src": "1197:127:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1479:1144:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "1525:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1534:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1537:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1527:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1527:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1527:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "1500:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1509:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "1496:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1496:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1521:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "1492:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1492:32:32" - }, - "nodeType": "YulIf", - "src": "1489:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1550:36:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1576:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "1563:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "1563:23:32" - }, - "variables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "1554:5:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "1650:5:32" - } - ], - "functionName": { - "name": "validator_revert_contract_ITransparentUpgradeableProxy", - "nodeType": "YulIdentifier", - "src": "1595:54:32" - }, - "nodeType": "YulFunctionCall", - "src": "1595:61:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1595:61:32" - }, - { - "nodeType": "YulAssignment", - "src": "1665:15:32", - "value": { - "name": "value", - "nodeType": "YulIdentifier", - "src": "1675:5:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "1665:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1689:47:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1721:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1732:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1717:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1717:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "1704:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "1704:32:32" - }, - "variables": [ - { - "name": "value_1", - "nodeType": "YulTypedName", - "src": "1693:7:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value_1", - "nodeType": "YulIdentifier", - "src": "1800:7:32" - } - ], - "functionName": { - "name": "validator_revert_contract_ITransparentUpgradeableProxy", - "nodeType": "YulIdentifier", - "src": "1745:54:32" - }, - "nodeType": "YulFunctionCall", - "src": "1745:63:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1745:63:32" - }, - { - "nodeType": "YulAssignment", - "src": "1817:17:32", - "value": { - "name": "value_1", - "nodeType": "YulIdentifier", - "src": "1827:7:32" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "1817:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1843:46:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1874:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1885:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1870:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1870:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "1857:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "1857:32:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "1847:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1898:28:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1916:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1920:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "1912:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1912:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1924:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "1908:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1908:18:32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "1902:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1953:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1962:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1965:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1955:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1955:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1955:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1941:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1949:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1938:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "1938:14:32" - }, - "nodeType": "YulIf", - "src": "1935:34:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1978:32:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1992:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "2003:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1988:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1988:22:32" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "1982:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2058:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2067:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2070:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "2060:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2060:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2060:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "2037:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2041:4:32", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2033:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2033:13:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "2048:7:32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "2029:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2029:27:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "2022:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2022:35:32" - }, - "nodeType": "YulIf", - "src": "2019:55:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2083:26:32", - "value": { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "2106:2:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "2093:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "2093:16:32" - }, - "variables": [ - { - "name": "_3", - "nodeType": "YulTypedName", - "src": "2087:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2132:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "2134:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "2134:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2134:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "2124:2:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "2128:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "2121:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "2121:10:32" - }, - "nodeType": "YulIf", - "src": "2118:36:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2163:17:32", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2177:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "2173:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2173:7:32" - }, - "variables": [ - { - "name": "_4", - "nodeType": "YulTypedName", - "src": "2167:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2189:23:32", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2209:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "2203:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "2203:9:32" - }, - "variables": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "2193:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2221:71:32", - "value": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "2243:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "2267:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2271:4:32", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2263:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2263:13:32" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "2278:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "2259:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2259:22:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2283:2:32", - "type": "", - "value": "63" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2255:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2255:31:32" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "2288:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "2251:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2251:40:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2239:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2239:53:32" - }, - "variables": [ - { - "name": "newFreePtr", - "nodeType": "YulTypedName", - "src": "2225:10:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2351:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "2353:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "2353:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2353:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "2310:10:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "2322:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "2307:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "2307:18:32" - }, - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "2330:10:32" - }, - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "2342:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "2327:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "2327:22:32" - } - ], - "functionName": { - "name": "or", - "nodeType": "YulIdentifier", - "src": "2304:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "2304:46:32" - }, - "nodeType": "YulIf", - "src": "2301:72:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2389:2:32", - "type": "", - "value": "64" - }, - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "2393:10:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2382:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2382:22:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2382:22:32" - }, - { - "expression": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "2420:6:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "2428:2:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2413:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2413:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2413:18:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2477:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2486:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2489:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "2479:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2479:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2479:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "2454:2:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "2458:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2450:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2450:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2463:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2446:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2446:20:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "2468:7:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "2443:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "2443:33:32" - }, - "nodeType": "YulIf", - "src": "2440:53:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "2519:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2527:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2515:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2515:15:32" - }, - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "2536:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2540:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2532:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2532:11:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "2545:2:32" - } - ], - "functionName": { - "name": "calldatacopy", - "nodeType": "YulIdentifier", - "src": "2502:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "2502:46:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2502:46:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "2572:6:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "2580:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2568:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2568:15:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2585:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2564:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2564:24:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2590:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2557:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2557:35:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2557:35:32" - }, - { - "nodeType": "YulAssignment", - "src": "2601:16:32", - "value": { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "2611:6:32" - }, - "variableNames": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "2601:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_contract$_ITransparentUpgradeableProxy_$1484t_addresst_bytes_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "1429:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "1440:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "1452:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "1460:6:32", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "1468:6:32", - "type": "" - } - ], - "src": "1329:1294:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2698:207:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "2744:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2753:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2756:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "2746:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2746:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2746:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "2719:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2728:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "2715:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2715:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2740:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "2711:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2711:32:32" - }, - "nodeType": "YulIf", - "src": "2708:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2769:36:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2795:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "2782:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "2782:23:32" - }, - "variables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "2773:5:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2869:5:32" - } - ], - "functionName": { - "name": "validator_revert_contract_ITransparentUpgradeableProxy", - "nodeType": "YulIdentifier", - "src": "2814:54:32" - }, - "nodeType": "YulFunctionCall", - "src": "2814:61:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2814:61:32" - }, - { - "nodeType": "YulAssignment", - "src": "2884:15:32", - "value": { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2894:5:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "2884:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_address", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "2664:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "2675:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "2687:6:32", - "type": "" - } - ], - "src": "2628:277:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3101:76:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "3118:3:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3127:3:32", - "type": "", - "value": "224" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3132:10:32", - "type": "", - "value": "0x5c60da1b" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "3123:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3123:20:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3111:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3111:33:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3111:33:32" - }, - { - "nodeType": "YulAssignment", - "src": "3153:18:32", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "3164:3:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3169:1:32", - "type": "", - "value": "4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3160:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3160:11:32" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "3153:3:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_packed_t_stringliteral_96a4c6be7716f5be15d118c16bd1d464cb27f01187d0b9218993a5d488a47c29__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "3085:3:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "3093:3:32", - "type": "" - } - ], - "src": "2910:267:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3271:200:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "3317:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3326:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3329:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "3319:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3319:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3319:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "3292:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3301:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "3288:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3288:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3313:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "3284:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3284:32:32" - }, - "nodeType": "YulIf", - "src": "3281:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3342:29:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3361:9:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "3355:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "3355:16:32" - }, - "variables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "3346:5:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3435:5:32" - } - ], - "functionName": { - "name": "validator_revert_contract_ITransparentUpgradeableProxy", - "nodeType": "YulIdentifier", - "src": "3380:54:32" - }, - "nodeType": "YulFunctionCall", - "src": "3380:61:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3380:61:32" - }, - { - "nodeType": "YulAssignment", - "src": "3450:15:32", - "value": { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3460:5:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "3450:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_address_payable_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "3237:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "3248:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "3260:6:32", - "type": "" - } - ], - "src": "3182:289:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3623:496:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3640:9:32" - }, - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "3655:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3671:3:32", - "type": "", - "value": "160" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3676:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "3667:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3667:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3680:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "3663:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3663:19:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "3651:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3651:32:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3633:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3633:51:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3633:51:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3693:12:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3703:2:32", - "type": "", - "value": "32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "3697:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3725:9:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "3736:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3721:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3721:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3741:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3714:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3714:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3714:30:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3753:27:32", - "value": { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "3773:6:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "3767:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "3767:13:32" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "3757:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3800:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3811:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3796:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3796:18:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "3816:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3789:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3789:34:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3789:34:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3832:10:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3841:1:32", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "i", - "nodeType": "YulTypedName", - "src": "3836:1:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3901:90:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3930:9:32" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "3941:1:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3926:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3926:17:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3945:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3922:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3922:26:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "3964:6:32" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "3972:1:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3960:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3960:14:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "3976:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3956:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3956:23:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "3950:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "3950:30:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3915:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3915:66:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3915:66:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "3862:1:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "3865:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "3859:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "3859:13:32" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "3873:19:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "3875:15:32", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "3884:1:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "3887:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3880:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3880:10:32" - }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "3875:1:32" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "3855:3:32", - "statements": [] - }, - "src": "3851:140:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4015:9:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "4026:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4011:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4011:22:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4035:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4007:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4007:31:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4040:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4000:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4000:42:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4000:42:32" - }, - { - "nodeType": "YulAssignment", - "src": "4051:62:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4067:9:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "4086:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4094:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4082:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4082:15:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4103:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "4099:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4099:7:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "4078:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4078:29:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4063:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4063:45:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4110:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4059:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4059:54:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "4051:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_address_t_bytes_memory_ptr__to_t_address_t_bytes_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "3584:9:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "3595:6:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "3603:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "3614:4:32", - "type": "" - } - ], - "src": "3476:643:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4298:228:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4315:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4326:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4308:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4308:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4308:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4349:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4360:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4345:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4345:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4365:2:32", - "type": "", - "value": "38" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4338:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4338:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4338:30:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4388:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4399:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4384:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4384:18:32" - }, - { - "hexValue": "4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061", - "kind": "string", - "nodeType": "YulLiteral", - "src": "4404:34:32", - "type": "", - "value": "Ownable: new owner is the zero a" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4377:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4377:62:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4377:62:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4459:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4470:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4455:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4455:18:32" - }, - { - "hexValue": "646472657373", - "kind": "string", - "nodeType": "YulLiteral", - "src": "4475:8:32", - "type": "", - "value": "ddress" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4448:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4448:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4448:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "4493:27:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4505:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4516:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4501:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4501:19:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "4493:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "4275:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "4289:4:32", - "type": "" - } - ], - "src": "4124:402:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4722:76:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "4739:3:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4748:3:32", - "type": "", - "value": "230" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4753:10:32", - "type": "", - "value": "0x03e14691" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "4744:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4744:20:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4732:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4732:33:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4732:33:32" - }, - { - "nodeType": "YulAssignment", - "src": "4774:18:32", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "4785:3:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4790:1:32", - "type": "", - "value": "4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4781:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4781:11:32" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "4774:3:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_packed_t_stringliteral_cb23cf6c353ccb16f0d92c8e6b5c5b425654e65dd07e2d295b394de4cf15afb7__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "4706:3:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "4714:3:32", - "type": "" - } - ], - "src": "4531:267:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4977:182:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4994:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5005:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4987:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4987:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4987:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5028:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5039:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5024:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5024:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5044:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5017:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "5017:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "5017:30:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5067:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5078:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5063:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5063:18:32" - }, - { - "hexValue": "4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572", - "kind": "string", - "nodeType": "YulLiteral", - "src": "5083:34:32", - "type": "", - "value": "Ownable: caller is not the owner" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5056:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "5056:62:32" - }, - "nodeType": "YulExpressionStatement", - "src": "5056:62:32" - }, - { - "nodeType": "YulAssignment", - "src": "5127:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5139:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5150:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5135:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5135:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "5127:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "4954:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "4968:4:32", - "type": "" - } - ], - "src": "4803:356:32" - } - ] - }, - "contents": "{\n { }\n function validator_revert_contract_ITransparentUpgradeableProxy(value)\n {\n if iszero(eq(value, and(value, sub(shl(160, 1), 1)))) { revert(0, 0) }\n }\n function abi_decode_tuple_t_contract$_ITransparentUpgradeableProxy_$1484(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let value := calldataload(headStart)\n validator_revert_contract_ITransparentUpgradeableProxy(value)\n value0 := value\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, sub(shl(160, 1), 1)))\n }\n function abi_decode_tuple_t_contract$_ITransparentUpgradeableProxy_$1484t_address(headStart, dataEnd) -> value0, value1\n {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n let value := calldataload(headStart)\n validator_revert_contract_ITransparentUpgradeableProxy(value)\n value0 := value\n let value_1 := calldataload(add(headStart, 32))\n validator_revert_contract_ITransparentUpgradeableProxy(value_1)\n value1 := value_1\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_contract$_ITransparentUpgradeableProxy_$1484t_addresst_bytes_memory_ptr(headStart, dataEnd) -> value0, value1, value2\n {\n if slt(sub(dataEnd, headStart), 96) { revert(0, 0) }\n let value := calldataload(headStart)\n validator_revert_contract_ITransparentUpgradeableProxy(value)\n value0 := value\n let value_1 := calldataload(add(headStart, 32))\n validator_revert_contract_ITransparentUpgradeableProxy(value_1)\n value1 := value_1\n let offset := calldataload(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 := calldataload(_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 calldatacopy(add(memPtr, 32), add(_2, 32), _3)\n mstore(add(add(memPtr, _3), 32), 0)\n value2 := memPtr\n }\n function abi_decode_tuple_t_address(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let value := calldataload(headStart)\n validator_revert_contract_ITransparentUpgradeableProxy(value)\n value0 := value\n }\n function abi_encode_tuple_packed_t_stringliteral_96a4c6be7716f5be15d118c16bd1d464cb27f01187d0b9218993a5d488a47c29__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos) -> end\n {\n mstore(pos, shl(224, 0x5c60da1b))\n end := add(pos, 4)\n }\n function abi_decode_tuple_t_address_payable_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let value := mload(headStart)\n validator_revert_contract_ITransparentUpgradeableProxy(value)\n value0 := value\n }\n function abi_encode_tuple_t_address_t_bytes_memory_ptr__to_t_address_t_bytes_memory_ptr__fromStack_reversed(headStart, value1, value0) -> tail\n {\n mstore(headStart, and(value0, sub(shl(160, 1), 1)))\n let _1 := 32\n mstore(add(headStart, _1), 64)\n let length := mload(value1)\n mstore(add(headStart, 64), length)\n let i := 0\n for { } lt(i, length) { i := add(i, _1) }\n {\n mstore(add(add(headStart, i), 96), mload(add(add(value1, i), _1)))\n }\n mstore(add(add(headStart, length), 96), 0)\n tail := add(add(headStart, and(add(length, 31), not(31))), 96)\n }\n function abi_encode_tuple_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 38)\n mstore(add(headStart, 64), \"Ownable: new owner is the zero a\")\n mstore(add(headStart, 96), \"ddress\")\n tail := add(headStart, 128)\n }\n function abi_encode_tuple_packed_t_stringliteral_cb23cf6c353ccb16f0d92c8e6b5c5b425654e65dd07e2d295b394de4cf15afb7__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos) -> end\n {\n mstore(pos, shl(230, 0x03e14691))\n end := add(pos, 4)\n }\n function abi_encode_tuple_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 32)\n mstore(add(headStart, 64), \"Ownable: caller is not the owner\")\n tail := add(headStart, 96)\n }\n}", - "id": 32, - "language": "Yul", - "name": "#utility.yul" - } - ], - "sourceMap": "126:54:22:-:0;;;;;;;;;;;;-1:-1:-1;936:32:5;734:10:15;936:18:5;:32::i;:::-;126:54:22;;2426:187:5;2499:16;2518:6;;-1:-1:-1;;;;;2534:17:5;;;-1:-1:-1;;;;;;2534:17:5;;;;;;2566:40;;2518:6;;;;;;;2566:40;;2499:16;2566:40;2489:124;2426:187;:::o;126:54:22:-;;;;;;;", - "deployedSourceMap": "126:54:22:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;650:438:12;;;;;;;;;;-1:-1:-1;650:438:12;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1824:101:5;;;;;;;;;;;;;:::i;:::-;;1842:149:12;;;;;;;;;;-1:-1:-1;1842:149:12;;;;;:::i;:::-;;:::i;1201:85:5:-;;;;;;;;;;;;;:::i;2612:245:12:-;;;;;;:::i;:::-;;:::i;2196:150::-;;;;;;;;;;-1:-1:-1;2196:150:12;;;;;:::i;:::-;;:::i;2074:198:5:-;;;;;;;;;;-1:-1:-1;2074:198:5;;;;;:::i;:::-;;:::i;1248:420:12:-;;;;;;;;;;-1:-1:-1;1248:420:12;;;;;:::i;:::-;;:::i;650:438::-;747:7;924:12;938:23;973:5;-1:-1:-1;;;;;965:25:12;:40;;;;-1:-1:-1;;;3111:33:32;;3169:1;3160:11;;2910:267;965:40:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;923:82;;;;1023:7;1015:16;;;;;;1059:10;1048:33;;;;;;;;;;;;:::i;:::-;1041:40;650:438;-1:-1:-1;;;;650:438:12:o;1824:101:5:-;1094:13;:11;:13::i;:::-;1888:30:::1;1915:1;1888:18;:30::i;:::-;1824:101::o:0;1842:149:12:-;1094:13:5;:11;:13::i;:::-;1957:27:12::1;::::0;-1:-1:-1;;;1957:27:12;;-1:-1:-1;;;;;1957:17:12;::::1;::::0;::::1;::::0;:27:::1;::::0;1975:8;;1957:27:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;1842:149:::0;;:::o;1201:85:5:-;1247:7;1273:6;-1:-1:-1;;;;;1273:6:5;;1201:85::o;2612:245:12:-;1094:13:5;:11;:13::i;:::-;2788:62:12::1;::::0;-1:-1:-1;;;2788:62:12;;-1:-1:-1;;;;;2788:22:12;::::1;::::0;::::1;::::0;2818:9:::1;::::0;2788:62:::1;::::0;2829:14;;2845:4;;2788:62:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;2612:245:::0;;;:::o;2196:150::-;1094:13:5;:11;:13::i;:::-;2308:31:12::1;::::0;-1:-1:-1;;;2308:31:12;;-1:-1:-1;;;;;2308:15:12;::::1;::::0;::::1;::::0;:31:::1;::::0;2324:14;;2308:31:::1;;;:::i;2074:198:5:-:0;1094:13;:11;:13::i;:::-;-1:-1:-1;;;;;2162:22:5;::::1;2154:73;;;::::0;-1:-1:-1;;;2154:73:5;;4326:2:32;2154:73:5::1;::::0;::::1;4308:21:32::0;4365:2;4345:18;;;4338:30;4404:34;4384:18;;;4377:62;-1:-1:-1;;;4455:18:32;;;4448:36;4501:19;;2154:73:5::1;;;;;;;;;2237:28;2256:8;2237:18;:28::i;:::-;2074:198:::0;:::o;1248:420:12:-;1336:7;1504:12;1518:23;1553:5;-1:-1:-1;;;;;1545:25:12;:40;;;;-1:-1:-1;;;4732:33:32;;4790:1;4781:11;;4531:267;1359:130:5;734:10:15;1422:7:5;:5;:7::i;:::-;-1:-1:-1;;;;;1422:23:5;;1414:68;;;;-1:-1:-1;;;1414:68:5;;5005:2:32;1414:68:5;;;4987:21:32;;;5024:18;;;5017:30;5083:34;5063:18;;;5056:62;5135:18;;1414:68:5;4803:356:32;2426:187:5;2499:16;2518:6;;-1:-1:-1;;;;;2534:17:5;;;-1:-1:-1;;;;;;2534:17:5;;;;;;2566:40;;2518:6;;;;;;;2566:40;;2499:16;2566:40;2489:124;2426:187;:::o;14:161:32:-;-1:-1:-1;;;;;119:31:32;;109:42;;99:70;;165:1;162;155:12;180:314;276:6;329:2;317:9;308:7;304:23;300:32;297:52;;;345:1;342;335:12;297:52;384:9;371:23;403:61;458:5;403:61;:::i;:::-;483:5;180:314;-1:-1:-1;;;180:314:32:o;499:203::-;-1:-1:-1;;;;;663:32:32;;;;645:51;;633:2;618:18;;499:203::o;707:485::-;812:6;820;873:2;861:9;852:7;848:23;844:32;841:52;;;889:1;886;879:12;841:52;928:9;915:23;947:61;1002:5;947:61;:::i;:::-;1027:5;-1:-1:-1;1084:2:32;1069:18;;1056:32;1097:63;1056:32;1097:63;:::i;:::-;1179:7;1169:17;;;707:485;;;;;:::o;1197:127::-;1258:10;1253:3;1249:20;1246:1;1239:31;1289:4;1286:1;1279:15;1313:4;1310:1;1303:15;1329:1294;1452:6;1460;1468;1521:2;1509:9;1500:7;1496:23;1492:32;1489:52;;;1537:1;1534;1527:12;1489:52;1576:9;1563:23;1595:61;1650:5;1595:61;:::i;:::-;1675:5;-1:-1:-1;1732:2:32;1717:18;;1704:32;1745:63;1704:32;1745:63;:::i;:::-;1827:7;-1:-1:-1;1885:2:32;1870:18;;1857:32;-1:-1:-1;;;;;1938:14:32;;;1935:34;;;1965:1;1962;1955:12;1935:34;2003:6;1992:9;1988:22;1978:32;;2048:7;2041:4;2037:2;2033:13;2029:27;2019:55;;2070:1;2067;2060:12;2019:55;2106:2;2093:16;2128:2;2124;2121:10;2118:36;;;2134:18;;:::i;:::-;2209:2;2203:9;2177:2;2263:13;;-1:-1:-1;;2259:22:32;;;2283:2;2255:31;2251:40;2239:53;;;2307:18;;;2327:22;;;2304:46;2301:72;;;2353:18;;:::i;:::-;2393:10;2389:2;2382:22;2428:2;2420:6;2413:18;2468:7;2463:2;2458;2454;2450:11;2446:20;2443:33;2440:53;;;2489:1;2486;2479:12;2440:53;2545:2;2540;2536;2532:11;2527:2;2519:6;2515:15;2502:46;2590:1;2585:2;2580;2572:6;2568:15;2564:24;2557:35;2611:6;2601:16;;;;;;;1329:1294;;;;;:::o;3182:289::-;3260:6;3313:2;3301:9;3292:7;3288:23;3284:32;3281:52;;;3329:1;3326;3319:12;3281:52;3361:9;3355:16;3380:61;3435:5;3380:61;:::i;3476:643::-;3680:1;3676;3671:3;3667:11;3663:19;3655:6;3651:32;3640:9;3633:51;3614:4;3703:2;3741;3736;3725:9;3721:18;3714:30;3773:6;3767:13;3816:6;3811:2;3800:9;3796:18;3789:34;3841:1;3851:140;3865:6;3862:1;3859:13;3851:140;;;3960:14;;;3956:23;;3950:30;3926:17;;;3945:2;3922:26;3915:66;3880:10;;3851:140;;;3855:3;4040:1;4035:2;4026:6;4015:9;4011:22;4007:31;4000:42;4110:2;4103;4099:7;4094:2;4086:6;4082:15;4078:29;4067:9;4063:45;4059:54;4051:62;;;;3476:643;;;;;:::o", - "source": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.18;\n\nimport \"@openzeppelin/contracts/proxy/transparent/ProxyAdmin.sol\";\n\ncontract LiquidityBridgeContractAdmin is ProxyAdmin {}", - "sourcePath": "/Users/luischavez/iov/liquidity-bridge-contract/contracts/LiquidityBridgeContractAdmin.sol", - "ast": { - "absolutePath": "project:/contracts/LiquidityBridgeContractAdmin.sol", - "exportedSymbols": { - "Address": [ - 2103 - ], - "Context": [ - 2133 - ], - "ERC1967Proxy": [ - 948 - ], - "ERC1967Upgrade": [ - 1252 - ], - "IBeacon": [ - 1314 - ], - "IERC1822Proxiable": [ - 911 - ], - "IERC1967": [ - 901 - ], - "ITransparentUpgradeableProxy": [ - 1484 - ], - "LiquidityBridgeContractAdmin": [ - 7904 - ], - "Ownable": [ - 880 - ], - "Proxy": [ - 1304 - ], - "ProxyAdmin": [ - 1450 - ], - "StorageSlot": [ - 2243 - ], - "TransparentUpgradeableProxy": [ - 1773 - ] - }, - "id": 7905, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 7900, - "literals": [ - "solidity", - "^", - "0.8", - ".18" - ], - "nodeType": "PragmaDirective", - "src": "32:24:22" - }, - { - "absolutePath": "@openzeppelin/contracts/proxy/transparent/ProxyAdmin.sol", - "file": "@openzeppelin/contracts/proxy/transparent/ProxyAdmin.sol", - "id": 7901, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 7905, - "sourceUnit": 1451, - "src": "58:66:22", - "symbolAliases": [], - "unitAlias": "" - }, - { - "abstract": false, - "baseContracts": [ - { - "baseName": { - "id": 7902, - "name": "ProxyAdmin", - "nameLocations": [ - "167:10:22" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 1450, - "src": "167:10:22" - }, - "id": 7903, - "nodeType": "InheritanceSpecifier", - "src": "167:10:22" - } - ], - "canonicalName": "LiquidityBridgeContractAdmin", - "contractDependencies": [], - "contractKind": "contract", - "fullyImplemented": true, - "id": 7904, - "linearizedBaseContracts": [ - 7904, - 1450, - 880, - 2133 - ], - "name": "LiquidityBridgeContractAdmin", - "nameLocation": "135:28:22", - "nodeType": "ContractDefinition", - "nodes": [], - "scope": 7905, - "src": "126:54:22", - "usedErrors": [] - } - ], - "src": "32:148:22" - }, - "compiler": { - "name": "solc", - "version": "0.8.18+commit.87f61d96.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "3.4.13", - "updatedAt": "2024-12-10T18:52:58.898Z", - "devdoc": { - "kind": "dev", - "methods": { - "changeProxyAdmin(address,address)": { - "details": "Changes the admin of `proxy` to `newAdmin`. Requirements: - This contract must be the current admin of `proxy`." - }, - "getProxyAdmin(address)": { - "details": "Returns the current admin of `proxy`. Requirements: - This contract must be the admin of `proxy`." - }, - "getProxyImplementation(address)": { - "details": "Returns the current implementation of `proxy`. Requirements: - This contract must be the admin of `proxy`." - }, - "owner()": { - "details": "Returns the address of the current owner." - }, - "renounceOwnership()": { - "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(address)": { - "details": "Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner." - }, - "upgrade(address,address)": { - "details": "Upgrades `proxy` to `implementation`. See {TransparentUpgradeableProxy-upgradeTo}. Requirements: - This contract must be the admin of `proxy`." - }, - "upgradeAndCall(address,address,bytes)": { - "details": "Upgrades `proxy` to `implementation` and calls a function on the new implementation. See {TransparentUpgradeableProxy-upgradeToAndCall}. Requirements: - This contract must be the admin of `proxy`." - } - }, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } -} \ No newline at end of file diff --git a/build/contracts/LiquidityBridgeContractProxy.json b/build/contracts/LiquidityBridgeContractProxy.json deleted file mode 100644 index 08204a0..0000000 --- a/build/contracts/LiquidityBridgeContractProxy.json +++ /dev/null @@ -1,6914 +0,0 @@ -{ - "contractName": "LiquidityBridgeContractProxy", - "abi": [ - { - "inputs": [ - { - "internalType": "address", - "name": "_logic", - "type": "address" - }, - { - "internalType": "address", - "name": "_admin", - "type": "address" - }, - { - "internalType": "bytes", - "name": "_data", - "type": "bytes" - } - ], - "stateMutability": "payable", - "type": "constructor" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "previousAdmin", - "type": "address" - }, - { - "indexed": false, - "internalType": "address", - "name": "newAdmin", - "type": "address" - } - ], - "name": "AdminChanged", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "beacon", - "type": "address" - } - ], - "name": "BeaconUpgraded", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "implementation", - "type": "address" - } - ], - "name": "Upgraded", - "type": "event" - }, - { - "stateMutability": "payable", - "type": "fallback" - }, - { - "stateMutability": "payable", - "type": "receive" - } - ], - "metadata": "{\"compiler\":{\"version\":\"0.8.18+commit.87f61d96\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_logic\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_admin\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"}],\"stateMutability\":\"payable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"previousAdmin\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newAdmin\",\"type\":\"address\"}],\"name\":\"AdminChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"beacon\",\"type\":\"address\"}],\"name\":\"BeaconUpgraded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"implementation\",\"type\":\"address\"}],\"name\":\"Upgraded\",\"type\":\"event\"},{\"stateMutability\":\"payable\",\"type\":\"fallback\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}],\"devdoc\":{\"events\":{\"AdminChanged(address,address)\":{\"details\":\"Emitted when the admin account has changed.\"},\"BeaconUpgraded(address)\":{\"details\":\"Emitted when the beacon is changed.\"},\"Upgraded(address)\":{\"details\":\"Emitted when the implementation is upgraded.\"}},\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"project:/contracts/LiquidityBridgeContractProxy.sol\":\"LiquidityBridgeContractProxy\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":1},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts/interfaces/IERC1967.sol\":{\"keccak256\":\"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263\",\"dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE\"]},\"@openzeppelin/contracts/interfaces/draft-IERC1822.sol\":{\"keccak256\":\"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688\",\"dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr\"]},\"@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol\":{\"keccak256\":\"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5\",\"dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn\"]},\"@openzeppelin/contracts/proxy/ERC1967/ERC1967Upgrade.sol\":{\"keccak256\":\"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2\",\"dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82\"]},\"@openzeppelin/contracts/proxy/Proxy.sol\":{\"keccak256\":\"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472\",\"dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN\"]},\"@openzeppelin/contracts/proxy/beacon/IBeacon.sol\":{\"keccak256\":\"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354\",\"dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce\"]},\"@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol\":{\"keccak256\":\"0x168e36d7e616bd41f6abab4a83009da64513ae9e638aa6d5980066e2a92db689\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a45c64b97311fabbcbe8dad7e94fa89e06a7f96060d5565326ef706f5f239017\",\"dweb:/ipfs/QmeU2jiBGbHhz9DqRotjbpAx5s2xExDSRQtSD5ENjuHzDq\"]},\"@openzeppelin/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]},\"@openzeppelin/contracts/utils/StorageSlot.sol\":{\"keccak256\":\"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da\",\"dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q\"]},\"project:/contracts/LiquidityBridgeContractProxy.sol\":{\"keccak256\":\"0xdd817afe5e2270f102fbeb056481a3f490c999161d8ab1fc9042ce246e21a302\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b7c6d7e3520cf591471d5de90a41d333593f6a48771531604786a23999932803\",\"dweb:/ipfs/QmbwqYWEFd33YnSYGzQnboFiwXEJvmiXB7owyAgNibiAhT\"]}},\"version\":1}", - "bytecode": "0x608060405260405162000eb838038062000eb883398101604081905262000026916200049d565b8282828281620000398282600062000053565b506200004790508262000090565b505050505050620005d0565b6200005e83620000eb565b6000825111806200006c5750805b156200008b576200008983836200012d60201b620001691760201c565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f620000bb6200015c565b604080516001600160a01b03928316815291841660208301520160405180910390a1620000e88162000195565b50565b620000f6816200024a565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606062000155838360405180606001604052806027815260200162000e9160279139620002fe565b9392505050565b60006200018660008051602062000e7183398151915260001b6200037d60201b620001951760201c565b546001600160a01b0316919050565b6001600160a01b038116620002005760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b806200022960008051602062000e7183398151915260001b6200037d60201b620001951760201c565b80546001600160a01b0319166001600160a01b039290921691909117905550565b62000260816200038060201b620001981760201c565b620002c45760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401620001f7565b80620002297f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc60001b6200037d60201b620001951760201c565b6060600080856001600160a01b0316856040516200031d91906200057d565b600060405180830381855af49150503d80600081146200035a576040519150601f19603f3d011682016040523d82523d6000602084013e6200035f565b606091505b50909250905062000373868383876200038f565b9695505050505050565b90565b6001600160a01b03163b151590565b6060831562000403578251600003620003fb57620003ad8562000380565b620003fb5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401620001f7565b50816200040f565b6200040f838362000417565b949350505050565b815115620004285781518083602001fd5b8060405162461bcd60e51b8152600401620001f791906200059b565b80516001600160a01b03811681146200045c57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b83811015620004945781810151838201526020016200047a565b50506000910152565b600080600060608486031215620004b357600080fd5b620004be8462000444565b9250620004ce6020850162000444565b60408501519092506001600160401b0380821115620004ec57600080fd5b818601915086601f8301126200050157600080fd5b81518181111562000516576200051662000461565b604051601f8201601f19908116603f0116810190838211818310171562000541576200054162000461565b816040528281528960208487010111156200055b57600080fd5b6200056e83602083016020880162000477565b80955050505050509250925092565b600082516200059181846020870162000477565b9190910192915050565b6020815260008251806020840152620005bc81604085016020870162000477565b601f01601f19169190910160400192915050565b61089180620005e06000396000f3fe60806040523661001357610011610017565b005b6100115b61001f6101a7565b6001600160a01b0316330361015f5760606001600160e01b0319600035166364d3180d60e11b810161005a576100536101c8565b9150610157565b63587086bd60e11b6001600160e01b031982160161007a5761005361021f565b63070d7c6960e41b6001600160e01b031982160161009a57610053610265565b621eb96f60e61b6001600160e01b03198216016100b957610053610296565b63a39f25e560e01b6001600160e01b03198216016100d9576100536102d6565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b6101676102ea565b565b606061018e8383604051806060016040528060278152602001610835602791396102fa565b9392505050565b90565b6001600160a01b03163b151590565b60006000805160206107f58339815191525b546001600160a01b0316919050565b60606101d2610372565b60006101e13660048184610649565b8101906101ee919061068f565b905061020b8160405180602001604052806000815250600061037d565b505060408051602081019091526000815290565b60606000806102313660048184610649565b81019061023e91906106c0565b9150915061024e8282600161037d565b604051806020016040528060008152509250505090565b606061026f610372565b600061027e3660048184610649565b81019061028b919061068f565b905061020b816103a9565b60606102a0610372565b60006102aa6101a7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b60606102e0610372565b60006102aa610400565b6101676102f5610400565b61040f565b6060600080856001600160a01b03168560405161031791906107a5565b600060405180830381855af49150503d8060008114610352576040519150601f19603f3d011682016040523d82523d6000602084013e610357565b606091505b509150915061036886838387610433565b9695505050505050565b341561016757600080fd5b610386836104b2565b6000825111806103935750805b156103a4576103a28383610169565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103d26101a7565b604080516001600160a01b03928316815291841660208301520160405180910390a16103fd816104f2565b50565b600061040a610589565b905090565b3660008037600080366000845af43d6000803e80801561042e573d6000f35b3d6000fd5b606083156104a05782516000036104995761044d85610198565b6104995760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161014e565b50816104aa565b6104aa838361059f565b949350505050565b6104bb816105c9565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105575760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161014e565b806000805160206107f58339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b60006000805160206108158339815191526101b9565b8151156105af5781518083602001fd5b8060405162461bcd60e51b815260040161014e91906107c1565b6105d281610198565b6106345760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161014e565b80600080516020610815833981519152610568565b6000808585111561065957600080fd5b8386111561066657600080fd5b5050820193919092039150565b80356001600160a01b038116811461068a57600080fd5b919050565b6000602082840312156106a157600080fd5b61018e82610673565b634e487b7160e01b600052604160045260246000fd5b600080604083850312156106d357600080fd5b6106dc83610673565b915060208301356001600160401b03808211156106f857600080fd5b818501915085601f83011261070c57600080fd5b81358181111561071e5761071e6106aa565b604051601f8201601f19908116603f01168101908382118183101715610746576107466106aa565b8160405282815288602084870101111561075f57600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b8381101561079c578181015183820152602001610784565b50506000910152565b600082516107b7818460208701610781565b9190910192915050565b60208152600082518060208401526107e0816040850160208701610781565b601f01601f1916919091016040019291505056feb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220aa0f424181934cca397fdce2633da074b507c0f411ca5e8b0e6bfeecb7e3550e64736f6c63430008120033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564", - "deployedBytecode": "0x60806040523661001357610011610017565b005b6100115b61001f6101a7565b6001600160a01b0316330361015f5760606001600160e01b0319600035166364d3180d60e11b810161005a576100536101c8565b9150610157565b63587086bd60e11b6001600160e01b031982160161007a5761005361021f565b63070d7c6960e41b6001600160e01b031982160161009a57610053610265565b621eb96f60e61b6001600160e01b03198216016100b957610053610296565b63a39f25e560e01b6001600160e01b03198216016100d9576100536102d6565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b6101676102ea565b565b606061018e8383604051806060016040528060278152602001610835602791396102fa565b9392505050565b90565b6001600160a01b03163b151590565b60006000805160206107f58339815191525b546001600160a01b0316919050565b60606101d2610372565b60006101e13660048184610649565b8101906101ee919061068f565b905061020b8160405180602001604052806000815250600061037d565b505060408051602081019091526000815290565b60606000806102313660048184610649565b81019061023e91906106c0565b9150915061024e8282600161037d565b604051806020016040528060008152509250505090565b606061026f610372565b600061027e3660048184610649565b81019061028b919061068f565b905061020b816103a9565b60606102a0610372565b60006102aa6101a7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b60606102e0610372565b60006102aa610400565b6101676102f5610400565b61040f565b6060600080856001600160a01b03168560405161031791906107a5565b600060405180830381855af49150503d8060008114610352576040519150601f19603f3d011682016040523d82523d6000602084013e610357565b606091505b509150915061036886838387610433565b9695505050505050565b341561016757600080fd5b610386836104b2565b6000825111806103935750805b156103a4576103a28383610169565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103d26101a7565b604080516001600160a01b03928316815291841660208301520160405180910390a16103fd816104f2565b50565b600061040a610589565b905090565b3660008037600080366000845af43d6000803e80801561042e573d6000f35b3d6000fd5b606083156104a05782516000036104995761044d85610198565b6104995760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161014e565b50816104aa565b6104aa838361059f565b949350505050565b6104bb816105c9565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105575760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161014e565b806000805160206107f58339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b60006000805160206108158339815191526101b9565b8151156105af5781518083602001fd5b8060405162461bcd60e51b815260040161014e91906107c1565b6105d281610198565b6106345760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161014e565b80600080516020610815833981519152610568565b6000808585111561065957600080fd5b8386111561066657600080fd5b5050820193919092039150565b80356001600160a01b038116811461068a57600080fd5b919050565b6000602082840312156106a157600080fd5b61018e82610673565b634e487b7160e01b600052604160045260246000fd5b600080604083850312156106d357600080fd5b6106dc83610673565b915060208301356001600160401b03808211156106f857600080fd5b818501915085601f83011261070c57600080fd5b81358181111561071e5761071e6106aa565b604051601f8201601f19908116603f01168101908382118183101715610746576107466106aa565b8160405282815288602084870101111561075f57600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b8381101561079c578181015183820152602001610784565b50506000910152565b600082516107b7818460208701610781565b9190910192915050565b60208152600082518060208401526107e0816040850160208701610781565b601f01601f1916919091016040019291505056feb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220aa0f424181934cca397fdce2633da074b507c0f411ca5e8b0e6bfeecb7e3550e64736f6c63430008120033", - "immutableReferences": {}, - "generatedSources": [ - { - "ast": { - "nodeType": "YulBlock", - "src": "0:3832:32", - "statements": [ - { - "nodeType": "YulBlock", - "src": "6:3:32", - "statements": [] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "74:117:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "84:22:32", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "99:6:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "93:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "93:13:32" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "84:5:32" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "169:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "178:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "181:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "171:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "171:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "171:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "128:5:32" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "139:5:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "154:3:32", - "type": "", - "value": "160" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "159:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "150:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "150:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "163:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "146:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "146:19:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "135:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "135:31:32" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "125:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "125:42:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "118:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "118:50:32" - }, - "nodeType": "YulIf", - "src": "115:70:32" - } - ] - }, - "name": "abi_decode_address_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "53:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "64:5:32", - "type": "" - } - ], - "src": "14:177:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "228:95:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "245:1:32", - "type": "", - "value": "0" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "252:3:32", - "type": "", - "value": "224" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "257:10:32", - "type": "", - "value": "0x4e487b71" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "248:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "248:20:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "238:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "238:31:32" - }, - "nodeType": "YulExpressionStatement", - "src": "238:31:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "285:1:32", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "288:4:32", - "type": "", - "value": "0x41" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "278:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "278:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "278:15:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "309:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "312:4:32", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "302:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "302:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "302:15:32" - } - ] - }, - "name": "panic_error_0x41", - "nodeType": "YulFunctionDefinition", - "src": "196:127:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "394:184:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "404:10:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "413:1:32", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "i", - "nodeType": "YulTypedName", - "src": "408:1:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "473:63:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "498:3:32" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "503:1:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "494:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "494:11:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "517:3:32" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "522:1:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "513:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "513:11:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "507:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "507:18:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "487:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "487:39:32" - }, - "nodeType": "YulExpressionStatement", - "src": "487:39:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "434:1:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "437:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "431:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "431:13:32" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "445:19:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "447:15:32", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "456:1:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "459:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "452:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "452:10:32" - }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "447:1:32" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "427:3:32", - "statements": [] - }, - "src": "423:113:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "556:3:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "561:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "552:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "552:16:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "570:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "545:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "545:27:32" - }, - "nodeType": "YulExpressionStatement", - "src": "545:27:32" - } - ] - }, - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "src", - "nodeType": "YulTypedName", - "src": "372:3:32", - "type": "" - }, - { - "name": "dst", - "nodeType": "YulTypedName", - "src": "377:3:32", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "382:6:32", - "type": "" - } - ], - "src": "328:250:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "707:942:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "753:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "762:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "765:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "755:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "755:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "755:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "728:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "737:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "724:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "724:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "749:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "720:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "720:32:32" - }, - "nodeType": "YulIf", - "src": "717:52:32" - }, - { - "nodeType": "YulAssignment", - "src": "778:50:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "818:9:32" - } - ], - "functionName": { - "name": "abi_decode_address_fromMemory", - "nodeType": "YulIdentifier", - "src": "788:29:32" - }, - "nodeType": "YulFunctionCall", - "src": "788:40:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "778:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "837:59:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "881:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "892:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "877:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "877:18:32" - } - ], - "functionName": { - "name": "abi_decode_address_fromMemory", - "nodeType": "YulIdentifier", - "src": "847:29:32" - }, - "nodeType": "YulFunctionCall", - "src": "847:49:32" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "837:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "905:39:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "929:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "940:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "925:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "925:18:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "919:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "919:25:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "909:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "953:28:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "971:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "975:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "967:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "967:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "979:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "963:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "963:18:32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "957:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1008:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1017:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1020:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1010:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1010:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1010:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "996:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1004:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "993:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "993:14:32" - }, - "nodeType": "YulIf", - "src": "990:34:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1033:32:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1047:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1058:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1043:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1043:22:32" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "1037:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1113:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1122:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1125:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1115:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1115:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1115:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "1092:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1096:4:32", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1088:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1088:13:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "1103:7:32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "1084:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1084:27:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "1077:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1077:35:32" - }, - "nodeType": "YulIf", - "src": "1074:55:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1138:19:32", - "value": { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "1154:2:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "1148:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "1148:9:32" - }, - "variables": [ - { - "name": "_3", - "nodeType": "YulTypedName", - "src": "1142:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1180:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "1182:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "1182:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1182:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "1172:2:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1176:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1169:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "1169:10:32" - }, - "nodeType": "YulIf", - "src": "1166:36:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1211:17:32", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1225:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "1221:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1221:7:32" - }, - "variables": [ - { - "name": "_4", - "nodeType": "YulTypedName", - "src": "1215:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1237:23:32", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1257:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "1251:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "1251:9:32" - }, - "variables": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "1241:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1269:71:32", - "value": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1291:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "1315:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1319:4:32", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1311:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1311:13:32" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "1326:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "1307:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1307:22:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1331:2:32", - "type": "", - "value": "63" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1303:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1303:31:32" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "1336:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "1299:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1299:40:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1287:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1287:53:32" - }, - "variables": [ - { - "name": "newFreePtr", - "nodeType": "YulTypedName", - "src": "1273:10:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1399:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "1401:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "1401:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1401:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "1358:10:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1370:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1355:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "1355:18:32" - }, - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "1378:10:32" - }, - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1390:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "1375:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "1375:22:32" - } - ], - "functionName": { - "name": "or", - "nodeType": "YulIdentifier", - "src": "1352:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "1352:46:32" - }, - "nodeType": "YulIf", - "src": "1349:72:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1437:2:32", - "type": "", - "value": "64" - }, - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "1441:10:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1430:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1430:22:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1430:22:32" - }, - { - "expression": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1468:6:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "1476:2:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1461:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1461:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1461:18:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1525:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1534:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1537:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1527:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1527:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1527:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "1502:2:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "1506:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1498:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1498:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1511:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1494:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1494:20:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "1516:7:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1491:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "1491:33:32" - }, - "nodeType": "YulIf", - "src": "1488:53:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "1589:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1593:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1585:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1585:11:32" - }, - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1602:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1610:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1598:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1598:15:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "1615:2:32" - } - ], - "functionName": { - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulIdentifier", - "src": "1550:34:32" - }, - "nodeType": "YulFunctionCall", - "src": "1550:68:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1550:68:32" - }, - { - "nodeType": "YulAssignment", - "src": "1627:16:32", - "value": { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1637:6:32" - }, - "variableNames": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "1627:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_addresst_addresst_bytes_memory_ptr_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "657:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "668:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "680:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "688:6:32", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "696:6:32", - "type": "" - } - ], - "src": "583:1066:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1783:175:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "1793:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1805:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1816:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1801:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1801:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "1793:4:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1828:29:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1846:3:32", - "type": "", - "value": "160" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1851:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "1842:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1842:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1855:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "1838:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1838:19:32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "1832:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1873:9:32" - }, - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "1888:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1896:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "1884:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1884:15:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1866:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1866:34:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1866:34:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1920:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1931:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1916:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1916:18:32" - }, - { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "1940:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1948:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "1936:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1936:15:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1909:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1909:43:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1909:43:32" - } - ] - }, - "name": "abi_encode_tuple_t_address_t_address__to_t_address_t_address__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "1744:9:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "1755:6:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "1763:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "1774:4:32", - "type": "" - } - ], - "src": "1654:304:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2137:228:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2154:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2165:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2147:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2147:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2147:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2188:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2199:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2184:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2184:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2204:2:32", - "type": "", - "value": "38" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2177:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2177:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2177:30:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2227:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2238:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2223:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2223:18:32" - }, - { - "hexValue": "455243313936373a206e65772061646d696e20697320746865207a65726f2061", - "kind": "string", - "nodeType": "YulLiteral", - "src": "2243:34:32", - "type": "", - "value": "ERC1967: new admin is the zero a" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2216:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2216:62:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2216:62:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2298:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2309:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2294:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2294:18:32" - }, - { - "hexValue": "646472657373", - "kind": "string", - "nodeType": "YulLiteral", - "src": "2314:8:32", - "type": "", - "value": "ddress" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2287:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2287:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2287:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "2332:27:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2344:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2355:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2340:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2340:19:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "2332:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_3820e16891102c1360a787e6e648431097d92537f969d458f5c94b56f8318be5__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "2114:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "2128:4:32", - "type": "" - } - ], - "src": "1963:402:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2544:235:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2561:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2572:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2554:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2554:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2554:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2595:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2606:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2591:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2591:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2611:2:32", - "type": "", - "value": "45" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2584:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2584:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2584:30:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2634:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2645:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2630:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2630:18:32" - }, - { - "hexValue": "455243313936373a206e657720696d706c656d656e746174696f6e206973206e", - "kind": "string", - "nodeType": "YulLiteral", - "src": "2650:34:32", - "type": "", - "value": "ERC1967: new implementation is n" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2623:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2623:62:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2623:62:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2705:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2716:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2701:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2701:18:32" - }, - { - "hexValue": "6f74206120636f6e7472616374", - "kind": "string", - "nodeType": "YulLiteral", - "src": "2721:15:32", - "type": "", - "value": "ot a contract" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2694:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2694:43:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2694:43:32" - }, - { - "nodeType": "YulAssignment", - "src": "2746:27:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2758:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2769:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2754:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2754:19:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "2746:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_972b7028e8de0bff0d553b3264eba2312ec98a552add05e58853b313f9f4ac65__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "2521:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "2535:4:32", - "type": "" - } - ], - "src": "2370:409:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2921:150:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "2931:27:32", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "2951:6:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "2945:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "2945:13:32" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "2935:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "3006:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3014:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3002:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3002:17:32" - }, - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "3021:3:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "3026:6:32" - } - ], - "functionName": { - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulIdentifier", - "src": "2967:34:32" - }, - "nodeType": "YulFunctionCall", - "src": "2967:66:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2967:66:32" - }, - { - "nodeType": "YulAssignment", - "src": "3042:23:32", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "3053:3:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "3058:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3049:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3049:16:32" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "3042:3:32" - } - ] - } - ] - }, - "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": "2897:3:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "2902:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "2913:3:32", - "type": "" - } - ], - "src": "2784:287:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3250:179:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3267:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3278:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3260:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3260:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3260:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3301:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3312:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3297:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3297:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3317:2:32", - "type": "", - "value": "29" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3290:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3290:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3290:30:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3340:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3351:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3336:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3336:18:32" - }, - { - "hexValue": "416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374", - "kind": "string", - "nodeType": "YulLiteral", - "src": "3356:31:32", - "type": "", - "value": "Address: call to non-contract" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3329:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3329:59:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3329:59:32" - }, - { - "nodeType": "YulAssignment", - "src": "3397:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3409:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3420:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3405:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3405:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "3397:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_cc2e4e38850b7c0a3e942cfed89b71c77302df25bcb2ec297a0c4ff9ff6b90ad__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "3227:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "3241:4:32", - "type": "" - } - ], - "src": "3076:353:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3555:275:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3572:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3583:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3565:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3565:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3565:21:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3595:27:32", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "3615:6:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "3609:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "3609:13:32" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "3599:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3642:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3653:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3638:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3638:18:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "3658:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3631:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3631:34:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3631:34:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "3713:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3721:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3709:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3709:15:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3730:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3741:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3726:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3726:18:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "3746:6:32" - } - ], - "functionName": { - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulIdentifier", - "src": "3674:34:32" - }, - "nodeType": "YulFunctionCall", - "src": "3674:79:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3674:79:32" - }, - { - "nodeType": "YulAssignment", - "src": "3762:62:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3778:9:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "3797:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3805:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3793:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3793:15:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3814:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "3810:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3810:7:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "3789:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3789:29:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3774:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3774:45:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3821:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3770:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3770:54:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "3762:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "3524:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "3535:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "3546:4:32", - "type": "" - } - ], - "src": "3434:396:32" - } - ] - }, - "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_bytes_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 abi_encode_tuple_t_address_t_address__to_t_address_t_address__fromStack_reversed(headStart, value1, value0) -> tail\n {\n tail := add(headStart, 64)\n let _1 := sub(shl(160, 1), 1)\n mstore(headStart, and(value0, _1))\n mstore(add(headStart, 32), and(value1, _1))\n }\n function abi_encode_tuple_t_stringliteral_3820e16891102c1360a787e6e648431097d92537f969d458f5c94b56f8318be5__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 38)\n mstore(add(headStart, 64), \"ERC1967: new admin is the zero a\")\n mstore(add(headStart, 96), \"ddress\")\n tail := add(headStart, 128)\n }\n function abi_encode_tuple_t_stringliteral_972b7028e8de0bff0d553b3264eba2312ec98a552add05e58853b313f9f4ac65__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 45)\n mstore(add(headStart, 64), \"ERC1967: new implementation is n\")\n mstore(add(headStart, 96), \"ot a contract\")\n tail := add(headStart, 128)\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_cc2e4e38850b7c0a3e942cfed89b71c77302df25bcb2ec297a0c4ff9ff6b90ad__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 29)\n mstore(add(headStart, 64), \"Address: call to non-contract\")\n tail := add(headStart, 96)\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 let length := mload(value0)\n mstore(add(headStart, 32), length)\n copy_memory_to_memory_with_cleanup(add(value0, 32), add(headStart, 64), length)\n tail := add(add(headStart, and(add(length, 31), not(31))), 64)\n }\n}", - "id": 32, - "language": "Yul", - "name": "#utility.yul" - } - ], - "deployedGeneratedSources": [ - { - "ast": { - "nodeType": "YulBlock", - "src": "0:5007:32", - "statements": [ - { - "nodeType": "YulBlock", - "src": "6:3:32", - "statements": [] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "188:296:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "205:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "216:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "198:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "198:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "198:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "239:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "250:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "235:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "235:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "255:2:32", - "type": "", - "value": "66" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "228:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "228:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "228:30:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "278:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "289:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "274:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "274:18:32" - }, - { - "hexValue": "5472616e73706172656e745570677261646561626c6550726f78793a2061646d", - "kind": "string", - "nodeType": "YulLiteral", - "src": "294:34:32", - "type": "", - "value": "TransparentUpgradeableProxy: adm" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "267:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "267:62:32" - }, - "nodeType": "YulExpressionStatement", - "src": "267:62:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "349:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "360:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "345:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "345:18:32" - }, - { - "hexValue": "696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267", - "kind": "string", - "nodeType": "YulLiteral", - "src": "365:34:32", - "type": "", - "value": "in cannot fallback to proxy targ" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "338:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "338:62:32" - }, - "nodeType": "YulExpressionStatement", - "src": "338:62:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "420:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "431:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "416:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "416:19:32" - }, - { - "hexValue": "6574", - "kind": "string", - "nodeType": "YulLiteral", - "src": "437:4:32", - "type": "", - "value": "et" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "409:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "409:33:32" - }, - "nodeType": "YulExpressionStatement", - "src": "409:33:32" - }, - { - "nodeType": "YulAssignment", - "src": "451:27:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "463:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "474:3:32", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "459:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "459:19:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "451:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_f5d2ea39d7e6c7d19dc32ccc2bd7ca26b7aa4a603ef4aa6f2b205c93c3ffe43d__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "165:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "179:4:32", - "type": "" - } - ], - "src": "14:470:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "619:201:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "657:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "666:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "669:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "659:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "659:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "659:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "startIndex", - "nodeType": "YulIdentifier", - "src": "635:10:32" - }, - { - "name": "endIndex", - "nodeType": "YulIdentifier", - "src": "647:8:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "632:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "632:24:32" - }, - "nodeType": "YulIf", - "src": "629:44:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "706:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "715:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "718:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "708:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "708:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "708:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "endIndex", - "nodeType": "YulIdentifier", - "src": "688:8:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "698:6:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "685:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "685:20:32" - }, - "nodeType": "YulIf", - "src": "682:40:32" - }, - { - "nodeType": "YulAssignment", - "src": "731:36:32", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "748:6:32" - }, - { - "name": "startIndex", - "nodeType": "YulIdentifier", - "src": "756:10:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "744:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "744:23:32" - }, - "variableNames": [ - { - "name": "offsetOut", - "nodeType": "YulIdentifier", - "src": "731:9:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "776:38:32", - "value": { - "arguments": [ - { - "name": "endIndex", - "nodeType": "YulIdentifier", - "src": "793:8:32" - }, - { - "name": "startIndex", - "nodeType": "YulIdentifier", - "src": "803:10:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "789:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "789:25:32" - }, - "variableNames": [ - { - "name": "lengthOut", - "nodeType": "YulIdentifier", - "src": "776:9:32" - } - ] - } - ] - }, - "name": "calldata_array_index_range_access_t_bytes_calldata_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "553:6:32", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "561:6:32", - "type": "" - }, - { - "name": "startIndex", - "nodeType": "YulTypedName", - "src": "569:10:32", - "type": "" - }, - { - "name": "endIndex", - "nodeType": "YulTypedName", - "src": "581:8:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "offsetOut", - "nodeType": "YulTypedName", - "src": "594:9:32", - "type": "" - }, - { - "name": "lengthOut", - "nodeType": "YulTypedName", - "src": "605:9:32", - "type": "" - } - ], - "src": "489:331:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "882:124:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "892:29:32", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "914:6:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "901:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "901:20:32" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "892:5:32" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "984:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "993:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "996:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "986:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "986:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "986:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "943:5:32" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "954:5:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "969:3:32", - "type": "", - "value": "160" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "974:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "965:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "965:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "978:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "961:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "961:19:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "950:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "950:31:32" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "940:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "940:42:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "933:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "933:50:32" - }, - "nodeType": "YulIf", - "src": "930:70:32" - } - ] - }, - "name": "abi_decode_address_payable", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "861:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "872:5:32", - "type": "" - } - ], - "src": "825:181:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1089:124:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "1135:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1144:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1147:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1137:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1137:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1137:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "1110:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1119:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "1106:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1106:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1131:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "1102:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1102:32:32" - }, - "nodeType": "YulIf", - "src": "1099:52:32" - }, - { - "nodeType": "YulAssignment", - "src": "1160:47:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1197:9:32" - } - ], - "functionName": { - "name": "abi_decode_address_payable", - "nodeType": "YulIdentifier", - "src": "1170:26:32" - }, - "nodeType": "YulFunctionCall", - "src": "1170:37:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "1160:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_address_payable", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "1055:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "1066:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "1078:6:32", - "type": "" - } - ], - "src": "1011:202:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1250:95:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1267:1:32", - "type": "", - "value": "0" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1274:3:32", - "type": "", - "value": "224" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1279:10:32", - "type": "", - "value": "0x4e487b71" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "1270:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1270:20:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1260:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1260:31:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1260:31:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1307:1:32", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1310:4:32", - "type": "", - "value": "0x41" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1300:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1300:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1300:15:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1331:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1334:4:32", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1324:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1324:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1324:15:32" - } - ] - }, - "name": "panic_error_0x41", - "nodeType": "YulFunctionDefinition", - "src": "1218:127:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1454:907:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "1500:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1509:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1512:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1502:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1502:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1502:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "1475:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1484:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "1471:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1471:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1496:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "1467:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1467:32:32" - }, - "nodeType": "YulIf", - "src": "1464:52:32" - }, - { - "nodeType": "YulAssignment", - "src": "1525:47:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1562:9:32" - } - ], - "functionName": { - "name": "abi_decode_address_payable", - "nodeType": "YulIdentifier", - "src": "1535:26:32" - }, - "nodeType": "YulFunctionCall", - "src": "1535:37:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "1525:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1581:46:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1612:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1623:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1608:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1608:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "1595:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "1595:32:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "1585:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1636:28:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1654:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1658:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "1650:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1650:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1662:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "1646:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1646:18:32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "1640:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1691:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1700:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1703:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1693:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1693:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1693:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1679:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1687:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1676:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "1676:14:32" - }, - "nodeType": "YulIf", - "src": "1673:34:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1716:32:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1730:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1741:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1726:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1726:22:32" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "1720:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1796:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1805:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1808:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1798:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1798:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1798:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "1775:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1779:4:32", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1771:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1771:13:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "1786:7:32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "1767:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1767:27:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "1760:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1760:35:32" - }, - "nodeType": "YulIf", - "src": "1757:55:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1821:26:32", - "value": { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "1844:2:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "1831:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "1831:16:32" - }, - "variables": [ - { - "name": "_3", - "nodeType": "YulTypedName", - "src": "1825:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1870:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "1872:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "1872:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1872:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "1862:2:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1866:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1859:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "1859:10:32" - }, - "nodeType": "YulIf", - "src": "1856:36:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1901:17:32", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1915:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "1911:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1911:7:32" - }, - "variables": [ - { - "name": "_4", - "nodeType": "YulTypedName", - "src": "1905:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1927:23:32", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1947:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "1941:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "1941:9:32" - }, - "variables": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "1931:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1959:71:32", - "value": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1981:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "2005:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2009:4:32", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2001:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2001:13:32" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "2016:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "1997:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1997:22:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2021:2:32", - "type": "", - "value": "63" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1993:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1993:31:32" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "2026:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "1989:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1989:40:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1977:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1977:53:32" - }, - "variables": [ - { - "name": "newFreePtr", - "nodeType": "YulTypedName", - "src": "1963:10:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2089:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "2091:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "2091:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2091:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "2048:10:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "2060:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "2045:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "2045:18:32" - }, - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "2068:10:32" - }, - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "2080:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "2065:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "2065:22:32" - } - ], - "functionName": { - "name": "or", - "nodeType": "YulIdentifier", - "src": "2042:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "2042:46:32" - }, - "nodeType": "YulIf", - "src": "2039:72:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2127:2:32", - "type": "", - "value": "64" - }, - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "2131:10:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2120:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2120:22:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2120:22:32" - }, - { - "expression": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "2158:6:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "2166:2:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2151:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2151:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2151:18:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2215:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2224:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2227:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "2217:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2217:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2217:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "2192:2:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "2196:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2188:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2188:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2201:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2184:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2184:20:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "2206:7:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "2181:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "2181:33:32" - }, - "nodeType": "YulIf", - "src": "2178:53:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "2257:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2265:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2253:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2253:15:32" - }, - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "2274:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2278:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2270:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2270:11:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "2283:2:32" - } - ], - "functionName": { - "name": "calldatacopy", - "nodeType": "YulIdentifier", - "src": "2240:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "2240:46:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2240:46:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "2310:6:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "2318:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2306:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2306:15:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2323:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2302:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2302:24:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2328:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2295:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2295:35:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2295:35:32" - }, - { - "nodeType": "YulAssignment", - "src": "2339:16:32", - "value": { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "2349:6:32" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "2339:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_address_payablet_bytes_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "1412:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "1423:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "1435:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "1443:6:32", - "type": "" - } - ], - "src": "1350:1011:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2467:102:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "2477:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2489:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2500:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2485:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2485:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "2477:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2519:9:32" - }, - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "2534:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2550:3:32", - "type": "", - "value": "160" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2555:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "2546:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2546:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2559:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "2542:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2542:19:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "2530:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2530:32:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2512:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2512:51:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2512:51:32" - } - ] - }, - "name": "abi_encode_tuple_t_address__to_t_address__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "2436:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "2447:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "2458:4:32", - "type": "" - } - ], - "src": "2366:203:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2640:184:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "2650:10:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2659:1:32", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "i", - "nodeType": "YulTypedName", - "src": "2654:1:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2719:63:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "2744:3:32" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "2749:1:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2740:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2740:11:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "2763:3:32" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "2768:1:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2759:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2759:11:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "2753:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "2753:18:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2733:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2733:39:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2733:39:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "2680:1:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "2683:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "2677:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "2677:13:32" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "2691:19:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "2693:15:32", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "2702:1:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2705:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2698:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2698:10:32" - }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "2693:1:32" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "2673:3:32", - "statements": [] - }, - "src": "2669:113:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "2802:3:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "2807:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2798:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2798:16:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2816:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2791:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2791:27:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2791:27:32" - } - ] - }, - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "src", - "nodeType": "YulTypedName", - "src": "2618:3:32", - "type": "" - }, - { - "name": "dst", - "nodeType": "YulTypedName", - "src": "2623:3:32", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "2628:6:32", - "type": "" - } - ], - "src": "2574:250:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2966:150:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "2976:27:32", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "2996:6:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "2990:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "2990:13:32" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "2980:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "3051:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3059:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3047:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3047:17:32" - }, - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "3066:3:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "3071:6:32" - } - ], - "functionName": { - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulIdentifier", - "src": "3012:34:32" - }, - "nodeType": "YulFunctionCall", - "src": "3012:66:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3012:66:32" - }, - { - "nodeType": "YulAssignment", - "src": "3087:23:32", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "3098:3:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "3103:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3094:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3094:16:32" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "3087:3:32" - } - ] - } - ] - }, - "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": "2942:3:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "2947:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "2958:3:32", - "type": "" - } - ], - "src": "2829:287:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3250:175:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "3260:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3272:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3283:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3268:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3268:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "3260:4:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3295:29:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3313:3:32", - "type": "", - "value": "160" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3318:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "3309:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3309:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3322:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "3305:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3305:19:32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "3299:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3340:9:32" - }, - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "3355:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "3363:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "3351:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3351:15:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3333:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3333:34:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3333:34:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3387:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3398:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3383:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3383:18:32" - }, - { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "3407:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "3415:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "3403:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3403:15:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3376:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3376:43:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3376:43:32" - } - ] - }, - "name": "abi_encode_tuple_t_address_t_address__to_t_address_t_address__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "3211:9:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "3222:6:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "3230:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "3241:4:32", - "type": "" - } - ], - "src": "3121:304:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3604:179:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3621:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3632:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3614:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3614:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3614:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3655:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3666:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3651:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3651:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3671:2:32", - "type": "", - "value": "29" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3644:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3644:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3644:30:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3694:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3705:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3690:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3690:18:32" - }, - { - "hexValue": "416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374", - "kind": "string", - "nodeType": "YulLiteral", - "src": "3710:31:32", - "type": "", - "value": "Address: call to non-contract" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3683:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3683:59:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3683:59:32" - }, - { - "nodeType": "YulAssignment", - "src": "3751:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3763:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3774:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3759:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3759:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "3751:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_cc2e4e38850b7c0a3e942cfed89b71c77302df25bcb2ec297a0c4ff9ff6b90ad__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "3581:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "3595:4:32", - "type": "" - } - ], - "src": "3430:353:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3962:228:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3979:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3990:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3972:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3972:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3972:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4013:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4024:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4009:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4009:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4029:2:32", - "type": "", - "value": "38" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4002:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4002:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4002:30:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4052:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4063:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4048:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4048:18:32" - }, - { - "hexValue": "455243313936373a206e65772061646d696e20697320746865207a65726f2061", - "kind": "string", - "nodeType": "YulLiteral", - "src": "4068:34:32", - "type": "", - "value": "ERC1967: new admin is the zero a" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4041:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4041:62:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4041:62:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4123:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4134:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4119:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4119:18:32" - }, - { - "hexValue": "646472657373", - "kind": "string", - "nodeType": "YulLiteral", - "src": "4139:8:32", - "type": "", - "value": "ddress" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4112:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4112:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4112:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "4157:27:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4169:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4180:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4165:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4165:19:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "4157:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_3820e16891102c1360a787e6e648431097d92537f969d458f5c94b56f8318be5__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "3939:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "3953:4:32", - "type": "" - } - ], - "src": "3788:402:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4316:275:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4333:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4344:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4326:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4326:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4326:21:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "4356:27:32", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "4376:6:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "4370:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "4370:13:32" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "4360:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4403:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4414:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4399:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4399:18:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "4419:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4392:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4392:34:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4392:34:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "4474:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4482:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4470:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4470:15:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4491:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4502:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4487:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4487:18:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "4507:6:32" - } - ], - "functionName": { - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulIdentifier", - "src": "4435:34:32" - }, - "nodeType": "YulFunctionCall", - "src": "4435:79:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4435:79:32" - }, - { - "nodeType": "YulAssignment", - "src": "4523:62:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4539:9:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "4558:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4566:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4554:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4554:15:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4575:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "4571:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4571:7:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "4550:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4550:29:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4535:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4535:45:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4582:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4531:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4531:54:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "4523:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "4285:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "4296:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "4307:4:32", - "type": "" - } - ], - "src": "4195:396:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4770:235:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4787:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4798:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4780:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4780:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4780:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4821:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4832:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4817:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4817:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4837:2:32", - "type": "", - "value": "45" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4810:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4810:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4810:30:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4860:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4871:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4856:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4856:18:32" - }, - { - "hexValue": "455243313936373a206e657720696d706c656d656e746174696f6e206973206e", - "kind": "string", - "nodeType": "YulLiteral", - "src": "4876:34:32", - "type": "", - "value": "ERC1967: new implementation is n" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4849:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4849:62:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4849:62:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4931:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4942:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4927:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4927:18:32" - }, - { - "hexValue": "6f74206120636f6e7472616374", - "kind": "string", - "nodeType": "YulLiteral", - "src": "4947:15:32", - "type": "", - "value": "ot a contract" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4920:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4920:43:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4920:43:32" - }, - { - "nodeType": "YulAssignment", - "src": "4972:27:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4984:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4995:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4980:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4980:19:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "4972:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_972b7028e8de0bff0d553b3264eba2312ec98a552add05e58853b313f9f4ac65__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "4747:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "4761:4:32", - "type": "" - } - ], - "src": "4596:409:32" - } - ] - }, - "contents": "{\n { }\n function abi_encode_tuple_t_stringliteral_f5d2ea39d7e6c7d19dc32ccc2bd7ca26b7aa4a603ef4aa6f2b205c93c3ffe43d__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 66)\n mstore(add(headStart, 64), \"TransparentUpgradeableProxy: adm\")\n mstore(add(headStart, 96), \"in cannot fallback to proxy targ\")\n mstore(add(headStart, 128), \"et\")\n tail := add(headStart, 160)\n }\n function calldata_array_index_range_access_t_bytes_calldata_ptr(offset, length, startIndex, endIndex) -> offsetOut, lengthOut\n {\n if gt(startIndex, endIndex) { revert(0, 0) }\n if gt(endIndex, length) { revert(0, 0) }\n offsetOut := add(offset, startIndex)\n lengthOut := sub(endIndex, startIndex)\n }\n function abi_decode_address_payable(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, sub(shl(160, 1), 1)))) { revert(0, 0) }\n }\n function abi_decode_tuple_t_address_payable(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := abi_decode_address_payable(headStart)\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_address_payablet_bytes_memory_ptr(headStart, dataEnd) -> value0, value1\n {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n value0 := abi_decode_address_payable(headStart)\n let offset := calldataload(add(headStart, 32))\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 := calldataload(_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 calldatacopy(add(memPtr, 32), add(_2, 32), _3)\n mstore(add(add(memPtr, _3), 32), 0)\n value1 := 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, sub(shl(160, 1), 1)))\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_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_address_t_address__to_t_address_t_address__fromStack_reversed(headStart, value1, value0) -> tail\n {\n tail := add(headStart, 64)\n let _1 := sub(shl(160, 1), 1)\n mstore(headStart, and(value0, _1))\n mstore(add(headStart, 32), and(value1, _1))\n }\n function abi_encode_tuple_t_stringliteral_cc2e4e38850b7c0a3e942cfed89b71c77302df25bcb2ec297a0c4ff9ff6b90ad__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 29)\n mstore(add(headStart, 64), \"Address: call to non-contract\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_3820e16891102c1360a787e6e648431097d92537f969d458f5c94b56f8318be5__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 38)\n mstore(add(headStart, 64), \"ERC1967: new admin is the zero a\")\n mstore(add(headStart, 96), \"ddress\")\n tail := add(headStart, 128)\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 let length := mload(value0)\n mstore(add(headStart, 32), length)\n copy_memory_to_memory_with_cleanup(add(value0, 32), add(headStart, 64), length)\n tail := add(add(headStart, and(add(length, 31), not(31))), 64)\n }\n function abi_encode_tuple_t_stringliteral_972b7028e8de0bff0d553b3264eba2312ec98a552add05e58853b313f9f4ac65__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 45)\n mstore(add(headStart, 64), \"ERC1967: new implementation is n\")\n mstore(add(headStart, 96), \"ot a contract\")\n tail := add(headStart, 128)\n }\n}", - "id": 32, - "language": "Yul", - "name": "#utility.yul" - } - ], - "sourceMap": "143:203:23:-:0;;;216:128;;;;;;;;;;;;;;;;;;:::i;:::-;312:6;319;327:5;312:6;327:5;1024:39:8;312:6:23;327:5;1057::8;1024:17;:39::i;:::-;-1:-1:-1;3773:20:13::1;::::0;-1:-1:-1;3786:6:13;3773:12:::1;:20::i;:::-;3663:137:::0;;;216:128:23;;;143:203;;2057:265:9;2165:29;2176:17;2165:10;:29::i;:::-;2222:1;2208:4;:11;:15;:28;;;;2227:9;2208:28;2204:112;;;2252:53;2281:17;2300:4;2252:28;;;;;:53;;:::i;:::-;;2204:112;2057:265;;;:::o;4300:135::-;4364:35;4377:11;:9;:11::i;:::-;4364:35;;;-1:-1:-1;;;;;1884:15:32;;;1866:34;;1936:15;;;1931:2;1916:18;;1909:43;1801:18;4364:35:9;;;;;;;4409:19;4419:8;4409:9;:19::i;:::-;4300:135;:::o;1771:152::-;1837:37;1856:17;1837:18;:37::i;:::-;1889:27;;-1:-1:-1;;;;;1889:27:9;;;;;;;;1771:152;:::o;6674:198:14:-;6757:12;6788:77;6809:6;6817:4;6788:77;;;;;;;;;;;;;;;;;:20;:77::i;:::-;6781:84;6674:198;-1:-1:-1;;;6674:198:14:o;3784:122:9:-;3828:7;3854:39;-1:-1:-1;;;;;;;;;;;3881:11:9;;3854:26;;;;;:39;;:::i;:::-;:45;-1:-1:-1;;;;;3854:45:9;;3784:122;-1:-1:-1;3784:122:9:o;3988:201::-;-1:-1:-1;;;;;4051:22:9;;4043:73;;;;-1:-1:-1;;;4043:73:9;;2165:2:32;4043:73:9;;;2147:21:32;2204:2;2184:18;;;2177:30;2243:34;2223:18;;;2216:62;-1:-1:-1;;;2294:18:32;;;2287:36;2340:19;;4043:73:9;;;;;;;;;4174:8;4126:39;-1:-1:-1;;;;;;;;;;;4153:11:9;;4126:26;;;;;:39;;:::i;:::-;:56;;-1:-1:-1;;;;;;4126:56:9;-1:-1:-1;;;;;4126:56:9;;;;;;;;;;-1:-1:-1;3988:201:9:o;1406:259::-;1487:37;1506:17;1487:18;;;;;:37;;:::i;:::-;1479:95;;;;-1:-1:-1;;;1479:95:9;;2572:2:32;1479:95:9;;;2554:21:32;2611:2;2591:18;;;2584:30;2650:34;2630:18;;;2623:62;-1:-1:-1;;;2701:18:32;;;2694:43;2754:19;;1479:95:9;2370:409:32;1479:95:9;1641:17;1584:48;1030:66;1611:20;;1584:26;;;;;:48;;:::i;7058:325:14:-;7199:12;7224;7238:23;7265:6;-1:-1:-1;;;;;7265:19:14;7285:4;7265:25;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;7223:67:14;;-1:-1:-1;7223:67:14;-1:-1:-1;7307:69:14;7334:6;7223:67;;7363:12;7307:26;:69::i;:::-;7300:76;7058:325;-1:-1:-1;;;;;;7058:325:14:o;1859:190:16:-;2029:4;1859:190::o;1412:320:14:-;-1:-1:-1;;;;;1702:19:14;;:23;;;1412:320::o;7671:628::-;7851:12;7879:7;7875:418;;;7906:10;:17;7927:1;7906:22;7902:286;;8121:18;8132:6;8121:10;:18::i;:::-;8113:60;;;;-1:-1:-1;;;8113:60:14;;3278:2:32;8113:60:14;;;3260:21:32;3317:2;3297:18;;;3290:30;3356:31;3336:18;;;3329:59;3405:18;;8113:60:14;3076:353:32;8113:60:14;-1:-1:-1;8208:10:14;8201:17;;7875:418;8249:33;8257:10;8269:12;8249:7;:33::i;:::-;7671:628;;;;;;:::o;8821:540::-;8980:17;;:21;8976:379;;9208:10;9202:17;9264:15;9251:10;9247:2;9243:19;9236:44;8976:379;9331:12;9324:20;;-1:-1:-1;;;9324:20:14;;;;;;;;:::i;14:177:32:-;93:13;;-1:-1:-1;;;;;135:31:32;;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:32;552:16;;545:27;328:250::o;583:1066::-;680:6;688;696;749:2;737:9;728:7;724:23;720:32;717:52;;;765:1;762;755:12;717:52;788:40;818:9;788:40;:::i;:::-;778:50;;847:49;892:2;881:9;877:18;847:49;:::i;:::-;940:2;925:18;;919:25;837:59;;-1:-1:-1;;;;;;993:14:32;;;990:34;;;1020:1;1017;1010:12;990:34;1058:6;1047:9;1043:22;1033:32;;1103:7;1096:4;1092:2;1088:13;1084:27;1074:55;;1125:1;1122;1115:12;1074:55;1154:2;1148:9;1176:2;1172;1169:10;1166:36;;;1182:18;;:::i;:::-;1257:2;1251:9;1225:2;1311:13;;-1:-1:-1;;1307:22:32;;;1331:2;1303:31;1299:40;1287:53;;;1355:18;;;1375:22;;;1352:46;1349:72;;;1401:18;;:::i;:::-;1441:10;1437:2;1430:22;1476:2;1468:6;1461:18;1516:7;1511:2;1506;1502;1498:11;1494:20;1491:33;1488:53;;;1537:1;1534;1527:12;1488:53;1550:68;1615:2;1610;1602:6;1598:15;1593:2;1589;1585:11;1550:68;:::i;:::-;1637:6;1627:16;;;;;;;583:1066;;;;;:::o;2784:287::-;2913:3;2951:6;2945:13;2967:66;3026:6;3021:3;3014:4;3006:6;3002:17;2967:66;:::i;:::-;3049:16;;;;;2784:287;-1:-1:-1;;2784:287:32:o;3434:396::-;3583:2;3572:9;3565:21;3546:4;3615:6;3609:13;3658:6;3653:2;3642:9;3638:18;3631:34;3674:79;3746:6;3741:2;3730:9;3726:18;3721:2;3713:6;3709:15;3674:79;:::i;:::-;3814:2;3793:15;-1:-1:-1;;3789:29:32;3774:45;;;;3821:2;3770:54;;3434:396;-1:-1:-1;;3434:396:32:o;:::-;143:203:23;;;;;;", - "deployedSourceMap": "143:203:23:-:0;;;;;;2898:11:10;:9;:11::i;:::-;143:203:23;;2675:11:10;4407:1102:13;4482:11;:9;:11::i;:::-;-1:-1:-1;;;;;4468:25:13;:10;:25;4464:1039;;4509:16;-1:-1:-1;;;;;;4539:15:13;4557:7;;-1:-1:-1;;;4582:59:13;;4578:779;;4667:20;:18;:20::i;:::-;4661:26;;4578:779;;;-1:-1:-1;;;;;;;;;4712:66:13;;;4708:649;;4804:27;:25;:27::i;4708:649::-;-1:-1:-1;;;;;;;;;4856:61:13;;;4852:505;;4943:22;:20;:22::i;4852:505::-;-1:-1:-1;;;;;;;;;4990:55:13;;;4986:371;;5071:16;:14;:16::i;4986:371::-;-1:-1:-1;;;;;;;;;5112:64:13;;;5108:249;;5202:25;:23;:25::i;5108:249::-;5266:76;;-1:-1:-1;;;5266:76:13;;216:2:32;5266:76:13;;;198:21:32;255:2;235:18;;;228:30;294:34;274:18;;;267:62;365:34;345:18;;;338:62;-1:-1:-1;;;416:19:32;;;409:33;459:19;;5266:76:13;;;;;;;;5108:249;5426:3;5420:10;5413:4;5408:3;5404:14;5397:34;4464:1039;5475:17;:15;:17::i;:::-;4407:1102::o;6674:198:14:-;6757:12;6788:77;6809:6;6817:4;6788:77;;;;;;;;;;;;;;;;;:20;:77::i;:::-;6781:84;6674:198;-1:-1:-1;;;6674:198:14:o;1859:190:16:-;2029:4;1859:190::o;1412:320:14:-;-1:-1:-1;;;;;1702:19:14;;:23;;;1412:320::o;3784:122:9:-;3828:7;-1:-1:-1;;;;;;;;;;;3854:39:9;:45;-1:-1:-1;;;;;3854:45:9;;3784:122;-1:-1:-1;3784:122:9:o;6985:255:13:-;7032:12;7056:19;:17;:19::i;:::-;7086:25;7125:12;:8;7134:1;7125:8;7086:25;7125:12;:::i;:::-;7114:35;;;;;;;:::i;:::-;7086:63;;7159:54;7177:17;7196:9;;;;;;;;;;;;7207:5;7159:17;:54::i;:::-;-1:-1:-1;;7224:9:13;;;;;;;;;-1:-1:-1;7224:9:13;;;6985:255::o;7524:254::-;7578:12;7603:25;;7662:12;:8;7671:1;7662:8;7603:25;7662:12;:::i;:::-;7651:42;;;;;;;:::i;:::-;7602:91;;;;7703:48;7721:17;7740:4;7746;7703:17;:48::i;:::-;7762:9;;;;;;;;;;;;;;;;7524:254;:::o;6694:216::-;6743:12;6767:19;:17;:19::i;:::-;6797:16;6827:12;:8;6836:1;6827:8;6797:16;6827:12;:::i;:::-;6816:35;;;;;;;:::i;:::-;6797:54;;6861:22;6874:8;6861:12;:22::i;5860:165::-;5903:12;5927:19;:17;:19::i;:::-;5957:13;5973:11;:9;:11::i;:::-;6001:17;;;-1:-1:-1;;;;;2530:32:32;;6001:17:13;;;2512:51:32;5957:27:13;;-1:-1:-1;2485:18:32;6001:17:13;;;;;;;;;;;;5994:24;;;5860:165;:::o;6385:198::-;6437:12;6461:19;:17;:19::i;:::-;6491:22;6516:17;:15;:17::i;2322:110:10:-;2397:28;2407:17;:15;:17::i;:::-;2397:9;:28::i;7058:325:14:-;7199:12;7224;7238:23;7265:6;-1:-1:-1;;;;;7265:19:14;7285:4;7265:25;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7223:67;;;;7307:69;7334:6;7342:7;7351:10;7363:12;7307:26;:69::i;:::-;7300:76;7058:325;-1:-1:-1;;;;;;7058:325:14:o;8261:77:13:-;8316:9;:14;8308:23;;;;;2057:265:9;2165:29;2176:17;2165:10;:29::i;:::-;2222:1;2208:4;:11;:15;:28;;;;2227:9;2208:28;2204:112;;;2252:53;2281:17;2300:4;2252:28;:53::i;:::-;;2204:112;2057:265;;;:::o;4300:135::-;4364:35;4377:11;:9;:11::i;:::-;4364:35;;;-1:-1:-1;;;;;3351:15:32;;;3333:34;;3403:15;;;3398:2;3383:18;;3376:43;3268:18;4364:35:9;;;;;;;4409:19;4419:8;4409:9;:19::i;:::-;4300:135;:::o;1148:140:8:-;1215:12;1246:35;:33;:35::i;:::-;1239:42;;1148:140;:::o;948:895:10:-;1286:14;1283:1;1280;1267:34;1500:1;1497;1481:14;1478:1;1462:14;1455:5;1442:60;1576:16;1573:1;1570;1555:38;1614:6;1681:66;;;;1796:16;1793:1;1786:27;1681:66;1716:16;1713:1;1706:27;7671:628:14;7851:12;7879:7;7875:418;;;7906:10;:17;7927:1;7906:22;7902:286;;8121:18;8132:6;8121:10;:18::i;:::-;8113:60;;;;-1:-1:-1;;;8113:60:14;;3632:2:32;8113:60:14;;;3614:21:32;3671:2;3651:18;;;3644:30;3710:31;3690:18;;;3683:59;3759:18;;8113:60:14;3430:353:32;8113:60:14;-1:-1:-1;8208:10:14;8201:17;;7875:418;8249:33;8257:10;8269:12;8249:7;:33::i;:::-;7671:628;;;;;;:::o;1771:152:9:-;1837:37;1856:17;1837:18;:37::i;:::-;1889:27;;-1:-1:-1;;;;;1889:27:9;;;;;;;;1771:152;:::o;3988:201::-;-1:-1:-1;;;;;4051:22:9;;4043:73;;;;-1:-1:-1;;;4043:73:9;;3990:2:32;4043:73:9;;;3972:21:32;4029:2;4009:18;;;4002:30;4068:34;4048:18;;;4041:62;-1:-1:-1;;;4119:18:32;;;4112:36;4165:19;;4043:73:9;3788:402:32;4043:73:9;4174:8;-1:-1:-1;;;;;;;;;;;4126:39:9;:56;;-1:-1:-1;;;;;;4126:56:9;-1:-1:-1;;;;;4126:56:9;;;;;;;;;;-1:-1:-1;3988:201:9:o;1175:140::-;1228:7;-1:-1:-1;;;;;;;;;;;1254:48:9;1859:190:16;8821:540:14;8980:17;;:21;8976:379;;9208:10;9202:17;9264:15;9251:10;9247:2;9243:19;9236:44;8976:379;9331:12;9324:20;;-1:-1:-1;;;9324:20:14;;;;;;;;:::i;1406:259:9:-;1487:37;1506:17;1487:18;:37::i;:::-;1479:95;;;;-1:-1:-1;;;1479:95:9;;4798:2:32;1479:95:9;;;4780:21:32;4837:2;4817:18;;;4810:30;4876:34;4856:18;;;4849:62;-1:-1:-1;;;4927:18:32;;;4920:43;4980:19;;1479:95:9;4596:409:32;1479:95:9;1641:17;-1:-1:-1;;;;;;;;;;;1584:48:9;1859:190:16;489:331:32;594:9;605;647:8;635:10;632:24;629:44;;;669:1;666;659:12;629:44;698:6;688:8;685:20;682:40;;;718:1;715;708:12;682:40;-1:-1:-1;;744:23:32;;;789:25;;;;;-1:-1:-1;489:331:32:o;825:181::-;901:20;;-1:-1:-1;;;;;950:31:32;;940:42;;930:70;;996:1;993;986:12;930:70;825:181;;;:::o;1011:202::-;1078:6;1131:2;1119:9;1110:7;1106:23;1102:32;1099:52;;;1147:1;1144;1137:12;1099:52;1170:37;1197:9;1170:37;:::i;1218:127::-;1279:10;1274:3;1270:20;1267:1;1260:31;1310:4;1307:1;1300:15;1334:4;1331:1;1324:15;1350:1011;1435:6;1443;1496:2;1484:9;1475:7;1471:23;1467:32;1464:52;;;1512:1;1509;1502:12;1464:52;1535:37;1562:9;1535:37;:::i;:::-;1525:47;-1:-1:-1;1623:2:32;1608:18;;1595:32;-1:-1:-1;;;;;1676:14:32;;;1673:34;;;1703:1;1700;1693:12;1673:34;1741:6;1730:9;1726:22;1716:32;;1786:7;1779:4;1775:2;1771:13;1767:27;1757:55;;1808:1;1805;1798:12;1757:55;1844:2;1831:16;1866:2;1862;1859:10;1856:36;;;1872:18;;:::i;:::-;1947:2;1941:9;1915:2;2001:13;;-1:-1:-1;;1997:22:32;;;2021:2;1993:31;1989:40;1977:53;;;2045:18;;;2065:22;;;2042:46;2039:72;;;2091:18;;:::i;:::-;2131:10;2127:2;2120:22;2166:2;2158:6;2151:18;2206:7;2201:2;2196;2192;2188:11;2184:20;2181:33;2178:53;;;2227:1;2224;2217:12;2178:53;2283:2;2278;2274;2270:11;2265:2;2257:6;2253:15;2240:46;2328:1;2323:2;2318;2310:6;2306:15;2302:24;2295:35;2349:6;2339:16;;;;;;;1350:1011;;;;;:::o;2574:250::-;2659:1;2669:113;2683:6;2680:1;2677:13;2669:113;;;2759:11;;;2753:18;2740:11;;;2733:39;2705:2;2698:10;2669:113;;;-1:-1:-1;;2816:1:32;2798:16;;2791:27;2574:250::o;2829:287::-;2958:3;2996:6;2990:13;3012:66;3071:6;3066:3;3059:4;3051:6;3047:17;3012:66;:::i;:::-;3094:16;;;;;2829:287;-1:-1:-1;;2829:287:32:o;4195:396::-;4344:2;4333:9;4326:21;4307:4;4376:6;4370:13;4419:6;4414:2;4403:9;4399:18;4392:34;4435:79;4507:6;4502:2;4491:9;4487:18;4482:2;4474:6;4470:15;4435:79;:::i;:::-;4575:2;4554:15;-1:-1:-1;;4550:29:32;4535:45;;;;4582:2;4531:54;;4195:396;-1:-1:-1;;4195:396:32:o", - "source": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.18;\n\nimport \"@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol\";\n\ncontract LiquidityBridgeContractProxy is TransparentUpgradeableProxy {\n constructor(address _logic, address _admin, bytes memory _data)\n TransparentUpgradeableProxy(_logic,_admin, _data) payable {}\n}", - "sourcePath": "/Users/luischavez/iov/liquidity-bridge-contract/contracts/LiquidityBridgeContractProxy.sol", - "ast": { - "absolutePath": "project:/contracts/LiquidityBridgeContractProxy.sol", - "exportedSymbols": { - "Address": [ - 2103 - ], - "ERC1967Proxy": [ - 948 - ], - "ERC1967Upgrade": [ - 1252 - ], - "IBeacon": [ - 1314 - ], - "IERC1822Proxiable": [ - 911 - ], - "IERC1967": [ - 901 - ], - "ITransparentUpgradeableProxy": [ - 1484 - ], - "LiquidityBridgeContractProxy": [ - 7925 - ], - "Proxy": [ - 1304 - ], - "StorageSlot": [ - 2243 - ], - "TransparentUpgradeableProxy": [ - 1773 - ] - }, - "id": 7926, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 7906, - "literals": [ - "solidity", - "^", - "0.8", - ".18" - ], - "nodeType": "PragmaDirective", - "src": "32:24:23" - }, - { - "absolutePath": "@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", - "file": "@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", - "id": 7907, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 7926, - "sourceUnit": 1774, - "src": "58:83:23", - "symbolAliases": [], - "unitAlias": "" - }, - { - "abstract": false, - "baseContracts": [ - { - "baseName": { - "id": 7908, - "name": "TransparentUpgradeableProxy", - "nameLocations": [ - "184:27:23" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 1773, - "src": "184:27:23" - }, - "id": 7909, - "nodeType": "InheritanceSpecifier", - "src": "184:27:23" - } - ], - "canonicalName": "LiquidityBridgeContractProxy", - "contractDependencies": [], - "contractKind": "contract", - "fullyImplemented": true, - "id": 7925, - "linearizedBaseContracts": [ - 7925, - 1773, - 948, - 1252, - 901, - 1304 - ], - "name": "LiquidityBridgeContractProxy", - "nameLocation": "152:28:23", - "nodeType": "ContractDefinition", - "nodes": [ - { - "body": { - "id": 7923, - "nodeType": "Block", - "src": "342:2:23", - "statements": [] - }, - "id": 7924, - "implemented": true, - "kind": "constructor", - "modifiers": [ - { - "arguments": [ - { - "id": 7918, - "name": "_logic", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7911, - "src": "312:6:23", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 7919, - "name": "_admin", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7913, - "src": "319:6:23", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 7920, - "name": "_data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7915, - "src": "327:5:23", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "id": 7921, - "kind": "baseConstructorSpecifier", - "modifierName": { - "id": 7917, - "name": "TransparentUpgradeableProxy", - "nameLocations": [ - "284:27:23" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 1773, - "src": "284:27:23" - }, - "nodeType": "ModifierInvocation", - "src": "284:49:23" - } - ], - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 7916, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 7911, - "mutability": "mutable", - "name": "_logic", - "nameLocation": "236:6:23", - "nodeType": "VariableDeclaration", - "scope": 7924, - "src": "228:14:23", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 7910, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "228:7:23", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 7913, - "mutability": "mutable", - "name": "_admin", - "nameLocation": "252:6:23", - "nodeType": "VariableDeclaration", - "scope": 7924, - "src": "244:14:23", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 7912, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "244:7:23", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 7915, - "mutability": "mutable", - "name": "_data", - "nameLocation": "273:5:23", - "nodeType": "VariableDeclaration", - "scope": 7924, - "src": "260:18:23", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 7914, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "260:5:23", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "227:52:23" - }, - "returnParameters": { - "id": 7922, - "nodeType": "ParameterList", - "parameters": [], - "src": "342:0:23" - }, - "scope": 7925, - "src": "216:128:23", - "stateMutability": "payable", - "virtual": false, - "visibility": "public" - } - ], - "scope": 7926, - "src": "143:203:23", - "usedErrors": [] - } - ], - "src": "32:314:23" - }, - "compiler": { - "name": "solc", - "version": "0.8.18+commit.87f61d96.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "3.4.13", - "updatedAt": "2024-12-10T18:52:58.899Z", - "devdoc": { - "events": { - "AdminChanged(address,address)": { - "details": "Emitted when the admin account has changed." - }, - "BeaconUpgraded(address)": { - "details": "Emitted when the beacon is changed." - }, - "Upgraded(address)": { - "details": "Emitted when the implementation is upgraded." - } - }, - "kind": "dev", - "methods": {}, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } -} \ No newline at end of file diff --git a/build/contracts/LiquidityBridgeContractV2.json b/build/contracts/LiquidityBridgeContractV2.json deleted file mode 100644 index c163642..0000000 --- a/build/contracts/LiquidityBridgeContractV2.json +++ /dev/null @@ -1,86298 +0,0 @@ -{ - "contractName": "LiquidityBridgeContractV2", - "abi": [ - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "dest", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "BalanceDecrease", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "dest", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "BalanceIncrease", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "bytes32", - "name": "quoteHash", - "type": "bytes32" - }, - { - "indexed": false, - "internalType": "int256", - "name": "errorCode", - "type": "int256" - } - ], - "name": "BridgeCapExceeded", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "from", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "dest", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "gasLimit", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "value", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "bytes", - "name": "data", - "type": "bytes" - }, - { - "indexed": false, - "internalType": "bool", - "name": "success", - "type": "bool" - }, - { - "indexed": false, - "internalType": "bytes32", - "name": "quoteHash", - "type": "bytes32" - } - ], - "name": "CallForUser", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "from", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "CollateralIncrease", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "bytes32", - "name": "quoteHash", - "type": "bytes32" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "DaoFeeSent", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint8", - "name": "version", - "type": "uint8" - } - ], - "name": "Initialized", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "previousOwner", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "newOwner", - "type": "address" - } - ], - "name": "OwnershipTransferred", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "bytes32", - "name": "quoteHash", - "type": "bytes32" - }, - { - "indexed": false, - "internalType": "int256", - "name": "transferredAmount", - "type": "int256" - } - ], - "name": "PegInRegistered", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "bytes32", - "name": "quoteHash", - "type": "bytes32" - }, - { - "indexed": true, - "internalType": "address", - "name": "sender", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "timestamp", - "type": "uint256" - } - ], - "name": "PegOutDeposit", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "bytes32", - "name": "quoteHash", - "type": "bytes32" - } - ], - "name": "PegOutRefunded", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "bytes32", - "name": "quoteHash", - "type": "bytes32" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "value", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "address", - "name": "userAddress", - "type": "address" - } - ], - "name": "PegOutUserRefunded", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "from", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "PegoutCollateralIncrease", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "liquidityProvider", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "penalty", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "bytes32", - "name": "quoteHash", - "type": "bytes32" - } - ], - "name": "Penalized", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "providerAddress", - "type": "address" - }, - { - "indexed": false, - "internalType": "string", - "name": "name", - "type": "string" - }, - { - "indexed": false, - "internalType": "string", - "name": "url", - "type": "string" - } - ], - "name": "ProviderUpdate", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "dest", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "bool", - "name": "success", - "type": "bool" - }, - { - "indexed": false, - "internalType": "bytes32", - "name": "quoteHash", - "type": "bytes32" - } - ], - "name": "Refund", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint256", - "name": "id", - "type": "uint256" - }, - { - "indexed": true, - "internalType": "address", - "name": "from", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "Register", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "from", - "type": "address" - } - ], - "name": "Resigned", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "from", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "WithdrawCollateral", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "from", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "Withdrawal", - "type": "event" - }, - { - "inputs": [], - "name": "BRIDGE_GENERIC_ERROR", - "outputs": [ - { - "internalType": "int16", - "name": "", - "type": "int16" - } - ], - "stateMutability": "view", - "type": "function", - "constant": true - }, - { - "inputs": [], - "name": "BRIDGE_REFUNDED_LP_ERROR_CODE", - "outputs": [ - { - "internalType": "int16", - "name": "", - "type": "int16" - } - ], - "stateMutability": "view", - "type": "function", - "constant": true - }, - { - "inputs": [], - "name": "BRIDGE_REFUNDED_USER_ERROR_CODE", - "outputs": [ - { - "internalType": "int16", - "name": "", - "type": "int16" - } - ], - "stateMutability": "view", - "type": "function", - "constant": true - }, - { - "inputs": [], - "name": "BRIDGE_UNPROCESSABLE_TX_ALREADY_PROCESSED_ERROR_CODE", - "outputs": [ - { - "internalType": "int16", - "name": "", - "type": "int16" - } - ], - "stateMutability": "view", - "type": "function", - "constant": true - }, - { - "inputs": [], - "name": "BRIDGE_UNPROCESSABLE_TX_INVALID_SENDER_ERROR_CODE", - "outputs": [ - { - "internalType": "int16", - "name": "", - "type": "int16" - } - ], - "stateMutability": "view", - "type": "function", - "constant": true - }, - { - "inputs": [], - "name": "BRIDGE_UNPROCESSABLE_TX_NOT_CONTRACT_ERROR_CODE", - "outputs": [ - { - "internalType": "int16", - "name": "", - "type": "int16" - } - ], - "stateMutability": "view", - "type": "function", - "constant": true - }, - { - "inputs": [], - "name": "BRIDGE_UNPROCESSABLE_TX_UTXO_AMOUNT_SENT_BELOW_MINIMUM_ERROR", - "outputs": [ - { - "internalType": "int16", - "name": "", - "type": "int16" - } - ], - "stateMutability": "view", - "type": "function", - "constant": true - }, - { - "inputs": [], - "name": "BRIDGE_UNPROCESSABLE_TX_VALIDATIONS_ERROR", - "outputs": [ - { - "internalType": "int16", - "name": "", - "type": "int16" - } - ], - "stateMutability": "view", - "type": "function", - "constant": true - }, - { - "inputs": [], - "name": "BRIDGE_UNPROCESSABLE_TX_VALUE_ZERO_ERROR", - "outputs": [ - { - "internalType": "int16", - "name": "", - "type": "int16" - } - ], - "stateMutability": "view", - "type": "function", - "constant": true - }, - { - "inputs": [], - "name": "CALL_DONE_CODE", - "outputs": [ - { - "internalType": "uint8", - "name": "", - "type": "uint8" - } - ], - "stateMutability": "view", - "type": "function", - "constant": true - }, - { - "inputs": [], - "name": "MAX_CALL_GAS_COST", - "outputs": [ - { - "internalType": "uint16", - "name": "", - "type": "uint16" - } - ], - "stateMutability": "view", - "type": "function", - "constant": true - }, - { - "inputs": [], - "name": "MAX_REFUND_GAS_LIMIT", - "outputs": [ - { - "internalType": "uint16", - "name": "", - "type": "uint16" - } - ], - "stateMutability": "view", - "type": "function", - "constant": true - }, - { - "inputs": [], - "name": "PAY_TO_ADDRESS_OUTPUT", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function", - "constant": true - }, - { - "inputs": [], - "name": "PROCESSED_QUOTE_CODE", - "outputs": [ - { - "internalType": "uint8", - "name": "", - "type": "uint8" - } - ], - "stateMutability": "view", - "type": "function", - "constant": true - }, - { - "inputs": [], - "name": "QUOTE_HASH_OUTPUT", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function", - "constant": true - }, - { - "inputs": [], - "name": "SAT_TO_WEI_CONVERSION", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function", - "constant": true - }, - { - "inputs": [], - "name": "UNPROCESSED_QUOTE_CODE", - "outputs": [ - { - "internalType": "uint8", - "name": "", - "type": "uint8" - } - ], - "stateMutability": "view", - "type": "function", - "constant": true - }, - { - "inputs": [], - "name": "bridge", - "outputs": [ - { - "internalType": "contract Bridge", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function", - "constant": true - }, - { - "inputs": [], - "name": "daoFeeCollectorAddress", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function", - "constant": true - }, - { - "inputs": [], - "name": "owner", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function", - "constant": true - }, - { - "inputs": [], - "name": "productFeePercentage", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function", - "constant": true - }, - { - "inputs": [], - "name": "providerId", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function", - "constant": true - }, - { - "inputs": [], - "name": "renounceOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "newOwner", - "type": "address" - } - ], - "name": "transferOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "stateMutability": "payable", - "type": "receive", - "payable": true - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "_providerId", - "type": "uint256" - }, - { - "internalType": "bool", - "name": "status", - "type": "bool" - } - ], - "name": "setProviderStatus", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "version", - "outputs": [ - { - "internalType": "string", - "name": "", - "type": "string" - } - ], - "stateMutability": "pure", - "type": "function", - "constant": true - }, - { - "inputs": [], - "name": "getProviderIds", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function", - "constant": true - }, - { - "inputs": [], - "name": "getBridgeAddress", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function", - "constant": true - }, - { - "inputs": [], - "name": "getMinCollateral", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function", - "constant": true - }, - { - "inputs": [], - "name": "getMinPegIn", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function", - "constant": true - }, - { - "inputs": [], - "name": "getRewardPercentage", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function", - "constant": true - }, - { - "inputs": [], - "name": "getResignDelayBlocks", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function", - "constant": true - }, - { - "inputs": [], - "name": "getDustThreshold", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function", - "constant": true - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "quoteHash", - "type": "bytes32" - } - ], - "name": "isPegOutQuoteCompleted", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function", - "constant": true - }, - { - "inputs": [ - { - "internalType": "address", - "name": "addr", - "type": "address" - } - ], - "name": "isOperational", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function", - "constant": true - }, - { - "inputs": [ - { - "internalType": "address", - "name": "addr", - "type": "address" - } - ], - "name": "isOperationalForPegout", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function", - "constant": true - }, - { - "inputs": [ - { - "internalType": "string", - "name": "_name", - "type": "string" - }, - { - "internalType": "string", - "name": "_apiBaseUrl", - "type": "string" - }, - { - "internalType": "bool", - "name": "_status", - "type": "bool" - }, - { - "internalType": "string", - "name": "_providerType", - "type": "string" - } - ], - "name": "register", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "payable", - "type": "function", - "payable": true - }, - { - "inputs": [], - "name": "getProviders", - "outputs": [ - { - "components": [ - { - "internalType": "uint256", - "name": "id", - "type": "uint256" - }, - { - "internalType": "address", - "name": "provider", - "type": "address" - }, - { - "internalType": "string", - "name": "name", - "type": "string" - }, - { - "internalType": "string", - "name": "apiBaseUrl", - "type": "string" - }, - { - "internalType": "bool", - "name": "status", - "type": "bool" - }, - { - "internalType": "string", - "name": "providerType", - "type": "string" - } - ], - "internalType": "struct LiquidityBridgeContractV2.LiquidityProvider[]", - "name": "", - "type": "tuple[]" - } - ], - "stateMutability": "view", - "type": "function", - "constant": true - }, - { - "inputs": [ - { - "internalType": "address", - "name": "providerAddress", - "type": "address" - } - ], - "name": "getProvider", - "outputs": [ - { - "components": [ - { - "internalType": "uint256", - "name": "id", - "type": "uint256" - }, - { - "internalType": "address", - "name": "provider", - "type": "address" - }, - { - "internalType": "string", - "name": "name", - "type": "string" - }, - { - "internalType": "string", - "name": "apiBaseUrl", - "type": "string" - }, - { - "internalType": "bool", - "name": "status", - "type": "bool" - }, - { - "internalType": "string", - "name": "providerType", - "type": "string" - } - ], - "internalType": "struct LiquidityBridgeContractV2.LiquidityProvider", - "name": "", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function", - "constant": true - }, - { - "inputs": [], - "name": "addCollateral", - "outputs": [], - "stateMutability": "payable", - "type": "function", - "payable": true - }, - { - "inputs": [], - "name": "addPegoutCollateral", - "outputs": [], - "stateMutability": "payable", - "type": "function", - "payable": true - }, - { - "inputs": [], - "name": "deposit", - "outputs": [], - "stateMutability": "payable", - "type": "function", - "payable": true - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "withdraw", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "withdrawCollateral", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "resign", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "addr", - "type": "address" - } - ], - "name": "getCollateral", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function", - "constant": true - }, - { - "inputs": [ - { - "internalType": "address", - "name": "addr", - "type": "address" - } - ], - "name": "getPegoutCollateral", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function", - "constant": true - }, - { - "inputs": [ - { - "internalType": "address", - "name": "addr", - "type": "address" - } - ], - "name": "getBalance", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function", - "constant": true - }, - { - "inputs": [ - { - "components": [ - { - "internalType": "bytes20", - "name": "fedBtcAddress", - "type": "bytes20" - }, - { - "internalType": "address", - "name": "lbcAddress", - "type": "address" - }, - { - "internalType": "address", - "name": "liquidityProviderRskAddress", - "type": "address" - }, - { - "internalType": "bytes", - "name": "btcRefundAddress", - "type": "bytes" - }, - { - "internalType": "address payable", - "name": "rskRefundAddress", - "type": "address" - }, - { - "internalType": "bytes", - "name": "liquidityProviderBtcAddress", - "type": "bytes" - }, - { - "internalType": "uint256", - "name": "callFee", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "penaltyFee", - "type": "uint256" - }, - { - "internalType": "address", - "name": "contractAddress", - "type": "address" - }, - { - "internalType": "bytes", - "name": "data", - "type": "bytes" - }, - { - "internalType": "uint32", - "name": "gasLimit", - "type": "uint32" - }, - { - "internalType": "int64", - "name": "nonce", - "type": "int64" - }, - { - "internalType": "uint256", - "name": "value", - "type": "uint256" - }, - { - "internalType": "uint32", - "name": "agreementTimestamp", - "type": "uint32" - }, - { - "internalType": "uint32", - "name": "timeForDeposit", - "type": "uint32" - }, - { - "internalType": "uint32", - "name": "callTime", - "type": "uint32" - }, - { - "internalType": "uint16", - "name": "depositConfirmations", - "type": "uint16" - }, - { - "internalType": "bool", - "name": "callOnRegister", - "type": "bool" - }, - { - "internalType": "uint256", - "name": "productFeeAmount", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "gasFee", - "type": "uint256" - } - ], - "internalType": "struct QuotesV2.PeginQuote", - "name": "quote", - "type": "tuple" - } - ], - "name": "callForUser", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "payable", - "type": "function", - "payable": true - }, - { - "inputs": [ - { - "components": [ - { - "internalType": "bytes20", - "name": "fedBtcAddress", - "type": "bytes20" - }, - { - "internalType": "address", - "name": "lbcAddress", - "type": "address" - }, - { - "internalType": "address", - "name": "liquidityProviderRskAddress", - "type": "address" - }, - { - "internalType": "bytes", - "name": "btcRefundAddress", - "type": "bytes" - }, - { - "internalType": "address payable", - "name": "rskRefundAddress", - "type": "address" - }, - { - "internalType": "bytes", - "name": "liquidityProviderBtcAddress", - "type": "bytes" - }, - { - "internalType": "uint256", - "name": "callFee", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "penaltyFee", - "type": "uint256" - }, - { - "internalType": "address", - "name": "contractAddress", - "type": "address" - }, - { - "internalType": "bytes", - "name": "data", - "type": "bytes" - }, - { - "internalType": "uint32", - "name": "gasLimit", - "type": "uint32" - }, - { - "internalType": "int64", - "name": "nonce", - "type": "int64" - }, - { - "internalType": "uint256", - "name": "value", - "type": "uint256" - }, - { - "internalType": "uint32", - "name": "agreementTimestamp", - "type": "uint32" - }, - { - "internalType": "uint32", - "name": "timeForDeposit", - "type": "uint32" - }, - { - "internalType": "uint32", - "name": "callTime", - "type": "uint32" - }, - { - "internalType": "uint16", - "name": "depositConfirmations", - "type": "uint16" - }, - { - "internalType": "bool", - "name": "callOnRegister", - "type": "bool" - }, - { - "internalType": "uint256", - "name": "productFeeAmount", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "gasFee", - "type": "uint256" - } - ], - "internalType": "struct QuotesV2.PeginQuote", - "name": "quote", - "type": "tuple" - }, - { - "internalType": "bytes", - "name": "signature", - "type": "bytes" - }, - { - "internalType": "bytes", - "name": "btcRawTransaction", - "type": "bytes" - }, - { - "internalType": "bytes", - "name": "partialMerkleTree", - "type": "bytes" - }, - { - "internalType": "uint256", - "name": "height", - "type": "uint256" - } - ], - "name": "registerPegIn", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "components": [ - { - "internalType": "address", - "name": "lbcAddress", - "type": "address" - }, - { - "internalType": "address", - "name": "lpRskAddress", - "type": "address" - }, - { - "internalType": "bytes", - "name": "btcRefundAddress", - "type": "bytes" - }, - { - "internalType": "address", - "name": "rskRefundAddress", - "type": "address" - }, - { - "internalType": "bytes", - "name": "lpBtcAddress", - "type": "bytes" - }, - { - "internalType": "uint256", - "name": "callFee", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "penaltyFee", - "type": "uint256" - }, - { - "internalType": "int64", - "name": "nonce", - "type": "int64" - }, - { - "internalType": "bytes", - "name": "deposityAddress", - "type": "bytes" - }, - { - "internalType": "uint256", - "name": "value", - "type": "uint256" - }, - { - "internalType": "uint32", - "name": "agreementTimestamp", - "type": "uint32" - }, - { - "internalType": "uint32", - "name": "depositDateLimit", - "type": "uint32" - }, - { - "internalType": "uint16", - "name": "depositConfirmations", - "type": "uint16" - }, - { - "internalType": "uint16", - "name": "transferConfirmations", - "type": "uint16" - }, - { - "internalType": "uint32", - "name": "transferTime", - "type": "uint32" - }, - { - "internalType": "uint32", - "name": "expireDate", - "type": "uint32" - }, - { - "internalType": "uint32", - "name": "expireBlock", - "type": "uint32" - }, - { - "internalType": "uint256", - "name": "productFeeAmount", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "gasFee", - "type": "uint256" - } - ], - "internalType": "struct QuotesV2.PegOutQuote", - "name": "quote", - "type": "tuple" - }, - { - "internalType": "bytes", - "name": "signature", - "type": "bytes" - } - ], - "name": "depositPegout", - "outputs": [], - "stateMutability": "payable", - "type": "function", - "payable": true - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "quoteHash", - "type": "bytes32" - } - ], - "name": "refundUserPegOut", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "quoteHash", - "type": "bytes32" - }, - { - "internalType": "bytes", - "name": "btcTx", - "type": "bytes" - }, - { - "internalType": "bytes32", - "name": "btcBlockHeaderHash", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "partialMerkleTree", - "type": "uint256" - }, - { - "internalType": "bytes32[]", - "name": "merkleBranchHashes", - "type": "bytes32[]" - } - ], - "name": "refundPegOut", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "components": [ - { - "internalType": "bytes20", - "name": "fedBtcAddress", - "type": "bytes20" - }, - { - "internalType": "address", - "name": "lbcAddress", - "type": "address" - }, - { - "internalType": "address", - "name": "liquidityProviderRskAddress", - "type": "address" - }, - { - "internalType": "bytes", - "name": "btcRefundAddress", - "type": "bytes" - }, - { - "internalType": "address payable", - "name": "rskRefundAddress", - "type": "address" - }, - { - "internalType": "bytes", - "name": "liquidityProviderBtcAddress", - "type": "bytes" - }, - { - "internalType": "uint256", - "name": "callFee", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "penaltyFee", - "type": "uint256" - }, - { - "internalType": "address", - "name": "contractAddress", - "type": "address" - }, - { - "internalType": "bytes", - "name": "data", - "type": "bytes" - }, - { - "internalType": "uint32", - "name": "gasLimit", - "type": "uint32" - }, - { - "internalType": "int64", - "name": "nonce", - "type": "int64" - }, - { - "internalType": "uint256", - "name": "value", - "type": "uint256" - }, - { - "internalType": "uint32", - "name": "agreementTimestamp", - "type": "uint32" - }, - { - "internalType": "uint32", - "name": "timeForDeposit", - "type": "uint32" - }, - { - "internalType": "uint32", - "name": "callTime", - "type": "uint32" - }, - { - "internalType": "uint16", - "name": "depositConfirmations", - "type": "uint16" - }, - { - "internalType": "bool", - "name": "callOnRegister", - "type": "bool" - }, - { - "internalType": "uint256", - "name": "productFeeAmount", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "gasFee", - "type": "uint256" - } - ], - "internalType": "struct QuotesV2.PeginQuote", - "name": "quote", - "type": "tuple" - }, - { - "internalType": "bytes", - "name": "depositAddress", - "type": "bytes" - } - ], - "name": "validatePeginDepositAddress", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function", - "constant": true - }, - { - "inputs": [ - { - "components": [ - { - "internalType": "bytes20", - "name": "fedBtcAddress", - "type": "bytes20" - }, - { - "internalType": "address", - "name": "lbcAddress", - "type": "address" - }, - { - "internalType": "address", - "name": "liquidityProviderRskAddress", - "type": "address" - }, - { - "internalType": "bytes", - "name": "btcRefundAddress", - "type": "bytes" - }, - { - "internalType": "address payable", - "name": "rskRefundAddress", - "type": "address" - }, - { - "internalType": "bytes", - "name": "liquidityProviderBtcAddress", - "type": "bytes" - }, - { - "internalType": "uint256", - "name": "callFee", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "penaltyFee", - "type": "uint256" - }, - { - "internalType": "address", - "name": "contractAddress", - "type": "address" - }, - { - "internalType": "bytes", - "name": "data", - "type": "bytes" - }, - { - "internalType": "uint32", - "name": "gasLimit", - "type": "uint32" - }, - { - "internalType": "int64", - "name": "nonce", - "type": "int64" - }, - { - "internalType": "uint256", - "name": "value", - "type": "uint256" - }, - { - "internalType": "uint32", - "name": "agreementTimestamp", - "type": "uint32" - }, - { - "internalType": "uint32", - "name": "timeForDeposit", - "type": "uint32" - }, - { - "internalType": "uint32", - "name": "callTime", - "type": "uint32" - }, - { - "internalType": "uint16", - "name": "depositConfirmations", - "type": "uint16" - }, - { - "internalType": "bool", - "name": "callOnRegister", - "type": "bool" - }, - { - "internalType": "uint256", - "name": "productFeeAmount", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "gasFee", - "type": "uint256" - } - ], - "internalType": "struct QuotesV2.PeginQuote", - "name": "quote", - "type": "tuple" - } - ], - "name": "hashQuote", - "outputs": [ - { - "internalType": "bytes32", - "name": "", - "type": "bytes32" - } - ], - "stateMutability": "view", - "type": "function", - "constant": true - }, - { - "inputs": [ - { - "components": [ - { - "internalType": "address", - "name": "lbcAddress", - "type": "address" - }, - { - "internalType": "address", - "name": "lpRskAddress", - "type": "address" - }, - { - "internalType": "bytes", - "name": "btcRefundAddress", - "type": "bytes" - }, - { - "internalType": "address", - "name": "rskRefundAddress", - "type": "address" - }, - { - "internalType": "bytes", - "name": "lpBtcAddress", - "type": "bytes" - }, - { - "internalType": "uint256", - "name": "callFee", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "penaltyFee", - "type": "uint256" - }, - { - "internalType": "int64", - "name": "nonce", - "type": "int64" - }, - { - "internalType": "bytes", - "name": "deposityAddress", - "type": "bytes" - }, - { - "internalType": "uint256", - "name": "value", - "type": "uint256" - }, - { - "internalType": "uint32", - "name": "agreementTimestamp", - "type": "uint32" - }, - { - "internalType": "uint32", - "name": "depositDateLimit", - "type": "uint32" - }, - { - "internalType": "uint16", - "name": "depositConfirmations", - "type": "uint16" - }, - { - "internalType": "uint16", - "name": "transferConfirmations", - "type": "uint16" - }, - { - "internalType": "uint32", - "name": "transferTime", - "type": "uint32" - }, - { - "internalType": "uint32", - "name": "expireDate", - "type": "uint32" - }, - { - "internalType": "uint32", - "name": "expireBlock", - "type": "uint32" - }, - { - "internalType": "uint256", - "name": "productFeeAmount", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "gasFee", - "type": "uint256" - } - ], - "internalType": "struct QuotesV2.PegOutQuote", - "name": "quote", - "type": "tuple" - } - ], - "name": "hashPegoutQuote", - "outputs": [ - { - "internalType": "bytes32", - "name": "", - "type": "bytes32" - } - ], - "stateMutability": "view", - "type": "function", - "constant": true - }, - { - "inputs": [ - { - "internalType": "string", - "name": "_name", - "type": "string" - }, - { - "internalType": "string", - "name": "_url", - "type": "string" - } - ], - "name": "updateProvider", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - } - ], - "metadata": "{\"compiler\":{\"version\":\"0.8.18+commit.87f61d96\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"dest\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"BalanceDecrease\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"dest\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"BalanceIncrease\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"errorCode\",\"type\":\"int256\"}],\"name\":\"BridgeCapExceeded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"dest\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"gasLimit\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"}],\"name\":\"CallForUser\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"CollateralIncrease\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"DaoFeeSent\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"transferredAmount\",\"type\":\"int256\"}],\"name\":\"PegInRegistered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"timestamp\",\"type\":\"uint256\"}],\"name\":\"PegOutDeposit\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"}],\"name\":\"PegOutRefunded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"userAddress\",\"type\":\"address\"}],\"name\":\"PegOutUserRefunded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"PegoutCollateralIncrease\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"liquidityProvider\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"penalty\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"}],\"name\":\"Penalized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"providerAddress\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"url\",\"type\":\"string\"}],\"name\":\"ProviderUpdate\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"dest\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"}],\"name\":\"Refund\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"Register\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"}],\"name\":\"Resigned\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"WithdrawCollateral\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"Withdrawal\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"BRIDGE_GENERIC_ERROR\",\"outputs\":[{\"internalType\":\"int16\",\"name\":\"\",\"type\":\"int16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"BRIDGE_REFUNDED_LP_ERROR_CODE\",\"outputs\":[{\"internalType\":\"int16\",\"name\":\"\",\"type\":\"int16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"BRIDGE_REFUNDED_USER_ERROR_CODE\",\"outputs\":[{\"internalType\":\"int16\",\"name\":\"\",\"type\":\"int16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"BRIDGE_UNPROCESSABLE_TX_ALREADY_PROCESSED_ERROR_CODE\",\"outputs\":[{\"internalType\":\"int16\",\"name\":\"\",\"type\":\"int16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"BRIDGE_UNPROCESSABLE_TX_INVALID_SENDER_ERROR_CODE\",\"outputs\":[{\"internalType\":\"int16\",\"name\":\"\",\"type\":\"int16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"BRIDGE_UNPROCESSABLE_TX_NOT_CONTRACT_ERROR_CODE\",\"outputs\":[{\"internalType\":\"int16\",\"name\":\"\",\"type\":\"int16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"BRIDGE_UNPROCESSABLE_TX_UTXO_AMOUNT_SENT_BELOW_MINIMUM_ERROR\",\"outputs\":[{\"internalType\":\"int16\",\"name\":\"\",\"type\":\"int16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"BRIDGE_UNPROCESSABLE_TX_VALIDATIONS_ERROR\",\"outputs\":[{\"internalType\":\"int16\",\"name\":\"\",\"type\":\"int16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"BRIDGE_UNPROCESSABLE_TX_VALUE_ZERO_ERROR\",\"outputs\":[{\"internalType\":\"int16\",\"name\":\"\",\"type\":\"int16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"CALL_DONE_CODE\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MAX_CALL_GAS_COST\",\"outputs\":[{\"internalType\":\"uint16\",\"name\":\"\",\"type\":\"uint16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MAX_REFUND_GAS_LIMIT\",\"outputs\":[{\"internalType\":\"uint16\",\"name\":\"\",\"type\":\"uint16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"PAY_TO_ADDRESS_OUTPUT\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"PROCESSED_QUOTE_CODE\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"QUOTE_HASH_OUTPUT\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"SAT_TO_WEI_CONVERSION\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"UNPROCESSED_QUOTE_CODE\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"addCollateral\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"addPegoutCollateral\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"bridge\",\"outputs\":[{\"internalType\":\"contract Bridge\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bytes20\",\"name\":\"fedBtcAddress\",\"type\":\"bytes20\"},{\"internalType\":\"address\",\"name\":\"lbcAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"liquidityProviderRskAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"btcRefundAddress\",\"type\":\"bytes\"},{\"internalType\":\"address payable\",\"name\":\"rskRefundAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"liquidityProviderBtcAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"callFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"penaltyFee\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"gasLimit\",\"type\":\"uint32\"},{\"internalType\":\"int64\",\"name\":\"nonce\",\"type\":\"int64\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"agreementTimestamp\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"timeForDeposit\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"callTime\",\"type\":\"uint32\"},{\"internalType\":\"uint16\",\"name\":\"depositConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"bool\",\"name\":\"callOnRegister\",\"type\":\"bool\"},{\"internalType\":\"uint256\",\"name\":\"productFeeAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"gasFee\",\"type\":\"uint256\"}],\"internalType\":\"struct QuotesV2.PeginQuote\",\"name\":\"quote\",\"type\":\"tuple\"}],\"name\":\"callForUser\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"daoFeeCollectorAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"deposit\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"lbcAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"lpRskAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"btcRefundAddress\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"rskRefundAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"lpBtcAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"callFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"penaltyFee\",\"type\":\"uint256\"},{\"internalType\":\"int64\",\"name\":\"nonce\",\"type\":\"int64\"},{\"internalType\":\"bytes\",\"name\":\"deposityAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"agreementTimestamp\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"depositDateLimit\",\"type\":\"uint32\"},{\"internalType\":\"uint16\",\"name\":\"depositConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"uint16\",\"name\":\"transferConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"uint32\",\"name\":\"transferTime\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"expireDate\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"expireBlock\",\"type\":\"uint32\"},{\"internalType\":\"uint256\",\"name\":\"productFeeAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"gasFee\",\"type\":\"uint256\"}],\"internalType\":\"struct QuotesV2.PegOutQuote\",\"name\":\"quote\",\"type\":\"tuple\"},{\"internalType\":\"bytes\",\"name\":\"signature\",\"type\":\"bytes\"}],\"name\":\"depositPegout\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"}],\"name\":\"getBalance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getBridgeAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"}],\"name\":\"getCollateral\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getDustThreshold\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getMinCollateral\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getMinPegIn\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"}],\"name\":\"getPegoutCollateral\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"providerAddress\",\"type\":\"address\"}],\"name\":\"getProvider\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"provider\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"apiBaseUrl\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"status\",\"type\":\"bool\"},{\"internalType\":\"string\",\"name\":\"providerType\",\"type\":\"string\"}],\"internalType\":\"struct LiquidityBridgeContractV2.LiquidityProvider\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getProviderIds\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getProviders\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"provider\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"apiBaseUrl\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"status\",\"type\":\"bool\"},{\"internalType\":\"string\",\"name\":\"providerType\",\"type\":\"string\"}],\"internalType\":\"struct LiquidityBridgeContractV2.LiquidityProvider[]\",\"name\":\"\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getResignDelayBlocks\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRewardPercentage\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"lbcAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"lpRskAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"btcRefundAddress\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"rskRefundAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"lpBtcAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"callFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"penaltyFee\",\"type\":\"uint256\"},{\"internalType\":\"int64\",\"name\":\"nonce\",\"type\":\"int64\"},{\"internalType\":\"bytes\",\"name\":\"deposityAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"agreementTimestamp\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"depositDateLimit\",\"type\":\"uint32\"},{\"internalType\":\"uint16\",\"name\":\"depositConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"uint16\",\"name\":\"transferConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"uint32\",\"name\":\"transferTime\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"expireDate\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"expireBlock\",\"type\":\"uint32\"},{\"internalType\":\"uint256\",\"name\":\"productFeeAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"gasFee\",\"type\":\"uint256\"}],\"internalType\":\"struct QuotesV2.PegOutQuote\",\"name\":\"quote\",\"type\":\"tuple\"}],\"name\":\"hashPegoutQuote\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bytes20\",\"name\":\"fedBtcAddress\",\"type\":\"bytes20\"},{\"internalType\":\"address\",\"name\":\"lbcAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"liquidityProviderRskAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"btcRefundAddress\",\"type\":\"bytes\"},{\"internalType\":\"address payable\",\"name\":\"rskRefundAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"liquidityProviderBtcAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"callFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"penaltyFee\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"gasLimit\",\"type\":\"uint32\"},{\"internalType\":\"int64\",\"name\":\"nonce\",\"type\":\"int64\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"agreementTimestamp\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"timeForDeposit\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"callTime\",\"type\":\"uint32\"},{\"internalType\":\"uint16\",\"name\":\"depositConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"bool\",\"name\":\"callOnRegister\",\"type\":\"bool\"},{\"internalType\":\"uint256\",\"name\":\"productFeeAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"gasFee\",\"type\":\"uint256\"}],\"internalType\":\"struct QuotesV2.PeginQuote\",\"name\":\"quote\",\"type\":\"tuple\"}],\"name\":\"hashQuote\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"}],\"name\":\"isOperational\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"}],\"name\":\"isOperationalForPegout\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"}],\"name\":\"isPegOutQuoteCompleted\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"productFeePercentage\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"providerId\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"btcTx\",\"type\":\"bytes\"},{\"internalType\":\"bytes32\",\"name\":\"btcBlockHeaderHash\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"partialMerkleTree\",\"type\":\"uint256\"},{\"internalType\":\"bytes32[]\",\"name\":\"merkleBranchHashes\",\"type\":\"bytes32[]\"}],\"name\":\"refundPegOut\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"}],\"name\":\"refundUserPegOut\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"_name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"_apiBaseUrl\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"_status\",\"type\":\"bool\"},{\"internalType\":\"string\",\"name\":\"_providerType\",\"type\":\"string\"}],\"name\":\"register\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bytes20\",\"name\":\"fedBtcAddress\",\"type\":\"bytes20\"},{\"internalType\":\"address\",\"name\":\"lbcAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"liquidityProviderRskAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"btcRefundAddress\",\"type\":\"bytes\"},{\"internalType\":\"address payable\",\"name\":\"rskRefundAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"liquidityProviderBtcAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"callFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"penaltyFee\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"gasLimit\",\"type\":\"uint32\"},{\"internalType\":\"int64\",\"name\":\"nonce\",\"type\":\"int64\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"agreementTimestamp\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"timeForDeposit\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"callTime\",\"type\":\"uint32\"},{\"internalType\":\"uint16\",\"name\":\"depositConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"bool\",\"name\":\"callOnRegister\",\"type\":\"bool\"},{\"internalType\":\"uint256\",\"name\":\"productFeeAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"gasFee\",\"type\":\"uint256\"}],\"internalType\":\"struct QuotesV2.PeginQuote\",\"name\":\"quote\",\"type\":\"tuple\"},{\"internalType\":\"bytes\",\"name\":\"signature\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"btcRawTransaction\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"partialMerkleTree\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"height\",\"type\":\"uint256\"}],\"name\":\"registerPegIn\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"resign\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_providerId\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"status\",\"type\":\"bool\"}],\"name\":\"setProviderStatus\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"_name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"_url\",\"type\":\"string\"}],\"name\":\"updateProvider\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bytes20\",\"name\":\"fedBtcAddress\",\"type\":\"bytes20\"},{\"internalType\":\"address\",\"name\":\"lbcAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"liquidityProviderRskAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"btcRefundAddress\",\"type\":\"bytes\"},{\"internalType\":\"address payable\",\"name\":\"rskRefundAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"liquidityProviderBtcAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"callFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"penaltyFee\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"gasLimit\",\"type\":\"uint32\"},{\"internalType\":\"int64\",\"name\":\"nonce\",\"type\":\"int64\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"agreementTimestamp\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"timeForDeposit\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"callTime\",\"type\":\"uint32\"},{\"internalType\":\"uint16\",\"name\":\"depositConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"bool\",\"name\":\"callOnRegister\",\"type\":\"bool\"},{\"internalType\":\"uint256\",\"name\":\"productFeeAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"gasFee\",\"type\":\"uint256\"}],\"internalType\":\"struct QuotesV2.PeginQuote\",\"name\":\"quote\",\"type\":\"tuple\"},{\"internalType\":\"bytes\",\"name\":\"depositAddress\",\"type\":\"bytes\"}],\"name\":\"validatePeginDepositAddress\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"version\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"withdraw\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"withdrawCollateral\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}],\"devdoc\":{\"events\":{\"Initialized(uint8)\":{\"details\":\"Triggered when the contract has been initialized or reinitialized.\"}},\"kind\":\"dev\",\"methods\":{\"addCollateral()\":{\"details\":\"Increases the amount of collateral of the sender\"},\"callForUser((bytes20,address,address,bytes,address,bytes,uint256,uint256,address,bytes,uint32,int64,uint256,uint32,uint32,uint32,uint16,bool,uint256,uint256))\":{\"details\":\"Performs a call on behalf of a user\",\"params\":{\"quote\":\"The quote that identifies the service\"},\"returns\":{\"_0\":\"Boolean indicating whether the call was successful\"}},\"deposit()\":{\"details\":\"Increases the balance of the sender\"},\"getBalance(address)\":{\"details\":\"Returns the amount of funds of a liquidity provider\",\"params\":{\"addr\":\"The address of the liquidity provider\"},\"returns\":{\"_0\":\"The balance of the liquidity provider\"}},\"getCollateral(address)\":{\"details\":\"Returns the amount of collateral of a liquidity provider\",\"params\":{\"addr\":\"The address of the liquidity provider\"},\"returns\":{\"_0\":\"The amount of locked collateral\"}},\"hashQuote((bytes20,address,address,bytes,address,bytes,uint256,uint256,address,bytes,uint32,int64,uint256,uint32,uint32,uint32,uint16,bool,uint256,uint256))\":{\"details\":\"Calculates hash of a quote. Note: besides calculation this function also validates the quote.\",\"params\":{\"quote\":\"The quote of the service\"},\"returns\":{\"_0\":\"The hash of a quote\"}},\"isOperational(address)\":{\"details\":\"Checks whether a liquidity provider can deliver a pegin service\",\"returns\":{\"_0\":\"Whether the liquidity provider is registered and has enough locked collateral\"}},\"isOperationalForPegout(address)\":{\"details\":\"Checks whether a liquidity provider can deliver a pegout service\",\"returns\":{\"_0\":\"Whether the liquidity provider is registered and has enough locked collateral\"}},\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"register(string,string,bool,string)\":{\"details\":\"Registers msg.sender as a liquidity provider with msg.value as collateral\"},\"registerPegIn((bytes20,address,address,bytes,address,bytes,uint256,uint256,address,bytes,uint32,int64,uint256,uint32,uint32,uint32,uint16,bool,uint256,uint256),bytes,bytes,bytes,uint256)\":{\"details\":\"Registers a peg-in transaction with the bridge and pays to the involved parties\",\"params\":{\"btcRawTransaction\":\"The peg-in transaction\",\"height\":\"The block that contains the peg-in transaction\",\"partialMerkleTree\":\"The merkle tree path that proves transaction inclusion\",\"quote\":\"The quote of the service\",\"signature\":\"The signature of the quote\"},\"returns\":{\"_0\":\"The total peg-in amount received from the bridge contract or an error code\"}},\"renounceOwnership()\":{\"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.\"},\"resign()\":{\"details\":\"Used to resign as a liquidity provider\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"},\"withdraw(uint256)\":{\"details\":\"Used to withdraw funds\",\"params\":{\"amount\":\"The amount to withdraw\"}},\"withdrawCollateral()\":{\"details\":\"Used to withdraw the locked collateral\"}},\"title\":\"Contract that assists with the Flyover protocol\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"project:/contracts/LiquidityBridgeContractV2.sol\":\"LiquidityBridgeContractV2\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":1},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol\":{\"keccak256\":\"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c\",\"dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16\"]},\"@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.sol\":{\"keccak256\":\"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f\",\"dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC\"]},\"@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]},\"@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95\",\"dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx\"]},\"@rsksmart/btc-transaction-solidity-helper/contracts/BtcUtils.sol\":{\"keccak256\":\"0x7237a22e0d518b3499d81ca4918c038a168882e57a35af17d57afd61234c8512\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8df4acd5a0609e279ddad58d0532a77fdc959688144e5bb7ccfc782db9236251\",\"dweb:/ipfs/QmbjJFBRm6JFPx9Jh34hX8N5rkgBxJ5kbdZsoJ3Tb4UyCa\"]},\"@rsksmart/btc-transaction-solidity-helper/contracts/OpCodes.sol\":{\"keccak256\":\"0x5996186b53b109f592341cfe164c6673346eafda66a2a496e6d5fcec5c74de5a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8d3073328ce73163fe8088b14bf39ba03f5f233604a0eb329bb64f2be73ff411\",\"dweb:/ipfs/QmScVLft2AL48D1Z93e3TDQbfZNh7sxJaeS23U4KPGsjTY\"]},\"project:/contracts/Bridge.sol\":{\"keccak256\":\"0x1eb986f1f28ace76b72425a2617eaeb89a54c765dc7b16689cb1105a7e6c0f2f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://255860b4bfb0bed73723349493307106fb54fcaf5839a7b0c012fc1a03d0b8ce\",\"dweb:/ipfs/QmUoWjWVkXpUWjaiWQXQVNKEJmCnPtKXXTgFq7kkcTuGMs\"]},\"project:/contracts/LiquidityBridgeContractV2.sol\":{\"keccak256\":\"0x7a5727daf480d4cd3e24fa883a50bbc3282765f708e387f05b7460365ffccabb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4f288dbd77a9b22a5c8747b74381f92474f96f954d68b408017184bbeff832a6\",\"dweb:/ipfs/QmTgfmCoen9LzHFyHgFL7QR9hjPsRDiTEbTzCMAgd9W892\"]},\"project:/contracts/QuotesV2.sol\":{\"keccak256\":\"0xda3afec2b2b9aae5c1747ffcd7646fd0680965743702961b08236e0cce699d35\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0e751b7128c53b32303e573fb14796eb0e8912d50114c8824ad307ac632725ee\",\"dweb:/ipfs/QmTyF3Dmw1d7crXtSALUsaQcHtp5cCzUo1xEtyG3uBtXAY\"]},\"project:/contracts/SignatureValidator.sol\":{\"keccak256\":\"0x9d72920dd5ff2891c8dd3b3a814c1b108e82fcc6dfd849c96842e88c01d25b2c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8df1167e9def35ced4a620e3fa1e6d148bc7c1fb995378bf12dabef250b3be65\",\"dweb:/ipfs/QmZJJchWvzUeMb68VPHFGnMXBx7aMhK5GqJy8ECDx2rf58\"]}},\"version\":1}", - "bytecode": "0x608060405234801561001057600080fd5b50615f2280620000216000396000f3fe60806040526004361061028a5760003560e01c80630220f41d146102de57806304ade855146102fe5780630a7bf57a1461032a5780630a9cb4a71461033f578063221400091461035e5780632d67952c1461037e5780632e1a7d4d1461039e57806333f07ad3146103be57806341705518146103d3578063418663a2146103e65780634198687e14610410578063457385f2146104185780634d0ec9711461044857806354015ee01461046857806354fd4d501461049b57806355f21eb7146104cf57806359c153be146104fc57806363c671351461051157806369652fcf14610527578063710738b11461053c578063715018a61461056957806372cbf4e81461057e57806379b9550b1461059e5780637aefa8c2146105be5780638490a8df146105d15780638beb537a146105e75780638d597939146105fa5780638da5cb5b146106115780638f91797d146106265780639b56d6c9146106465780639cd6557f1461067c5780639d79b59b146106915780639e816999146106ba578063a4a5ba50146106c2578063a93bb247146106d7578063ae76ce86146106ee578063ae93b67b14610705578063b3a849aa1461071c578063b5ecfc061461073c578063bd519eff14610755578063bd5798c31461078b578063be6de4eb146107ad578063c525cdd8146107c2578063c7213163146107d9578063cfb92f0a146107f4578063d0e30db01461080b578063d6c70de814610813578063e1de16c614610833578063e30e6ea314610849578063e78cea921461085f578063e830b6901461087f578063e8fcce7114610894578063edc922a9146108aa578063f2fde38b146108cc578063f8b2cb4f146108ec578063fa88dcde14610922578063fb32c5081461093757600080fd5b366102d9576097546001600160a01b031633146102d75760405162461bcd60e51b81526020600482015260066024820152654c424330303760d01b60448201526064015b60405180910390fd5b005b600080fd5b3480156102ea57600080fd5b506102d76102f9366004614925565b610955565b34801561030a57600080fd5b50610313600181565b60405160ff90911681526020015b60405180910390f35b34801561033657600080fd5b50610313600281565b34801561034b57600080fd5b5060a2545b604051908152602001610321565b34801561036a57600080fd5b50610350610379366004614b70565b610a67565b34801561038a57600080fd5b50610350610399366004614d78565b610a78565b3480156103aa57600080fd5b506102d76103b9366004614e2c565b61128a565b3480156103ca57600080fd5b5060a154610350565b6103506103e1366004614e45565b611382565b3480156103f257600080fd5b506103fd6101301981565b60405160019190910b8152602001610321565b6102d76118b4565b34801561042457600080fd5b50610438610433366004614ee1565b611939565b6040519015158152602001610321565b34801561045457600080fd5b50610438610463366004614ee1565b61196f565b34801561047457600080fd5b50610438610483366004614e2c565b600090815260a7602052604090206001015460ff1690565b3480156104a757600080fd5b5060408051808201825260058152640312e332e360dc1b602082015290516103219190614f4e565b3480156104db57600080fd5b506104ef6104ea366004614ee1565b6119a5565b6040516103219190614fde565b34801561050857600080fd5b506102d7611bfa565b34801561051d57600080fd5b5061035060a85481565b34801561053357600080fd5b506102d7611da5565b34801561054857600080fd5b5060a95461055c906001600160a01b031681565b6040516103219190614ff1565b34801561057557600080fd5b506102d7611e50565b34801561058a57600080fd5b506102d7610599366004615005565b611e62565b3480156105aa57600080fd5b506104386105b9366004615035565b611efc565b6104386105cc36600461506b565b612068565b3480156105dd57600080fd5b5061035060a25481565b6102d76105f536600461509f565b61237a565b34801561060657600080fd5b506103fd61012c1981565b34801561061d57600080fd5b5061055c612833565b34801561063257600080fd5b506102d7610641366004614e2c565b612842565b34801561065257600080fd5b50610350610661366004614ee1565b6001600160a01b031660009081526099602052604090205490565b34801561068857600080fd5b50610313600081565b34801561069d57600080fd5b506106a76188b881565b60405161ffff9091168152602001610321565b6102d7612b6f565b3480156106ce57600080fd5b50610350600181565b3480156106e357600080fd5b506103fd61012d1981565b3480156106fa57600080fd5b506103fd61012b1981565b34801561071157600080fd5b506103fd6103831981565b34801561072857600080fd5b5061035061073736600461506b565b612bea565b34801561074857600080fd5b506103506402540be40081565b34801561076157600080fd5b50610350610770366004614ee1565b6001600160a01b03166000908152609a602052604090205490565b34801561079757600080fd5b5060a054600160201b900463ffffffff16610350565b3480156107b957600080fd5b50610350600081565b3480156107ce57600080fd5b506103fd61012e1981565b3480156107e557600080fd5b5060a05463ffffffff16610350565b34801561080057600080fd5b506103fd61012f1981565b6102d7612bf5565b34801561081f57600080fd5b506102d761082e3660046150f8565b612c24565b34801561083f57600080fd5b506106a76108fc81565b34801561085557600080fd5b506103fd60c71981565b34801561086b57600080fd5b5060975461055c906001600160a01b031681565b34801561088b57600080fd5b50609e54610350565b3480156108a057600080fd5b506103fd60631981565b3480156108b657600080fd5b506108bf613782565b60405161032191906151ce565b3480156108d857600080fd5b506102d76108e7366004614ee1565b613a8c565b3480156108f857600080fd5b50610350610907366004614ee1565b6001600160a01b031660009081526098602052604090205490565b34801561092e57600080fd5b50609f54610350565b34801561094357600080fd5b506097546001600160a01b031661055c565b60008251118015610967575060008151115b61099c5760405162461bcd60e51b8152602060048201526006602482015265262121981b9b60d11b60448201526064016102ce565b600060015b60a2548111610a4e576000818152609b6020526040902060018101549092506001600160a01b03163303610a3c57600282016109dd85826152b9565b50600382016109ec84826152b9565b50336001600160a01b03167fc15f90eb34a098bb02f2641dff62935246fb005d8f06e13d5cc6be0bddcce8e38360020184600301604051610a2e9291906153f5565b60405180910390a250505050565b80610a4681615430565b9150506109a1565b5060405162461bcd60e51b81526004016102ce90615449565b6000610a7282613b02565b92915050565b6000610a82613bd1565b6000610a8d87613c2a565b600081815260a56020526040902054909150600160ff9091161115610ac45760405162461bcd60e51b81526004016102ce90615469565b60408088015190516301a86b5560e41b815273__SignatureValidator____________________91631a86b55091610b03919085908b90600401615489565b602060405180830381865af4158015610b20573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b4491906154b0565b610b605760405162461bcd60e51b81526004016102ce906154cd565b637fffffff8310610b9c5760405162461bcd60e51b815260206004820152600660248201526504c42433033360d41b60448201526064016102ce565b6000610bab8887878786613e5d565b905061012f8101610be75760405162461bcd60e51b81526020600482015260066024820152654c424330333160d01b60448201526064016102ce565b61012e8101610c215760405162461bcd60e51b815260206004820152600660248201526526212198199960d11b60448201526064016102ce565b6101308101610c5b5760405162461bcd60e51b81526020600482015260066024820152654c424330333360d01b60448201526064016102ce565b6101318101610c955760405162461bcd60e51b8152602060048201526006602482015265131090cc0ccd60d21b60448201526064016102ce565b6103848101610ccf5760405162461bcd60e51b81526020600482015260066024820152654c424330333560d01b60448201526064016102ce565b6000811380610cdf575060c71981145b80610ceb575060631981145b610d205760405162461bcd60e51b815260206004820152600660248201526526212198199b60d11b60448201526064016102ce565b6000828152609c6020526040902054610d43908990839063ffffffff1687613f2f565b15610e145760e08801516040808a01516001600160a01b031660009081526099602052908120549091610d7591614290565b905080609960008b604001516001600160a01b03166001600160a01b031681526020019081526020016000206000828254610db091906154ed565b90915550506040808a01519051600080516020615ead83398151915291610dda9184908790615500565b60405180910390a160a054600090606490610dfb9063ffffffff1684615521565b610e05919061554e565b9050610e1133826142a8565b50505b60c719811480610e25575060631981145b15610e9957600082815260a560209081526040808320805460ff19166002179055609c825291829020805464ffffffffff1916905581518481529081018390527ffb209329d5ab5b7bcb2e92f45f4534814b6e68fa5ad1f171dabc1d17d26f0ebe910160405180910390a191506112779050565b60405163fa6ea3e760e01b8152819073__QuotesV2______________________________9063fa6ea3e790610ed4908c9085906004016156ce565b60006040518083038186803b158015610eec57600080fd5b505af4158015610f00573d6000803e3d6000fd5b5050506000848152609c602052604090205463ffffffff1615905061106b576000838152609c6020526040812054600160201b900460ff1615610f7257610f6b828b61026001518c60c001518d6101800151610f5c91906156f0565b610f6691906156f0565b614290565b9050610f8e565b610f8b828b61026001518c60c00151610f6691906156f0565b90505b610f9c8a60400151826142a8565b6000610fa882846154ed565b9050610fb98b610240015186614307565b60a1548111156110645760808b01516040516000916001600160a01b0316906108fc90849084818181858888f193505050503d8060008114611017576040519150601f19603f3d011682016040523d82523d6000602084013e61101c565b606091505b50509050600080516020615e8d8339815191528c608001518383896040516110479493929190615703565b60405180910390a180611062576110628c60400151836142a8565b505b5050611210565b6102208901518190801561108457508961018001518110155b156111765760008a61010001516001600160a01b03168b610140015163ffffffff168c61018001518d61012001516040516110bf919061572b565b600060405180830381858888f193505050503d80600081146110fd576040519150601f19603f3d011682016040523d82523d6000602084013e611102565b606091505b505090508a61010001516001600160a01b0316336001600160a01b0316600080516020615ecd8339815191528d61014001518e61018001518f6101200151868b604051611153959493929190615747565b60405180910390a38015611174576101808b015161117190836154ed565b91505b505b60a15481111561120e5760808a01516040516000916001600160a01b0316906108fc90849084818181858888f193505050503d80600081146111d4576040519150601f19603f3d011682016040523d82523d6000602084013e6111d9565b606091505b50509050600080516020615e8d8339815191528b608001518383886040516112049493929190615703565b60405180910390a1505b505b600083815260a560209081526040808320805460ff19166002179055609c825291829020805464ffffffffff19169055905183815284917f0629ae9d1dc61501b0ca90670a9a9b88daaf7504b54537b53e1219de794c63d2910160405180910390a2509150505b6112816001606555565b95945050505050565b336000908152609860205260409020548111156112b95760405162461bcd60e51b81526004016102ce90615780565b33600090815260986020526040812080548392906112d89084906154ed565b9091555050604051600090339083908381818185875af1925050503d806000811461131f576040519150601f19603f3d011682016040523d82523d6000602084013e611324565b606091505b50509050806113455760405162461bcd60e51b81526004016102ce906157a0565b7f7fcf532c15f0a6db0bd6d0e038bea71d30d808c7d98cb3bf7268a95bf5081b6533836040516113769291906157c0565b60405180910390a15050565b60003233146113bc5760405162461bcd60e51b81526020600482015260066024820152654c424330303360d01b60448201526064016102ce565b60008551116113f65760405162461bcd60e51b815260206004820152600660248201526504c42433031360d41b60448201526064016102ce565b60008451116114305760405162461bcd60e51b81526020600482015260066024820152654c424330313760d01b60448201526064016102ce565b60405160200161143f906157d9565b6040516020818303038152906040528051906020012082604051602001611466919061572b565b6040516020818303038152906040528051906020012014806114d15750604051602001611492906157ea565b60405160208183030381529060405280519060200120826040516020016114b9919061572b565b60405160208183030381529060405280519060200120145b806115295750604051630c4dee8d60e31b60208201526024016040516020818303038152906040528051906020012082604051602001611511919061572b565b60405160208183030381529060405280519060200120145b61155e5760405162461bcd60e51b815260206004820152600660248201526509884866062760d31b60448201526064016102ce565b336000908152609960205260409020541580156115885750336000908152609a6020526040902054155b6115bd5760405162461bcd60e51b815260206004820152600660248201526504c42433037360d41b60448201526064016102ce565b336000908152609d6020526040902054156116035760405162461bcd60e51b81526020600482015260066024820152654c424330303960d01b60448201526064016102ce565b604051602001611612906157d9565b6040516020818303038152906040528051906020012082604051602001611639919061572b565b604051602081830303815290604052805190602001200361168d57609e543410156116765760405162461bcd60e51b81526004016102ce906157fc565b336000908152609960205260409020349055611792565b60405160200161169c906157ea565b60405160208183030381529060405280519060200120826040516020016116c3919061572b565b604051602081830303815290604052805190602001200361171757609e543410156117005760405162461bcd60e51b81526004016102ce906157fc565b336000908152609a60205260409020349055611792565b609e54611725906002615521565b3410156117445760405162461bcd60e51b81526004016102ce906157fc565b600061175160023461554e565b905061175e60023461581c565b156117735761176e8160016156f0565b611775565b805b33600090815260996020908152604080832093909355609a905220555b60a280549060006117a283615430565b90915550506040805160c08101825260a2548082523360208084019182528385018a8152606085018a9052881515608086015260a085018890526000938452609b909152939091208251815590516001820180546001600160a01b0319166001600160a01b039092169190911790559151909190600282019061182590826152b9565b506060820151600382019061183a90826152b9565b50608082015160048201805460ff191691151591909117905560a0820151600582019061186790826152b9565b505060a254604080519182523460208301523392507fa9d44d6e13bb3fee938c3f66d1103e91f8dc6b12d4405a55eea558e8f275aa6e910160405180910390a25060a2545b949350505050565b6118bd336143d9565b6118d95760405162461bcd60e51b81526004016102ce90615449565b336000908152609a6020526040812080543492906118f89084906156f0565b90915550506040517f873d5a2949567203ad4f0cceef41c2813c87b9a397ee777d87a8acdaec2c6fa99061192f90339034906157c0565b60405180910390a1565b600061194482614418565b8015610a725750609e546001600160a01b038316600090815260996020526040902054101592915050565b600061197a826143d9565b8015610a725750609e546001600160a01b0383166000908152609a6020526040902054101592915050565b6119ad614765565b60015b60a2548111610a4e576000818152609b60205260409020600101546001600160a01b03808516911603611be8576000818152609b6020908152604091829020825160c0810184528154815260018201546001600160a01b0316928101929092526002810180549293919291840191611a2790615230565b80601f0160208091040260200160405190810160405280929190818152602001828054611a5390615230565b8015611aa05780601f10611a7557610100808354040283529160200191611aa0565b820191906000526020600020905b815481529060010190602001808311611a8357829003601f168201915b50505050508152602001600382018054611ab990615230565b80601f0160208091040260200160405190810160405280929190818152602001828054611ae590615230565b8015611b325780601f10611b0757610100808354040283529160200191611b32565b820191906000526020600020905b815481529060010190602001808311611b1557829003601f168201915b5050509183525050600482015460ff1615156020820152600582018054604090920191611b5e90615230565b80601f0160208091040260200160405190810160405280929190818152602001828054611b8a90615230565b8015611bd75780601f10611bac57610100808354040283529160200191611bd7565b820191906000526020600020905b815481529060010190602001808311611bba57829003601f168201915b505050505081525050915050919050565b80611bf281615430565b9150506119b0565b611c02613bd1565b336000908152609d6020526040902054611c475760405162461bcd60e51b81526020600482015260066024820152654c424330323160d01b60448201526064016102ce565b60a054336000908152609d6020526040902054600160201b90910463ffffffff1690611c7390436154ed565b1015611caa5760405162461bcd60e51b815260206004820152600660248201526526212198191960d11b60448201526064016102ce565b336000908152609a60209081526040808320546099909252822054611ccf91906156f0565b336000818152609a6020908152604080832083905560998252808320839055609d909152808220829055519293509183908381818185875af1925050503d8060008114611d38576040519150601f19603f3d011682016040523d82523d6000602084013e611d3d565b606091505b5050905080611d5e5760405162461bcd60e51b81526004016102ce906157a0565b7fa8e76b822fc682be77f3b1c822ea81f6bda5aed92ba82e6873bfd889f328d1d23383604051611d8f9291906157c0565b60405180910390a15050611da36001606555565b565b611dae33614418565b611dca5760405162461bcd60e51b81526004016102ce90615449565b336000908152609d602052604090205415611e105760405162461bcd60e51b81526020600482015260066024820152654c424330323360d01b60448201526064016102ce565b336000818152609d602052604090819020439055517fa6674aa33cd1b7435474751667707bf05fde99e537d67043ec5f907782577d869161192f91614ff1565b611e58614457565b611da360006144b6565b81611e6b612833565b6001600160a01b0316336001600160a01b03161480611ea357506000818152609b60205260409020600101546001600160a01b031633145b611ed85760405162461bcd60e51b81526020600482015260066024820152654c424330303560d01b60448201526064016102ce565b506000918252609b6020526040909120600401805460ff1916911515919091179055565b600080611f0884612bea565b8460600151856020015160601b8660a00151604051602001611f2d9493929190615830565b604051602081830303815290604052805190602001209050600081609760009054906101000a90046001600160a01b03166001600160a01b0316631d73d5dd6040518163ffffffff1660e01b8152600401600060405180830381865afa158015611f9b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611fc391908101906158c2565b604051602001611fd49291906158f6565b60408051601f198184030181529082905260a454639b02794b60e01b835290925073__BtcUtils______________________________91639b02794b91612027918891869160ff90911690600401615930565b602060405180830381865af4158015612044573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061128191906154b0565b600061207333614418565b61208f5760405162461bcd60e51b81526004016102ce90615449565b612097613bd1565b81604001516001600160a01b0316336001600160a01b0316146120e55760405162461bcd60e51b8152602060048201526006602482015265131090cc0c8d60d21b60448201526064016102ce565b6101808201516040808401516001600160a01b03166000908152609860205220546121119034906156f0565b101561212f5760405162461bcd60e51b81526004016102ce90615780565b600061213a83613c2a565b600081815260a5602052604090205490915060ff16156121855760405162461bcd60e51b81526020600482015260066024820152654c424330323560d01b60448201526064016102ce565b6121938360400151346142a8565b6101408301516121a6906188b890615968565b63ffffffff165a10156121e45760405162461bcd60e51b815260206004820152600660248201526526212198191b60d11b60448201526064016102ce565b60008361010001516001600160a01b031684610140015163ffffffff1685610180015186610120015160405161221a919061572b565b600060405180830381858888f193505050503d8060008114612258576040519150601f19603f3d011682016040523d82523d6000602084013e61225d565b606091505b509091505063ffffffff42111561229f5760405162461bcd60e51b81526020600482015260066024820152654c424330323760d01b60448201526064016102ce565b6000828152609c60205260409020805463ffffffff19164263ffffffff1617905580156122fa576000828152609c602052604090819020805460ff60201b1916600160201b1790558401516101808501516122fa9190614508565b8361010001516001600160a01b0316336001600160a01b0316600080516020615ecd8339815191528661014001518761018001518861012001518688604051612347959493929190615747565b60405180910390a3600091825260a56020526040909120805460ff1916600117905590506123756001606555565b919050565b61238782602001516143d9565b6123bc5760405162461bcd60e51b81526020600482015260066024820152654c424330333760d01b60448201526064016102ce565b348261024001518361022001518460a001518561012001516123de91906156f0565b6123e891906156f0565b6123f291906156f0565b11156124295760405162461bcd60e51b81526020600482015260066024820152654c424330363360d01b60448201526064016102ce565b81610160015163ffffffff1642111561246d5760405162461bcd60e51b81526020600482015260066024820152654c424330363560d01b60448201526064016102ce565b816101e0015163ffffffff164211156124b15760405162461bcd60e51b8152602060048201526006602482015265262121981a1b60d11b60448201526064016102ce565b81610200015163ffffffff164311156124f55760405162461bcd60e51b81526020600482015260066024820152654c424330343760d01b60448201526064016102ce565b600061250083610a67565b60208401516040516301a86b5560e41b815291925073__SignatureValidator____________________91631a86b550916125419185908790600401615489565b602060405180830381865af415801561255e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061258291906154b0565b61259e5760405162461bcd60e51b81526004016102ce906154cd565b600081815260a66020908152604080832060a79092529091206001015460ff16156125db5760405162461bcd60e51b81526004016102ce9061598c565b80546001600160a01b0316156126035760405162461bcd60e51b81526004016102ce90615469565b600082815260a66020908152604091829020865181546001600160a01b03199081166001600160a01b039283161783559288015160018301805490941691161790915590850151859190600282019061265c90826152b9565b5060608201516003820180546001600160a01b0319166001600160a01b039092169190911790556080820151600482019061269790826152b9565b5060a0820151600582015560c0820151600682015560e08201516007820180546001600160401b0319166001600160401b0390921691909117905561010082015160088201906126e790826152b9565b506101208201516009820155610140820151600a820180546101608501516101808601516101a08701516101c08801516101e08901516102008a015163ffffffff9889166001600160401b031990971696909617600160201b958916959095029490941763ffffffff60401b1916600160401b61ffff9485160261ffff60501b191617600160501b939092169290920217600160601b600160a01b031916600160601b9186169190910263ffffffff60801b191617600160801b918516919091021763ffffffff60a01b1916600160a01b9390911692909202919091179055610220820151600b82015561024090910151600c90910155600082815260a760209081526040918290204290819055825134815291820152339184917fb1bc7bfc0dab19777eb03aa0a5643378fc9f186c8fc5a36620d21136fbea570f910160405180910390a350505050565b6033546001600160a01b031690565b61284a613bd1565b600081815260a66020526040902080546001600160a01b031661287f5760405162461bcd60e51b81526004016102ce906159ac565b600a810154600160801b900463ffffffff16421180156128af5750600a810154600160a01b900463ffffffff1643115b6128e45760405162461bcd60e51b81526020600482015260066024820152654c424330343160d01b60448201526064016102ce565b600081600c015482600b01548360050154846009015461290491906156f0565b61290e91906156f0565b61291891906156f0565b6003830154600684015460018501546001600160a01b039081166000908152609a60205260408120549495509216926129519190614290565b60018501546001600160a01b03166000908152609a60205260408120805492935083929091906129829084906154ed565b90915550506001840154604051600080516020615ead833981519152916129b8916001600160a01b039091169084908990615500565b60405180910390a16003840154604080518581526001600160a01b03909216602083015286917f9ccbeffc442024e2a6ade18ff0978af9a4c4d6562ae38adb51ccf8256cf42b41910160405180910390a2600085815260a66020526040812080546001600160a01b03199081168255600182018054909116905590612a4060028301826147a6565b6003820180546001600160a01b0319169055612a606004830160006147a6565b600060058301819055600683018190556007830180546001600160401b0319169055612a909060088401906147a6565b50600060098201819055600a820180546001600160c01b0319169055600b8201819055600c90910181905585815260a760205260408082206001908101805460ff19169091179055516001600160a01b0384169085908381818185875af1925050503d8060008114612b1e576040519150601f19603f3d011682016040523d82523d6000602084013e612b23565b606091505b5050905080612b5d5760405162461bcd60e51b8152602060048201526006602482015265131090cc0d0d60d21b60448201526064016102ce565b5050505050612b6c6001606555565b50565b612b7833614418565b612b945760405162461bcd60e51b81526004016102ce90615449565b3360009081526099602052604081208054349290612bb39084906156f0565b90915550506040517f456e0f4ea86ac283092c750200e8c877f6ad8901ae575f90e02081acd455af849061192f90339034906157c0565b6000610a7282613c2a565b612bfe33614418565b612c1a5760405162461bcd60e51b81526004016102ce90615449565b611da333346142a8565b612c2c613bd1565b612c35336143d9565b612c515760405162461bcd60e51b81526004016102ce90615449565b600085815260a7602052604090206001015460ff1615612c835760405162461bcd60e51b81526004016102ce9061598c565b600085815260a66020526040902080546001600160a01b0316612cb85760405162461bcd60e51b81526004016102ce906159ac565b60405162f5b49160e01b815260009073__BtcUtils______________________________9062f5b49190612cf0908990600401614f4e565b600060405180830381865af4158015612d0d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612d3591908101906159cc565b9050600073__BtcUtils______________________________632d56f32383600181518110612d6657612d66615adf565b6020026020010151602001516040518263ffffffff1660e01b8152600401612d8e9190614f4e565b600060405180830381865af4158015612dab573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612dd391908101906158c2565b905080516021148015612e0b575080600081518110612df457612df4615adf565b6020910101516001600160f81b031916600160fd1b145b612e405760405162461bcd60e51b81526020600482015260066024820152654c424330373560d01b60448201526064016102ce565b60005b60018251612e5191906154ed565b8160ff161015612ec35781612e67826001615af5565b60ff1681518110612e7a57612e7a615adf565b602001015160f81c60f81b828260ff1681518110612e9a57612e9a615adf565b60200101906001600160f81b031916908160001a90535080612ebb81615b0e565b915050612e43565b50600081806020019051810190612eda9190615b2d565b9050808914612f145760405162461bcd60e51b81526020600482015260066024820152654c424330363960d01b60448201526064016102ce565b60018401546001600160a01b03163314612f595760405162461bcd60e51b815260206004820152600660248201526509884866068760d31b60448201526064016102ce565b600a84015460975460405163fea8ba6360e01b8152600160501b90920461ffff16916001600160a01b0390911690635b6445879073__BtcUtils______________________________9063fea8ba6390612fb7908e90600401614f4e565b602060405180830381865af4158015612fd4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612ff89190615b2d565b8a8a8a6040518563ffffffff1660e01b815260040161301a9493929190615b46565b602060405180830381865afa158015613037573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061305b9190615b2d565b12156130925760405162461bcd60e51b81526020600482015260066024820152654c424330343960d01b60448201526064016102ce565b60098401546402540be400811180156130be57506402540be40085600901546130bb919061581c565b15155b156130ea576402540be40085600901546130d8919061581c565b85600901546130e791906154ed565b90505b60006402540be4008560008151811061310557613105615adf565b6020026020010151600001516001600160401b03166131249190615521565b90508082111561315f5760405162461bcd60e51b81526020600482015260066024820152654c424330363760d01b60448201526064016102ce565b600073__BtcUtils______________________________63c7ce85ac8760008151811061318e5761318e615adf565b602090810291909101810151015160a4546040516001600160e01b031960e085901b1681526131c4929160ff1690600401615ba2565b600060405180830381865af41580156131e1573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261320991908101906158c2565b90508080519060200120876008016040516132249190615bc6565b6040518091039020146132625760405162461bcd60e51b81526020600482015260066024820152650988486606c760d31b60448201526064016102ce565b604080516102608101825288546001600160a01b03908116825260018a0154166020820152600289018054613513938b92908401916132a090615230565b80601f01602080910402602001604051908101604052809291908181526020018280546132cc90615230565b80156133195780601f106132ee57610100808354040283529160200191613319565b820191906000526020600020905b8154815290600101906020018083116132fc57829003601f168201915b505050918352505060038201546001600160a01b0316602082015260048201805460409092019161334990615230565b80601f016020809104026020016040519081016040528092919081815260200182805461337590615230565b80156133c25780601f10613397576101008083540402835291602001916133c2565b820191906000526020600020905b8154815290600101906020018083116133a557829003601f168201915b50505091835250506005820154602082015260068201546040820152600780830154900b606082015260088201805460809092019161340090615230565b80601f016020809104026020016040519081016040528092919081815260200182805461342c90615230565b80156134795780601f1061344e57610100808354040283529160200191613479565b820191906000526020600020905b81548152906001019060200180831161345c57829003601f168201915b505050918352505060098201546020820152600a82015463ffffffff8082166040840152600160201b82048116606084015261ffff600160401b830481166080850152600160501b83041660a0840152600160601b8204811660c0840152600160801b8204811660e0840152600160a01b90910416610100820152600b820154610120820152600c9091015461014090910152858c614567565b156135b657600687015460018801546001600160a01b03166000908152609a6020526040812054909161354591614290565b60018901546001600160a01b03166000908152609a60205260408120805492935083929091906135769084906154ed565b90915550506001880154604051600080516020615ead833981519152916135ac916001600160a01b039091169084908990615500565b60405180910390a1505b6001870154600c880154600589015460098a01546000936001600160a01b031692916135e1916156f0565b6135eb91906156f0565b604051600081818185875af1925050503d8060008114613627576040519150601f19603f3d011682016040523d82523d6000602084013e61362c565b606091505b50509050806136665760405162461bcd60e51b815260206004820152600660248201526504c42433035360d41b60448201526064016102ce565b61367488600b01548e614307565b600085815260a66020526040812080546001600160a01b031990811682556001820180549091169055906136ab60028301826147a6565b6003820180546001600160a01b03191690556136cb6004830160006147a6565b600060058301819055600683018190556007830180546001600160401b03191690556136fb9060088401906147a6565b50600060098201819055600a820180546001600160c01b0319169055600b8201819055600c90910181905585815260a760205260408082206001908101805460ff191690911790555186917fb781856ec73fd0dc39351043d1634ea22cd3277b0866ab93e7ec1801766bb38491a2505050505050505061377b6001606555565b5050505050565b606060008060015b60a25481116137cf576000818152609b602052604090206137aa9061471c565b156137bd57826137b981615430565b9350505b806137c781615430565b91505061378a565b506000826001600160401b038111156137ea576137ea6147f4565b60405190808252806020026020018201604052801561382357816020015b613810614765565b8152602001906001900390816138085790505b5060009350905060015b60a2548111613a84576000818152609b60205260409020925061384f8361471c565b15613a72576040805160c0810182528454815260018501546001600160a01b0316602082015260028501805491928692908401919061388d90615230565b80601f01602080910402602001604051908101604052809291908181526020018280546138b990615230565b80156139065780601f106138db57610100808354040283529160200191613906565b820191906000526020600020905b8154815290600101906020018083116138e957829003601f168201915b5050505050815260200160038201805461391f90615230565b80601f016020809104026020016040519081016040528092919081815260200182805461394b90615230565b80156139985780601f1061396d57610100808354040283529160200191613998565b820191906000526020600020905b81548152906001019060200180831161397b57829003601f168201915b5050509183525050600482015460ff16151560208201526005820180546040909201916139c490615230565b80601f01602080910402602001604051908101604052809291908181526020018280546139f090615230565b8015613a3d5780601f10613a1257610100808354040283529160200191613a3d565b820191906000526020600020905b815481529060010190602001808311613a2057829003601f168201915b505050505081525050828581518110613a5857613a58615adf565b60200260200101819052508380613a6e90615430565b9450505b80613a7c81615430565b91505061382d565b509392505050565b613a94614457565b6001600160a01b038116613af95760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016102ce565b612b6c816144b6565b80516000906001600160a01b03163014613b475760405162461bcd60e51b8152602060048201526006602482015265262121981a9b60d11b60448201526064016102ce565b60405163025018e760e31b815273__QuotesV2______________________________90631280c73890613b7e908590600401615c3c565b600060405180830381865af4158015613b9b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052613bc391908101906158c2565b805190602001209050919050565b600260655403613c235760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016102ce565b6002606555565b600081602001516001600160a01b0316306001600160a01b031614613c7a5760405162461bcd60e51b81526020600482015260066024820152654c424330353160d01b60448201526064016102ce565b6101008201516097546001600160a01b03918216911603613cc65760405162461bcd60e51b8152602060048201526006602482015265262121981a9960d11b60448201526064016102ce565b81606001515160151480613cdf57508160600151516021145b613d145760405162461bcd60e51b81526020600482015260066024820152654c424330353360d01b60448201526064016102ce565b8160a0015151601514613d525760405162461bcd60e51b8152602060048201526006602482015265131090cc0d4d60d21b60448201526064016102ce565b609f548261026001518361024001518460c00151856101800151613d7691906156f0565b613d8091906156f0565b613d8a91906156f0565b1015613dc15760405162461bcd60e51b81526020600482015260066024820152654c424330353560d01b60448201526064016102ce565b816101c0015163ffffffff16826101a0015163ffffffff16613de39190615dd6565b6001600160401b031663ffffffff1015613e285760405162461bcd60e51b81526020600482015260066024820152654c424330373160d01b60448201526064016102ce565b60405162773b7960e01b815273__QuotesV2______________________________9062773b7990613b7e908590600401615df6565b609754606086015160a08701516000848152609c602052604081205490936001600160a01b031692636adc013392899288928a92899230919063ffffffff1615801590613ebf575060008b8152609c6020526040902054600160201b900460ff165b6040518963ffffffff1660e01b8152600401613ee2989796959493929190615e09565b6020604051808303816000875af1158015613f01573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613f259190615b2d565b9695505050505050565b60008084138015613f7357508461026001518561024001518660c00151876101800151613f5c91906156f0565b613f6691906156f0565b613f7091906156f0565b84105b15613f80575060006118ac565b60975460405163bd0c1fff60e01b8152600481018490526000916001600160a01b03169063bd0c1fff90602401600060405180830381865afa158015613fca573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052613ff291908101906158c2565b9050600081511161403c5760405162461bcd60e51b8152602060048201526014602482015273125b9d985b1a5908189b1bd8dac81a195a59da1d60621b60448201526064016102ce565b6040516328335c3f60e21b815260009073__BtcUtils______________________________9063a0cd70fc90614076908590600401614f4e565b602060405180830381865af4158015614093573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906140b79190615b2d565b90506000876101c00151886101a001516140d19190615968565b63ffffffff169050808211156140ed57600093505050506118ac565b8560000361410157600193505050506118ac565b6097546102008901516000916001600160a01b03169063bd0c1fff9060019061412e9061ffff168a6156f0565b61413891906154ed565b6040518263ffffffff1660e01b815260040161415691815260200190565b600060405180830381865afa158015614173573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261419b91908101906158c2565b905060008151116141d75760405162461bcd60e51b81526020600482015260066024820152650988486606a760d31b60448201526064016102ce565b6040516328335c3f60e21b815260009073__BtcUtils______________________________9063a0cd70fc90614211908590600401614f4e565b602060405180830381865af415801561422e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906142529190615b2d565b9050896101e0015163ffffffff168161426b91906156f0565b881115614280576001955050505050506118ac565b5060009998505050505050505050565b600081831061429f57816142a1565b825b9392505050565b6001600160a01b038216600090815260986020526040812080548392906142d09084906156f0565b90915550506040517f42cfb81a915ac5a674852db250bf722637bee705a267633b68cab3a2dde06f539061137690849084906157c0565b81156143d55760a9546040516000916001600160a01b03169084908381818185875af1925050503d806000811461435a576040519150601f19603f3d011682016040523d82523d6000602084013e61435f565b606091505b50509050806143995760405162461bcd60e51b8152602060048201526006602482015265131090cc0dcd60d21b60448201526064016102ce565b817f58e13ac0d5c8d27d14009841e72ac8b1858e2709c2c99af2075d9bb5f340ecfc846040516143cb91815260200190565b60405180910390a2505b5050565b6001600160a01b0381166000908152609a602052604081205415801590610a725750506001600160a01b03166000908152609d60205260409020541590565b6001600160a01b03811660009081526099602052604081205415801590610a725750506001600160a01b03166000908152609d60205260409020541590565b33614460612833565b6001600160a01b031614611da35760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016102ce565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6001600160a01b038216600090815260986020526040812080548392906145309084906154ed565b90915550506040517f8e51a4493a6f66c76e13fd9e3b754eafbfe21343c04508deb61be8ccc00645879061137690849084906157c0565b6097546040516339cf1b2560e11b81526004810183905260009182916001600160a01b039091169063739e364a90602401600060405180830381865afa1580156145b5573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526145dd91908101906158c2565b905060008151116146195760405162461bcd60e51b81526020600482015260066024820152654c424330353960d01b60448201526064016102ce565b6040516328335c3f60e21b815260009073__BtcUtils______________________________9063a0cd70fc90614653908590600401614f4e565b602060405180830381865af4158015614670573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906146949190615b2d565b60a3546101c0880151600088815260a7602052604090205492935090916146c19163ffffffff16906156f0565b6146cb91906156f0565b8111156146dd576001925050506142a1565b856101e0015163ffffffff16421180614700575085610200015163ffffffff1643115b15614710576001925050506142a1565b50600095945050505050565b6001810154600090614736906001600160a01b0316614418565b8061475357506001820154614753906001600160a01b03166143d9565b8015610a725750506004015460ff1690565b6040518060c001604052806000815260200160006001600160a01b031681526020016060815260200160608152602001600015158152602001606081525090565b5080546147b290615230565b6000825580601f106147c2575050565b601f016020900490600052602060002090810190612b6c91905b808211156147f057600081556001016147dc565b5090565b634e487b7160e01b600052604160045260246000fd5b60405161026081016001600160401b038111828210171561482d5761482d6147f4565b60405290565b60405161028081016001600160401b038111828210171561482d5761482d6147f4565b604051608081016001600160401b038111828210171561482d5761482d6147f4565b604051601f8201601f191681016001600160401b03811182821017156148a0576148a06147f4565b604052919050565b60006001600160401b038211156148c1576148c16147f4565b50601f01601f191660200190565b600082601f8301126148e057600080fd5b81356148f36148ee826148a8565b614878565b81815284602083860101111561490857600080fd5b816020850160208301376000918101602001919091529392505050565b6000806040838503121561493857600080fd5b82356001600160401b038082111561494f57600080fd5b61495b868387016148cf565b9350602085013591508082111561497157600080fd5b5061497e858286016148cf565b9150509250929050565b6001600160a01b0381168114612b6c57600080fd5b803561237581614988565b8035600781900b811461237557600080fd5b803563ffffffff8116811461237557600080fd5b803561ffff8116811461237557600080fd5b600061026082840312156149f357600080fd5b6149fb61480a565b9050614a068261499d565b8152614a146020830161499d565b602082015260408201356001600160401b0380821115614a3357600080fd5b614a3f858386016148cf565b6040840152614a506060850161499d565b60608401526080840135915080821115614a6957600080fd5b614a75858386016148cf565b608084015260a084013560a084015260c084013560c0840152614a9a60e085016149a8565b60e084015261010091508184013581811115614ab557600080fd5b614ac1868287016148cf565b83850152505050610120808301358183015250610140614ae28184016149ba565b90820152610160614af48382016149ba565b90820152610180614b068382016149ce565b908201526101a0614b188382016149ce565b908201526101c0614b2a8382016149ba565b908201526101e0614b3c8382016149ba565b90820152610200614b4e8382016149ba565b9082015261022082810135908201526102409182013591810191909152919050565b600060208284031215614b8257600080fd5b81356001600160401b03811115614b9857600080fd5b6118ac848285016149e0565b80356001600160601b03198116811461237557600080fd5b8015158114612b6c57600080fd5b803561237581614bbc565b60006102808284031215614be857600080fd5b614bf0614833565b9050614bfb82614ba4565b8152614c096020830161499d565b6020820152614c1a6040830161499d565b604082015260608201356001600160401b0380821115614c3957600080fd5b614c45858386016148cf565b6060840152614c566080850161499d565b608084015260a0840135915080821115614c6f57600080fd5b614c7b858386016148cf565b60a084015260c084013560c084015260e084013560e08401526101009150614ca482850161499d565b8284015261012091508184013581811115614cbe57600080fd5b614cca868287016148cf565b83850152505050610140614cdf8184016149ba565b90820152610160614cf18382016149a8565b9082015261018082810135908201526101a0614d0e8184016149ba565b908201526101c0614d208382016149ba565b908201526101e0614d328382016149ba565b90820152610200614d448382016149ce565b90820152610220614d56838201614bca565b9082015261024082810135908201526102609182013591810191909152919050565b600080600080600060a08688031215614d9057600080fd5b85356001600160401b0380821115614da757600080fd5b614db389838a01614bd5565b96506020880135915080821115614dc957600080fd5b614dd589838a016148cf565b95506040880135915080821115614deb57600080fd5b614df789838a016148cf565b94506060880135915080821115614e0d57600080fd5b50614e1a888289016148cf565b95989497509295608001359392505050565b600060208284031215614e3e57600080fd5b5035919050565b60008060008060808587031215614e5b57600080fd5b84356001600160401b0380821115614e7257600080fd5b614e7e888389016148cf565b95506020870135915080821115614e9457600080fd5b614ea0888389016148cf565b945060408701359150614eb282614bbc565b90925060608601359080821115614ec857600080fd5b50614ed5878288016148cf565b91505092959194509250565b600060208284031215614ef357600080fd5b81356142a181614988565b60005b83811015614f19578181015183820152602001614f01565b50506000910152565b60008151808452614f3a816020860160208601614efe565b601f01601f19169290920160200192915050565b6020815260006142a16020830184614f22565b6001600160a01b03169052565b8051825260018060a01b0360208201511660208301526000604082015160c06040850152614f9f60c0850182614f22565b905060608301518482036060860152614fb88282614f22565b91505060808301511515608085015260a083015184820360a08601526112818282614f22565b6020815260006142a16020830184614f6e565b6001600160a01b0391909116815260200190565b6000806040838503121561501857600080fd5b82359150602083013561502a81614bbc565b809150509250929050565b6000806040838503121561504857600080fd5b82356001600160401b038082111561505f57600080fd5b61495b86838701614bd5565b60006020828403121561507d57600080fd5b81356001600160401b0381111561509357600080fd5b6118ac84828501614bd5565b600080604083850312156150b257600080fd5b82356001600160401b03808211156150c957600080fd5b61495b868387016149e0565b60006001600160401b038211156150ee576150ee6147f4565b5060051b60200190565b600080600080600060a0868803121561511057600080fd5b853594506020808701356001600160401b038082111561512f57600080fd5b61513b8a838b016148cf565b96506040890135955060608901359450608089013591508082111561515f57600080fd5b508701601f8101891361517157600080fd5b803561517f6148ee826150d5565b81815260059190911b8201830190838101908b83111561519e57600080fd5b928401925b828410156151bc578335825292840192908401906151a3565b80955050505050509295509295909350565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b8281101561522357603f19888603018452615211858351614f6e565b945092850192908501906001016151f5565b5092979650505050505050565b600181811c9082168061524457607f821691505b60208210810361526457634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156152b457600081815260208120601f850160051c810160208610156152915750805b601f850160051c820191505b818110156152b05782815560010161529d565b5050505b505050565b81516001600160401b038111156152d2576152d26147f4565b6152e6816152e08454615230565b8461526a565b602080601f83116001811461531b57600084156153035750858301515b600019600386901b1c1916600185901b1785556152b0565b600085815260208120601f198616915b8281101561534a5788860151825594840194600190910190840161532b565b50858210156153685787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6000815461538581615230565b8085526020600183811680156153a257600181146153bc576153ea565b60ff1985168884015283151560051b8801830195506153ea565b866000528260002060005b858110156153e25781548a82018601529083019084016153c7565b890184019650505b505050505092915050565b6040815260006154086040830185615378565b82810360208401526112818185615378565b634e487b7160e01b600052601160045260246000fd5b6000600182016154425761544261541a565b5060010190565b6020808252600690820152654c424330303160d01b604082015260600190565b60208082526006908201526509884866064760d31b604082015260600190565b60018060a01b03841681528260208201526060604082015260006112816060830184614f22565b6000602082840312156154c257600080fd5b81516142a181614bbc565b6020808252600690820152654c424330323960d01b604082015260600190565b81810381811115610a7257610a7261541a565b6001600160a01b039390931683526020830191909152604082015260600190565b8082028115828204841417610a7257610a7261541a565b634e487b7160e01b600052601260045260246000fd5b60008261555d5761555d615538565b500490565b80516001600160601b0319168252600061028060208301516155876020860182614f61565b50604083015161559a6040860182614f61565b5060608301518160608601526155b282860182614f22565b91505060808301516155c76080860182614f61565b5060a083015184820360a08601526155df8282614f22565b91505060c083015160c085015260e083015160e08501526101008084015161560982870182614f61565b505061012080840151858303828701526156238382614f22565b925050506101408084015161563f8287018263ffffffff169052565b5050610160808401516156568287018260070b9052565b505061018083810151908501526101a08084015163ffffffff908116918601919091526101c0808501518216908601526101e080850151909116908501526102008084015161ffff16908501526102208084015115159085015261024080840151908501526102609283015192909301919091525090565b6040815260006156e16040830185615562565b90508260208301529392505050565b80820180821115610a7257610a7261541a565b6001600160a01b03949094168452602084019290925215156040830152606082015260800190565b6000825161573d818460208701614efe565b9190910192915050565b63ffffffff8616815284602082015260a06040820152600061576c60a0830186614f22565b931515606083015250608001529392505050565b6020808252600690820152654c424330313960d01b604082015260600190565b60208082526006908201526504c42433032360d41b604082015260600190565b6001600160a01b03929092168252602082015260400190565b643832b3b4b760d91b815260050190565b651c1959dbdd5d60d21b815260060190565b60208082526006908201526509884866060760d31b604082015260600190565b60008261582b5761582b615538565b500690565b84815260008451615848816020850160208901614efe565b808301905060018060601b031985166020820152835161586f816034840160208801614efe565b016034019695505050505050565b600082601f83011261588e57600080fd5b815161589c6148ee826148a8565b8181528460208386010111156158b157600080fd5b6118ac826020830160208701614efe565b6000602082840312156158d457600080fd5b81516001600160401b038111156158ea57600080fd5b6118ac8482850161587d565b600160fd1b8152826001820152607560f81b602182015260008251615922816022850160208701614efe565b919091016022019392505050565b6060815260006159436060830186614f22565b82810360208401526159558186614f22565b9150508215156040830152949350505050565b63ffffffff8181168382160190808211156159855761598561541a565b5092915050565b602080825260069082015265131090cc0d8d60d21b604082015260600190565b602080825260069082015265262121981a1960d11b604082015260600190565b600060208083850312156159df57600080fd5b82516001600160401b03808211156159f657600080fd5b818501915085601f830112615a0a57600080fd5b8151615a186148ee826150d5565b81815260059190911b83018401908481019088831115615a3757600080fd5b8585015b83811015615ad257805185811115615a535760008081fd5b86016080818c03601f1901811315615a6b5760008081fd5b615a73614856565b898301518881168114615a865760008081fd5b815260408381015189811115615a9c5760008081fd5b615aaa8f8d8388010161587d565b838d015250606084810151918301919091529190920151908201528352918601918601615a3b565b5098975050505050505050565b634e487b7160e01b600052603260045260246000fd5b60ff8181168382160190811115610a7257610a7261541a565b600060ff821660ff8103615b2457615b2461541a565b60010192915050565b600060208284031215615b3f57600080fd5b5051919050565b600060808201868352602086818501528560408501526080606085015281855180845260a086019150828701935060005b81811015615b9357845183529383019391830191600101615b77565b50909998505050505050505050565b604081526000615bb56040830185614f22565b905082151560208301529392505050565b6000808354615bd481615230565b60018281168015615bec5760018114615c0157615c30565b60ff1984168752821515830287019450615c30565b8760005260208060002060005b85811015615c275781548a820152908401908201615c0e565b50505082870194505b50929695505050505050565b60208152615c4e602082018351614f61565b60006020830151615c626040840182614f61565b506040830151610260806060850152615c7f610280850183614f22565b91506060850151615c936080860182614f61565b506080850151601f19808685030160a0870152615cb08483614f22565b935060a087015160c087015260c087015160e087015260e08701519150610100615cde8188018460070b9052565b80880151925050610120818786030181880152615cfb8584614f22565b908801516101408881019190915288015190945091506101609050615d278187018363ffffffff169052565b8601519050610180615d408682018363ffffffff169052565b86015190506101a0615d578682018361ffff169052565b86015190506101c0615d6e8682018361ffff169052565b86015190506101e0615d878682018363ffffffff169052565b8601519050610200615da08682018363ffffffff169052565b8601519050610220615db98682018363ffffffff169052565b860151610240868101919091529095015193019290925250919050565b6001600160401b038181168382160190808211156159855761598561541a565b6020815260006142a16020830184615562565b6000610100808352615e1d8184018c614f22565b90508960208401528281036040840152615e37818a614f22565b90508760608401528281036080840152615e518188614f22565b6001600160a01b03871660a085015283810360c08501529050615e748186614f22565b91505082151560e0830152999850505050505050505056fe3052ea2f7e0d74fdc1c1e1f858ff1ae3d91ab1609717c3efedb95db603b255f69685484093cc596fdaeab51abf645b1753dbb7d869bfd2eb21e2c646e47a36f4bfc7404e6fe464f0646fe2c6ab942b92d56be722bb39f8c6bc4830d2d32fb80da2646970667358221220a30804814b06c853c09e79f1fefab64f035ab323ec2ffc6425a741ebb6a4a87664736f6c63430008120033", - "deployedBytecode": "0x60806040526004361061028a5760003560e01c80630220f41d146102de57806304ade855146102fe5780630a7bf57a1461032a5780630a9cb4a71461033f578063221400091461035e5780632d67952c1461037e5780632e1a7d4d1461039e57806333f07ad3146103be57806341705518146103d3578063418663a2146103e65780634198687e14610410578063457385f2146104185780634d0ec9711461044857806354015ee01461046857806354fd4d501461049b57806355f21eb7146104cf57806359c153be146104fc57806363c671351461051157806369652fcf14610527578063710738b11461053c578063715018a61461056957806372cbf4e81461057e57806379b9550b1461059e5780637aefa8c2146105be5780638490a8df146105d15780638beb537a146105e75780638d597939146105fa5780638da5cb5b146106115780638f91797d146106265780639b56d6c9146106465780639cd6557f1461067c5780639d79b59b146106915780639e816999146106ba578063a4a5ba50146106c2578063a93bb247146106d7578063ae76ce86146106ee578063ae93b67b14610705578063b3a849aa1461071c578063b5ecfc061461073c578063bd519eff14610755578063bd5798c31461078b578063be6de4eb146107ad578063c525cdd8146107c2578063c7213163146107d9578063cfb92f0a146107f4578063d0e30db01461080b578063d6c70de814610813578063e1de16c614610833578063e30e6ea314610849578063e78cea921461085f578063e830b6901461087f578063e8fcce7114610894578063edc922a9146108aa578063f2fde38b146108cc578063f8b2cb4f146108ec578063fa88dcde14610922578063fb32c5081461093757600080fd5b366102d9576097546001600160a01b031633146102d75760405162461bcd60e51b81526020600482015260066024820152654c424330303760d01b60448201526064015b60405180910390fd5b005b600080fd5b3480156102ea57600080fd5b506102d76102f9366004614925565b610955565b34801561030a57600080fd5b50610313600181565b60405160ff90911681526020015b60405180910390f35b34801561033657600080fd5b50610313600281565b34801561034b57600080fd5b5060a2545b604051908152602001610321565b34801561036a57600080fd5b50610350610379366004614b70565b610a67565b34801561038a57600080fd5b50610350610399366004614d78565b610a78565b3480156103aa57600080fd5b506102d76103b9366004614e2c565b61128a565b3480156103ca57600080fd5b5060a154610350565b6103506103e1366004614e45565b611382565b3480156103f257600080fd5b506103fd6101301981565b60405160019190910b8152602001610321565b6102d76118b4565b34801561042457600080fd5b50610438610433366004614ee1565b611939565b6040519015158152602001610321565b34801561045457600080fd5b50610438610463366004614ee1565b61196f565b34801561047457600080fd5b50610438610483366004614e2c565b600090815260a7602052604090206001015460ff1690565b3480156104a757600080fd5b5060408051808201825260058152640312e332e360dc1b602082015290516103219190614f4e565b3480156104db57600080fd5b506104ef6104ea366004614ee1565b6119a5565b6040516103219190614fde565b34801561050857600080fd5b506102d7611bfa565b34801561051d57600080fd5b5061035060a85481565b34801561053357600080fd5b506102d7611da5565b34801561054857600080fd5b5060a95461055c906001600160a01b031681565b6040516103219190614ff1565b34801561057557600080fd5b506102d7611e50565b34801561058a57600080fd5b506102d7610599366004615005565b611e62565b3480156105aa57600080fd5b506104386105b9366004615035565b611efc565b6104386105cc36600461506b565b612068565b3480156105dd57600080fd5b5061035060a25481565b6102d76105f536600461509f565b61237a565b34801561060657600080fd5b506103fd61012c1981565b34801561061d57600080fd5b5061055c612833565b34801561063257600080fd5b506102d7610641366004614e2c565b612842565b34801561065257600080fd5b50610350610661366004614ee1565b6001600160a01b031660009081526099602052604090205490565b34801561068857600080fd5b50610313600081565b34801561069d57600080fd5b506106a76188b881565b60405161ffff9091168152602001610321565b6102d7612b6f565b3480156106ce57600080fd5b50610350600181565b3480156106e357600080fd5b506103fd61012d1981565b3480156106fa57600080fd5b506103fd61012b1981565b34801561071157600080fd5b506103fd6103831981565b34801561072857600080fd5b5061035061073736600461506b565b612bea565b34801561074857600080fd5b506103506402540be40081565b34801561076157600080fd5b50610350610770366004614ee1565b6001600160a01b03166000908152609a602052604090205490565b34801561079757600080fd5b5060a054600160201b900463ffffffff16610350565b3480156107b957600080fd5b50610350600081565b3480156107ce57600080fd5b506103fd61012e1981565b3480156107e557600080fd5b5060a05463ffffffff16610350565b34801561080057600080fd5b506103fd61012f1981565b6102d7612bf5565b34801561081f57600080fd5b506102d761082e3660046150f8565b612c24565b34801561083f57600080fd5b506106a76108fc81565b34801561085557600080fd5b506103fd60c71981565b34801561086b57600080fd5b5060975461055c906001600160a01b031681565b34801561088b57600080fd5b50609e54610350565b3480156108a057600080fd5b506103fd60631981565b3480156108b657600080fd5b506108bf613782565b60405161032191906151ce565b3480156108d857600080fd5b506102d76108e7366004614ee1565b613a8c565b3480156108f857600080fd5b50610350610907366004614ee1565b6001600160a01b031660009081526098602052604090205490565b34801561092e57600080fd5b50609f54610350565b34801561094357600080fd5b506097546001600160a01b031661055c565b60008251118015610967575060008151115b61099c5760405162461bcd60e51b8152602060048201526006602482015265262121981b9b60d11b60448201526064016102ce565b600060015b60a2548111610a4e576000818152609b6020526040902060018101549092506001600160a01b03163303610a3c57600282016109dd85826152b9565b50600382016109ec84826152b9565b50336001600160a01b03167fc15f90eb34a098bb02f2641dff62935246fb005d8f06e13d5cc6be0bddcce8e38360020184600301604051610a2e9291906153f5565b60405180910390a250505050565b80610a4681615430565b9150506109a1565b5060405162461bcd60e51b81526004016102ce90615449565b6000610a7282613b02565b92915050565b6000610a82613bd1565b6000610a8d87613c2a565b600081815260a56020526040902054909150600160ff9091161115610ac45760405162461bcd60e51b81526004016102ce90615469565b60408088015190516301a86b5560e41b815273__SignatureValidator____________________91631a86b55091610b03919085908b90600401615489565b602060405180830381865af4158015610b20573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b4491906154b0565b610b605760405162461bcd60e51b81526004016102ce906154cd565b637fffffff8310610b9c5760405162461bcd60e51b815260206004820152600660248201526504c42433033360d41b60448201526064016102ce565b6000610bab8887878786613e5d565b905061012f8101610be75760405162461bcd60e51b81526020600482015260066024820152654c424330333160d01b60448201526064016102ce565b61012e8101610c215760405162461bcd60e51b815260206004820152600660248201526526212198199960d11b60448201526064016102ce565b6101308101610c5b5760405162461bcd60e51b81526020600482015260066024820152654c424330333360d01b60448201526064016102ce565b6101318101610c955760405162461bcd60e51b8152602060048201526006602482015265131090cc0ccd60d21b60448201526064016102ce565b6103848101610ccf5760405162461bcd60e51b81526020600482015260066024820152654c424330333560d01b60448201526064016102ce565b6000811380610cdf575060c71981145b80610ceb575060631981145b610d205760405162461bcd60e51b815260206004820152600660248201526526212198199b60d11b60448201526064016102ce565b6000828152609c6020526040902054610d43908990839063ffffffff1687613f2f565b15610e145760e08801516040808a01516001600160a01b031660009081526099602052908120549091610d7591614290565b905080609960008b604001516001600160a01b03166001600160a01b031681526020019081526020016000206000828254610db091906154ed565b90915550506040808a01519051600080516020615ead83398151915291610dda9184908790615500565b60405180910390a160a054600090606490610dfb9063ffffffff1684615521565b610e05919061554e565b9050610e1133826142a8565b50505b60c719811480610e25575060631981145b15610e9957600082815260a560209081526040808320805460ff19166002179055609c825291829020805464ffffffffff1916905581518481529081018390527ffb209329d5ab5b7bcb2e92f45f4534814b6e68fa5ad1f171dabc1d17d26f0ebe910160405180910390a191506112779050565b60405163fa6ea3e760e01b8152819073__QuotesV2______________________________9063fa6ea3e790610ed4908c9085906004016156ce565b60006040518083038186803b158015610eec57600080fd5b505af4158015610f00573d6000803e3d6000fd5b5050506000848152609c602052604090205463ffffffff1615905061106b576000838152609c6020526040812054600160201b900460ff1615610f7257610f6b828b61026001518c60c001518d6101800151610f5c91906156f0565b610f6691906156f0565b614290565b9050610f8e565b610f8b828b61026001518c60c00151610f6691906156f0565b90505b610f9c8a60400151826142a8565b6000610fa882846154ed565b9050610fb98b610240015186614307565b60a1548111156110645760808b01516040516000916001600160a01b0316906108fc90849084818181858888f193505050503d8060008114611017576040519150601f19603f3d011682016040523d82523d6000602084013e61101c565b606091505b50509050600080516020615e8d8339815191528c608001518383896040516110479493929190615703565b60405180910390a180611062576110628c60400151836142a8565b505b5050611210565b6102208901518190801561108457508961018001518110155b156111765760008a61010001516001600160a01b03168b610140015163ffffffff168c61018001518d61012001516040516110bf919061572b565b600060405180830381858888f193505050503d80600081146110fd576040519150601f19603f3d011682016040523d82523d6000602084013e611102565b606091505b505090508a61010001516001600160a01b0316336001600160a01b0316600080516020615ecd8339815191528d61014001518e61018001518f6101200151868b604051611153959493929190615747565b60405180910390a38015611174576101808b015161117190836154ed565b91505b505b60a15481111561120e5760808a01516040516000916001600160a01b0316906108fc90849084818181858888f193505050503d80600081146111d4576040519150601f19603f3d011682016040523d82523d6000602084013e6111d9565b606091505b50509050600080516020615e8d8339815191528b608001518383886040516112049493929190615703565b60405180910390a1505b505b600083815260a560209081526040808320805460ff19166002179055609c825291829020805464ffffffffff19169055905183815284917f0629ae9d1dc61501b0ca90670a9a9b88daaf7504b54537b53e1219de794c63d2910160405180910390a2509150505b6112816001606555565b95945050505050565b336000908152609860205260409020548111156112b95760405162461bcd60e51b81526004016102ce90615780565b33600090815260986020526040812080548392906112d89084906154ed565b9091555050604051600090339083908381818185875af1925050503d806000811461131f576040519150601f19603f3d011682016040523d82523d6000602084013e611324565b606091505b50509050806113455760405162461bcd60e51b81526004016102ce906157a0565b7f7fcf532c15f0a6db0bd6d0e038bea71d30d808c7d98cb3bf7268a95bf5081b6533836040516113769291906157c0565b60405180910390a15050565b60003233146113bc5760405162461bcd60e51b81526020600482015260066024820152654c424330303360d01b60448201526064016102ce565b60008551116113f65760405162461bcd60e51b815260206004820152600660248201526504c42433031360d41b60448201526064016102ce565b60008451116114305760405162461bcd60e51b81526020600482015260066024820152654c424330313760d01b60448201526064016102ce565b60405160200161143f906157d9565b6040516020818303038152906040528051906020012082604051602001611466919061572b565b6040516020818303038152906040528051906020012014806114d15750604051602001611492906157ea565b60405160208183030381529060405280519060200120826040516020016114b9919061572b565b60405160208183030381529060405280519060200120145b806115295750604051630c4dee8d60e31b60208201526024016040516020818303038152906040528051906020012082604051602001611511919061572b565b60405160208183030381529060405280519060200120145b61155e5760405162461bcd60e51b815260206004820152600660248201526509884866062760d31b60448201526064016102ce565b336000908152609960205260409020541580156115885750336000908152609a6020526040902054155b6115bd5760405162461bcd60e51b815260206004820152600660248201526504c42433037360d41b60448201526064016102ce565b336000908152609d6020526040902054156116035760405162461bcd60e51b81526020600482015260066024820152654c424330303960d01b60448201526064016102ce565b604051602001611612906157d9565b6040516020818303038152906040528051906020012082604051602001611639919061572b565b604051602081830303815290604052805190602001200361168d57609e543410156116765760405162461bcd60e51b81526004016102ce906157fc565b336000908152609960205260409020349055611792565b60405160200161169c906157ea565b60405160208183030381529060405280519060200120826040516020016116c3919061572b565b604051602081830303815290604052805190602001200361171757609e543410156117005760405162461bcd60e51b81526004016102ce906157fc565b336000908152609a60205260409020349055611792565b609e54611725906002615521565b3410156117445760405162461bcd60e51b81526004016102ce906157fc565b600061175160023461554e565b905061175e60023461581c565b156117735761176e8160016156f0565b611775565b805b33600090815260996020908152604080832093909355609a905220555b60a280549060006117a283615430565b90915550506040805160c08101825260a2548082523360208084019182528385018a8152606085018a9052881515608086015260a085018890526000938452609b909152939091208251815590516001820180546001600160a01b0319166001600160a01b039092169190911790559151909190600282019061182590826152b9565b506060820151600382019061183a90826152b9565b50608082015160048201805460ff191691151591909117905560a0820151600582019061186790826152b9565b505060a254604080519182523460208301523392507fa9d44d6e13bb3fee938c3f66d1103e91f8dc6b12d4405a55eea558e8f275aa6e910160405180910390a25060a2545b949350505050565b6118bd336143d9565b6118d95760405162461bcd60e51b81526004016102ce90615449565b336000908152609a6020526040812080543492906118f89084906156f0565b90915550506040517f873d5a2949567203ad4f0cceef41c2813c87b9a397ee777d87a8acdaec2c6fa99061192f90339034906157c0565b60405180910390a1565b600061194482614418565b8015610a725750609e546001600160a01b038316600090815260996020526040902054101592915050565b600061197a826143d9565b8015610a725750609e546001600160a01b0383166000908152609a6020526040902054101592915050565b6119ad614765565b60015b60a2548111610a4e576000818152609b60205260409020600101546001600160a01b03808516911603611be8576000818152609b6020908152604091829020825160c0810184528154815260018201546001600160a01b0316928101929092526002810180549293919291840191611a2790615230565b80601f0160208091040260200160405190810160405280929190818152602001828054611a5390615230565b8015611aa05780601f10611a7557610100808354040283529160200191611aa0565b820191906000526020600020905b815481529060010190602001808311611a8357829003601f168201915b50505050508152602001600382018054611ab990615230565b80601f0160208091040260200160405190810160405280929190818152602001828054611ae590615230565b8015611b325780601f10611b0757610100808354040283529160200191611b32565b820191906000526020600020905b815481529060010190602001808311611b1557829003601f168201915b5050509183525050600482015460ff1615156020820152600582018054604090920191611b5e90615230565b80601f0160208091040260200160405190810160405280929190818152602001828054611b8a90615230565b8015611bd75780601f10611bac57610100808354040283529160200191611bd7565b820191906000526020600020905b815481529060010190602001808311611bba57829003601f168201915b505050505081525050915050919050565b80611bf281615430565b9150506119b0565b611c02613bd1565b336000908152609d6020526040902054611c475760405162461bcd60e51b81526020600482015260066024820152654c424330323160d01b60448201526064016102ce565b60a054336000908152609d6020526040902054600160201b90910463ffffffff1690611c7390436154ed565b1015611caa5760405162461bcd60e51b815260206004820152600660248201526526212198191960d11b60448201526064016102ce565b336000908152609a60209081526040808320546099909252822054611ccf91906156f0565b336000818152609a6020908152604080832083905560998252808320839055609d909152808220829055519293509183908381818185875af1925050503d8060008114611d38576040519150601f19603f3d011682016040523d82523d6000602084013e611d3d565b606091505b5050905080611d5e5760405162461bcd60e51b81526004016102ce906157a0565b7fa8e76b822fc682be77f3b1c822ea81f6bda5aed92ba82e6873bfd889f328d1d23383604051611d8f9291906157c0565b60405180910390a15050611da36001606555565b565b611dae33614418565b611dca5760405162461bcd60e51b81526004016102ce90615449565b336000908152609d602052604090205415611e105760405162461bcd60e51b81526020600482015260066024820152654c424330323360d01b60448201526064016102ce565b336000818152609d602052604090819020439055517fa6674aa33cd1b7435474751667707bf05fde99e537d67043ec5f907782577d869161192f91614ff1565b611e58614457565b611da360006144b6565b81611e6b612833565b6001600160a01b0316336001600160a01b03161480611ea357506000818152609b60205260409020600101546001600160a01b031633145b611ed85760405162461bcd60e51b81526020600482015260066024820152654c424330303560d01b60448201526064016102ce565b506000918252609b6020526040909120600401805460ff1916911515919091179055565b600080611f0884612bea565b8460600151856020015160601b8660a00151604051602001611f2d9493929190615830565b604051602081830303815290604052805190602001209050600081609760009054906101000a90046001600160a01b03166001600160a01b0316631d73d5dd6040518163ffffffff1660e01b8152600401600060405180830381865afa158015611f9b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611fc391908101906158c2565b604051602001611fd49291906158f6565b60408051601f198184030181529082905260a454639b02794b60e01b835290925073__BtcUtils______________________________91639b02794b91612027918891869160ff90911690600401615930565b602060405180830381865af4158015612044573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061128191906154b0565b600061207333614418565b61208f5760405162461bcd60e51b81526004016102ce90615449565b612097613bd1565b81604001516001600160a01b0316336001600160a01b0316146120e55760405162461bcd60e51b8152602060048201526006602482015265131090cc0c8d60d21b60448201526064016102ce565b6101808201516040808401516001600160a01b03166000908152609860205220546121119034906156f0565b101561212f5760405162461bcd60e51b81526004016102ce90615780565b600061213a83613c2a565b600081815260a5602052604090205490915060ff16156121855760405162461bcd60e51b81526020600482015260066024820152654c424330323560d01b60448201526064016102ce565b6121938360400151346142a8565b6101408301516121a6906188b890615968565b63ffffffff165a10156121e45760405162461bcd60e51b815260206004820152600660248201526526212198191b60d11b60448201526064016102ce565b60008361010001516001600160a01b031684610140015163ffffffff1685610180015186610120015160405161221a919061572b565b600060405180830381858888f193505050503d8060008114612258576040519150601f19603f3d011682016040523d82523d6000602084013e61225d565b606091505b509091505063ffffffff42111561229f5760405162461bcd60e51b81526020600482015260066024820152654c424330323760d01b60448201526064016102ce565b6000828152609c60205260409020805463ffffffff19164263ffffffff1617905580156122fa576000828152609c602052604090819020805460ff60201b1916600160201b1790558401516101808501516122fa9190614508565b8361010001516001600160a01b0316336001600160a01b0316600080516020615ecd8339815191528661014001518761018001518861012001518688604051612347959493929190615747565b60405180910390a3600091825260a56020526040909120805460ff1916600117905590506123756001606555565b919050565b61238782602001516143d9565b6123bc5760405162461bcd60e51b81526020600482015260066024820152654c424330333760d01b60448201526064016102ce565b348261024001518361022001518460a001518561012001516123de91906156f0565b6123e891906156f0565b6123f291906156f0565b11156124295760405162461bcd60e51b81526020600482015260066024820152654c424330363360d01b60448201526064016102ce565b81610160015163ffffffff1642111561246d5760405162461bcd60e51b81526020600482015260066024820152654c424330363560d01b60448201526064016102ce565b816101e0015163ffffffff164211156124b15760405162461bcd60e51b8152602060048201526006602482015265262121981a1b60d11b60448201526064016102ce565b81610200015163ffffffff164311156124f55760405162461bcd60e51b81526020600482015260066024820152654c424330343760d01b60448201526064016102ce565b600061250083610a67565b60208401516040516301a86b5560e41b815291925073__SignatureValidator____________________91631a86b550916125419185908790600401615489565b602060405180830381865af415801561255e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061258291906154b0565b61259e5760405162461bcd60e51b81526004016102ce906154cd565b600081815260a66020908152604080832060a79092529091206001015460ff16156125db5760405162461bcd60e51b81526004016102ce9061598c565b80546001600160a01b0316156126035760405162461bcd60e51b81526004016102ce90615469565b600082815260a66020908152604091829020865181546001600160a01b03199081166001600160a01b039283161783559288015160018301805490941691161790915590850151859190600282019061265c90826152b9565b5060608201516003820180546001600160a01b0319166001600160a01b039092169190911790556080820151600482019061269790826152b9565b5060a0820151600582015560c0820151600682015560e08201516007820180546001600160401b0319166001600160401b0390921691909117905561010082015160088201906126e790826152b9565b506101208201516009820155610140820151600a820180546101608501516101808601516101a08701516101c08801516101e08901516102008a015163ffffffff9889166001600160401b031990971696909617600160201b958916959095029490941763ffffffff60401b1916600160401b61ffff9485160261ffff60501b191617600160501b939092169290920217600160601b600160a01b031916600160601b9186169190910263ffffffff60801b191617600160801b918516919091021763ffffffff60a01b1916600160a01b9390911692909202919091179055610220820151600b82015561024090910151600c90910155600082815260a760209081526040918290204290819055825134815291820152339184917fb1bc7bfc0dab19777eb03aa0a5643378fc9f186c8fc5a36620d21136fbea570f910160405180910390a350505050565b6033546001600160a01b031690565b61284a613bd1565b600081815260a66020526040902080546001600160a01b031661287f5760405162461bcd60e51b81526004016102ce906159ac565b600a810154600160801b900463ffffffff16421180156128af5750600a810154600160a01b900463ffffffff1643115b6128e45760405162461bcd60e51b81526020600482015260066024820152654c424330343160d01b60448201526064016102ce565b600081600c015482600b01548360050154846009015461290491906156f0565b61290e91906156f0565b61291891906156f0565b6003830154600684015460018501546001600160a01b039081166000908152609a60205260408120549495509216926129519190614290565b60018501546001600160a01b03166000908152609a60205260408120805492935083929091906129829084906154ed565b90915550506001840154604051600080516020615ead833981519152916129b8916001600160a01b039091169084908990615500565b60405180910390a16003840154604080518581526001600160a01b03909216602083015286917f9ccbeffc442024e2a6ade18ff0978af9a4c4d6562ae38adb51ccf8256cf42b41910160405180910390a2600085815260a66020526040812080546001600160a01b03199081168255600182018054909116905590612a4060028301826147a6565b6003820180546001600160a01b0319169055612a606004830160006147a6565b600060058301819055600683018190556007830180546001600160401b0319169055612a909060088401906147a6565b50600060098201819055600a820180546001600160c01b0319169055600b8201819055600c90910181905585815260a760205260408082206001908101805460ff19169091179055516001600160a01b0384169085908381818185875af1925050503d8060008114612b1e576040519150601f19603f3d011682016040523d82523d6000602084013e612b23565b606091505b5050905080612b5d5760405162461bcd60e51b8152602060048201526006602482015265131090cc0d0d60d21b60448201526064016102ce565b5050505050612b6c6001606555565b50565b612b7833614418565b612b945760405162461bcd60e51b81526004016102ce90615449565b3360009081526099602052604081208054349290612bb39084906156f0565b90915550506040517f456e0f4ea86ac283092c750200e8c877f6ad8901ae575f90e02081acd455af849061192f90339034906157c0565b6000610a7282613c2a565b612bfe33614418565b612c1a5760405162461bcd60e51b81526004016102ce90615449565b611da333346142a8565b612c2c613bd1565b612c35336143d9565b612c515760405162461bcd60e51b81526004016102ce90615449565b600085815260a7602052604090206001015460ff1615612c835760405162461bcd60e51b81526004016102ce9061598c565b600085815260a66020526040902080546001600160a01b0316612cb85760405162461bcd60e51b81526004016102ce906159ac565b60405162f5b49160e01b815260009073__BtcUtils______________________________9062f5b49190612cf0908990600401614f4e565b600060405180830381865af4158015612d0d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612d3591908101906159cc565b9050600073__BtcUtils______________________________632d56f32383600181518110612d6657612d66615adf565b6020026020010151602001516040518263ffffffff1660e01b8152600401612d8e9190614f4e565b600060405180830381865af4158015612dab573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612dd391908101906158c2565b905080516021148015612e0b575080600081518110612df457612df4615adf565b6020910101516001600160f81b031916600160fd1b145b612e405760405162461bcd60e51b81526020600482015260066024820152654c424330373560d01b60448201526064016102ce565b60005b60018251612e5191906154ed565b8160ff161015612ec35781612e67826001615af5565b60ff1681518110612e7a57612e7a615adf565b602001015160f81c60f81b828260ff1681518110612e9a57612e9a615adf565b60200101906001600160f81b031916908160001a90535080612ebb81615b0e565b915050612e43565b50600081806020019051810190612eda9190615b2d565b9050808914612f145760405162461bcd60e51b81526020600482015260066024820152654c424330363960d01b60448201526064016102ce565b60018401546001600160a01b03163314612f595760405162461bcd60e51b815260206004820152600660248201526509884866068760d31b60448201526064016102ce565b600a84015460975460405163fea8ba6360e01b8152600160501b90920461ffff16916001600160a01b0390911690635b6445879073__BtcUtils______________________________9063fea8ba6390612fb7908e90600401614f4e565b602060405180830381865af4158015612fd4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612ff89190615b2d565b8a8a8a6040518563ffffffff1660e01b815260040161301a9493929190615b46565b602060405180830381865afa158015613037573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061305b9190615b2d565b12156130925760405162461bcd60e51b81526020600482015260066024820152654c424330343960d01b60448201526064016102ce565b60098401546402540be400811180156130be57506402540be40085600901546130bb919061581c565b15155b156130ea576402540be40085600901546130d8919061581c565b85600901546130e791906154ed565b90505b60006402540be4008560008151811061310557613105615adf565b6020026020010151600001516001600160401b03166131249190615521565b90508082111561315f5760405162461bcd60e51b81526020600482015260066024820152654c424330363760d01b60448201526064016102ce565b600073__BtcUtils______________________________63c7ce85ac8760008151811061318e5761318e615adf565b602090810291909101810151015160a4546040516001600160e01b031960e085901b1681526131c4929160ff1690600401615ba2565b600060405180830381865af41580156131e1573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261320991908101906158c2565b90508080519060200120876008016040516132249190615bc6565b6040518091039020146132625760405162461bcd60e51b81526020600482015260066024820152650988486606c760d31b60448201526064016102ce565b604080516102608101825288546001600160a01b03908116825260018a0154166020820152600289018054613513938b92908401916132a090615230565b80601f01602080910402602001604051908101604052809291908181526020018280546132cc90615230565b80156133195780601f106132ee57610100808354040283529160200191613319565b820191906000526020600020905b8154815290600101906020018083116132fc57829003601f168201915b505050918352505060038201546001600160a01b0316602082015260048201805460409092019161334990615230565b80601f016020809104026020016040519081016040528092919081815260200182805461337590615230565b80156133c25780601f10613397576101008083540402835291602001916133c2565b820191906000526020600020905b8154815290600101906020018083116133a557829003601f168201915b50505091835250506005820154602082015260068201546040820152600780830154900b606082015260088201805460809092019161340090615230565b80601f016020809104026020016040519081016040528092919081815260200182805461342c90615230565b80156134795780601f1061344e57610100808354040283529160200191613479565b820191906000526020600020905b81548152906001019060200180831161345c57829003601f168201915b505050918352505060098201546020820152600a82015463ffffffff8082166040840152600160201b82048116606084015261ffff600160401b830481166080850152600160501b83041660a0840152600160601b8204811660c0840152600160801b8204811660e0840152600160a01b90910416610100820152600b820154610120820152600c9091015461014090910152858c614567565b156135b657600687015460018801546001600160a01b03166000908152609a6020526040812054909161354591614290565b60018901546001600160a01b03166000908152609a60205260408120805492935083929091906135769084906154ed565b90915550506001880154604051600080516020615ead833981519152916135ac916001600160a01b039091169084908990615500565b60405180910390a1505b6001870154600c880154600589015460098a01546000936001600160a01b031692916135e1916156f0565b6135eb91906156f0565b604051600081818185875af1925050503d8060008114613627576040519150601f19603f3d011682016040523d82523d6000602084013e61362c565b606091505b50509050806136665760405162461bcd60e51b815260206004820152600660248201526504c42433035360d41b60448201526064016102ce565b61367488600b01548e614307565b600085815260a66020526040812080546001600160a01b031990811682556001820180549091169055906136ab60028301826147a6565b6003820180546001600160a01b03191690556136cb6004830160006147a6565b600060058301819055600683018190556007830180546001600160401b03191690556136fb9060088401906147a6565b50600060098201819055600a820180546001600160c01b0319169055600b8201819055600c90910181905585815260a760205260408082206001908101805460ff191690911790555186917fb781856ec73fd0dc39351043d1634ea22cd3277b0866ab93e7ec1801766bb38491a2505050505050505061377b6001606555565b5050505050565b606060008060015b60a25481116137cf576000818152609b602052604090206137aa9061471c565b156137bd57826137b981615430565b9350505b806137c781615430565b91505061378a565b506000826001600160401b038111156137ea576137ea6147f4565b60405190808252806020026020018201604052801561382357816020015b613810614765565b8152602001906001900390816138085790505b5060009350905060015b60a2548111613a84576000818152609b60205260409020925061384f8361471c565b15613a72576040805160c0810182528454815260018501546001600160a01b0316602082015260028501805491928692908401919061388d90615230565b80601f01602080910402602001604051908101604052809291908181526020018280546138b990615230565b80156139065780601f106138db57610100808354040283529160200191613906565b820191906000526020600020905b8154815290600101906020018083116138e957829003601f168201915b5050505050815260200160038201805461391f90615230565b80601f016020809104026020016040519081016040528092919081815260200182805461394b90615230565b80156139985780601f1061396d57610100808354040283529160200191613998565b820191906000526020600020905b81548152906001019060200180831161397b57829003601f168201915b5050509183525050600482015460ff16151560208201526005820180546040909201916139c490615230565b80601f01602080910402602001604051908101604052809291908181526020018280546139f090615230565b8015613a3d5780601f10613a1257610100808354040283529160200191613a3d565b820191906000526020600020905b815481529060010190602001808311613a2057829003601f168201915b505050505081525050828581518110613a5857613a58615adf565b60200260200101819052508380613a6e90615430565b9450505b80613a7c81615430565b91505061382d565b509392505050565b613a94614457565b6001600160a01b038116613af95760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016102ce565b612b6c816144b6565b80516000906001600160a01b03163014613b475760405162461bcd60e51b8152602060048201526006602482015265262121981a9b60d11b60448201526064016102ce565b60405163025018e760e31b815273__QuotesV2______________________________90631280c73890613b7e908590600401615c3c565b600060405180830381865af4158015613b9b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052613bc391908101906158c2565b805190602001209050919050565b600260655403613c235760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016102ce565b6002606555565b600081602001516001600160a01b0316306001600160a01b031614613c7a5760405162461bcd60e51b81526020600482015260066024820152654c424330353160d01b60448201526064016102ce565b6101008201516097546001600160a01b03918216911603613cc65760405162461bcd60e51b8152602060048201526006602482015265262121981a9960d11b60448201526064016102ce565b81606001515160151480613cdf57508160600151516021145b613d145760405162461bcd60e51b81526020600482015260066024820152654c424330353360d01b60448201526064016102ce565b8160a0015151601514613d525760405162461bcd60e51b8152602060048201526006602482015265131090cc0d4d60d21b60448201526064016102ce565b609f548261026001518361024001518460c00151856101800151613d7691906156f0565b613d8091906156f0565b613d8a91906156f0565b1015613dc15760405162461bcd60e51b81526020600482015260066024820152654c424330353560d01b60448201526064016102ce565b816101c0015163ffffffff16826101a0015163ffffffff16613de39190615dd6565b6001600160401b031663ffffffff1015613e285760405162461bcd60e51b81526020600482015260066024820152654c424330373160d01b60448201526064016102ce565b60405162773b7960e01b815273__QuotesV2______________________________9062773b7990613b7e908590600401615df6565b609754606086015160a08701516000848152609c602052604081205490936001600160a01b031692636adc013392899288928a92899230919063ffffffff1615801590613ebf575060008b8152609c6020526040902054600160201b900460ff165b6040518963ffffffff1660e01b8152600401613ee2989796959493929190615e09565b6020604051808303816000875af1158015613f01573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613f259190615b2d565b9695505050505050565b60008084138015613f7357508461026001518561024001518660c00151876101800151613f5c91906156f0565b613f6691906156f0565b613f7091906156f0565b84105b15613f80575060006118ac565b60975460405163bd0c1fff60e01b8152600481018490526000916001600160a01b03169063bd0c1fff90602401600060405180830381865afa158015613fca573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052613ff291908101906158c2565b9050600081511161403c5760405162461bcd60e51b8152602060048201526014602482015273125b9d985b1a5908189b1bd8dac81a195a59da1d60621b60448201526064016102ce565b6040516328335c3f60e21b815260009073__BtcUtils______________________________9063a0cd70fc90614076908590600401614f4e565b602060405180830381865af4158015614093573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906140b79190615b2d565b90506000876101c00151886101a001516140d19190615968565b63ffffffff169050808211156140ed57600093505050506118ac565b8560000361410157600193505050506118ac565b6097546102008901516000916001600160a01b03169063bd0c1fff9060019061412e9061ffff168a6156f0565b61413891906154ed565b6040518263ffffffff1660e01b815260040161415691815260200190565b600060405180830381865afa158015614173573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261419b91908101906158c2565b905060008151116141d75760405162461bcd60e51b81526020600482015260066024820152650988486606a760d31b60448201526064016102ce565b6040516328335c3f60e21b815260009073__BtcUtils______________________________9063a0cd70fc90614211908590600401614f4e565b602060405180830381865af415801561422e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906142529190615b2d565b9050896101e0015163ffffffff168161426b91906156f0565b881115614280576001955050505050506118ac565b5060009998505050505050505050565b600081831061429f57816142a1565b825b9392505050565b6001600160a01b038216600090815260986020526040812080548392906142d09084906156f0565b90915550506040517f42cfb81a915ac5a674852db250bf722637bee705a267633b68cab3a2dde06f539061137690849084906157c0565b81156143d55760a9546040516000916001600160a01b03169084908381818185875af1925050503d806000811461435a576040519150601f19603f3d011682016040523d82523d6000602084013e61435f565b606091505b50509050806143995760405162461bcd60e51b8152602060048201526006602482015265131090cc0dcd60d21b60448201526064016102ce565b817f58e13ac0d5c8d27d14009841e72ac8b1858e2709c2c99af2075d9bb5f340ecfc846040516143cb91815260200190565b60405180910390a2505b5050565b6001600160a01b0381166000908152609a602052604081205415801590610a725750506001600160a01b03166000908152609d60205260409020541590565b6001600160a01b03811660009081526099602052604081205415801590610a725750506001600160a01b03166000908152609d60205260409020541590565b33614460612833565b6001600160a01b031614611da35760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016102ce565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6001600160a01b038216600090815260986020526040812080548392906145309084906154ed565b90915550506040517f8e51a4493a6f66c76e13fd9e3b754eafbfe21343c04508deb61be8ccc00645879061137690849084906157c0565b6097546040516339cf1b2560e11b81526004810183905260009182916001600160a01b039091169063739e364a90602401600060405180830381865afa1580156145b5573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526145dd91908101906158c2565b905060008151116146195760405162461bcd60e51b81526020600482015260066024820152654c424330353960d01b60448201526064016102ce565b6040516328335c3f60e21b815260009073__BtcUtils______________________________9063a0cd70fc90614653908590600401614f4e565b602060405180830381865af4158015614670573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906146949190615b2d565b60a3546101c0880151600088815260a7602052604090205492935090916146c19163ffffffff16906156f0565b6146cb91906156f0565b8111156146dd576001925050506142a1565b856101e0015163ffffffff16421180614700575085610200015163ffffffff1643115b15614710576001925050506142a1565b50600095945050505050565b6001810154600090614736906001600160a01b0316614418565b8061475357506001820154614753906001600160a01b03166143d9565b8015610a725750506004015460ff1690565b6040518060c001604052806000815260200160006001600160a01b031681526020016060815260200160608152602001600015158152602001606081525090565b5080546147b290615230565b6000825580601f106147c2575050565b601f016020900490600052602060002090810190612b6c91905b808211156147f057600081556001016147dc565b5090565b634e487b7160e01b600052604160045260246000fd5b60405161026081016001600160401b038111828210171561482d5761482d6147f4565b60405290565b60405161028081016001600160401b038111828210171561482d5761482d6147f4565b604051608081016001600160401b038111828210171561482d5761482d6147f4565b604051601f8201601f191681016001600160401b03811182821017156148a0576148a06147f4565b604052919050565b60006001600160401b038211156148c1576148c16147f4565b50601f01601f191660200190565b600082601f8301126148e057600080fd5b81356148f36148ee826148a8565b614878565b81815284602083860101111561490857600080fd5b816020850160208301376000918101602001919091529392505050565b6000806040838503121561493857600080fd5b82356001600160401b038082111561494f57600080fd5b61495b868387016148cf565b9350602085013591508082111561497157600080fd5b5061497e858286016148cf565b9150509250929050565b6001600160a01b0381168114612b6c57600080fd5b803561237581614988565b8035600781900b811461237557600080fd5b803563ffffffff8116811461237557600080fd5b803561ffff8116811461237557600080fd5b600061026082840312156149f357600080fd5b6149fb61480a565b9050614a068261499d565b8152614a146020830161499d565b602082015260408201356001600160401b0380821115614a3357600080fd5b614a3f858386016148cf565b6040840152614a506060850161499d565b60608401526080840135915080821115614a6957600080fd5b614a75858386016148cf565b608084015260a084013560a084015260c084013560c0840152614a9a60e085016149a8565b60e084015261010091508184013581811115614ab557600080fd5b614ac1868287016148cf565b83850152505050610120808301358183015250610140614ae28184016149ba565b90820152610160614af48382016149ba565b90820152610180614b068382016149ce565b908201526101a0614b188382016149ce565b908201526101c0614b2a8382016149ba565b908201526101e0614b3c8382016149ba565b90820152610200614b4e8382016149ba565b9082015261022082810135908201526102409182013591810191909152919050565b600060208284031215614b8257600080fd5b81356001600160401b03811115614b9857600080fd5b6118ac848285016149e0565b80356001600160601b03198116811461237557600080fd5b8015158114612b6c57600080fd5b803561237581614bbc565b60006102808284031215614be857600080fd5b614bf0614833565b9050614bfb82614ba4565b8152614c096020830161499d565b6020820152614c1a6040830161499d565b604082015260608201356001600160401b0380821115614c3957600080fd5b614c45858386016148cf565b6060840152614c566080850161499d565b608084015260a0840135915080821115614c6f57600080fd5b614c7b858386016148cf565b60a084015260c084013560c084015260e084013560e08401526101009150614ca482850161499d565b8284015261012091508184013581811115614cbe57600080fd5b614cca868287016148cf565b83850152505050610140614cdf8184016149ba565b90820152610160614cf18382016149a8565b9082015261018082810135908201526101a0614d0e8184016149ba565b908201526101c0614d208382016149ba565b908201526101e0614d328382016149ba565b90820152610200614d448382016149ce565b90820152610220614d56838201614bca565b9082015261024082810135908201526102609182013591810191909152919050565b600080600080600060a08688031215614d9057600080fd5b85356001600160401b0380821115614da757600080fd5b614db389838a01614bd5565b96506020880135915080821115614dc957600080fd5b614dd589838a016148cf565b95506040880135915080821115614deb57600080fd5b614df789838a016148cf565b94506060880135915080821115614e0d57600080fd5b50614e1a888289016148cf565b95989497509295608001359392505050565b600060208284031215614e3e57600080fd5b5035919050565b60008060008060808587031215614e5b57600080fd5b84356001600160401b0380821115614e7257600080fd5b614e7e888389016148cf565b95506020870135915080821115614e9457600080fd5b614ea0888389016148cf565b945060408701359150614eb282614bbc565b90925060608601359080821115614ec857600080fd5b50614ed5878288016148cf565b91505092959194509250565b600060208284031215614ef357600080fd5b81356142a181614988565b60005b83811015614f19578181015183820152602001614f01565b50506000910152565b60008151808452614f3a816020860160208601614efe565b601f01601f19169290920160200192915050565b6020815260006142a16020830184614f22565b6001600160a01b03169052565b8051825260018060a01b0360208201511660208301526000604082015160c06040850152614f9f60c0850182614f22565b905060608301518482036060860152614fb88282614f22565b91505060808301511515608085015260a083015184820360a08601526112818282614f22565b6020815260006142a16020830184614f6e565b6001600160a01b0391909116815260200190565b6000806040838503121561501857600080fd5b82359150602083013561502a81614bbc565b809150509250929050565b6000806040838503121561504857600080fd5b82356001600160401b038082111561505f57600080fd5b61495b86838701614bd5565b60006020828403121561507d57600080fd5b81356001600160401b0381111561509357600080fd5b6118ac84828501614bd5565b600080604083850312156150b257600080fd5b82356001600160401b03808211156150c957600080fd5b61495b868387016149e0565b60006001600160401b038211156150ee576150ee6147f4565b5060051b60200190565b600080600080600060a0868803121561511057600080fd5b853594506020808701356001600160401b038082111561512f57600080fd5b61513b8a838b016148cf565b96506040890135955060608901359450608089013591508082111561515f57600080fd5b508701601f8101891361517157600080fd5b803561517f6148ee826150d5565b81815260059190911b8201830190838101908b83111561519e57600080fd5b928401925b828410156151bc578335825292840192908401906151a3565b80955050505050509295509295909350565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b8281101561522357603f19888603018452615211858351614f6e565b945092850192908501906001016151f5565b5092979650505050505050565b600181811c9082168061524457607f821691505b60208210810361526457634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156152b457600081815260208120601f850160051c810160208610156152915750805b601f850160051c820191505b818110156152b05782815560010161529d565b5050505b505050565b81516001600160401b038111156152d2576152d26147f4565b6152e6816152e08454615230565b8461526a565b602080601f83116001811461531b57600084156153035750858301515b600019600386901b1c1916600185901b1785556152b0565b600085815260208120601f198616915b8281101561534a5788860151825594840194600190910190840161532b565b50858210156153685787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6000815461538581615230565b8085526020600183811680156153a257600181146153bc576153ea565b60ff1985168884015283151560051b8801830195506153ea565b866000528260002060005b858110156153e25781548a82018601529083019084016153c7565b890184019650505b505050505092915050565b6040815260006154086040830185615378565b82810360208401526112818185615378565b634e487b7160e01b600052601160045260246000fd5b6000600182016154425761544261541a565b5060010190565b6020808252600690820152654c424330303160d01b604082015260600190565b60208082526006908201526509884866064760d31b604082015260600190565b60018060a01b03841681528260208201526060604082015260006112816060830184614f22565b6000602082840312156154c257600080fd5b81516142a181614bbc565b6020808252600690820152654c424330323960d01b604082015260600190565b81810381811115610a7257610a7261541a565b6001600160a01b039390931683526020830191909152604082015260600190565b8082028115828204841417610a7257610a7261541a565b634e487b7160e01b600052601260045260246000fd5b60008261555d5761555d615538565b500490565b80516001600160601b0319168252600061028060208301516155876020860182614f61565b50604083015161559a6040860182614f61565b5060608301518160608601526155b282860182614f22565b91505060808301516155c76080860182614f61565b5060a083015184820360a08601526155df8282614f22565b91505060c083015160c085015260e083015160e08501526101008084015161560982870182614f61565b505061012080840151858303828701526156238382614f22565b925050506101408084015161563f8287018263ffffffff169052565b5050610160808401516156568287018260070b9052565b505061018083810151908501526101a08084015163ffffffff908116918601919091526101c0808501518216908601526101e080850151909116908501526102008084015161ffff16908501526102208084015115159085015261024080840151908501526102609283015192909301919091525090565b6040815260006156e16040830185615562565b90508260208301529392505050565b80820180821115610a7257610a7261541a565b6001600160a01b03949094168452602084019290925215156040830152606082015260800190565b6000825161573d818460208701614efe565b9190910192915050565b63ffffffff8616815284602082015260a06040820152600061576c60a0830186614f22565b931515606083015250608001529392505050565b6020808252600690820152654c424330313960d01b604082015260600190565b60208082526006908201526504c42433032360d41b604082015260600190565b6001600160a01b03929092168252602082015260400190565b643832b3b4b760d91b815260050190565b651c1959dbdd5d60d21b815260060190565b60208082526006908201526509884866060760d31b604082015260600190565b60008261582b5761582b615538565b500690565b84815260008451615848816020850160208901614efe565b808301905060018060601b031985166020820152835161586f816034840160208801614efe565b016034019695505050505050565b600082601f83011261588e57600080fd5b815161589c6148ee826148a8565b8181528460208386010111156158b157600080fd5b6118ac826020830160208701614efe565b6000602082840312156158d457600080fd5b81516001600160401b038111156158ea57600080fd5b6118ac8482850161587d565b600160fd1b8152826001820152607560f81b602182015260008251615922816022850160208701614efe565b919091016022019392505050565b6060815260006159436060830186614f22565b82810360208401526159558186614f22565b9150508215156040830152949350505050565b63ffffffff8181168382160190808211156159855761598561541a565b5092915050565b602080825260069082015265131090cc0d8d60d21b604082015260600190565b602080825260069082015265262121981a1960d11b604082015260600190565b600060208083850312156159df57600080fd5b82516001600160401b03808211156159f657600080fd5b818501915085601f830112615a0a57600080fd5b8151615a186148ee826150d5565b81815260059190911b83018401908481019088831115615a3757600080fd5b8585015b83811015615ad257805185811115615a535760008081fd5b86016080818c03601f1901811315615a6b5760008081fd5b615a73614856565b898301518881168114615a865760008081fd5b815260408381015189811115615a9c5760008081fd5b615aaa8f8d8388010161587d565b838d015250606084810151918301919091529190920151908201528352918601918601615a3b565b5098975050505050505050565b634e487b7160e01b600052603260045260246000fd5b60ff8181168382160190811115610a7257610a7261541a565b600060ff821660ff8103615b2457615b2461541a565b60010192915050565b600060208284031215615b3f57600080fd5b5051919050565b600060808201868352602086818501528560408501526080606085015281855180845260a086019150828701935060005b81811015615b9357845183529383019391830191600101615b77565b50909998505050505050505050565b604081526000615bb56040830185614f22565b905082151560208301529392505050565b6000808354615bd481615230565b60018281168015615bec5760018114615c0157615c30565b60ff1984168752821515830287019450615c30565b8760005260208060002060005b85811015615c275781548a820152908401908201615c0e565b50505082870194505b50929695505050505050565b60208152615c4e602082018351614f61565b60006020830151615c626040840182614f61565b506040830151610260806060850152615c7f610280850183614f22565b91506060850151615c936080860182614f61565b506080850151601f19808685030160a0870152615cb08483614f22565b935060a087015160c087015260c087015160e087015260e08701519150610100615cde8188018460070b9052565b80880151925050610120818786030181880152615cfb8584614f22565b908801516101408881019190915288015190945091506101609050615d278187018363ffffffff169052565b8601519050610180615d408682018363ffffffff169052565b86015190506101a0615d578682018361ffff169052565b86015190506101c0615d6e8682018361ffff169052565b86015190506101e0615d878682018363ffffffff169052565b8601519050610200615da08682018363ffffffff169052565b8601519050610220615db98682018363ffffffff169052565b860151610240868101919091529095015193019290925250919050565b6001600160401b038181168382160190808211156159855761598561541a565b6020815260006142a16020830184615562565b6000610100808352615e1d8184018c614f22565b90508960208401528281036040840152615e37818a614f22565b90508760608401528281036080840152615e518188614f22565b6001600160a01b03871660a085015283810360c08501529050615e748186614f22565b91505082151560e0830152999850505050505050505056fe3052ea2f7e0d74fdc1c1e1f858ff1ae3d91ab1609717c3efedb95db603b255f69685484093cc596fdaeab51abf645b1753dbb7d869bfd2eb21e2c646e47a36f4bfc7404e6fe464f0646fe2c6ab942b92d56be722bb39f8c6bc4830d2d32fb80da2646970667358221220a30804814b06c853c09e79f1fefab64f035ab323ec2ffc6425a741ebb6a4a87664736f6c63430008120033", - "immutableReferences": {}, - "generatedSources": [], - "deployedGeneratedSources": [ - { - "ast": { - "nodeType": "YulBlock", - "src": "0:64805:32", - "statements": [ - { - "nodeType": "YulBlock", - "src": "6:3:32", - "statements": [] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "188:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "205:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "216:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "198:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "198:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "198:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "239:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "250:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "235:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "235:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "255:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "228:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "228:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "228:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "277:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "288:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "273:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "273:18:32" - }, - { - "hexValue": "4c4243303037", - "kind": "string", - "nodeType": "YulLiteral", - "src": "293:8:32", - "type": "", - "value": "LBC007" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "266:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "266:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "266:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "311:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "323:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "334:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "319:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "319:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "311:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_a23daf30bd1e42cc69e3bea751166702f08d640860ab6f4c84d6bacb970360da__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "165:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "179:4:32", - "type": "" - } - ], - "src": "14:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "380:95:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "397:1:32", - "type": "", - "value": "0" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "404:3:32", - "type": "", - "value": "224" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "409:10:32", - "type": "", - "value": "0x4e487b71" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "400:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "400:20:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "390:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "390:31:32" - }, - "nodeType": "YulExpressionStatement", - "src": "390:31:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "437:1:32", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "440:4:32", - "type": "", - "value": "0x41" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "430:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "430:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "430:15:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "461:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "464:4:32", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "454:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "454:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "454:15:32" - } - ] - }, - "name": "panic_error_0x41", - "nodeType": "YulFunctionDefinition", - "src": "348:127:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "526:209:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "536:19:32", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "552:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "546:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "546:9:32" - }, - "variableNames": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "536:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "564:37:32", - "value": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "586:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "594:6:32", - "type": "", - "value": "0x0260" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "582:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "582:19:32" - }, - "variables": [ - { - "name": "newFreePtr", - "nodeType": "YulTypedName", - "src": "568:10:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "676:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "678:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "678:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "678:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "619:10:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "639:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "643:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "635:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "635:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "647:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "631:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "631:18:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "616:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "616:34:32" - }, - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "655:10:32" - }, - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "667:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "652:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "652:22:32" - } - ], - "functionName": { - "name": "or", - "nodeType": "YulIdentifier", - "src": "613:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "613:62:32" - }, - "nodeType": "YulIf", - "src": "610:88:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "714:2:32", - "type": "", - "value": "64" - }, - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "718:10:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "707:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "707:22:32" - }, - "nodeType": "YulExpressionStatement", - "src": "707:22:32" - } - ] - }, - "name": "allocate_memory_8440", - "nodeType": "YulFunctionDefinition", - "returnVariables": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "515:6:32", - "type": "" - } - ], - "src": "480:255:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "786:209:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "796:19:32", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "812:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "806:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "806:9:32" - }, - "variableNames": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "796:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "824:37:32", - "value": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "846:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "854:6:32", - "type": "", - "value": "0x0280" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "842:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "842:19:32" - }, - "variables": [ - { - "name": "newFreePtr", - "nodeType": "YulTypedName", - "src": "828:10:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "936:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "938:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "938:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "938:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "879:10:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "899:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "903:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "895:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "895:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "907:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "891:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "891:18:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "876:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "876:34:32" - }, - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "915:10:32" - }, - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "927:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "912:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "912:22:32" - } - ], - "functionName": { - "name": "or", - "nodeType": "YulIdentifier", - "src": "873:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "873:62:32" - }, - "nodeType": "YulIf", - "src": "870:88:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "974:2:32", - "type": "", - "value": "64" - }, - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "978:10:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "967:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "967:22:32" - }, - "nodeType": "YulExpressionStatement", - "src": "967:22:32" - } - ] - }, - "name": "allocate_memory_8441", - "nodeType": "YulFunctionDefinition", - "returnVariables": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "775:6:32", - "type": "" - } - ], - "src": "740:255:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1046:207:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "1056:19:32", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1072:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "1066:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "1066:9:32" - }, - "variableNames": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1056:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1084:35:32", - "value": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1106:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1114:4:32", - "type": "", - "value": "0x80" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1102:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1102:17:32" - }, - "variables": [ - { - "name": "newFreePtr", - "nodeType": "YulTypedName", - "src": "1088:10:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1194:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "1196:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "1196:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1196:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "1137:10:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1157:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1161:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "1153:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1153:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1165:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "1149:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1149:18:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1134:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "1134:34:32" - }, - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "1173:10:32" - }, - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1185:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "1170:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "1170:22:32" - } - ], - "functionName": { - "name": "or", - "nodeType": "YulIdentifier", - "src": "1131:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "1131:62:32" - }, - "nodeType": "YulIf", - "src": "1128:88:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1232:2:32", - "type": "", - "value": "64" - }, - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "1236:10:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1225:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1225:22:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1225:22:32" - } - ] - }, - "name": "allocate_memory_8445", - "nodeType": "YulFunctionDefinition", - "returnVariables": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "1035:6:32", - "type": "" - } - ], - "src": "1000:253:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1303:230:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "1313:19:32", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1329:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "1323:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "1323:9:32" - }, - "variableNames": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1313:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1341:58:32", - "value": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1363:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "size", - "nodeType": "YulIdentifier", - "src": "1379:4:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1385:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1375:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1375:13:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1394:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "1390:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1390:7:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "1371:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1371:27:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1359:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1359:40:32" - }, - "variables": [ - { - "name": "newFreePtr", - "nodeType": "YulTypedName", - "src": "1345:10:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1474:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "1476:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "1476:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1476:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "1417:10:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1437:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1441:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "1433:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1433:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1445:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "1429:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1429:18:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1414:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "1414:34:32" - }, - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "1453:10:32" - }, - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1465:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "1450:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "1450:22:32" - } - ], - "functionName": { - "name": "or", - "nodeType": "YulIdentifier", - "src": "1411:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "1411:62:32" - }, - "nodeType": "YulIf", - "src": "1408:88:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1512:2:32", - "type": "", - "value": "64" - }, - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "1516:10:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1505:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1505:22:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1505:22:32" - } - ] - }, - "name": "allocate_memory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "size", - "nodeType": "YulTypedName", - "src": "1283:4:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "1292:6:32", - "type": "" - } - ], - "src": "1258:275:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1596:129:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "1640:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "1642:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "1642:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1642:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "1612:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1628:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1632:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "1624:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1624:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1636:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "1620:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1620:18:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1609:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "1609:30:32" - }, - "nodeType": "YulIf", - "src": "1606:56:32" - }, - { - "nodeType": "YulAssignment", - "src": "1671:48:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "1691:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1699:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1687:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1687:15:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1708:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "1704:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1704:7:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "1683:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1683:29:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1714:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1679:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1679:40:32" - }, - "variableNames": [ - { - "name": "size", - "nodeType": "YulIdentifier", - "src": "1671:4:32" - } - ] - } - ] - }, - "name": "array_allocation_size_string", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "1576:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "size", - "nodeType": "YulTypedName", - "src": "1587:4:32", - "type": "" - } - ], - "src": "1538:187:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1783:411:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "1832:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1841:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1844:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1834:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1834:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1834:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1811:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1819:4:32", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1807:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1807:17:32" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "1826:3:32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "1803:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1803:27:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "1796:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1796:35:32" - }, - "nodeType": "YulIf", - "src": "1793:55:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1857:30:32", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1880:6:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "1867:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "1867:20:32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "1861:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1896:64:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1956:2:32" - } - ], - "functionName": { - "name": "array_allocation_size_string", - "nodeType": "YulIdentifier", - "src": "1927:28:32" - }, - "nodeType": "YulFunctionCall", - "src": "1927:32:32" - } - ], - "functionName": { - "name": "allocate_memory", - "nodeType": "YulIdentifier", - "src": "1911:15:32" - }, - "nodeType": "YulFunctionCall", - "src": "1911:49:32" - }, - "variables": [ - { - "name": "array_1", - "nodeType": "YulTypedName", - "src": "1900:7:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "array_1", - "nodeType": "YulIdentifier", - "src": "1976:7:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1985:2:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1969:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1969:19:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1969:19:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2036:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2045:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2048:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "2038:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2038:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2038:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "2011:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "2019:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2007:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2007:15:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2024:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2003:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2003:26:32" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "2031:3:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "2000:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "2000:35:32" - }, - "nodeType": "YulIf", - "src": "1997:55:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "array_1", - "nodeType": "YulIdentifier", - "src": "2078:7:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2087:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2074:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2074:18:32" - }, - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "2098:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2106:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2094:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2094:17:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "2113:2:32" - } - ], - "functionName": { - "name": "calldatacopy", - "nodeType": "YulIdentifier", - "src": "2061:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "2061:55:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2061:55:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "array_1", - "nodeType": "YulIdentifier", - "src": "2140:7:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "2149:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2136:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2136:16:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2154:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2132:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2132:27:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2161:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2125:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2125:38:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2125:38:32" - }, - { - "nodeType": "YulAssignment", - "src": "2172:16:32", - "value": { - "name": "array_1", - "nodeType": "YulIdentifier", - "src": "2181:7:32" - }, - "variableNames": [ - { - "name": "array", - "nodeType": "YulIdentifier", - "src": "2172:5:32" - } - ] - } - ] - }, - "name": "abi_decode_string", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "1757:6:32", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "1765:3:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "array", - "nodeType": "YulTypedName", - "src": "1773:5:32", - "type": "" - } - ], - "src": "1730:464:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2306:436:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "2352:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2361:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2364:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "2354:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2354:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2354:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "2327:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2336:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "2323:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2323:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2348:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "2319:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2319:32:32" - }, - "nodeType": "YulIf", - "src": "2316:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2377:37:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2404:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "2391:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "2391:23:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "2381:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2423:28:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2441:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2445:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "2437:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2437:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2449:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "2433:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2433:18:32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "2427:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2478:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2487:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2490:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "2480:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2480:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2480:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "2466:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "2474:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "2463:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "2463:14:32" - }, - "nodeType": "YulIf", - "src": "2460:34:32" - }, - { - "nodeType": "YulAssignment", - "src": "2503:60:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2535:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "2546:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2531:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2531:22:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "2555:7:32" - } - ], - "functionName": { - "name": "abi_decode_string", - "nodeType": "YulIdentifier", - "src": "2513:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "2513:50:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "2503:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2572:48:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2605:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2616:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2601:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2601:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "2588:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "2588:32:32" - }, - "variables": [ - { - "name": "offset_1", - "nodeType": "YulTypedName", - "src": "2576:8:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2649:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2658:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2661:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "2651:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2651:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2651:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "2635:8:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "2645:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "2632:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "2632:16:32" - }, - "nodeType": "YulIf", - "src": "2629:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "2674:62:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2706:9:32" - }, - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "2717:8:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2702:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2702:24:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "2728:7:32" - } - ], - "functionName": { - "name": "abi_decode_string", - "nodeType": "YulIdentifier", - "src": "2684:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "2684:52:32" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "2674:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_string_memory_ptrt_string_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "2264:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "2275:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "2287:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "2295:6:32", - "type": "" - } - ], - "src": "2199:543:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2844:87:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "2854:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2866:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2877:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2862:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2862:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "2854:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2896:9:32" - }, - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "2911:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2919:4:32", - "type": "", - "value": "0xff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "2907:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2907:17:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2889:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2889:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2889:36:32" - } - ] - }, - "name": "abi_encode_tuple_t_uint8__to_t_uint8__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "2813:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "2824:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "2835:4:32", - "type": "" - } - ], - "src": "2747:184:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3037:76:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "3047:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3059:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3070:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3055:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3055:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "3047:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3089:9:32" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "3100:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3082:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3082:25:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3082:25:32" - } - ] - }, - "name": "abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "3006:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "3017:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "3028:4:32", - "type": "" - } - ], - "src": "2936:177:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3163:86:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "3227:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3236:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3239:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "3229:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3229:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3229:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3186:5:32" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3197:5:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3212:3:32", - "type": "", - "value": "160" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3217:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "3208:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3208:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3221:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "3204:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3204:19:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "3193:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3193:31:32" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "3183:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "3183:42:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "3176:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3176:50:32" - }, - "nodeType": "YulIf", - "src": "3173:70:32" - } - ] - }, - "name": "validator_revert_address", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "3152:5:32", - "type": "" - } - ], - "src": "3118:131:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3303:85:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "3313:29:32", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "3335:6:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "3322:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "3322:20:32" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3313:5:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3376:5:32" - } - ], - "functionName": { - "name": "validator_revert_address", - "nodeType": "YulIdentifier", - "src": "3351:24:32" - }, - "nodeType": "YulFunctionCall", - "src": "3351:31:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3351:31:32" - } - ] - }, - "name": "abi_decode_address", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "3282:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "3293:5:32", - "type": "" - } - ], - "src": "3254:134:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3440:113:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "3450:29:32", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "3472:6:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "3459:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "3459:20:32" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3450:5:32" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3531:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3540:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3543:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "3533:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3533:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3533:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3501:5:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3519:1:32", - "type": "", - "value": "7" - }, - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3522:5:32" - } - ], - "functionName": { - "name": "signextend", - "nodeType": "YulIdentifier", - "src": "3508:10:32" - }, - "nodeType": "YulFunctionCall", - "src": "3508:20:32" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "3498:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "3498:31:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "3491:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3491:39:32" - }, - "nodeType": "YulIf", - "src": "3488:59:32" - } - ] - }, - "name": "abi_decode_int64", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "3419:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "3430:5:32", - "type": "" - } - ], - "src": "3393:160:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3606:115:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "3616:29:32", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "3638:6:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "3625:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "3625:20:32" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3616:5:32" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3699:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3708:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3711:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "3701:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3701:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3701:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3667:5:32" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3678:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3685:10:32", - "type": "", - "value": "0xffffffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "3674:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3674:22:32" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "3664:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "3664:33:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "3657:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3657:41:32" - }, - "nodeType": "YulIf", - "src": "3654:61:32" - } - ] - }, - "name": "abi_decode_uint32", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "3585:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "3596:5:32", - "type": "" - } - ], - "src": "3558:163:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3774:111:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "3784:29:32", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "3806:6:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "3793:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "3793:20:32" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3784:5:32" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3863:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3872:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3875:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "3865:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3865:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3865:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3835:5:32" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3846:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3853:6:32", - "type": "", - "value": "0xffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "3842:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3842:18:32" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "3832:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "3832:29:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "3825:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3825:37:32" - }, - "nodeType": "YulIf", - "src": "3822:57:32" - } - ] - }, - "name": "abi_decode_uint16", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "3753:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "3764:5:32", - "type": "" - } - ], - "src": "3726:159:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3958:2026:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "4004:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4013:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4016:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "4006:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4006:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4006:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "3979:3:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3984:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "3975:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3975:19:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3996:6:32", - "type": "", - "value": "0x0260" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "3971:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3971:32:32" - }, - "nodeType": "YulIf", - "src": "3968:52:32" - }, - { - "nodeType": "YulAssignment", - "src": "4029:31:32", - "value": { - "arguments": [], - "functionName": { - "name": "allocate_memory_8440", - "nodeType": "YulIdentifier", - "src": "4038:20:32" - }, - "nodeType": "YulFunctionCall", - "src": "4038:22:32" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "4029:5:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "4076:5:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4102:9:32" - } - ], - "functionName": { - "name": "abi_decode_address", - "nodeType": "YulIdentifier", - "src": "4083:18:32" - }, - "nodeType": "YulFunctionCall", - "src": "4083:29:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4069:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4069:44:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4069:44:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "4133:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4140:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4129:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4129:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4168:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4179:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4164:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4164:18:32" - } - ], - "functionName": { - "name": "abi_decode_address", - "nodeType": "YulIdentifier", - "src": "4145:18:32" - }, - "nodeType": "YulFunctionCall", - "src": "4145:38:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4122:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4122:62:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4122:62:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "4193:46:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4224:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4235:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4220:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4220:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "4207:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "4207:32:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "4197:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "4248:28:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4266:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4270:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "4262:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4262:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4274:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "4258:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4258:18:32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "4252:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4303:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4312:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4315:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "4305:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4305:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4305:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "4291:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "4299:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "4288:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "4288:14:32" - }, - "nodeType": "YulIf", - "src": "4285:34:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "4339:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4346:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4335:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4335:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4373:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "4384:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4369:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4369:22:32" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "4393:3:32" - } - ], - "functionName": { - "name": "abi_decode_string", - "nodeType": "YulIdentifier", - "src": "4351:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "4351:46:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4328:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4328:70:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4328:70:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "4418:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4425:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4414:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4414:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4453:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4464:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4449:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4449:18:32" - } - ], - "functionName": { - "name": "abi_decode_address", - "nodeType": "YulIdentifier", - "src": "4430:18:32" - }, - "nodeType": "YulFunctionCall", - "src": "4430:38:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4407:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4407:62:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4407:62:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "4478:49:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4511:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4522:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4507:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4507:19:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "4494:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "4494:33:32" - }, - "variables": [ - { - "name": "offset_1", - "nodeType": "YulTypedName", - "src": "4482:8:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4556:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4565:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4568:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "4558:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4558:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4558:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "4542:8:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "4552:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "4539:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "4539:16:32" - }, - "nodeType": "YulIf", - "src": "4536:36:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "4592:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4599:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4588:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4588:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4627:9:32" - }, - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "4638:8:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4623:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4623:24:32" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "4649:3:32" - } - ], - "functionName": { - "name": "abi_decode_string", - "nodeType": "YulIdentifier", - "src": "4605:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "4605:48:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4581:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4581:73:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4581:73:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "4674:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4681:3:32", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4670:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4670:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4704:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4715:3:32", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4700:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4700:19:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "4687:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "4687:33:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4663:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4663:58:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4663:58:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "4741:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4748:3:32", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4737:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4737:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4771:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4782:3:32", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4767:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4767:19:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "4754:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "4754:33:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4730:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4730:58:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4730:58:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "4808:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4815:3:32", - "type": "", - "value": "224" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4804:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4804:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4842:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4853:3:32", - "type": "", - "value": "224" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4838:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4838:19:32" - } - ], - "functionName": { - "name": "abi_decode_int64", - "nodeType": "YulIdentifier", - "src": "4821:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "4821:37:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4797:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4797:62:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4797:62:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "4868:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4878:3:32", - "type": "", - "value": "256" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "4872:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "4890:48:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4923:9:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "4934:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4919:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4919:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "4906:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "4906:32:32" - }, - "variables": [ - { - "name": "offset_2", - "nodeType": "YulTypedName", - "src": "4894:8:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4967:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4976:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4979:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "4969:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4969:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4969:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_2", - "nodeType": "YulIdentifier", - "src": "4953:8:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "4963:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "4950:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "4950:16:32" - }, - "nodeType": "YulIf", - "src": "4947:36:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "5003:5:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "5010:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4999:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4999:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5037:9:32" - }, - { - "name": "offset_2", - "nodeType": "YulIdentifier", - "src": "5048:8:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5033:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5033:24:32" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "5059:3:32" - } - ], - "functionName": { - "name": "abi_decode_string", - "nodeType": "YulIdentifier", - "src": "5015:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "5015:48:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4992:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4992:72:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4992:72:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "5073:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5083:3:32", - "type": "", - "value": "288" - }, - "variables": [ - { - "name": "_3", - "nodeType": "YulTypedName", - "src": "5077:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "5106:5:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "5113:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5102:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5102:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5135:9:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "5146:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5131:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5131:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "5118:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "5118:32:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5095:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "5095:56:32" - }, - "nodeType": "YulExpressionStatement", - "src": "5095:56:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "5160:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5170:3:32", - "type": "", - "value": "320" - }, - "variables": [ - { - "name": "_4", - "nodeType": "YulTypedName", - "src": "5164:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "5193:5:32" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "5200:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5189:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5189:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5227:9:32" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "5238:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5223:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5223:18:32" - } - ], - "functionName": { - "name": "abi_decode_uint32", - "nodeType": "YulIdentifier", - "src": "5205:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "5205:37:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5182:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "5182:61:32" - }, - "nodeType": "YulExpressionStatement", - "src": "5182:61:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "5252:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5262:3:32", - "type": "", - "value": "352" - }, - "variables": [ - { - "name": "_5", - "nodeType": "YulTypedName", - "src": "5256:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "5285:5:32" - }, - { - "name": "_5", - "nodeType": "YulIdentifier", - "src": "5292:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5281:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5281:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5319:9:32" - }, - { - "name": "_5", - "nodeType": "YulIdentifier", - "src": "5330:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5315:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5315:18:32" - } - ], - "functionName": { - "name": "abi_decode_uint32", - "nodeType": "YulIdentifier", - "src": "5297:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "5297:37:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5274:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "5274:61:32" - }, - "nodeType": "YulExpressionStatement", - "src": "5274:61:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "5344:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5354:3:32", - "type": "", - "value": "384" - }, - "variables": [ - { - "name": "_6", - "nodeType": "YulTypedName", - "src": "5348:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "5377:5:32" - }, - { - "name": "_6", - "nodeType": "YulIdentifier", - "src": "5384:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5373:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5373:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5411:9:32" - }, - { - "name": "_6", - "nodeType": "YulIdentifier", - "src": "5422:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5407:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5407:18:32" - } - ], - "functionName": { - "name": "abi_decode_uint16", - "nodeType": "YulIdentifier", - "src": "5389:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "5389:37:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5366:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "5366:61:32" - }, - "nodeType": "YulExpressionStatement", - "src": "5366:61:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "5436:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5446:3:32", - "type": "", - "value": "416" - }, - "variables": [ - { - "name": "_7", - "nodeType": "YulTypedName", - "src": "5440:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "5469:5:32" - }, - { - "name": "_7", - "nodeType": "YulIdentifier", - "src": "5476:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5465:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5465:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5503:9:32" - }, - { - "name": "_7", - "nodeType": "YulIdentifier", - "src": "5514:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5499:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5499:18:32" - } - ], - "functionName": { - "name": "abi_decode_uint16", - "nodeType": "YulIdentifier", - "src": "5481:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "5481:37:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5458:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "5458:61:32" - }, - "nodeType": "YulExpressionStatement", - "src": "5458:61:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "5528:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5538:3:32", - "type": "", - "value": "448" - }, - "variables": [ - { - "name": "_8", - "nodeType": "YulTypedName", - "src": "5532:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "5561:5:32" - }, - { - "name": "_8", - "nodeType": "YulIdentifier", - "src": "5568:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5557:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5557:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5595:9:32" - }, - { - "name": "_8", - "nodeType": "YulIdentifier", - "src": "5606:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5591:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5591:18:32" - } - ], - "functionName": { - "name": "abi_decode_uint32", - "nodeType": "YulIdentifier", - "src": "5573:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "5573:37:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5550:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "5550:61:32" - }, - "nodeType": "YulExpressionStatement", - "src": "5550:61:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "5620:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5630:3:32", - "type": "", - "value": "480" - }, - "variables": [ - { - "name": "_9", - "nodeType": "YulTypedName", - "src": "5624:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "5653:5:32" - }, - { - "name": "_9", - "nodeType": "YulIdentifier", - "src": "5660:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5649:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5649:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5687:9:32" - }, - { - "name": "_9", - "nodeType": "YulIdentifier", - "src": "5698:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5683:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5683:18:32" - } - ], - "functionName": { - "name": "abi_decode_uint32", - "nodeType": "YulIdentifier", - "src": "5665:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "5665:37:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5642:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "5642:61:32" - }, - "nodeType": "YulExpressionStatement", - "src": "5642:61:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "5712:14:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5723:3:32", - "type": "", - "value": "512" - }, - "variables": [ - { - "name": "_10", - "nodeType": "YulTypedName", - "src": "5716:3:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "5746:5:32" - }, - { - "name": "_10", - "nodeType": "YulIdentifier", - "src": "5753:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5742:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5742:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5781:9:32" - }, - { - "name": "_10", - "nodeType": "YulIdentifier", - "src": "5792:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5777:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5777:19:32" - } - ], - "functionName": { - "name": "abi_decode_uint32", - "nodeType": "YulIdentifier", - "src": "5759:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "5759:38:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5735:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "5735:63:32" - }, - "nodeType": "YulExpressionStatement", - "src": "5735:63:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "5807:14:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5818:3:32", - "type": "", - "value": "544" - }, - "variables": [ - { - "name": "_11", - "nodeType": "YulTypedName", - "src": "5811:3:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "5841:5:32" - }, - { - "name": "_11", - "nodeType": "YulIdentifier", - "src": "5848:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5837:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5837:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5871:9:32" - }, - { - "name": "_11", - "nodeType": "YulIdentifier", - "src": "5882:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5867:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5867:19:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "5854:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "5854:33:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5830:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "5830:58:32" - }, - "nodeType": "YulExpressionStatement", - "src": "5830:58:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "5897:14:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5908:3:32", - "type": "", - "value": "576" - }, - "variables": [ - { - "name": "_12", - "nodeType": "YulTypedName", - "src": "5901:3:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "5931:5:32" - }, - { - "name": "_12", - "nodeType": "YulIdentifier", - "src": "5938:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5927:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5927:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5961:9:32" - }, - { - "name": "_12", - "nodeType": "YulIdentifier", - "src": "5972:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5957:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5957:19:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "5944:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "5944:33:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5920:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "5920:58:32" - }, - "nodeType": "YulExpressionStatement", - "src": "5920:58:32" - } - ] - }, - "name": "abi_decode_struct_PegOutQuote", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "3929:9:32", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "3940:3:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "3948:5:32", - "type": "" - } - ], - "src": "3890:2094:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6089:254:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "6135:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6144:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6147:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "6137:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "6137:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "6137:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "6110:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6119:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "6106:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6106:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6131:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "6102:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6102:32:32" - }, - "nodeType": "YulIf", - "src": "6099:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "6160:37:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6187:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "6174:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "6174:23:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "6164:6:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6240:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6249:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6252:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "6242:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "6242:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "6242:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "6212:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6228:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6232:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "6224:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6224:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6236:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "6220:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6220:18:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "6209:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "6209:30:32" - }, - "nodeType": "YulIf", - "src": "6206:50:32" - }, - { - "nodeType": "YulAssignment", - "src": "6265:72:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6309:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "6320:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6305:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6305:22:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "6329:7:32" - } - ], - "functionName": { - "name": "abi_decode_struct_PegOutQuote", - "nodeType": "YulIdentifier", - "src": "6275:29:32" - }, - "nodeType": "YulFunctionCall", - "src": "6275:62:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "6265:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_struct$_PegOutQuote_$11272_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "6055:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "6066:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "6078:6:32", - "type": "" - } - ], - "src": "5989:354:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6449:76:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "6459:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6471:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6482:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6467:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6467:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "6459:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6501:9:32" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "6512:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "6494:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "6494:25:32" - }, - "nodeType": "YulExpressionStatement", - "src": "6494:25:32" - } - ] - }, - "name": "abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "6418:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "6429:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "6440:4:32", - "type": "" - } - ], - "src": "6348:177:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6579:128:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "6589:29:32", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "6611:6:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "6598:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "6598:20:32" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "6589:5:32" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6685:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6694:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6697:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "6687:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "6687:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "6687:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "6640:5:32" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "6651:5:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6670:2:32", - "type": "", - "value": "96" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6674:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "6666:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6666:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6678:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "6662:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6662:18:32" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "6658:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6658:23:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "6647:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6647:35:32" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "6637:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "6637:46:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "6630:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "6630:54:32" - }, - "nodeType": "YulIf", - "src": "6627:74:32" - } - ] - }, - "name": "abi_decode_bytes20", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "6558:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "6569:5:32", - "type": "" - } - ], - "src": "6530:177:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6754:76:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "6808:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6817:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6820:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "6810:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "6810:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "6810:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "6777:5:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "6798:5:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "6791:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "6791:13:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "6784:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "6784:21:32" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "6774:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "6774:32:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "6767:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "6767:40:32" - }, - "nodeType": "YulIf", - "src": "6764:60:32" - } - ] - }, - "name": "validator_revert_bool", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "6743:5:32", - "type": "" - } - ], - "src": "6712:118:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6881:82:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "6891:29:32", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "6913:6:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "6900:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "6900:20:32" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "6891:5:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "6951:5:32" - } - ], - "functionName": { - "name": "validator_revert_bool", - "nodeType": "YulIdentifier", - "src": "6929:21:32" - }, - "nodeType": "YulFunctionCall", - "src": "6929:28:32" - }, - "nodeType": "YulExpressionStatement", - "src": "6929:28:32" - } - ] - }, - "name": "abi_decode_bool", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "6860:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "6871:5:32", - "type": "" - } - ], - "src": "6835:128:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7035:2121:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "7081:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7090:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7093:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "7083:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "7083:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "7083:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "7056:3:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7061:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "7052:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7052:19:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7073:6:32", - "type": "", - "value": "0x0280" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "7048:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7048:32:32" - }, - "nodeType": "YulIf", - "src": "7045:52:32" - }, - { - "nodeType": "YulAssignment", - "src": "7106:31:32", - "value": { - "arguments": [], - "functionName": { - "name": "allocate_memory_8441", - "nodeType": "YulIdentifier", - "src": "7115:20:32" - }, - "nodeType": "YulFunctionCall", - "src": "7115:22:32" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "7106:5:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "7153:5:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7179:9:32" - } - ], - "functionName": { - "name": "abi_decode_bytes20", - "nodeType": "YulIdentifier", - "src": "7160:18:32" - }, - "nodeType": "YulFunctionCall", - "src": "7160:29:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "7146:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "7146:44:32" - }, - "nodeType": "YulExpressionStatement", - "src": "7146:44:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "7210:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7217:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7206:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7206:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7245:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7256:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7241:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7241:18:32" - } - ], - "functionName": { - "name": "abi_decode_address", - "nodeType": "YulIdentifier", - "src": "7222:18:32" - }, - "nodeType": "YulFunctionCall", - "src": "7222:38:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "7199:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "7199:62:32" - }, - "nodeType": "YulExpressionStatement", - "src": "7199:62:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "7281:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7288:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7277:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7277:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7316:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7327:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7312:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7312:18:32" - } - ], - "functionName": { - "name": "abi_decode_address", - "nodeType": "YulIdentifier", - "src": "7293:18:32" - }, - "nodeType": "YulFunctionCall", - "src": "7293:38:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "7270:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "7270:62:32" - }, - "nodeType": "YulExpressionStatement", - "src": "7270:62:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "7341:46:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7372:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7383:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7368:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7368:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "7355:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "7355:32:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "7345:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "7396:28:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7414:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7418:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "7410:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7410:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7422:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "7406:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7406:18:32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "7400:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7451:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7460:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7463:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "7453:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "7453:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "7453:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "7439:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "7447:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "7436:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "7436:14:32" - }, - "nodeType": "YulIf", - "src": "7433:34:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "7487:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7494:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7483:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7483:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7521:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "7532:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7517:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7517:22:32" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "7541:3:32" - } - ], - "functionName": { - "name": "abi_decode_string", - "nodeType": "YulIdentifier", - "src": "7499:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "7499:46:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "7476:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "7476:70:32" - }, - "nodeType": "YulExpressionStatement", - "src": "7476:70:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "7566:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7573:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7562:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7562:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7602:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7613:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7598:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7598:19:32" - } - ], - "functionName": { - "name": "abi_decode_address", - "nodeType": "YulIdentifier", - "src": "7579:18:32" - }, - "nodeType": "YulFunctionCall", - "src": "7579:39:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "7555:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "7555:64:32" - }, - "nodeType": "YulExpressionStatement", - "src": "7555:64:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "7628:49:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7661:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7672:3:32", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7657:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7657:19:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "7644:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "7644:33:32" - }, - "variables": [ - { - "name": "offset_1", - "nodeType": "YulTypedName", - "src": "7632:8:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7706:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7715:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7718:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "7708:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "7708:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "7708:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "7692:8:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "7702:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "7689:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "7689:16:32" - }, - "nodeType": "YulIf", - "src": "7686:36:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "7742:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7749:3:32", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7738:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7738:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7777:9:32" - }, - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "7788:8:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7773:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7773:24:32" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "7799:3:32" - } - ], - "functionName": { - "name": "abi_decode_string", - "nodeType": "YulIdentifier", - "src": "7755:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "7755:48:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "7731:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "7731:73:32" - }, - "nodeType": "YulExpressionStatement", - "src": "7731:73:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "7824:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7831:3:32", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7820:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7820:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7854:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7865:3:32", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7850:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7850:19:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "7837:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "7837:33:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "7813:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "7813:58:32" - }, - "nodeType": "YulExpressionStatement", - "src": "7813:58:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "7891:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7898:3:32", - "type": "", - "value": "224" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7887:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7887:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7921:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7932:3:32", - "type": "", - "value": "224" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7917:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7917:19:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "7904:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "7904:33:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "7880:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "7880:58:32" - }, - "nodeType": "YulExpressionStatement", - "src": "7880:58:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "7947:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7957:3:32", - "type": "", - "value": "256" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "7951:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "7980:5:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "7987:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7976:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7976:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8015:9:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "8026:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8011:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8011:18:32" - } - ], - "functionName": { - "name": "abi_decode_address", - "nodeType": "YulIdentifier", - "src": "7992:18:32" - }, - "nodeType": "YulFunctionCall", - "src": "7992:38:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "7969:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "7969:62:32" - }, - "nodeType": "YulExpressionStatement", - "src": "7969:62:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "8040:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8050:3:32", - "type": "", - "value": "288" - }, - "variables": [ - { - "name": "_3", - "nodeType": "YulTypedName", - "src": "8044:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "8062:48:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8095:9:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "8106:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8091:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8091:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "8078:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "8078:32:32" - }, - "variables": [ - { - "name": "offset_2", - "nodeType": "YulTypedName", - "src": "8066:8:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8139:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8148:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8151:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "8141:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "8141:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "8141:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_2", - "nodeType": "YulIdentifier", - "src": "8125:8:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "8135:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "8122:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "8122:16:32" - }, - "nodeType": "YulIf", - "src": "8119:36:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "8175:5:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "8182:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8171:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8171:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8209:9:32" - }, - { - "name": "offset_2", - "nodeType": "YulIdentifier", - "src": "8220:8:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8205:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8205:24:32" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "8231:3:32" - } - ], - "functionName": { - "name": "abi_decode_string", - "nodeType": "YulIdentifier", - "src": "8187:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "8187:48:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "8164:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "8164:72:32" - }, - "nodeType": "YulExpressionStatement", - "src": "8164:72:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "8245:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8255:3:32", - "type": "", - "value": "320" - }, - "variables": [ - { - "name": "_4", - "nodeType": "YulTypedName", - "src": "8249:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "8278:5:32" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "8285:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8274:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8274:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8312:9:32" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "8323:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8308:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8308:18:32" - } - ], - "functionName": { - "name": "abi_decode_uint32", - "nodeType": "YulIdentifier", - "src": "8290:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "8290:37:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "8267:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "8267:61:32" - }, - "nodeType": "YulExpressionStatement", - "src": "8267:61:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "8337:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8347:3:32", - "type": "", - "value": "352" - }, - "variables": [ - { - "name": "_5", - "nodeType": "YulTypedName", - "src": "8341:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "8370:5:32" - }, - { - "name": "_5", - "nodeType": "YulIdentifier", - "src": "8377:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8366:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8366:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8403:9:32" - }, - { - "name": "_5", - "nodeType": "YulIdentifier", - "src": "8414:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8399:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8399:18:32" - } - ], - "functionName": { - "name": "abi_decode_int64", - "nodeType": "YulIdentifier", - "src": "8382:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "8382:36:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "8359:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "8359:60:32" - }, - "nodeType": "YulExpressionStatement", - "src": "8359:60:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "8428:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8438:3:32", - "type": "", - "value": "384" - }, - "variables": [ - { - "name": "_6", - "nodeType": "YulTypedName", - "src": "8432:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "8461:5:32" - }, - { - "name": "_6", - "nodeType": "YulIdentifier", - "src": "8468:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8457:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8457:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8490:9:32" - }, - { - "name": "_6", - "nodeType": "YulIdentifier", - "src": "8501:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8486:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8486:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "8473:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "8473:32:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "8450:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "8450:56:32" - }, - "nodeType": "YulExpressionStatement", - "src": "8450:56:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "8515:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8525:3:32", - "type": "", - "value": "416" - }, - "variables": [ - { - "name": "_7", - "nodeType": "YulTypedName", - "src": "8519:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "8548:5:32" - }, - { - "name": "_7", - "nodeType": "YulIdentifier", - "src": "8555:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8544:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8544:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8582:9:32" - }, - { - "name": "_7", - "nodeType": "YulIdentifier", - "src": "8593:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8578:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8578:18:32" - } - ], - "functionName": { - "name": "abi_decode_uint32", - "nodeType": "YulIdentifier", - "src": "8560:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "8560:37:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "8537:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "8537:61:32" - }, - "nodeType": "YulExpressionStatement", - "src": "8537:61:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "8607:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8617:3:32", - "type": "", - "value": "448" - }, - "variables": [ - { - "name": "_8", - "nodeType": "YulTypedName", - "src": "8611:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "8640:5:32" - }, - { - "name": "_8", - "nodeType": "YulIdentifier", - "src": "8647:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8636:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8636:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8674:9:32" - }, - { - "name": "_8", - "nodeType": "YulIdentifier", - "src": "8685:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8670:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8670:18:32" - } - ], - "functionName": { - "name": "abi_decode_uint32", - "nodeType": "YulIdentifier", - "src": "8652:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "8652:37:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "8629:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "8629:61:32" - }, - "nodeType": "YulExpressionStatement", - "src": "8629:61:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "8699:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8709:3:32", - "type": "", - "value": "480" - }, - "variables": [ - { - "name": "_9", - "nodeType": "YulTypedName", - "src": "8703:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "8732:5:32" - }, - { - "name": "_9", - "nodeType": "YulIdentifier", - "src": "8739:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8728:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8728:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8766:9:32" - }, - { - "name": "_9", - "nodeType": "YulIdentifier", - "src": "8777:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8762:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8762:18:32" - } - ], - "functionName": { - "name": "abi_decode_uint32", - "nodeType": "YulIdentifier", - "src": "8744:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "8744:37:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "8721:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "8721:61:32" - }, - "nodeType": "YulExpressionStatement", - "src": "8721:61:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "8791:14:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8802:3:32", - "type": "", - "value": "512" - }, - "variables": [ - { - "name": "_10", - "nodeType": "YulTypedName", - "src": "8795:3:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "8825:5:32" - }, - { - "name": "_10", - "nodeType": "YulIdentifier", - "src": "8832:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8821:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8821:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8860:9:32" - }, - { - "name": "_10", - "nodeType": "YulIdentifier", - "src": "8871:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8856:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8856:19:32" - } - ], - "functionName": { - "name": "abi_decode_uint16", - "nodeType": "YulIdentifier", - "src": "8838:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "8838:38:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "8814:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "8814:63:32" - }, - "nodeType": "YulExpressionStatement", - "src": "8814:63:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "8886:14:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8897:3:32", - "type": "", - "value": "544" - }, - "variables": [ - { - "name": "_11", - "nodeType": "YulTypedName", - "src": "8890:3:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "8920:5:32" - }, - { - "name": "_11", - "nodeType": "YulIdentifier", - "src": "8927:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8916:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8916:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8953:9:32" - }, - { - "name": "_11", - "nodeType": "YulIdentifier", - "src": "8964:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8949:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8949:19:32" - } - ], - "functionName": { - "name": "abi_decode_bool", - "nodeType": "YulIdentifier", - "src": "8933:15:32" - }, - "nodeType": "YulFunctionCall", - "src": "8933:36:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "8909:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "8909:61:32" - }, - "nodeType": "YulExpressionStatement", - "src": "8909:61:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "8979:14:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8990:3:32", - "type": "", - "value": "576" - }, - "variables": [ - { - "name": "_12", - "nodeType": "YulTypedName", - "src": "8983:3:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "9013:5:32" - }, - { - "name": "_12", - "nodeType": "YulIdentifier", - "src": "9020:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9009:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9009:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9043:9:32" - }, - { - "name": "_12", - "nodeType": "YulIdentifier", - "src": "9054:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9039:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9039:19:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "9026:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "9026:33:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "9002:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "9002:58:32" - }, - "nodeType": "YulExpressionStatement", - "src": "9002:58:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "9069:14:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9080:3:32", - "type": "", - "value": "608" - }, - "variables": [ - { - "name": "_13", - "nodeType": "YulTypedName", - "src": "9073:3:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "9103:5:32" - }, - { - "name": "_13", - "nodeType": "YulIdentifier", - "src": "9110:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9099:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9099:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9133:9:32" - }, - { - "name": "_13", - "nodeType": "YulIdentifier", - "src": "9144:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9129:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9129:19:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "9116:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "9116:33:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "9092:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "9092:58:32" - }, - "nodeType": "YulExpressionStatement", - "src": "9092:58:32" - } - ] - }, - "name": "abi_decode_struct_PeginQuote", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "7006:9:32", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "7017:3:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "7025:5:32", - "type": "" - } - ], - "src": "6968:2188:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9355:846:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "9402:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9411:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9414:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "9404:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "9404:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "9404:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "9376:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9385:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "9372:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9372:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9397:3:32", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "9368:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9368:33:32" - }, - "nodeType": "YulIf", - "src": "9365:53:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "9427:37:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9454:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "9441:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "9441:23:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "9431:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "9473:28:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9491:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9495:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "9487:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9487:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9499:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "9483:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9483:18:32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "9477:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9528:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9537:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9540:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "9530:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "9530:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "9530:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "9516:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "9524:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "9513:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "9513:14:32" - }, - "nodeType": "YulIf", - "src": "9510:34:32" - }, - { - "nodeType": "YulAssignment", - "src": "9553:71:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9596:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "9607:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9592:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9592:22:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "9616:7:32" - } - ], - "functionName": { - "name": "abi_decode_struct_PeginQuote", - "nodeType": "YulIdentifier", - "src": "9563:28:32" - }, - "nodeType": "YulFunctionCall", - "src": "9563:61:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "9553:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "9633:48:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9666:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9677:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9662:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9662:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "9649:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "9649:32:32" - }, - "variables": [ - { - "name": "offset_1", - "nodeType": "YulTypedName", - "src": "9637:8:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9710:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9719:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9722:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "9712:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "9712:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "9712:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "9696:8:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "9706:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "9693:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "9693:16:32" - }, - "nodeType": "YulIf", - "src": "9690:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "9735:62:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9767:9:32" - }, - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "9778:8:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9763:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9763:24:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "9789:7:32" - } - ], - "functionName": { - "name": "abi_decode_string", - "nodeType": "YulIdentifier", - "src": "9745:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "9745:52:32" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "9735:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "9806:48:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9839:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9850:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9835:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9835:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "9822:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "9822:32:32" - }, - "variables": [ - { - "name": "offset_2", - "nodeType": "YulTypedName", - "src": "9810:8:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9883:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9892:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9895:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "9885:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "9885:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "9885:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_2", - "nodeType": "YulIdentifier", - "src": "9869:8:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "9879:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "9866:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "9866:16:32" - }, - "nodeType": "YulIf", - "src": "9863:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "9908:62:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9940:9:32" - }, - { - "name": "offset_2", - "nodeType": "YulIdentifier", - "src": "9951:8:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9936:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9936:24:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "9962:7:32" - } - ], - "functionName": { - "name": "abi_decode_string", - "nodeType": "YulIdentifier", - "src": "9918:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "9918:52:32" - }, - "variableNames": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "9908:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "9979:48:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10012:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10023:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10008:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10008:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "9995:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "9995:32:32" - }, - "variables": [ - { - "name": "offset_3", - "nodeType": "YulTypedName", - "src": "9983:8:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10056:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10065:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10068:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "10058:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "10058:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "10058:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_3", - "nodeType": "YulIdentifier", - "src": "10042:8:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "10052:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "10039:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "10039:16:32" - }, - "nodeType": "YulIf", - "src": "10036:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "10081:62:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10113:9:32" - }, - { - "name": "offset_3", - "nodeType": "YulIdentifier", - "src": "10124:8:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10109:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10109:24:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "10135:7:32" - } - ], - "functionName": { - "name": "abi_decode_string", - "nodeType": "YulIdentifier", - "src": "10091:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "10091:52:32" - }, - "variableNames": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "10081:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "10152:43:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10179:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10190:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10175:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10175:19:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "10162:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "10162:33:32" - }, - "variableNames": [ - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "10152:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_struct$_PeginQuote_$11233_memory_ptrt_bytes_memory_ptrt_bytes_memory_ptrt_bytes_memory_ptrt_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "9289:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "9300:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "9312:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "9320:6:32", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "9328:6:32", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "9336:6:32", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "9344:6:32", - "type": "" - } - ], - "src": "9161:1040:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10305:76:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "10315:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10327:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10338:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10323:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10323:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "10315:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10357:9:32" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "10368:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "10350:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "10350:25:32" - }, - "nodeType": "YulExpressionStatement", - "src": "10350:25:32" - } - ] - }, - "name": "abi_encode_tuple_t_int256__to_t_int256__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "10274:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "10285:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "10296:4:32", - "type": "" - } - ], - "src": "10206:175:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10456:110:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "10502:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10511:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10514:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "10504:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "10504:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "10504:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "10477:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10486:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "10473:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10473:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10498:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "10469:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10469:32:32" - }, - "nodeType": "YulIf", - "src": "10466:52:32" - }, - { - "nodeType": "YulAssignment", - "src": "10527:33:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10550:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "10537:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "10537:23:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "10527:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "10422:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "10433:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "10445:6:32", - "type": "" - } - ], - "src": "10386:180:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10719:725:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "10766:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10775:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10778:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "10768:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "10768:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "10768:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "10740:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10749:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "10736:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10736:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10761:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "10732:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10732:33:32" - }, - "nodeType": "YulIf", - "src": "10729:53:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "10791:37:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10818:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "10805:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "10805:23:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "10795:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "10837:28:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10855:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10859:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "10851:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10851:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10863:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "10847:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10847:18:32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "10841:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10892:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10901:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10904:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "10894:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "10894:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "10894:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "10880:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "10888:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "10877:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "10877:14:32" - }, - "nodeType": "YulIf", - "src": "10874:34:32" - }, - { - "nodeType": "YulAssignment", - "src": "10917:60:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10949:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "10960:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10945:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10945:22:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "10969:7:32" - } - ], - "functionName": { - "name": "abi_decode_string", - "nodeType": "YulIdentifier", - "src": "10927:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "10927:50:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "10917:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "10986:48:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11019:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11030:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11015:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11015:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "11002:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "11002:32:32" - }, - "variables": [ - { - "name": "offset_1", - "nodeType": "YulTypedName", - "src": "10990:8:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "11063:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11072:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11075:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "11065:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "11065:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "11065:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "11049:8:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "11059:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "11046:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "11046:16:32" - }, - "nodeType": "YulIf", - "src": "11043:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "11088:62:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11120:9:32" - }, - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "11131:8:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11116:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11116:24:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "11142:7:32" - } - ], - "functionName": { - "name": "abi_decode_string", - "nodeType": "YulIdentifier", - "src": "11098:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "11098:52:32" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "11088:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "11159:45:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11189:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11200:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11185:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11185:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "11172:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "11172:32:32" - }, - "variables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "11163:5:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "11235:5:32" - } - ], - "functionName": { - "name": "validator_revert_bool", - "nodeType": "YulIdentifier", - "src": "11213:21:32" - }, - "nodeType": "YulFunctionCall", - "src": "11213:28:32" - }, - "nodeType": "YulExpressionStatement", - "src": "11213:28:32" - }, - { - "nodeType": "YulAssignment", - "src": "11250:15:32", - "value": { - "name": "value", - "nodeType": "YulIdentifier", - "src": "11260:5:32" - }, - "variableNames": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "11250:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "11274:48:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11307:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11318:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11303:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11303:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "11290:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "11290:32:32" - }, - "variables": [ - { - "name": "offset_2", - "nodeType": "YulTypedName", - "src": "11278:8:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "11351:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11360:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11363:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "11353:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "11353:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "11353:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_2", - "nodeType": "YulIdentifier", - "src": "11337:8:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "11347:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "11334:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "11334:16:32" - }, - "nodeType": "YulIf", - "src": "11331:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "11376:62:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11408:9:32" - }, - { - "name": "offset_2", - "nodeType": "YulIdentifier", - "src": "11419:8:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11404:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11404:24:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "11430:7:32" - } - ], - "functionName": { - "name": "abi_decode_string", - "nodeType": "YulIdentifier", - "src": "11386:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "11386:52:32" - }, - "variableNames": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "11376:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_string_memory_ptrt_string_memory_ptrt_boolt_string_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "10661:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "10672:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "10684:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "10692:6:32", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "10700:6:32", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "10708:6:32", - "type": "" - } - ], - "src": "10571:873:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "11546:91:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "11556:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11568:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11579:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11564:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11564:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "11556:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11598:9:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11620:1:32", - "type": "", - "value": "1" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "11623:6:32" - } - ], - "functionName": { - "name": "signextend", - "nodeType": "YulIdentifier", - "src": "11609:10:32" - }, - "nodeType": "YulFunctionCall", - "src": "11609:21:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "11591:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "11591:40:32" - }, - "nodeType": "YulExpressionStatement", - "src": "11591:40:32" - } - ] - }, - "name": "abi_encode_tuple_t_int16__to_t_int16__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "11515:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "11526:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "11537:4:32", - "type": "" - } - ], - "src": "11449:188:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "11712:177:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "11758:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11767:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11770:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "11760:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "11760:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "11760:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "11733:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11742:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "11729:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11729:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11754:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "11725:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11725:32:32" - }, - "nodeType": "YulIf", - "src": "11722:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "11783:36:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11809:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "11796:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "11796:23:32" - }, - "variables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "11787:5:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "11853:5:32" - } - ], - "functionName": { - "name": "validator_revert_address", - "nodeType": "YulIdentifier", - "src": "11828:24:32" - }, - "nodeType": "YulFunctionCall", - "src": "11828:31:32" - }, - "nodeType": "YulExpressionStatement", - "src": "11828:31:32" - }, - { - "nodeType": "YulAssignment", - "src": "11868:15:32", - "value": { - "name": "value", - "nodeType": "YulIdentifier", - "src": "11878:5:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "11868:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_address", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "11678:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "11689:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "11701:6:32", - "type": "" - } - ], - "src": "11642:247:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "11935:50:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "11952:3:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "11971:5:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "11964:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "11964:13:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "11957:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "11957:21:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "11945:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "11945:34:32" - }, - "nodeType": "YulExpressionStatement", - "src": "11945:34:32" - } - ] - }, - "name": "abi_encode_bool", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "11919:5:32", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "11926:3:32", - "type": "" - } - ], - "src": "11894:91:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12085:92:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "12095:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12107:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12118:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12103:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12103:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "12095:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12137:9:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "12162:6:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "12155:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "12155:14:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "12148:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "12148:22:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12130:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "12130:41:32" - }, - "nodeType": "YulExpressionStatement", - "src": "12130:41:32" - } - ] - }, - "name": "abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "12054:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "12065:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "12076:4:32", - "type": "" - } - ], - "src": "11990:187:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12252:110:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "12298:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12307:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12310:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "12300:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "12300:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "12300:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "12273:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12282:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "12269:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12269:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12294:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "12265:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12265:32:32" - }, - "nodeType": "YulIf", - "src": "12262:52:32" - }, - { - "nodeType": "YulAssignment", - "src": "12323:33:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12346:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "12333:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "12333:23:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "12323:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bytes32", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "12218:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "12229:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "12241:6:32", - "type": "" - } - ], - "src": "12182:180:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12433:184:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "12443:10:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12452:1:32", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "i", - "nodeType": "YulTypedName", - "src": "12447:1:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12512:63:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "12537:3:32" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "12542:1:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12533:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12533:11:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "12556:3:32" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "12561:1:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12552:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12552:11:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "12546:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "12546:18:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12526:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "12526:39:32" - }, - "nodeType": "YulExpressionStatement", - "src": "12526:39:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "12473:1:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "12476:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "12470:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "12470:13:32" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "12484:19:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "12486:15:32", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "12495:1:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12498:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12491:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12491:10:32" - }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "12486:1:32" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "12466:3:32", - "statements": [] - }, - "src": "12462:113:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "12595:3:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "12600:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12591:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12591:16:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12609:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12584:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "12584:27:32" - }, - "nodeType": "YulExpressionStatement", - "src": "12584:27:32" - } - ] - }, - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "src", - "nodeType": "YulTypedName", - "src": "12411:3:32", - "type": "" - }, - { - "name": "dst", - "nodeType": "YulTypedName", - "src": "12416:3:32", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "12421:6:32", - "type": "" - } - ], - "src": "12367:250:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12672:221:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "12682:26:32", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "12702:5:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "12696:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "12696:12:32" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "12686:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "12724:3:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "12729:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12717:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "12717:19:32" - }, - "nodeType": "YulExpressionStatement", - "src": "12717:19:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "12784:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12791:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12780:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12780:16:32" - }, - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "12802:3:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12807:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12798:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12798:14:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "12814:6:32" - } - ], - "functionName": { - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulIdentifier", - "src": "12745:34:32" - }, - "nodeType": "YulFunctionCall", - "src": "12745:76:32" - }, - "nodeType": "YulExpressionStatement", - "src": "12745:76:32" - }, - { - "nodeType": "YulAssignment", - "src": "12830:57:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "12845:3:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "12858:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12866:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12854:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12854:15:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12875:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "12871:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12871:7:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "12850:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12850:29:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12841:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12841:39:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12882:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12837:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12837:50:32" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "12830:3:32" - } - ] - } - ] - }, - "name": "abi_encode_string", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "12649:5:32", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "12656:3:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "12664:3:32", - "type": "" - } - ], - "src": "12622:271:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "13019:99:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "13036:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13047:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13029:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "13029:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "13029:21:32" - }, - { - "nodeType": "YulAssignment", - "src": "13059:53:32", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "13085:6:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "13097:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13108:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13093:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13093:18:32" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "13067:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "13067:45:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "13059:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "12988:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "12999:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "13010:4:32", - "type": "" - } - ], - "src": "12898:220:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "13167:60:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "13184:3:32" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "13193:5:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13208:3:32", - "type": "", - "value": "160" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13213:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "13204:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13204:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13217:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "13200:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13200:19:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "13189:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13189:31:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13177:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "13177:44:32" - }, - "nodeType": "YulExpressionStatement", - "src": "13177:44:32" - } - ] - }, - "name": "abi_encode_address", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "13151:5:32", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "13158:3:32", - "type": "" - } - ], - "src": "13123:104:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "13300:675:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "13317:3:32" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "13328:5:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "13322:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "13322:12:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13310:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "13310:25:32" - }, - "nodeType": "YulExpressionStatement", - "src": "13310:25:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "13355:3:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13360:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13351:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13351:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "13381:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13388:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13377:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13377:16:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "13371:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "13371:23:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13404:3:32", - "type": "", - "value": "160" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13409:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "13400:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13400:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13413:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "13396:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13396:19:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "13367:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13367:49:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13344:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "13344:73:32" - }, - "nodeType": "YulExpressionStatement", - "src": "13344:73:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "13426:43:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "13456:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13463:4:32", - "type": "", - "value": "0x40" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13452:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13452:16:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "13446:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "13446:23:32" - }, - "variables": [ - { - "name": "memberValue0", - "nodeType": "YulTypedName", - "src": "13430:12:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "13489:3:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13494:4:32", - "type": "", - "value": "0x40" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13485:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13485:14:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13501:4:32", - "type": "", - "value": "0xc0" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13478:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "13478:28:32" - }, - "nodeType": "YulExpressionStatement", - "src": "13478:28:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "13515:59:32", - "value": { - "arguments": [ - { - "name": "memberValue0", - "nodeType": "YulIdentifier", - "src": "13545:12:32" - }, - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "13563:3:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13568:4:32", - "type": "", - "value": "0xc0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13559:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13559:14:32" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "13527:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "13527:47:32" - }, - "variables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "13519:4:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "13583:45:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "13615:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13622:4:32", - "type": "", - "value": "0x60" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13611:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13611:16:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "13605:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "13605:23:32" - }, - "variables": [ - { - "name": "memberValue0_1", - "nodeType": "YulTypedName", - "src": "13587:14:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "13648:3:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13653:4:32", - "type": "", - "value": "0x60" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13644:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13644:14:32" - }, - { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "13664:4:32" - }, - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "13670:3:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "13660:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13660:14:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13637:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "13637:38:32" - }, - "nodeType": "YulExpressionStatement", - "src": "13637:38:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "13684:53:32", - "value": { - "arguments": [ - { - "name": "memberValue0_1", - "nodeType": "YulIdentifier", - "src": "13716:14:32" - }, - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "13732:4:32" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "13698:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "13698:39:32" - }, - "variables": [ - { - "name": "tail_1", - "nodeType": "YulTypedName", - "src": "13688:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "13757:3:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13762:4:32", - "type": "", - "value": "0x80" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13753:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13753:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "13793:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13800:4:32", - "type": "", - "value": "0x80" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13789:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13789:16:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "13783:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "13783:23:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "13776:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "13776:31:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "13769:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "13769:39:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13746:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "13746:63:32" - }, - "nodeType": "YulExpressionStatement", - "src": "13746:63:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "13818:45:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "13850:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13857:4:32", - "type": "", - "value": "0xa0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13846:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13846:16:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "13840:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "13840:23:32" - }, - "variables": [ - { - "name": "memberValue0_2", - "nodeType": "YulTypedName", - "src": "13822:14:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "13883:3:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13888:4:32", - "type": "", - "value": "0xa0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13879:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13879:14:32" - }, - { - "arguments": [ - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "13899:6:32" - }, - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "13907:3:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "13895:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13895:16:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13872:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "13872:40:32" - }, - "nodeType": "YulExpressionStatement", - "src": "13872:40:32" - }, - { - "nodeType": "YulAssignment", - "src": "13921:48:32", - "value": { - "arguments": [ - { - "name": "memberValue0_2", - "nodeType": "YulIdentifier", - "src": "13946:14:32" - }, - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "13962:6:32" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "13928:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "13928:41:32" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "13921:3:32" - } - ] - } - ] - }, - "name": "abi_encode_struct_LiquidityProvider", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "13277:5:32", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "13284:3:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "13292:3:32", - "type": "" - } - ], - "src": "13232:743:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "14151:117:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "14168:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14179:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "14161:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "14161:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "14161:21:32" - }, - { - "nodeType": "YulAssignment", - "src": "14191:71:32", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "14235:6:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "14247:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14258:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14243:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14243:18:32" - } - ], - "functionName": { - "name": "abi_encode_struct_LiquidityProvider", - "nodeType": "YulIdentifier", - "src": "14199:35:32" - }, - "nodeType": "YulFunctionCall", - "src": "14199:63:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "14191:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_struct$_LiquidityProvider_$8026_memory_ptr__to_t_struct$_LiquidityProvider_$8026_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "14120:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "14131:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "14142:4:32", - "type": "" - } - ], - "src": "13980:288:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "14374:102:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "14384:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "14396:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14407:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14392:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14392:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "14384:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "14426:9:32" - }, - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "14441:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14457:3:32", - "type": "", - "value": "160" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14462:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "14453:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14453:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14466:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "14449:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14449:19:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "14437:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14437:32:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "14419:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "14419:51:32" - }, - "nodeType": "YulExpressionStatement", - "src": "14419:51:32" - } - ] - }, - "name": "abi_encode_tuple_t_address__to_t_address__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "14343:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "14354:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "14365:4:32", - "type": "" - } - ], - "src": "14273:203:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "14565:225:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "14611:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14620:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14623:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "14613:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "14613:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "14613:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "14586:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "14595:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "14582:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14582:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14607:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "14578:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14578:32:32" - }, - "nodeType": "YulIf", - "src": "14575:52:32" - }, - { - "nodeType": "YulAssignment", - "src": "14636:33:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "14659:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "14646:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "14646:23:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "14636:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "14678:45:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "14708:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14719:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14704:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14704:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "14691:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "14691:32:32" - }, - "variables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "14682:5:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "14754:5:32" - } - ], - "functionName": { - "name": "validator_revert_bool", - "nodeType": "YulIdentifier", - "src": "14732:21:32" - }, - "nodeType": "YulFunctionCall", - "src": "14732:28:32" - }, - "nodeType": "YulExpressionStatement", - "src": "14732:28:32" - }, - { - "nodeType": "YulAssignment", - "src": "14769:15:32", - "value": { - "name": "value", - "nodeType": "YulIdentifier", - "src": "14779:5:32" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "14769:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_uint256t_bool", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "14523:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "14534:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "14546:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "14554:6:32", - "type": "" - } - ], - "src": "14481:309:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "14920:447:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "14966:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14975:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14978:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "14968:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "14968:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "14968:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "14941:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "14950:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "14937:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14937:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14962:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "14933:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "14933:32:32" - }, - "nodeType": "YulIf", - "src": "14930:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "14991:37:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "15018:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "15005:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "15005:23:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "14995:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "15037:28:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15055:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15059:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "15051:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15051:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15063:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "15047:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15047:18:32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "15041:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "15092:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15101:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15104:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "15094:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "15094:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "15094:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "15080:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "15088:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "15077:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "15077:14:32" - }, - "nodeType": "YulIf", - "src": "15074:34:32" - }, - { - "nodeType": "YulAssignment", - "src": "15117:71:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "15160:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "15171:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15156:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15156:22:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "15180:7:32" - } - ], - "functionName": { - "name": "abi_decode_struct_PeginQuote", - "nodeType": "YulIdentifier", - "src": "15127:28:32" - }, - "nodeType": "YulFunctionCall", - "src": "15127:61:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "15117:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "15197:48:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "15230:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15241:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15226:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15226:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "15213:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "15213:32:32" - }, - "variables": [ - { - "name": "offset_1", - "nodeType": "YulTypedName", - "src": "15201:8:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "15274:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15283:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15286:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "15276:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "15276:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "15276:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "15260:8:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "15270:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "15257:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "15257:16:32" - }, - "nodeType": "YulIf", - "src": "15254:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "15299:62:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "15331:9:32" - }, - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "15342:8:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15327:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15327:24:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "15353:7:32" - } - ], - "functionName": { - "name": "abi_decode_string", - "nodeType": "YulIdentifier", - "src": "15309:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "15309:52:32" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "15299:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_struct$_PeginQuote_$11233_memory_ptrt_bytes_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "14878:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "14889:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "14901:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "14909:6:32", - "type": "" - } - ], - "src": "14795:572:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "15471:253:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "15517:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15526:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15529:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "15519:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "15519:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "15519:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "15492:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "15501:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "15488:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15488:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15513:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "15484:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15484:32:32" - }, - "nodeType": "YulIf", - "src": "15481:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "15542:37:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "15569:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "15556:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "15556:23:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "15546:6:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "15622:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15631:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15634:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "15624:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "15624:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "15624:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "15594:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15610:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15614:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "15606:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15606:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15618:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "15602:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15602:18:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "15591:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "15591:30:32" - }, - "nodeType": "YulIf", - "src": "15588:50:32" - }, - { - "nodeType": "YulAssignment", - "src": "15647:71:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "15690:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "15701:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15686:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15686:22:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "15710:7:32" - } - ], - "functionName": { - "name": "abi_decode_struct_PeginQuote", - "nodeType": "YulIdentifier", - "src": "15657:28:32" - }, - "nodeType": "YulFunctionCall", - "src": "15657:61:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "15647:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_struct$_PeginQuote_$11233_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "15437:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "15448:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "15460:6:32", - "type": "" - } - ], - "src": "15372:352:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "15855:448:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "15901:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15910:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15913:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "15903:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "15903:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "15903:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "15876:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "15885:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "15872:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15872:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15897:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "15868:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15868:32:32" - }, - "nodeType": "YulIf", - "src": "15865:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "15926:37:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "15953:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "15940:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "15940:23:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "15930:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "15972:28:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15990:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15994:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "15986:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15986:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15998:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "15982:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "15982:18:32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "15976:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "16027:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16036:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16039:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "16029:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "16029:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "16029:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "16015:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "16023:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "16012:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "16012:14:32" - }, - "nodeType": "YulIf", - "src": "16009:34:32" - }, - { - "nodeType": "YulAssignment", - "src": "16052:72:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "16096:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "16107:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "16092:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "16092:22:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "16116:7:32" - } - ], - "functionName": { - "name": "abi_decode_struct_PegOutQuote", - "nodeType": "YulIdentifier", - "src": "16062:29:32" - }, - "nodeType": "YulFunctionCall", - "src": "16062:62:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "16052:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "16133:48:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "16166:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16177:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "16162:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "16162:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "16149:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "16149:32:32" - }, - "variables": [ - { - "name": "offset_1", - "nodeType": "YulTypedName", - "src": "16137:8:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "16210:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16219:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16222:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "16212:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "16212:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "16212:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "16196:8:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "16206:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "16193:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "16193:16:32" - }, - "nodeType": "YulIf", - "src": "16190:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "16235:62:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "16267:9:32" - }, - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "16278:8:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "16263:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "16263:24:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "16289:7:32" - } - ], - "functionName": { - "name": "abi_decode_string", - "nodeType": "YulIdentifier", - "src": "16245:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "16245:52:32" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "16235:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_struct$_PegOutQuote_$11272_memory_ptrt_bytes_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "15813:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "15824:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "15836:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "15844:6:32", - "type": "" - } - ], - "src": "15729:574:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "16351:47:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "16368:3:32" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "16377:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16384:6:32", - "type": "", - "value": "0xffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "16373:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "16373:18:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "16361:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "16361:31:32" - }, - "nodeType": "YulExpressionStatement", - "src": "16361:31:32" - } - ] - }, - "name": "abi_encode_uint16", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "16335:5:32", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "16342:3:32", - "type": "" - } - ], - "src": "16308:90:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "16502:89:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "16512:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "16524:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16535:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "16520:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "16520:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "16512:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "16554:9:32" - }, - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "16569:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16577:6:32", - "type": "", - "value": "0xffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "16565:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "16565:19:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "16547:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "16547:38:32" - }, - "nodeType": "YulExpressionStatement", - "src": "16547:38:32" - } - ] - }, - "name": "abi_encode_tuple_t_uint16__to_t_uint16__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "16471:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "16482:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "16493:4:32", - "type": "" - } - ], - "src": "16403:188:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "16665:114:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "16709:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "16711:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "16711:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "16711:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "16681:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16697:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16701:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "16693:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "16693:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16705:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "16689:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "16689:18:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "16678:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "16678:30:32" - }, - "nodeType": "YulIf", - "src": "16675:56:32" - }, - { - "nodeType": "YulAssignment", - "src": "16740:33:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16756:1:32", - "type": "", - "value": "5" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "16759:6:32" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "16752:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "16752:14:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16768:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "16748:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "16748:25:32" - }, - "variableNames": [ - { - "name": "size", - "nodeType": "YulIdentifier", - "src": "16740:4:32" - } - ] - } - ] - }, - "name": "array_allocation_size_array_bytes32_dyn", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "16645:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "size", - "nodeType": "YulTypedName", - "src": "16656:4:32", - "type": "" - } - ], - "src": "16596:183:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "16956:1145:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "17003:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17012:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17015:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "17005:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "17005:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "17005:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "16977:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "16986:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "16973:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "16973:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16998:3:32", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "16969:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "16969:33:32" - }, - "nodeType": "YulIf", - "src": "16966:53:32" - }, - { - "nodeType": "YulAssignment", - "src": "17028:33:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "17051:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "17038:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "17038:23:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "17028:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "17070:12:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17080:2:32", - "type": "", - "value": "32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "17074:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "17091:46:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "17122:9:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "17133:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "17118:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "17118:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "17105:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "17105:32:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "17095:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "17146:28:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17164:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17168:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "17160:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "17160:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17172:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "17156:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "17156:18:32" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "17150:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "17201:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17210:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17213:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "17203:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "17203:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "17203:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "17189:6:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "17197:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "17186:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "17186:14:32" - }, - "nodeType": "YulIf", - "src": "17183:34:32" - }, - { - "nodeType": "YulAssignment", - "src": "17226:60:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "17258:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "17269:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "17254:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "17254:22:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "17278:7:32" - } - ], - "functionName": { - "name": "abi_decode_string", - "nodeType": "YulIdentifier", - "src": "17236:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "17236:50:32" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "17226:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "17295:42:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "17322:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17333:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "17318:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "17318:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "17305:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "17305:32:32" - }, - "variableNames": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "17295:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "17346:42:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "17373:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17384:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "17369:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "17369:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "17356:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "17356:32:32" - }, - "variableNames": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "17346:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "17397:49:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "17430:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17441:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "17426:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "17426:19:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "17413:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "17413:33:32" - }, - "variables": [ - { - "name": "offset_1", - "nodeType": "YulTypedName", - "src": "17401:8:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "17475:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17484:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17487:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "17477:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "17477:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "17477:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "17461:8:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "17471:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "17458:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "17458:16:32" - }, - "nodeType": "YulIf", - "src": "17455:36:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "17500:34:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "17514:9:32" - }, - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "17525:8:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "17510:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "17510:24:32" - }, - "variables": [ - { - "name": "_3", - "nodeType": "YulTypedName", - "src": "17504:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "17582:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17591:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17594:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "17584:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "17584:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "17584:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "17561:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17565:4:32", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "17557:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "17557:13:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "17572:7:32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "17553:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "17553:27:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "17546:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "17546:35:32" - }, - "nodeType": "YulIf", - "src": "17543:55:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "17607:26:32", - "value": { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "17630:2:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "17617:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "17617:16:32" - }, - "variables": [ - { - "name": "_4", - "nodeType": "YulTypedName", - "src": "17611:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "17642:71:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "17709:2:32" - } - ], - "functionName": { - "name": "array_allocation_size_array_bytes32_dyn", - "nodeType": "YulIdentifier", - "src": "17669:39:32" - }, - "nodeType": "YulFunctionCall", - "src": "17669:43:32" - } - ], - "functionName": { - "name": "allocate_memory", - "nodeType": "YulIdentifier", - "src": "17653:15:32" - }, - "nodeType": "YulFunctionCall", - "src": "17653:60:32" - }, - "variables": [ - { - "name": "dst", - "nodeType": "YulTypedName", - "src": "17646:3:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "17722:16:32", - "value": { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "17735:3:32" - }, - "variables": [ - { - "name": "dst_1", - "nodeType": "YulTypedName", - "src": "17726:5:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "17754:3:32" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "17759:2:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "17747:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "17747:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "17747:15:32" - }, - { - "nodeType": "YulAssignment", - "src": "17771:19:32", - "value": { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "17782:3:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "17787:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "17778:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "17778:12:32" - }, - "variableNames": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "17771:3:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "17799:42:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "17821:2:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17829:1:32", - "type": "", - "value": "5" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "17832:2:32" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "17825:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "17825:10:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "17817:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "17817:19:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "17838:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "17813:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "17813:28:32" - }, - "variables": [ - { - "name": "srcEnd", - "nodeType": "YulTypedName", - "src": "17803:6:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "17873:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17882:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17885:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "17875:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "17875:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "17875:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "srcEnd", - "nodeType": "YulIdentifier", - "src": "17856:6:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "17864:7:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "17853:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "17853:19:32" - }, - "nodeType": "YulIf", - "src": "17850:39:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "17898:22:32", - "value": { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "17913:2:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "17917:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "17909:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "17909:11:32" - }, - "variables": [ - { - "name": "src", - "nodeType": "YulTypedName", - "src": "17902:3:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "17985:86:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "18006:3:32" - }, - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "18024:3:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "18011:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "18011:17:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "17999:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "17999:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "17999:30:32" - }, - { - "nodeType": "YulAssignment", - "src": "18042:19:32", - "value": { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "18053:3:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "18058:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "18049:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "18049:12:32" - }, - "variableNames": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "18042:3:32" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "17940:3:32" - }, - { - "name": "srcEnd", - "nodeType": "YulIdentifier", - "src": "17945:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "17937:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "17937:15:32" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "17953:23:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "17955:19:32", - "value": { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "17966:3:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "17971:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "17962:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "17962:12:32" - }, - "variableNames": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "17955:3:32" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "17933:3:32", - "statements": [] - }, - "src": "17929:142:32" - }, - { - "nodeType": "YulAssignment", - "src": "18080:15:32", - "value": { - "name": "dst_1", - "nodeType": "YulIdentifier", - "src": "18090:5:32" - }, - "variableNames": [ - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "18080:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bytes32t_bytes_memory_ptrt_bytes32t_uint256t_array$_t_bytes32_$dyn_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "16890:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "16901:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "16913:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "16921:6:32", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "16929:6:32", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "16937:6:32", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "16945:6:32", - "type": "" - } - ], - "src": "16784:1317:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "18230:102:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "18240:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "18252:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18263:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "18248:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "18248:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "18240:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "18282:9:32" - }, - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "18297:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18313:3:32", - "type": "", - "value": "160" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18318:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "18309:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "18309:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18322:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "18305:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "18305:19:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "18293:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "18293:32:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "18275:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "18275:51:32" - }, - "nodeType": "YulExpressionStatement", - "src": "18275:51:32" - } - ] - }, - "name": "abi_encode_tuple_t_contract$_Bridge_$4173__to_t_address_payable__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "18199:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "18210:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "18221:4:32", - "type": "" - } - ], - "src": "18106:226:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "18558:650:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "18568:12:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18578:2:32", - "type": "", - "value": "32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "18572:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "18589:32:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "18607:9:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "18618:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "18603:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "18603:18:32" - }, - "variables": [ - { - "name": "tail_1", - "nodeType": "YulTypedName", - "src": "18593:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "18637:9:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "18648:2:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "18630:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "18630:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "18630:21:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "18660:17:32", - "value": { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "18671:6:32" - }, - "variables": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "18664:3:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "18686:27:32", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "18706:6:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "18700:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "18700:13:32" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "18690:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "18729:6:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "18737:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "18722:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "18722:22:32" - }, - "nodeType": "YulExpressionStatement", - "src": "18722:22:32" - }, - { - "nodeType": "YulAssignment", - "src": "18753:25:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "18764:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18775:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "18760:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "18760:18:32" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "18753:3:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "18787:53:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "18809:9:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18824:1:32", - "type": "", - "value": "5" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "18827:6:32" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "18820:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "18820:14:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "18805:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "18805:30:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18837:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "18801:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "18801:39:32" - }, - "variables": [ - { - "name": "tail_2", - "nodeType": "YulTypedName", - "src": "18791:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "18849:29:32", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "18867:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "18875:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "18863:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "18863:15:32" - }, - "variables": [ - { - "name": "srcPtr", - "nodeType": "YulTypedName", - "src": "18853:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "18887:10:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18896:1:32", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "i", - "nodeType": "YulTypedName", - "src": "18891:1:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "18955:224:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "18976:3:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "18989:6:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "18997:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "18985:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "18985:22:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19013:2:32", - "type": "", - "value": "63" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "19009:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "19009:7:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "18981:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "18981:36:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "18969:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "18969:49:32" - }, - "nodeType": "YulExpressionStatement", - "src": "18969:49:32" - }, - { - "nodeType": "YulAssignment", - "src": "19031:68:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "srcPtr", - "nodeType": "YulIdentifier", - "src": "19083:6:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "19077:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "19077:13:32" - }, - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "19092:6:32" - } - ], - "functionName": { - "name": "abi_encode_struct_LiquidityProvider", - "nodeType": "YulIdentifier", - "src": "19041:35:32" - }, - "nodeType": "YulFunctionCall", - "src": "19041:58:32" - }, - "variableNames": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "19031:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "19112:25:32", - "value": { - "arguments": [ - { - "name": "srcPtr", - "nodeType": "YulIdentifier", - "src": "19126:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "19134:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "19122:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "19122:15:32" - }, - "variableNames": [ - { - "name": "srcPtr", - "nodeType": "YulIdentifier", - "src": "19112:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "19150:19:32", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "19161:3:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "19166:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "19157:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "19157:12:32" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "19150:3:32" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "18917:1:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "18920:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "18914:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "18914:13:32" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "18928:18:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "18930:14:32", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "18939:1:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18942:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "18935:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "18935:9:32" - }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "18930:1:32" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "18910:3:32", - "statements": [] - }, - "src": "18906:273:32" - }, - { - "nodeType": "YulAssignment", - "src": "19188:14:32", - "value": { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "19196:6:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "19188:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_array$_t_struct$_LiquidityProvider_$8026_memory_ptr_$dyn_memory_ptr__to_t_array$_t_struct$_LiquidityProvider_$8026_memory_ptr_$dyn_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "18527:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "18538:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "18549:4:32", - "type": "" - } - ], - "src": "18337:871:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "19387:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "19404:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19415:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "19397:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "19397:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "19397:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "19438:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19449:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "19434:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "19434:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19454:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "19427:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "19427:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "19427:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "19476:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19487:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "19472:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "19472:18:32" - }, - { - "hexValue": "4c4243303736", - "kind": "string", - "nodeType": "YulLiteral", - "src": "19492:8:32", - "type": "", - "value": "LBC076" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "19465:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "19465:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "19465:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "19510:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "19522:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19533:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "19518:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "19518:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "19510:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_686eb4b4538782c6c5d7601cff771332305044e1e5a85d59133150cea60acf31__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "19364:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "19378:4:32", - "type": "" - } - ], - "src": "19213:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "19602:325:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "19612:22:32", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19626:1:32", - "type": "", - "value": "1" - }, - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "19629:4:32" - } - ], - "functionName": { - "name": "shr", - "nodeType": "YulIdentifier", - "src": "19622:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "19622:12:32" - }, - "variableNames": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "19612:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "19643:38:32", - "value": { - "arguments": [ - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "19673:4:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19679:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "19669:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "19669:12:32" - }, - "variables": [ - { - "name": "outOfPlaceEncoding", - "nodeType": "YulTypedName", - "src": "19647:18:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "19720:31:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "19722:27:32", - "value": { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "19736:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19744:4:32", - "type": "", - "value": "0x7f" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "19732:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "19732:17:32" - }, - "variableNames": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "19722:6:32" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "outOfPlaceEncoding", - "nodeType": "YulIdentifier", - "src": "19700:18:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "19693:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "19693:26:32" - }, - "nodeType": "YulIf", - "src": "19690:61:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "19810:111:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19831:1:32", - "type": "", - "value": "0" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19838:3:32", - "type": "", - "value": "224" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19843:10:32", - "type": "", - "value": "0x4e487b71" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "19834:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "19834:20:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "19824:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "19824:31:32" - }, - "nodeType": "YulExpressionStatement", - "src": "19824:31:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19875:1:32", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19878:4:32", - "type": "", - "value": "0x22" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "19868:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "19868:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "19868:15:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19903:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19906:4:32", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "19896:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "19896:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "19896:15:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "outOfPlaceEncoding", - "nodeType": "YulIdentifier", - "src": "19766:18:32" - }, - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "19789:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19797:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "19786:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "19786:14:32" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "19763:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "19763:38:32" - }, - "nodeType": "YulIf", - "src": "19760:161:32" - } - ] - }, - "name": "extract_byte_array_length", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "data", - "nodeType": "YulTypedName", - "src": "19582:4:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "19591:6:32", - "type": "" - } - ], - "src": "19547:380:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "19988:65:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20005:1:32", - "type": "", - "value": "0" - }, - { - "name": "ptr", - "nodeType": "YulIdentifier", - "src": "20008:3:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "19998:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "19998:14:32" - }, - "nodeType": "YulExpressionStatement", - "src": "19998:14:32" - }, - { - "nodeType": "YulAssignment", - "src": "20021:26:32", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20039:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20042:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "keccak256", - "nodeType": "YulIdentifier", - "src": "20029:9:32" - }, - "nodeType": "YulFunctionCall", - "src": "20029:18:32" - }, - "variableNames": [ - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "20021:4:32" - } - ] - } - ] - }, - "name": "array_dataslot_string_storage", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "ptr", - "nodeType": "YulTypedName", - "src": "19971:3:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "data", - "nodeType": "YulTypedName", - "src": "19979:4:32", - "type": "" - } - ], - "src": "19932:121:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "20139:464:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "20172:425:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "20186:11:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20196:1:32", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "20190:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "20217:2:32" - }, - { - "name": "array", - "nodeType": "YulIdentifier", - "src": "20221:5:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "20210:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "20210:17:32" - }, - "nodeType": "YulExpressionStatement", - "src": "20210:17:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "20240:31:32", - "value": { - "arguments": [ - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "20262:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20266:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "keccak256", - "nodeType": "YulIdentifier", - "src": "20252:9:32" - }, - "nodeType": "YulFunctionCall", - "src": "20252:19:32" - }, - "variables": [ - { - "name": "data", - "nodeType": "YulTypedName", - "src": "20244:4:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "20284:57:32", - "value": { - "arguments": [ - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "20307:4:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20317:1:32", - "type": "", - "value": "5" - }, - { - "arguments": [ - { - "name": "startIndex", - "nodeType": "YulIdentifier", - "src": "20324:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20336:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "20320:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "20320:19:32" - } - ], - "functionName": { - "name": "shr", - "nodeType": "YulIdentifier", - "src": "20313:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "20313:27:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "20303:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "20303:38:32" - }, - "variables": [ - { - "name": "deleteStart", - "nodeType": "YulTypedName", - "src": "20288:11:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "20378:23:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "20380:19:32", - "value": { - "name": "data", - "nodeType": "YulIdentifier", - "src": "20395:4:32" - }, - "variableNames": [ - { - "name": "deleteStart", - "nodeType": "YulIdentifier", - "src": "20380:11:32" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "startIndex", - "nodeType": "YulIdentifier", - "src": "20360:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20372:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "20357:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "20357:20:32" - }, - "nodeType": "YulIf", - "src": "20354:47:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "20414:41:32", - "value": { - "arguments": [ - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "20428:4:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20438:1:32", - "type": "", - "value": "5" - }, - { - "arguments": [ - { - "name": "len", - "nodeType": "YulIdentifier", - "src": "20445:3:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20450:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "20441:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "20441:12:32" - } - ], - "functionName": { - "name": "shr", - "nodeType": "YulIdentifier", - "src": "20434:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "20434:20:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "20424:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "20424:31:32" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "20418:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "20468:24:32", - "value": { - "name": "deleteStart", - "nodeType": "YulIdentifier", - "src": "20481:11:32" - }, - "variables": [ - { - "name": "start", - "nodeType": "YulTypedName", - "src": "20472:5:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "20566:21:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "start", - "nodeType": "YulIdentifier", - "src": "20575:5:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "20582:2:32" - } - ], - "functionName": { - "name": "sstore", - "nodeType": "YulIdentifier", - "src": "20568:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "20568:17:32" - }, - "nodeType": "YulExpressionStatement", - "src": "20568:17:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "start", - "nodeType": "YulIdentifier", - "src": "20516:5:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "20523:2:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "20513:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "20513:13:32" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "20527:26:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "20529:22:32", - "value": { - "arguments": [ - { - "name": "start", - "nodeType": "YulIdentifier", - "src": "20542:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20549:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "20538:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "20538:13:32" - }, - "variableNames": [ - { - "name": "start", - "nodeType": "YulIdentifier", - "src": "20529:5:32" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "20509:3:32", - "statements": [] - }, - "src": "20505:82:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "len", - "nodeType": "YulIdentifier", - "src": "20155:3:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20160:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "20152:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "20152:11:32" - }, - "nodeType": "YulIf", - "src": "20149:448:32" - } - ] - }, - "name": "clean_up_bytearray_end_slots_string_storage", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "array", - "nodeType": "YulTypedName", - "src": "20111:5:32", - "type": "" - }, - { - "name": "len", - "nodeType": "YulTypedName", - "src": "20118:3:32", - "type": "" - }, - { - "name": "startIndex", - "nodeType": "YulTypedName", - "src": "20123:10:32", - "type": "" - } - ], - "src": "20058:545:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "20693:81:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "20703:65:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "20718:4:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20736:1:32", - "type": "", - "value": "3" - }, - { - "name": "len", - "nodeType": "YulIdentifier", - "src": "20739:3:32" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "20732:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "20732:11:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20749:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "20745:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "20745:6:32" - } - ], - "functionName": { - "name": "shr", - "nodeType": "YulIdentifier", - "src": "20728:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "20728:24:32" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "20724:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "20724:29:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "20714:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "20714:40:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20760:1:32", - "type": "", - "value": "1" - }, - { - "name": "len", - "nodeType": "YulIdentifier", - "src": "20763:3:32" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "20756:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "20756:11:32" - } - ], - "functionName": { - "name": "or", - "nodeType": "YulIdentifier", - "src": "20711:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "20711:57:32" - }, - "variableNames": [ - { - "name": "used", - "nodeType": "YulIdentifier", - "src": "20703:4:32" - } - ] - } - ] - }, - "name": "extract_used_part_and_set_length_of_short_byte_array", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "data", - "nodeType": "YulTypedName", - "src": "20670:4:32", - "type": "" - }, - { - "name": "len", - "nodeType": "YulTypedName", - "src": "20676:3:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "used", - "nodeType": "YulTypedName", - "src": "20684:4:32", - "type": "" - } - ], - "src": "20608:166:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "20875:1256:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "20885:24:32", - "value": { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "20905:3:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "20899:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "20899:10:32" - }, - "variables": [ - { - "name": "newLen", - "nodeType": "YulTypedName", - "src": "20889:6:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "20952:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "20954:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "20954:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "20954:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "20924:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20940:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20944:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "20936:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "20936:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20948:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "20932:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "20932:18:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "20921:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "20921:30:32" - }, - "nodeType": "YulIf", - "src": "20918:56:32" - }, - { - "expression": { - "arguments": [ - { - "name": "slot", - "nodeType": "YulIdentifier", - "src": "21027:4:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "slot", - "nodeType": "YulIdentifier", - "src": "21065:4:32" - } - ], - "functionName": { - "name": "sload", - "nodeType": "YulIdentifier", - "src": "21059:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "21059:11:32" - } - ], - "functionName": { - "name": "extract_byte_array_length", - "nodeType": "YulIdentifier", - "src": "21033:25:32" - }, - "nodeType": "YulFunctionCall", - "src": "21033:38:32" - }, - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "21073:6:32" - } - ], - "functionName": { - "name": "clean_up_bytearray_end_slots_string_storage", - "nodeType": "YulIdentifier", - "src": "20983:43:32" - }, - "nodeType": "YulFunctionCall", - "src": "20983:97:32" - }, - "nodeType": "YulExpressionStatement", - "src": "20983:97:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "21089:18:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21106:1:32", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "srcOffset", - "nodeType": "YulTypedName", - "src": "21093:9:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "21116:23:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21135:4:32", - "type": "", - "value": "0x20" - }, - "variables": [ - { - "name": "srcOffset_1", - "nodeType": "YulTypedName", - "src": "21120:11:32", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "21148:24:32", - "value": { - "name": "srcOffset_1", - "nodeType": "YulIdentifier", - "src": "21161:11:32" - }, - "variableNames": [ - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "21148:9:32" - } - ] - }, - { - "cases": [ - { - "body": { - "nodeType": "YulBlock", - "src": "21218:656:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "21232:35:32", - "value": { - "arguments": [ - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "21251:6:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21263:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "21259:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "21259:7:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "21247:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "21247:20:32" - }, - "variables": [ - { - "name": "loopEnd", - "nodeType": "YulTypedName", - "src": "21236:7:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "21280:49:32", - "value": { - "arguments": [ - { - "name": "slot", - "nodeType": "YulIdentifier", - "src": "21324:4:32" - } - ], - "functionName": { - "name": "array_dataslot_string_storage", - "nodeType": "YulIdentifier", - "src": "21294:29:32" - }, - "nodeType": "YulFunctionCall", - "src": "21294:35:32" - }, - "variables": [ - { - "name": "dstPtr", - "nodeType": "YulTypedName", - "src": "21284:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "21342:10:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21351:1:32", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "i", - "nodeType": "YulTypedName", - "src": "21346:1:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "21429:172:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "dstPtr", - "nodeType": "YulIdentifier", - "src": "21454:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "21472:3:32" - }, - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "21477:9:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "21468:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "21468:19:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "21462:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "21462:26:32" - } - ], - "functionName": { - "name": "sstore", - "nodeType": "YulIdentifier", - "src": "21447:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "21447:42:32" - }, - "nodeType": "YulExpressionStatement", - "src": "21447:42:32" - }, - { - "nodeType": "YulAssignment", - "src": "21506:24:32", - "value": { - "arguments": [ - { - "name": "dstPtr", - "nodeType": "YulIdentifier", - "src": "21520:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21528:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "21516:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "21516:14:32" - }, - "variableNames": [ - { - "name": "dstPtr", - "nodeType": "YulIdentifier", - "src": "21506:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "21547:40:32", - "value": { - "arguments": [ - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "21564:9:32" - }, - { - "name": "srcOffset_1", - "nodeType": "YulIdentifier", - "src": "21575:11:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "21560:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "21560:27:32" - }, - "variableNames": [ - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "21547:9:32" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "21376:1:32" - }, - { - "name": "loopEnd", - "nodeType": "YulIdentifier", - "src": "21379:7:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "21373:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "21373:14:32" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "21388:28:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "21390:24:32", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "21399:1:32" - }, - { - "name": "srcOffset_1", - "nodeType": "YulIdentifier", - "src": "21402:11:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "21395:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "21395:19:32" - }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "21390:1:32" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "21369:3:32", - "statements": [] - }, - "src": "21365:236:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "21649:166:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "21667:43:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "21694:3:32" - }, - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "21699:9:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "21690:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "21690:19:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "21684:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "21684:26:32" - }, - "variables": [ - { - "name": "lastValue", - "nodeType": "YulTypedName", - "src": "21671:9:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "dstPtr", - "nodeType": "YulIdentifier", - "src": "21734:6:32" - }, - { - "arguments": [ - { - "name": "lastValue", - "nodeType": "YulIdentifier", - "src": "21746:9:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21773:1:32", - "type": "", - "value": "3" - }, - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "21776:6:32" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "21769:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "21769:14:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21785:3:32", - "type": "", - "value": "248" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "21765:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "21765:24:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21795:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "21791:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "21791:6:32" - } - ], - "functionName": { - "name": "shr", - "nodeType": "YulIdentifier", - "src": "21761:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "21761:37:32" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "21757:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "21757:42:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "21742:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "21742:58:32" - } - ], - "functionName": { - "name": "sstore", - "nodeType": "YulIdentifier", - "src": "21727:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "21727:74:32" - }, - "nodeType": "YulExpressionStatement", - "src": "21727:74:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "loopEnd", - "nodeType": "YulIdentifier", - "src": "21620:7:32" - }, - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "21629:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "21617:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "21617:19:32" - }, - "nodeType": "YulIf", - "src": "21614:201:32" - }, - { - "expression": { - "arguments": [ - { - "name": "slot", - "nodeType": "YulIdentifier", - "src": "21835:4:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21849:1:32", - "type": "", - "value": "1" - }, - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "21852:6:32" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "21845:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "21845:14:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21861:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "21841:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "21841:22:32" - } - ], - "functionName": { - "name": "sstore", - "nodeType": "YulIdentifier", - "src": "21828:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "21828:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "21828:36:32" - } - ] - }, - "nodeType": "YulCase", - "src": "21211:663:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21216:1:32", - "type": "", - "value": "1" - } - }, - { - "body": { - "nodeType": "YulBlock", - "src": "21891:234:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "21905:14:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21918:1:32", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "21909:5:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "21954:67:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "21972:35:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "21991:3:32" - }, - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "21996:9:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "21987:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "21987:19:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "21981:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "21981:26:32" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "21972:5:32" - } - ] - } - ] - }, - "condition": { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "21935:6:32" - }, - "nodeType": "YulIf", - "src": "21932:89:32" - }, - { - "expression": { - "arguments": [ - { - "name": "slot", - "nodeType": "YulIdentifier", - "src": "22041:4:32" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "22100:5:32" - }, - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "22107:6:32" - } - ], - "functionName": { - "name": "extract_used_part_and_set_length_of_short_byte_array", - "nodeType": "YulIdentifier", - "src": "22047:52:32" - }, - "nodeType": "YulFunctionCall", - "src": "22047:67:32" - } - ], - "functionName": { - "name": "sstore", - "nodeType": "YulIdentifier", - "src": "22034:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "22034:81:32" - }, - "nodeType": "YulExpressionStatement", - "src": "22034:81:32" - } - ] - }, - "nodeType": "YulCase", - "src": "21883:242:32", - "value": "default" - } - ], - "expression": { - "arguments": [ - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "21191:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21199:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "21188:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "21188:14:32" - }, - "nodeType": "YulSwitch", - "src": "21181:944:32" - } - ] - }, - "name": "copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "slot", - "nodeType": "YulTypedName", - "src": "20860:4:32", - "type": "" - }, - { - "name": "src", - "nodeType": "YulTypedName", - "src": "20866:3:32", - "type": "" - } - ], - "src": "20779:1352:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "22194:714:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "22204:29:32", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "22227:5:32" - } - ], - "functionName": { - "name": "sload", - "nodeType": "YulIdentifier", - "src": "22221:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "22221:12:32" - }, - "variables": [ - { - "name": "slotValue", - "nodeType": "YulTypedName", - "src": "22208:9:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "22242:50:32", - "value": { - "arguments": [ - { - "name": "slotValue", - "nodeType": "YulIdentifier", - "src": "22282:9:32" - } - ], - "functionName": { - "name": "extract_byte_array_length", - "nodeType": "YulIdentifier", - "src": "22256:25:32" - }, - "nodeType": "YulFunctionCall", - "src": "22256:36:32" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "22246:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "22308:3:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "22313:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "22301:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "22301:19:32" - }, - "nodeType": "YulExpressionStatement", - "src": "22301:19:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "22329:14:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22339:4:32", - "type": "", - "value": "0x20" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "22333:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "22352:11:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22362:1:32", - "type": "", - "value": "1" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "22356:2:32", - "type": "" - } - ] - }, - { - "cases": [ - { - "body": { - "nodeType": "YulBlock", - "src": "22413:139:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "22438:3:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "22443:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "22434:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "22434:12:32" - }, - { - "arguments": [ - { - "name": "slotValue", - "nodeType": "YulIdentifier", - "src": "22452:9:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22467:3:32", - "type": "", - "value": "255" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "22463:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "22463:8:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "22448:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "22448:24:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "22427:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "22427:46:32" - }, - "nodeType": "YulExpressionStatement", - "src": "22427:46:32" - }, - { - "nodeType": "YulAssignment", - "src": "22486:56:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "22501:3:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22510:1:32", - "type": "", - "value": "5" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "22527:6:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "22520:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "22520:14:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "22513:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "22513:22:32" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "22506:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "22506:30:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "22497:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "22497:40:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "22539:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "22493:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "22493:49:32" - }, - "variableNames": [ - { - "name": "ret", - "nodeType": "YulIdentifier", - "src": "22486:3:32" - } - ] - } - ] - }, - "nodeType": "YulCase", - "src": "22406:146:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22411:1:32", - "type": "", - "value": "0" - } - }, - { - "body": { - "nodeType": "YulBlock", - "src": "22568:334:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22589:1:32", - "type": "", - "value": "0" - }, - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "22592:5:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "22582:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "22582:16:32" - }, - "nodeType": "YulExpressionStatement", - "src": "22582:16:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "22611:31:32", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22636:1:32", - "type": "", - "value": "0" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "22639:2:32" - } - ], - "functionName": { - "name": "keccak256", - "nodeType": "YulIdentifier", - "src": "22626:9:32" - }, - "nodeType": "YulFunctionCall", - "src": "22626:16:32" - }, - "variables": [ - { - "name": "dataPos", - "nodeType": "YulTypedName", - "src": "22615:7:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "22655:10:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22664:1:32", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "i", - "nodeType": "YulTypedName", - "src": "22659:1:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "22732:120:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "22765:3:32" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "22770:1:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "22761:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "22761:11:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "22774:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "22757:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "22757:20:32" - }, - { - "arguments": [ - { - "name": "dataPos", - "nodeType": "YulIdentifier", - "src": "22785:7:32" - } - ], - "functionName": { - "name": "sload", - "nodeType": "YulIdentifier", - "src": "22779:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "22779:14:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "22750:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "22750:44:32" - }, - "nodeType": "YulExpressionStatement", - "src": "22750:44:32" - }, - { - "nodeType": "YulAssignment", - "src": "22811:27:32", - "value": { - "arguments": [ - { - "name": "dataPos", - "nodeType": "YulIdentifier", - "src": "22826:7:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "22835:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "22822:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "22822:16:32" - }, - "variableNames": [ - { - "name": "dataPos", - "nodeType": "YulIdentifier", - "src": "22811:7:32" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "22689:1:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "22692:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "22686:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "22686:13:32" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "22700:19:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "22702:15:32", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "22711:1:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "22714:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "22707:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "22707:10:32" - }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "22702:1:32" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "22682:3:32", - "statements": [] - }, - "src": "22678:174:32" - }, - { - "nodeType": "YulAssignment", - "src": "22865:27:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "22880:3:32" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "22885:1:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "22876:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "22876:11:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "22889:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "22872:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "22872:20:32" - }, - "variableNames": [ - { - "name": "ret", - "nodeType": "YulIdentifier", - "src": "22865:3:32" - } - ] - } - ] - }, - "nodeType": "YulCase", - "src": "22561:341:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22566:1:32", - "type": "", - "value": "1" - } - } - ], - "expression": { - "arguments": [ - { - "name": "slotValue", - "nodeType": "YulIdentifier", - "src": "22383:9:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "22394:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "22379:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "22379:18:32" - }, - "nodeType": "YulSwitch", - "src": "22372:530:32" - } - ] - }, - "name": "abi_encode_string_storage", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "22171:5:32", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "22178:3:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "ret", - "nodeType": "YulTypedName", - "src": "22186:3:32", - "type": "" - } - ], - "src": "22136:772:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "23076:230:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "23093:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "23104:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "23086:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "23086:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "23086:21:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "23116:67:32", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "23156:6:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "23168:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "23179:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "23164:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "23164:18:32" - } - ], - "functionName": { - "name": "abi_encode_string_storage", - "nodeType": "YulIdentifier", - "src": "23130:25:32" - }, - "nodeType": "YulFunctionCall", - "src": "23130:53:32" - }, - "variables": [ - { - "name": "tail_1", - "nodeType": "YulTypedName", - "src": "23120:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "23203:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "23214:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "23199:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "23199:18:32" - }, - { - "arguments": [ - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "23223:6:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "23231:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "23219:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "23219:22:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "23192:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "23192:50:32" - }, - "nodeType": "YulExpressionStatement", - "src": "23192:50:32" - }, - { - "nodeType": "YulAssignment", - "src": "23251:49:32", - "value": { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "23285:6:32" - }, - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "23293:6:32" - } - ], - "functionName": { - "name": "abi_encode_string_storage", - "nodeType": "YulIdentifier", - "src": "23259:25:32" - }, - "nodeType": "YulFunctionCall", - "src": "23259:41:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "23251:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_string_storage_t_string_storage__to_t_string_memory_ptr_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "23037:9:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "23048:6:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "23056:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "23067:4:32", - "type": "" - } - ], - "src": "22913:393:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "23343:95:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "23360:1:32", - "type": "", - "value": "0" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "23367:3:32", - "type": "", - "value": "224" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "23372:10:32", - "type": "", - "value": "0x4e487b71" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "23363:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "23363:20:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "23353:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "23353:31:32" - }, - "nodeType": "YulExpressionStatement", - "src": "23353:31:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "23400:1:32", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "23403:4:32", - "type": "", - "value": "0x11" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "23393:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "23393:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "23393:15:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "23424:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "23427:4:32", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "23417:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "23417:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "23417:15:32" - } - ] - }, - "name": "panic_error_0x11", - "nodeType": "YulFunctionDefinition", - "src": "23311:127:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "23490:88:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "23521:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x11", - "nodeType": "YulIdentifier", - "src": "23523:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "23523:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "23523:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "23506:5:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "23517:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "23513:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "23513:6:32" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "23503:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "23503:17:32" - }, - "nodeType": "YulIf", - "src": "23500:43:32" - }, - { - "nodeType": "YulAssignment", - "src": "23552:20:32", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "23563:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "23570:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "23559:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "23559:13:32" - }, - "variableNames": [ - { - "name": "ret", - "nodeType": "YulIdentifier", - "src": "23552:3:32" - } - ] - } - ] - }, - "name": "increment_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "23472:5:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "ret", - "nodeType": "YulTypedName", - "src": "23482:3:32", - "type": "" - } - ], - "src": "23443:135:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "23757:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "23774:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "23785:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "23767:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "23767:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "23767:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "23808:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "23819:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "23804:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "23804:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "23824:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "23797:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "23797:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "23797:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "23846:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "23857:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "23842:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "23842:18:32" - }, - { - "hexValue": "4c4243303031", - "kind": "string", - "nodeType": "YulLiteral", - "src": "23862:8:32", - "type": "", - "value": "LBC001" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "23835:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "23835:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "23835:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "23880:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "23892:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "23903:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "23888:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "23888:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "23880:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_a509ede2323476f3f5be48987391c5516e4ea8116b376287322ed2188be0e53c__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "23734:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "23748:4:32", - "type": "" - } - ], - "src": "23583:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "24091:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "24108:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "24119:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "24101:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "24101:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "24101:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "24142:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "24153:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "24138:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "24138:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "24158:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "24131:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "24131:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "24131:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "24180:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "24191:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "24176:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "24176:18:32" - }, - { - "hexValue": "4c4243303238", - "kind": "string", - "nodeType": "YulLiteral", - "src": "24196:8:32", - "type": "", - "value": "LBC028" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "24169:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "24169:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "24169:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "24214:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "24226:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "24237:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "24222:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "24222:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "24214:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_4c4b8fd0ae53a3caa85e74f53bba210cefdcb0e1d1c519eb8385d2cd3741f7fb__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "24068:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "24082:4:32", - "type": "" - } - ], - "src": "23917:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "24434:211:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "24451:9:32" - }, - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "24466:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "24482:3:32", - "type": "", - "value": "160" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "24487:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "24478:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "24478:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "24491:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "24474:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "24474:19:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "24462:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "24462:32:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "24444:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "24444:51:32" - }, - "nodeType": "YulExpressionStatement", - "src": "24444:51:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "24515:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "24526:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "24511:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "24511:18:32" - }, - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "24531:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "24504:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "24504:34:32" - }, - "nodeType": "YulExpressionStatement", - "src": "24504:34:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "24558:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "24569:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "24554:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "24554:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "24574:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "24547:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "24547:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "24547:30:32" - }, - { - "nodeType": "YulAssignment", - "src": "24586:53:32", - "value": { - "arguments": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "24612:6:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "24624:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "24635:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "24620:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "24620:18:32" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "24594:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "24594:45:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "24586:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_address_t_bytes32_t_bytes_memory_ptr__to_t_address_t_bytes32_t_bytes_memory_ptr__fromStack_library_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "24387:9:32", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "24398:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "24406:6:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "24414:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "24425:4:32", - "type": "" - } - ], - "src": "24251:394:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "24728:167:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "24774:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "24783:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "24786:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "24776:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "24776:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "24776:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "24749:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "24758:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "24745:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "24745:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "24770:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "24741:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "24741:32:32" - }, - "nodeType": "YulIf", - "src": "24738:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "24799:29:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "24818:9:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "24812:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "24812:16:32" - }, - "variables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "24803:5:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "24859:5:32" - } - ], - "functionName": { - "name": "validator_revert_bool", - "nodeType": "YulIdentifier", - "src": "24837:21:32" - }, - "nodeType": "YulFunctionCall", - "src": "24837:28:32" - }, - "nodeType": "YulExpressionStatement", - "src": "24837:28:32" - }, - { - "nodeType": "YulAssignment", - "src": "24874:15:32", - "value": { - "name": "value", - "nodeType": "YulIdentifier", - "src": "24884:5:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "24874:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bool_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "24694:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "24705:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "24717:6:32", - "type": "" - } - ], - "src": "24650:245:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "25074:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "25091:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25102:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "25084:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "25084:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "25084:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "25125:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25136:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "25121:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "25121:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25141:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "25114:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "25114:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "25114:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "25163:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25174:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "25159:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "25159:18:32" - }, - { - "hexValue": "4c4243303239", - "kind": "string", - "nodeType": "YulLiteral", - "src": "25179:8:32", - "type": "", - "value": "LBC029" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "25152:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "25152:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "25152:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "25197:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "25209:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25220:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "25205:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "25205:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "25197:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_ebb41fd1c3d95b8eaff1e56d491f7a983f7f3039fac57e6fad7993de139e2216__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "25051:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "25065:4:32", - "type": "" - } - ], - "src": "24900:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "25408:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "25425:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25436:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "25418:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "25418:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "25418:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "25459:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25470:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "25455:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "25455:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25475:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "25448:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "25448:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "25448:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "25497:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25508:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "25493:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "25493:18:32" - }, - { - "hexValue": "4c4243303330", - "kind": "string", - "nodeType": "YulLiteral", - "src": "25513:8:32", - "type": "", - "value": "LBC030" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "25486:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "25486:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "25486:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "25531:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "25543:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25554:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "25539:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "25539:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "25531:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_6b987c2142a6ed89e76021f4d9a60f3cbfc2f7110bd81bc33ff58ad7cf27befa__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "25385:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "25399:4:32", - "type": "" - } - ], - "src": "25234:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "25742:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "25759:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25770:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "25752:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "25752:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "25752:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "25793:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25804:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "25789:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "25789:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25809:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "25782:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "25782:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "25782:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "25831:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25842:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "25827:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "25827:18:32" - }, - { - "hexValue": "4c4243303331", - "kind": "string", - "nodeType": "YulLiteral", - "src": "25847:8:32", - "type": "", - "value": "LBC031" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "25820:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "25820:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "25820:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "25865:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "25877:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25888:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "25873:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "25873:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "25865:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_b9f5a33cea5e5738277827f2f81faa92d1d3c73cf030e2542a7b80c6f7bdc8a7__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "25719:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "25733:4:32", - "type": "" - } - ], - "src": "25568:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "26076:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "26093:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "26104:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "26086:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "26086:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "26086:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "26127:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "26138:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "26123:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "26123:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "26143:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "26116:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "26116:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "26116:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "26165:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "26176:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "26161:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "26161:18:32" - }, - { - "hexValue": "4c4243303332", - "kind": "string", - "nodeType": "YulLiteral", - "src": "26181:8:32", - "type": "", - "value": "LBC032" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "26154:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "26154:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "26154:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "26199:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "26211:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "26222:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "26207:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "26207:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "26199:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_5d8d108d93a53583cf1949d2287cc7f0af5603bd102faf9db90e7e6bbc90ade8__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "26053:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "26067:4:32", - "type": "" - } - ], - "src": "25902:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "26410:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "26427:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "26438:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "26420:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "26420:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "26420:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "26461:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "26472:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "26457:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "26457:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "26477:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "26450:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "26450:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "26450:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "26499:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "26510:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "26495:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "26495:18:32" - }, - { - "hexValue": "4c4243303333", - "kind": "string", - "nodeType": "YulLiteral", - "src": "26515:8:32", - "type": "", - "value": "LBC033" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "26488:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "26488:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "26488:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "26533:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "26545:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "26556:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "26541:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "26541:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "26533:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_e976d8a3febca36c67dcd5b38ae845ffd2f248a24eaf2d7a97f208ffd80ff125__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "26387:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "26401:4:32", - "type": "" - } - ], - "src": "26236:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "26744:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "26761:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "26772:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "26754:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "26754:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "26754:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "26795:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "26806:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "26791:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "26791:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "26811:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "26784:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "26784:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "26784:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "26833:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "26844:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "26829:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "26829:18:32" - }, - { - "hexValue": "4c4243303334", - "kind": "string", - "nodeType": "YulLiteral", - "src": "26849:8:32", - "type": "", - "value": "LBC034" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "26822:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "26822:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "26822:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "26867:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "26879:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "26890:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "26875:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "26875:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "26867:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_745436b16371784f7b451bf4bed6f0978e2f007f74e71dfa0c49414b3a522759__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "26721:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "26735:4:32", - "type": "" - } - ], - "src": "26570:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "27078:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "27095:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27106:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "27088:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "27088:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "27088:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "27129:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27140:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "27125:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "27125:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27145:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "27118:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "27118:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "27118:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "27167:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27178:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "27163:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "27163:18:32" - }, - { - "hexValue": "4c4243303335", - "kind": "string", - "nodeType": "YulLiteral", - "src": "27183:8:32", - "type": "", - "value": "LBC035" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "27156:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "27156:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "27156:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "27201:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "27213:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27224:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "27209:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "27209:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "27201:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_37570ea73114ff69cb8aab9e09d6f5beb11b36ce1a2ae19ee6f5de28dc42d754__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "27055:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "27069:4:32", - "type": "" - } - ], - "src": "26904:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "27412:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "27429:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27440:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "27422:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "27422:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "27422:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "27463:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27474:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "27459:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "27459:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27479:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "27452:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "27452:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "27452:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "27501:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27512:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "27497:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "27497:18:32" - }, - { - "hexValue": "4c4243303336", - "kind": "string", - "nodeType": "YulLiteral", - "src": "27517:8:32", - "type": "", - "value": "LBC036" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "27490:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "27490:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "27490:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "27535:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "27547:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27558:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "27543:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "27543:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "27535:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_5ccb4449252c316623411606962515c0966208bcce5fe352c2e850b058d1077c__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "27389:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "27403:4:32", - "type": "" - } - ], - "src": "27238:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "27621:79:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "27631:17:32", - "value": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "27643:1:32" - }, - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "27646:1:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "27639:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "27639:9:32" - }, - "variableNames": [ - { - "name": "diff", - "nodeType": "YulIdentifier", - "src": "27631:4:32" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "27672:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x11", - "nodeType": "YulIdentifier", - "src": "27674:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "27674:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "27674:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "diff", - "nodeType": "YulIdentifier", - "src": "27663:4:32" - }, - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "27669:1:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "27660:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "27660:11:32" - }, - "nodeType": "YulIf", - "src": "27657:37:32" - } - ] - }, - "name": "checked_sub_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "x", - "nodeType": "YulTypedName", - "src": "27603:1:32", - "type": "" - }, - { - "name": "y", - "nodeType": "YulTypedName", - "src": "27606:1:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "diff", - "nodeType": "YulTypedName", - "src": "27612:4:32", - "type": "" - } - ], - "src": "27572:128:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "27862:188:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "27872:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "27884:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27895:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "27880:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "27880:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "27872:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "27914:9:32" - }, - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "27929:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27945:3:32", - "type": "", - "value": "160" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27950:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "27941:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "27941:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27954:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "27937:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "27937:19:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "27925:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "27925:32:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "27907:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "27907:51:32" - }, - "nodeType": "YulExpressionStatement", - "src": "27907:51:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "27978:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27989:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "27974:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "27974:18:32" - }, - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "27994:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "27967:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "27967:34:32" - }, - "nodeType": "YulExpressionStatement", - "src": "27967:34:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "28021:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28032:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "28017:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "28017:18:32" - }, - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "28037:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "28010:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "28010:34:32" - }, - "nodeType": "YulExpressionStatement", - "src": "28010:34:32" - } - ] - }, - "name": "abi_encode_tuple_t_address_t_uint256_t_bytes32__to_t_address_t_uint256_t_bytes32__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "27815:9:32", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "27826:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "27834:6:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "27842:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "27853:4:32", - "type": "" - } - ], - "src": "27705:345:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "28107:116:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "28117:20:32", - "value": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "28132:1:32" - }, - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "28135:1:32" - } - ], - "functionName": { - "name": "mul", - "nodeType": "YulIdentifier", - "src": "28128:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "28128:9:32" - }, - "variableNames": [ - { - "name": "product", - "nodeType": "YulIdentifier", - "src": "28117:7:32" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "28195:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x11", - "nodeType": "YulIdentifier", - "src": "28197:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "28197:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "28197:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "28166:1:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "28159:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "28159:9:32" - }, - { - "arguments": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "28173:1:32" - }, - { - "arguments": [ - { - "name": "product", - "nodeType": "YulIdentifier", - "src": "28180:7:32" - }, - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "28189:1:32" - } - ], - "functionName": { - "name": "div", - "nodeType": "YulIdentifier", - "src": "28176:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "28176:15:32" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "28170:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "28170:22:32" - } - ], - "functionName": { - "name": "or", - "nodeType": "YulIdentifier", - "src": "28156:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "28156:37:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "28149:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "28149:45:32" - }, - "nodeType": "YulIf", - "src": "28146:71:32" - } - ] - }, - "name": "checked_mul_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "x", - "nodeType": "YulTypedName", - "src": "28086:1:32", - "type": "" - }, - { - "name": "y", - "nodeType": "YulTypedName", - "src": "28089:1:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "product", - "nodeType": "YulTypedName", - "src": "28095:7:32", - "type": "" - } - ], - "src": "28055:168:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "28260:95:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28277:1:32", - "type": "", - "value": "0" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28284:3:32", - "type": "", - "value": "224" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28289:10:32", - "type": "", - "value": "0x4e487b71" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "28280:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "28280:20:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "28270:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "28270:31:32" - }, - "nodeType": "YulExpressionStatement", - "src": "28270:31:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28317:1:32", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28320:4:32", - "type": "", - "value": "0x12" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "28310:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "28310:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "28310:15:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28341:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28344:4:32", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "28334:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "28334:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "28334:15:32" - } - ] - }, - "name": "panic_error_0x12", - "nodeType": "YulFunctionDefinition", - "src": "28228:127:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "28406:74:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "28429:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x12", - "nodeType": "YulIdentifier", - "src": "28431:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "28431:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "28431:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "28426:1:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "28419:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "28419:9:32" - }, - "nodeType": "YulIf", - "src": "28416:35:32" - }, - { - "nodeType": "YulAssignment", - "src": "28460:14:32", - "value": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "28469:1:32" - }, - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "28472:1:32" - } - ], - "functionName": { - "name": "div", - "nodeType": "YulIdentifier", - "src": "28465:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "28465:9:32" - }, - "variableNames": [ - { - "name": "r", - "nodeType": "YulIdentifier", - "src": "28460:1:32" - } - ] - } - ] - }, - "name": "checked_div_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "x", - "nodeType": "YulTypedName", - "src": "28391:1:32", - "type": "" - }, - { - "name": "y", - "nodeType": "YulTypedName", - "src": "28394:1:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "r", - "nodeType": "YulTypedName", - "src": "28400:1:32", - "type": "" - } - ], - "src": "28360:120:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "28612:119:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "28622:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "28634:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28645:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "28630:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "28630:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "28622:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "28664:9:32" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "28675:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "28657:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "28657:25:32" - }, - "nodeType": "YulExpressionStatement", - "src": "28657:25:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "28702:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28713:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "28698:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "28698:18:32" - }, - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "28718:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "28691:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "28691:34:32" - }, - "nodeType": "YulExpressionStatement", - "src": "28691:34:32" - } - ] - }, - "name": "abi_encode_tuple_t_bytes32_t_int256__to_t_bytes32_t_int256__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "28573:9:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "28584:6:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "28592:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "28603:4:32", - "type": "" - } - ], - "src": "28485:246:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "28780:64:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "28797:3:32" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "28806:5:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28825:2:32", - "type": "", - "value": "96" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28829:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "28821:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "28821:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28833:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "28817:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "28817:18:32" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "28813:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "28813:23:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "28802:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "28802:35:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "28790:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "28790:48:32" - }, - "nodeType": "YulExpressionStatement", - "src": "28790:48:32" - } - ] - }, - "name": "abi_encode_bytes20", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "28764:5:32", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "28771:3:32", - "type": "" - } - ], - "src": "28736:108:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "28892:51:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "28909:3:32" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "28918:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "28925:10:32", - "type": "", - "value": "0xffffffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "28914:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "28914:22:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "28902:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "28902:35:32" - }, - "nodeType": "YulExpressionStatement", - "src": "28902:35:32" - } - ] - }, - "name": "abi_encode_uint32", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "28876:5:32", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "28883:3:32", - "type": "" - } - ], - "src": "28849:94:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "28990:49:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "29007:3:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "29023:1:32", - "type": "", - "value": "7" - }, - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "29026:5:32" - } - ], - "functionName": { - "name": "signextend", - "nodeType": "YulIdentifier", - "src": "29012:10:32" - }, - "nodeType": "YulFunctionCall", - "src": "29012:20:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "29000:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "29000:33:32" - }, - "nodeType": "YulExpressionStatement", - "src": "29000:33:32" - } - ] - }, - "name": "abi_encode_int64", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "28974:5:32", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "28981:3:32", - "type": "" - } - ], - "src": "28948:91:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "29105:2368:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "29115:16:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "29125:6:32", - "type": "", - "value": "0x0280" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "29119:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "29165:5:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "29159:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "29159:12:32" - }, - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "29173:3:32" - } - ], - "functionName": { - "name": "abi_encode_bytes20", - "nodeType": "YulIdentifier", - "src": "29140:18:32" - }, - "nodeType": "YulFunctionCall", - "src": "29140:37:32" - }, - "nodeType": "YulExpressionStatement", - "src": "29140:37:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "29186:43:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "29216:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "29223:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "29212:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "29212:16:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "29206:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "29206:23:32" - }, - "variables": [ - { - "name": "memberValue0", - "nodeType": "YulTypedName", - "src": "29190:12:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "memberValue0", - "nodeType": "YulIdentifier", - "src": "29257:12:32" - }, - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "29275:3:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "29280:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "29271:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "29271:14:32" - } - ], - "functionName": { - "name": "abi_encode_address", - "nodeType": "YulIdentifier", - "src": "29238:18:32" - }, - "nodeType": "YulFunctionCall", - "src": "29238:48:32" - }, - "nodeType": "YulExpressionStatement", - "src": "29238:48:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "29295:45:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "29327:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "29334:4:32", - "type": "", - "value": "0x40" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "29323:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "29323:16:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "29317:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "29317:23:32" - }, - "variables": [ - { - "name": "memberValue0_1", - "nodeType": "YulTypedName", - "src": "29299:14:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "memberValue0_1", - "nodeType": "YulIdentifier", - "src": "29368:14:32" - }, - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "29388:3:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "29393:4:32", - "type": "", - "value": "0x40" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "29384:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "29384:14:32" - } - ], - "functionName": { - "name": "abi_encode_address", - "nodeType": "YulIdentifier", - "src": "29349:18:32" - }, - "nodeType": "YulFunctionCall", - "src": "29349:50:32" - }, - "nodeType": "YulExpressionStatement", - "src": "29349:50:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "29408:45:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "29440:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "29447:4:32", - "type": "", - "value": "0x60" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "29436:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "29436:16:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "29430:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "29430:23:32" - }, - "variables": [ - { - "name": "memberValue0_2", - "nodeType": "YulTypedName", - "src": "29412:14:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "29473:3:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "29478:4:32", - "type": "", - "value": "0x60" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "29469:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "29469:14:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "29485:2:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "29462:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "29462:26:32" - }, - "nodeType": "YulExpressionStatement", - "src": "29462:26:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "29497:59:32", - "value": { - "arguments": [ - { - "name": "memberValue0_2", - "nodeType": "YulIdentifier", - "src": "29527:14:32" - }, - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "29547:3:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "29552:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "29543:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "29543:12:32" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "29509:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "29509:47:32" - }, - "variables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "29501:4:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "29565:45:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "29597:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "29604:4:32", - "type": "", - "value": "0x80" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "29593:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "29593:16:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "29587:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "29587:23:32" - }, - "variables": [ - { - "name": "memberValue0_3", - "nodeType": "YulTypedName", - "src": "29569:14:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "memberValue0_3", - "nodeType": "YulIdentifier", - "src": "29638:14:32" - }, - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "29658:3:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "29663:4:32", - "type": "", - "value": "0x80" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "29654:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "29654:14:32" - } - ], - "functionName": { - "name": "abi_encode_address", - "nodeType": "YulIdentifier", - "src": "29619:18:32" - }, - "nodeType": "YulFunctionCall", - "src": "29619:50:32" - }, - "nodeType": "YulExpressionStatement", - "src": "29619:50:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "29678:45:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "29710:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "29717:4:32", - "type": "", - "value": "0xa0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "29706:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "29706:16:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "29700:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "29700:23:32" - }, - "variables": [ - { - "name": "memberValue0_4", - "nodeType": "YulTypedName", - "src": "29682:14:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "29743:3:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "29748:4:32", - "type": "", - "value": "0xa0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "29739:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "29739:14:32" - }, - { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "29759:4:32" - }, - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "29765:3:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "29755:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "29755:14:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "29732:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "29732:38:32" - }, - "nodeType": "YulExpressionStatement", - "src": "29732:38:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "29779:53:32", - "value": { - "arguments": [ - { - "name": "memberValue0_4", - "nodeType": "YulIdentifier", - "src": "29811:14:32" - }, - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "29827:4:32" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "29793:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "29793:39:32" - }, - "variables": [ - { - "name": "tail_1", - "nodeType": "YulTypedName", - "src": "29783:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "29852:3:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "29857:4:32", - "type": "", - "value": "0xc0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "29848:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "29848:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "29874:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "29881:4:32", - "type": "", - "value": "0xc0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "29870:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "29870:16:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "29864:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "29864:23:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "29841:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "29841:47:32" - }, - "nodeType": "YulExpressionStatement", - "src": "29841:47:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "29908:3:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "29913:4:32", - "type": "", - "value": "0xe0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "29904:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "29904:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "29930:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "29937:4:32", - "type": "", - "value": "0xe0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "29926:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "29926:16:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "29920:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "29920:23:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "29897:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "29897:47:32" - }, - "nodeType": "YulExpressionStatement", - "src": "29897:47:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "29953:16:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "29963:6:32", - "type": "", - "value": "0x0100" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "29957:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "29978:43:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "30010:5:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "30017:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "30006:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "30006:14:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "30000:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "30000:21:32" - }, - "variables": [ - { - "name": "memberValue0_5", - "nodeType": "YulTypedName", - "src": "29982:14:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "memberValue0_5", - "nodeType": "YulIdentifier", - "src": "30049:14:32" - }, - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "30069:3:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "30074:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "30065:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "30065:12:32" - } - ], - "functionName": { - "name": "abi_encode_address", - "nodeType": "YulIdentifier", - "src": "30030:18:32" - }, - "nodeType": "YulFunctionCall", - "src": "30030:48:32" - }, - "nodeType": "YulExpressionStatement", - "src": "30030:48:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "30087:16:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "30097:6:32", - "type": "", - "value": "0x0120" - }, - "variables": [ - { - "name": "_3", - "nodeType": "YulTypedName", - "src": "30091:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "30112:43:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "30144:5:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "30151:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "30140:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "30140:14:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "30134:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "30134:21:32" - }, - "variables": [ - { - "name": "memberValue0_6", - "nodeType": "YulTypedName", - "src": "30116:14:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "30175:3:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "30180:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "30171:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "30171:12:32" - }, - { - "arguments": [ - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "30189:6:32" - }, - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "30197:3:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "30185:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "30185:16:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "30164:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "30164:38:32" - }, - "nodeType": "YulExpressionStatement", - "src": "30164:38:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "30211:55:32", - "value": { - "arguments": [ - { - "name": "memberValue0_6", - "nodeType": "YulIdentifier", - "src": "30243:14:32" - }, - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "30259:6:32" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "30225:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "30225:41:32" - }, - "variables": [ - { - "name": "tail_2", - "nodeType": "YulTypedName", - "src": "30215:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "30275:16:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "30285:6:32", - "type": "", - "value": "0x0140" - }, - "variables": [ - { - "name": "_4", - "nodeType": "YulTypedName", - "src": "30279:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "30300:43:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "30332:5:32" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "30339:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "30328:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "30328:14:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "30322:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "30322:21:32" - }, - "variables": [ - { - "name": "memberValue0_7", - "nodeType": "YulTypedName", - "src": "30304:14:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "memberValue0_7", - "nodeType": "YulIdentifier", - "src": "30370:14:32" - }, - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "30390:3:32" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "30395:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "30386:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "30386:12:32" - } - ], - "functionName": { - "name": "abi_encode_uint32", - "nodeType": "YulIdentifier", - "src": "30352:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "30352:47:32" - }, - "nodeType": "YulExpressionStatement", - "src": "30352:47:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "30408:16:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "30418:6:32", - "type": "", - "value": "0x0160" - }, - "variables": [ - { - "name": "_5", - "nodeType": "YulTypedName", - "src": "30412:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "30433:43:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "30465:5:32" - }, - { - "name": "_5", - "nodeType": "YulIdentifier", - "src": "30472:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "30461:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "30461:14:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "30455:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "30455:21:32" - }, - "variables": [ - { - "name": "memberValue0_8", - "nodeType": "YulTypedName", - "src": "30437:14:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "memberValue0_8", - "nodeType": "YulIdentifier", - "src": "30502:14:32" - }, - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "30522:3:32" - }, - { - "name": "_5", - "nodeType": "YulIdentifier", - "src": "30527:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "30518:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "30518:12:32" - } - ], - "functionName": { - "name": "abi_encode_int64", - "nodeType": "YulIdentifier", - "src": "30485:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "30485:46:32" - }, - "nodeType": "YulExpressionStatement", - "src": "30485:46:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "30540:16:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "30550:6:32", - "type": "", - "value": "0x0180" - }, - "variables": [ - { - "name": "_6", - "nodeType": "YulTypedName", - "src": "30544:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "30576:3:32" - }, - { - "name": "_6", - "nodeType": "YulIdentifier", - "src": "30581:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "30572:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "30572:12:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "30596:5:32" - }, - { - "name": "_6", - "nodeType": "YulIdentifier", - "src": "30603:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "30592:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "30592:14:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "30586:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "30586:21:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "30565:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "30565:43:32" - }, - "nodeType": "YulExpressionStatement", - "src": "30565:43:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "30617:16:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "30627:6:32", - "type": "", - "value": "0x01a0" - }, - "variables": [ - { - "name": "_7", - "nodeType": "YulTypedName", - "src": "30621:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "30642:43:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "30674:5:32" - }, - { - "name": "_7", - "nodeType": "YulIdentifier", - "src": "30681:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "30670:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "30670:14:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "30664:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "30664:21:32" - }, - "variables": [ - { - "name": "memberValue0_9", - "nodeType": "YulTypedName", - "src": "30646:14:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "memberValue0_9", - "nodeType": "YulIdentifier", - "src": "30712:14:32" - }, - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "30732:3:32" - }, - { - "name": "_7", - "nodeType": "YulIdentifier", - "src": "30737:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "30728:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "30728:12:32" - } - ], - "functionName": { - "name": "abi_encode_uint32", - "nodeType": "YulIdentifier", - "src": "30694:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "30694:47:32" - }, - "nodeType": "YulExpressionStatement", - "src": "30694:47:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "30750:16:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "30760:6:32", - "type": "", - "value": "0x01c0" - }, - "variables": [ - { - "name": "_8", - "nodeType": "YulTypedName", - "src": "30754:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "30775:44:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "30808:5:32" - }, - { - "name": "_8", - "nodeType": "YulIdentifier", - "src": "30815:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "30804:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "30804:14:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "30798:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "30798:21:32" - }, - "variables": [ - { - "name": "memberValue0_10", - "nodeType": "YulTypedName", - "src": "30779:15:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "memberValue0_10", - "nodeType": "YulIdentifier", - "src": "30846:15:32" - }, - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "30867:3:32" - }, - { - "name": "_8", - "nodeType": "YulIdentifier", - "src": "30872:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "30863:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "30863:12:32" - } - ], - "functionName": { - "name": "abi_encode_uint32", - "nodeType": "YulIdentifier", - "src": "30828:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "30828:48:32" - }, - "nodeType": "YulExpressionStatement", - "src": "30828:48:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "30885:16:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "30895:6:32", - "type": "", - "value": "0x01e0" - }, - "variables": [ - { - "name": "_9", - "nodeType": "YulTypedName", - "src": "30889:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "30910:44:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "30943:5:32" - }, - { - "name": "_9", - "nodeType": "YulIdentifier", - "src": "30950:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "30939:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "30939:14:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "30933:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "30933:21:32" - }, - "variables": [ - { - "name": "memberValue0_11", - "nodeType": "YulTypedName", - "src": "30914:15:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "memberValue0_11", - "nodeType": "YulIdentifier", - "src": "30981:15:32" - }, - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "31002:3:32" - }, - { - "name": "_9", - "nodeType": "YulIdentifier", - "src": "31007:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "30998:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "30998:12:32" - } - ], - "functionName": { - "name": "abi_encode_uint32", - "nodeType": "YulIdentifier", - "src": "30963:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "30963:48:32" - }, - "nodeType": "YulExpressionStatement", - "src": "30963:48:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "31020:17:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "31031:6:32", - "type": "", - "value": "0x0200" - }, - "variables": [ - { - "name": "_10", - "nodeType": "YulTypedName", - "src": "31024:3:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "31046:45:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "31079:5:32" - }, - { - "name": "_10", - "nodeType": "YulIdentifier", - "src": "31086:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "31075:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "31075:15:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "31069:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "31069:22:32" - }, - "variables": [ - { - "name": "memberValue0_12", - "nodeType": "YulTypedName", - "src": "31050:15:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "memberValue0_12", - "nodeType": "YulIdentifier", - "src": "31118:15:32" - }, - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "31139:3:32" - }, - { - "name": "_10", - "nodeType": "YulIdentifier", - "src": "31144:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "31135:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "31135:13:32" - } - ], - "functionName": { - "name": "abi_encode_uint16", - "nodeType": "YulIdentifier", - "src": "31100:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "31100:49:32" - }, - "nodeType": "YulExpressionStatement", - "src": "31100:49:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "31158:17:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "31169:6:32", - "type": "", - "value": "0x0220" - }, - "variables": [ - { - "name": "_11", - "nodeType": "YulTypedName", - "src": "31162:3:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "31184:45:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "31217:5:32" - }, - { - "name": "_11", - "nodeType": "YulIdentifier", - "src": "31224:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "31213:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "31213:15:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "31207:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "31207:22:32" - }, - "variables": [ - { - "name": "memberValue0_13", - "nodeType": "YulTypedName", - "src": "31188:15:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "memberValue0_13", - "nodeType": "YulIdentifier", - "src": "31254:15:32" - }, - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "31275:3:32" - }, - { - "name": "_11", - "nodeType": "YulIdentifier", - "src": "31280:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "31271:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "31271:13:32" - } - ], - "functionName": { - "name": "abi_encode_bool", - "nodeType": "YulIdentifier", - "src": "31238:15:32" - }, - "nodeType": "YulFunctionCall", - "src": "31238:47:32" - }, - "nodeType": "YulExpressionStatement", - "src": "31238:47:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "31294:17:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "31305:6:32", - "type": "", - "value": "0x0240" - }, - "variables": [ - { - "name": "_12", - "nodeType": "YulTypedName", - "src": "31298:3:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "31331:3:32" - }, - { - "name": "_12", - "nodeType": "YulIdentifier", - "src": "31336:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "31327:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "31327:13:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "31352:5:32" - }, - { - "name": "_12", - "nodeType": "YulIdentifier", - "src": "31359:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "31348:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "31348:15:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "31342:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "31342:22:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "31320:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "31320:45:32" - }, - "nodeType": "YulExpressionStatement", - "src": "31320:45:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "31374:17:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "31385:6:32", - "type": "", - "value": "0x0260" - }, - "variables": [ - { - "name": "_13", - "nodeType": "YulTypedName", - "src": "31378:3:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "31411:3:32" - }, - { - "name": "_13", - "nodeType": "YulIdentifier", - "src": "31416:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "31407:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "31407:13:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "31432:5:32" - }, - { - "name": "_13", - "nodeType": "YulIdentifier", - "src": "31439:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "31428:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "31428:15:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "31422:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "31422:22:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "31400:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "31400:45:32" - }, - "nodeType": "YulExpressionStatement", - "src": "31400:45:32" - }, - { - "nodeType": "YulAssignment", - "src": "31454:13:32", - "value": { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "31461:6:32" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "31454:3:32" - } - ] - } - ] - }, - "name": "abi_encode_struct_PeginQuote", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "29082:5:32", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "29089:3:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "29097:3:32", - "type": "" - } - ], - "src": "29044:2429:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "31673:153:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "31690:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "31701:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "31683:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "31683:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "31683:21:32" - }, - { - "nodeType": "YulAssignment", - "src": "31713:64:32", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "31750:6:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "31762:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "31773:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "31758:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "31758:18:32" - } - ], - "functionName": { - "name": "abi_encode_struct_PeginQuote", - "nodeType": "YulIdentifier", - "src": "31721:28:32" - }, - "nodeType": "YulFunctionCall", - "src": "31721:56:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "31713:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "31797:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "31808:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "31793:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "31793:18:32" - }, - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "31813:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "31786:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "31786:34:32" - }, - "nodeType": "YulExpressionStatement", - "src": "31786:34:32" - } - ] - }, - "name": "abi_encode_tuple_t_struct$_PeginQuote_$11233_memory_ptr_t_uint256__to_t_struct$_PeginQuote_$11233_memory_ptr_t_uint256__fromStack_library_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "31634:9:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "31645:6:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "31653:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "31664:4:32", - "type": "" - } - ], - "src": "31478:348:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "31879:77:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "31889:16:32", - "value": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "31900:1:32" - }, - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "31903:1:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "31896:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "31896:9:32" - }, - "variableNames": [ - { - "name": "sum", - "nodeType": "YulIdentifier", - "src": "31889:3:32" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "31928:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x11", - "nodeType": "YulIdentifier", - "src": "31930:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "31930:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "31930:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "31920:1:32" - }, - { - "name": "sum", - "nodeType": "YulIdentifier", - "src": "31923:3:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "31917:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "31917:10:32" - }, - "nodeType": "YulIf", - "src": "31914:36:32" - } - ] - }, - "name": "checked_add_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "x", - "nodeType": "YulTypedName", - "src": "31862:1:32", - "type": "" - }, - { - "name": "y", - "nodeType": "YulTypedName", - "src": "31865:1:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "sum", - "nodeType": "YulTypedName", - "src": "31871:3:32", - "type": "" - } - ], - "src": "31831:125:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "32152:14:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "32154:10:32", - "value": { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "32161:3:32" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "32154:3:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_packed_t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "32136:3:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "32144:3:32", - "type": "" - } - ], - "src": "31961:205:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "32358:248:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "32368:27:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "32380:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "32391:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "32376:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "32376:19:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "32368:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "32411:9:32" - }, - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "32426:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "32442:3:32", - "type": "", - "value": "160" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "32447:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "32438:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "32438:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "32451:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "32434:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "32434:19:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "32422:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "32422:32:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "32404:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "32404:51:32" - }, - "nodeType": "YulExpressionStatement", - "src": "32404:51:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "32475:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "32486:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "32471:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "32471:18:32" - }, - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "32491:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "32464:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "32464:34:32" - }, - "nodeType": "YulExpressionStatement", - "src": "32464:34:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "32518:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "32529:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "32514:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "32514:18:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "32548:6:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "32541:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "32541:14:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "32534:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "32534:22:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "32507:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "32507:50:32" - }, - "nodeType": "YulExpressionStatement", - "src": "32507:50:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "32577:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "32588:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "32573:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "32573:18:32" - }, - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "32593:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "32566:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "32566:34:32" - }, - "nodeType": "YulExpressionStatement", - "src": "32566:34:32" - } - ] - }, - "name": "abi_encode_tuple_t_address_payable_t_uint256_t_bool_t_bytes32__to_t_address_t_uint256_t_bool_t_bytes32__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "32303:9:32", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "32314:6:32", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "32322:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "32330:6:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "32338:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "32349:4:32", - "type": "" - } - ], - "src": "32171:435:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "32748:150:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "32758:27:32", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "32778:6:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "32772:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "32772:13:32" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "32762:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "32833:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "32841:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "32829:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "32829:17:32" - }, - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "32848:3:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "32853:6:32" - } - ], - "functionName": { - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulIdentifier", - "src": "32794:34:32" - }, - "nodeType": "YulFunctionCall", - "src": "32794:66:32" - }, - "nodeType": "YulExpressionStatement", - "src": "32794:66:32" - }, - { - "nodeType": "YulAssignment", - "src": "32869:23:32", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "32880:3:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "32885:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "32876:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "32876:16:32" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "32869:3:32" - } - ] - } - ] - }, - "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": "32724:3:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "32729:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "32740:3:32", - "type": "" - } - ], - "src": "32611:287:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "33127:307:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "33144:9:32" - }, - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "33159:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "33167:10:32", - "type": "", - "value": "0xffffffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "33155:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "33155:23:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "33137:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "33137:42:32" - }, - "nodeType": "YulExpressionStatement", - "src": "33137:42:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "33199:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "33210:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "33195:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "33195:18:32" - }, - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "33215:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "33188:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "33188:34:32" - }, - "nodeType": "YulExpressionStatement", - "src": "33188:34:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "33242:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "33253:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "33238:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "33238:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "33258:3:32", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "33231:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "33231:31:32" - }, - "nodeType": "YulExpressionStatement", - "src": "33231:31:32" - }, - { - "nodeType": "YulAssignment", - "src": "33271:54:32", - "value": { - "arguments": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "33297:6:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "33309:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "33320:3:32", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "33305:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "33305:19:32" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "33279:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "33279:46:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "33271:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "33345:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "33356:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "33341:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "33341:18:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "33375:6:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "33368:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "33368:14:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "33361:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "33361:22:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "33334:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "33334:50:32" - }, - "nodeType": "YulExpressionStatement", - "src": "33334:50:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "33404:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "33415:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "33400:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "33400:19:32" - }, - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "33421:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "33393:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "33393:35:32" - }, - "nodeType": "YulExpressionStatement", - "src": "33393:35:32" - } - ] - }, - "name": "abi_encode_tuple_t_uint32_t_uint256_t_bytes_memory_ptr_t_bool_t_bytes32__to_t_uint256_t_uint256_t_bytes_memory_ptr_t_bool_t_bytes32__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "33064:9:32", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "33075:6:32", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "33083:6:32", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "33091:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "33099:6:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "33107:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "33118:4:32", - "type": "" - } - ], - "src": "32903:531:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "33613:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "33630:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "33641:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "33623:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "33623:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "33623:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "33664:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "33675:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "33660:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "33660:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "33680:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "33653:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "33653:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "33653:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "33702:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "33713:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "33698:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "33698:18:32" - }, - { - "hexValue": "4c4243303139", - "kind": "string", - "nodeType": "YulLiteral", - "src": "33718:8:32", - "type": "", - "value": "LBC019" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "33691:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "33691:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "33691:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "33736:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "33748:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "33759:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "33744:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "33744:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "33736:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_41f42e8d0f67be0e87abf05a33ed728b4868df2f2b92840d9519a852352eb909__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "33590:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "33604:4:32", - "type": "" - } - ], - "src": "33439:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "33947:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "33964:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "33975:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "33957:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "33957:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "33957:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "33998:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "34009:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "33994:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "33994:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "34014:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "33987:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "33987:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "33987:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "34036:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "34047:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "34032:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "34032:18:32" - }, - { - "hexValue": "4c4243303230", - "kind": "string", - "nodeType": "YulLiteral", - "src": "34052:8:32", - "type": "", - "value": "LBC020" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "34025:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "34025:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "34025:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "34070:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "34082:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "34093:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "34078:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "34078:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "34070:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_5c242c0534fa00b11577be4ea886875d641e4a1ad40749685bb740e7c1a67fc9__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "33924:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "33938:4:32", - "type": "" - } - ], - "src": "33773:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "34236:145:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "34246:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "34258:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "34269:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "34254:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "34254:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "34246:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "34288:9:32" - }, - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "34303:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "34319:3:32", - "type": "", - "value": "160" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "34324:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "34315:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "34315:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "34328:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "34311:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "34311:19:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "34299:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "34299:32:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "34281:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "34281:51:32" - }, - "nodeType": "YulExpressionStatement", - "src": "34281:51:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "34352:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "34363:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "34348:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "34348:18:32" - }, - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "34368:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "34341:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "34341:34:32" - }, - "nodeType": "YulExpressionStatement", - "src": "34341:34:32" - } - ] - }, - "name": "abi_encode_tuple_t_address_t_uint256__to_t_address_t_uint256__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "34197:9:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "34208:6:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "34216:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "34227:4:32", - "type": "" - } - ], - "src": "34107:274:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "34560:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "34577:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "34588:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "34570:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "34570:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "34570:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "34611:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "34622:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "34607:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "34607:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "34627:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "34600:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "34600:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "34600:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "34649:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "34660:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "34645:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "34645:18:32" - }, - { - "hexValue": "4c4243303033", - "kind": "string", - "nodeType": "YulLiteral", - "src": "34665:8:32", - "type": "", - "value": "LBC003" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "34638:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "34638:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "34638:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "34683:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "34695:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "34706:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "34691:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "34691:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "34683:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_7e21a7b13292bf184f2fc166cca229506aa89a730258f15cdce6a2f8dc225415__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "34537:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "34551:4:32", - "type": "" - } - ], - "src": "34386:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "34894:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "34911:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "34922:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "34904:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "34904:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "34904:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "34945:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "34956:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "34941:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "34941:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "34961:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "34934:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "34934:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "34934:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "34983:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "34994:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "34979:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "34979:18:32" - }, - { - "hexValue": "4c4243303130", - "kind": "string", - "nodeType": "YulLiteral", - "src": "34999:8:32", - "type": "", - "value": "LBC010" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "34972:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "34972:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "34972:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "35017:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "35029:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "35040:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "35025:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "35025:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "35017:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_b91014d5c812b217b1f7abf06d04044851a14f3d4efa9b6795d3964c23897cc9__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "34871:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "34885:4:32", - "type": "" - } - ], - "src": "34720:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "35228:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "35245:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "35256:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "35238:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "35238:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "35238:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "35279:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "35290:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "35275:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "35275:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "35295:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "35268:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "35268:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "35268:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "35317:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "35328:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "35313:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "35313:18:32" - }, - { - "hexValue": "4c4243303137", - "kind": "string", - "nodeType": "YulLiteral", - "src": "35333:8:32", - "type": "", - "value": "LBC017" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "35306:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "35306:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "35306:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "35351:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "35363:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "35374:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "35359:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "35359:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "35351:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_849663c0a27b21987cfc03f3233af0a7a46b23f0af09d39a18720d9610bcba81__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "35205:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "35219:4:32", - "type": "" - } - ], - "src": "35054:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "35580:63:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "35597:3:32" - }, - { - "hexValue": "706567696e", - "kind": "string", - "nodeType": "YulLiteral", - "src": "35602:7:32", - "type": "", - "value": "pegin" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "35590:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "35590:20:32" - }, - "nodeType": "YulExpressionStatement", - "src": "35590:20:32" - }, - { - "nodeType": "YulAssignment", - "src": "35619:18:32", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "35630:3:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "35635:1:32", - "type": "", - "value": "5" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "35626:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "35626:11:32" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "35619:3:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_packed_t_stringliteral_4dc7b383aaca8b1076677685b160d1864e4801cbbaf42c8044d4665ea1c41120__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "35564:3:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "35572:3:32", - "type": "" - } - ], - "src": "35388:255:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "35787:150:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "35797:27:32", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "35817:6:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "35811:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "35811:13:32" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "35801:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "35872:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "35880:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "35868:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "35868:17:32" - }, - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "35887:3:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "35892:6:32" - } - ], - "functionName": { - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulIdentifier", - "src": "35833:34:32" - }, - "nodeType": "YulFunctionCall", - "src": "35833:66:32" - }, - "nodeType": "YulExpressionStatement", - "src": "35833:66:32" - }, - { - "nodeType": "YulAssignment", - "src": "35908:23:32", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "35919:3:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "35924:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "35915:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "35915:16:32" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "35908:3:32" - } - ] - } - ] - }, - "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": "35763:3:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "35768:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "35779:3:32", - "type": "" - } - ], - "src": "35648:289:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "36134:64:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "36151:3:32" - }, - { - "hexValue": "7065676f7574", - "kind": "string", - "nodeType": "YulLiteral", - "src": "36156:8:32", - "type": "", - "value": "pegout" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "36144:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "36144:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "36144:21:32" - }, - { - "nodeType": "YulAssignment", - "src": "36174:18:32", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "36185:3:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "36190:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "36181:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "36181:11:32" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "36174:3:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_packed_t_stringliteral_ac320a165668abf6cbe2f0b8e46bf2426fe38861df98fc1861161bf05a853587__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "36118:3:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "36126:3:32", - "type": "" - } - ], - "src": "35942:256:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "36395:62:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "36412:3:32" - }, - { - "hexValue": "626f7468", - "kind": "string", - "nodeType": "YulLiteral", - "src": "36417:6:32", - "type": "", - "value": "both" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "36405:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "36405:19:32" - }, - "nodeType": "YulExpressionStatement", - "src": "36405:19:32" - }, - { - "nodeType": "YulAssignment", - "src": "36433:18:32", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "36444:3:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "36449:1:32", - "type": "", - "value": "4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "36440:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "36440:11:32" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "36433:3:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_packed_t_stringliteral_36ad643d447cde9387780ae6f5b371120b595aaff5d56b8440952d5f7116fa16__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "36379:3:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "36387:3:32", - "type": "" - } - ], - "src": "36203:254:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "36636:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "36653:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "36664:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "36646:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "36646:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "36646:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "36687:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "36698:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "36683:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "36683:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "36703:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "36676:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "36676:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "36676:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "36725:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "36736:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "36721:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "36721:18:32" - }, - { - "hexValue": "4c4243303138", - "kind": "string", - "nodeType": "YulLiteral", - "src": "36741:8:32", - "type": "", - "value": "LBC018" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "36714:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "36714:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "36714:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "36759:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "36771:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "36782:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "36767:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "36767:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "36759:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_c8a2f96b1c149a2cda2dda6db9bbdafbecddac69bce104e31ad4dd14842e4820__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "36613:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "36627:4:32", - "type": "" - } - ], - "src": "36462:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "36970:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "36987:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "36998:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "36980:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "36980:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "36980:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "37021:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "37032:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "37017:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "37017:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "37037:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "37010:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "37010:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "37010:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "37059:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "37070:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "37055:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "37055:18:32" - }, - { - "hexValue": "4c4243303730", - "kind": "string", - "nodeType": "YulLiteral", - "src": "37075:8:32", - "type": "", - "value": "LBC070" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "37048:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "37048:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "37048:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "37093:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "37105:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "37116:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "37101:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "37101:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "37093:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_a80fe4c2764b7c4b52829ebb2b1bb3117b2b8ffa6a6401dbe00248ec851a73a8__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "36947:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "36961:4:32", - "type": "" - } - ], - "src": "36796:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "37304:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "37321:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "37332:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "37314:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "37314:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "37314:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "37355:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "37366:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "37351:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "37351:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "37371:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "37344:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "37344:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "37344:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "37393:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "37404:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "37389:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "37389:18:32" - }, - { - "hexValue": "4c4243303039", - "kind": "string", - "nodeType": "YulLiteral", - "src": "37409:8:32", - "type": "", - "value": "LBC009" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "37382:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "37382:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "37382:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "37427:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "37439:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "37450:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "37435:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "37435:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "37427:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_f838e22b544c153329abcc9856d1b1f7e7f6c83118dc13d7a0606e65edb3cdd8__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "37281:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "37295:4:32", - "type": "" - } - ], - "src": "37130:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "37638:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "37655:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "37666:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "37648:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "37648:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "37648:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "37689:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "37700:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "37685:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "37685:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "37705:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "37678:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "37678:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "37678:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "37727:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "37738:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "37723:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "37723:18:32" - }, - { - "hexValue": "4c4243303038", - "kind": "string", - "nodeType": "YulLiteral", - "src": "37743:8:32", - "type": "", - "value": "LBC008" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "37716:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "37716:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "37716:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "37761:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "37773:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "37784:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "37769:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "37769:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "37761:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_26efcc4d852e81be6f75389e4f50496331355ea059764b90ab1412936d29ab69__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "37615:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "37629:4:32", - "type": "" - } - ], - "src": "37464:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "37836:74:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "37859:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x12", - "nodeType": "YulIdentifier", - "src": "37861:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "37861:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "37861:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "37856:1:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "37849:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "37849:9:32" - }, - "nodeType": "YulIf", - "src": "37846:35:32" - }, - { - "nodeType": "YulAssignment", - "src": "37890:14:32", - "value": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "37899:1:32" - }, - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "37902:1:32" - } - ], - "functionName": { - "name": "mod", - "nodeType": "YulIdentifier", - "src": "37895:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "37895:9:32" - }, - "variableNames": [ - { - "name": "r", - "nodeType": "YulIdentifier", - "src": "37890:1:32" - } - ] - } - ] - }, - "name": "mod_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "x", - "nodeType": "YulTypedName", - "src": "37821:1:32", - "type": "" - }, - { - "name": "y", - "nodeType": "YulTypedName", - "src": "37824:1:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "r", - "nodeType": "YulTypedName", - "src": "37830:1:32", - "type": "" - } - ], - "src": "37798:112:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "38044:119:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "38054:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "38066:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "38077:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "38062:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "38062:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "38054:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "38096:9:32" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "38107:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "38089:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "38089:25:32" - }, - "nodeType": "YulExpressionStatement", - "src": "38089:25:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "38134:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "38145:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "38130:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "38130:18:32" - }, - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "38150:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "38123:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "38123:34:32" - }, - "nodeType": "YulExpressionStatement", - "src": "38123:34:32" - } - ] - }, - "name": "abi_encode_tuple_t_uint256_t_uint256__to_t_uint256_t_uint256__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "38005:9:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "38016:6:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "38024:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "38035:4:32", - "type": "" - } - ], - "src": "37915:248:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "38342:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "38359:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "38370:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "38352:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "38352:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "38352:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "38393:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "38404:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "38389:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "38389:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "38409:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "38382:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "38382:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "38382:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "38431:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "38442:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "38427:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "38427:18:32" - }, - { - "hexValue": "4c4243303231", - "kind": "string", - "nodeType": "YulLiteral", - "src": "38447:8:32", - "type": "", - "value": "LBC021" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "38420:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "38420:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "38420:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "38465:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "38477:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "38488:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "38473:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "38473:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "38465:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_ccfdeeda37cff52b8b53c7f459ead001a00858d8cd279133dc1e599c6257c485__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "38319:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "38333:4:32", - "type": "" - } - ], - "src": "38168:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "38676:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "38693:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "38704:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "38686:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "38686:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "38686:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "38727:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "38738:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "38723:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "38723:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "38743:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "38716:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "38716:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "38716:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "38765:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "38776:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "38761:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "38761:18:32" - }, - { - "hexValue": "4c4243303232", - "kind": "string", - "nodeType": "YulLiteral", - "src": "38781:8:32", - "type": "", - "value": "LBC022" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "38754:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "38754:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "38754:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "38799:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "38811:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "38822:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "38807:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "38807:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "38799:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_ae5a5bd2536c79a56736074670f517df1b8a17deb822b59dfa1648888074b4cc__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "38653:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "38667:4:32", - "type": "" - } - ], - "src": "38502:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "39010:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "39027:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "39038:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "39020:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "39020:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "39020:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "39061:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "39072:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "39057:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "39057:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "39077:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "39050:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "39050:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "39050:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "39099:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "39110:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "39095:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "39095:18:32" - }, - { - "hexValue": "4c4243303233", - "kind": "string", - "nodeType": "YulLiteral", - "src": "39115:8:32", - "type": "", - "value": "LBC023" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "39088:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "39088:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "39088:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "39133:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "39145:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "39156:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "39141:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "39141:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "39133:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_1e153c8413fa71b1dc88c42214ae3211e20bbd7d323adc3a7cb82fb90c05d672__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "38987:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "39001:4:32", - "type": "" - } - ], - "src": "38836:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "39344:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "39361:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "39372:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "39354:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "39354:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "39354:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "39395:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "39406:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "39391:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "39391:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "39411:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "39384:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "39384:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "39384:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "39433:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "39444:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "39429:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "39429:18:32" - }, - { - "hexValue": "4c4243303035", - "kind": "string", - "nodeType": "YulLiteral", - "src": "39449:8:32", - "type": "", - "value": "LBC005" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "39422:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "39422:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "39422:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "39467:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "39479:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "39490:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "39475:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "39475:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "39467:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_0a36b25bf1b768acf545d4a7d22e9fceeba3414a7a19dc34973fc2e1be01a831__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "39321:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "39335:4:32", - "type": "" - } - ], - "src": "39170:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "39743:417:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "39760:3:32" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "39765:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "39753:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "39753:19:32" - }, - "nodeType": "YulExpressionStatement", - "src": "39753:19:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "39781:27:32", - "value": { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "39801:6:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "39795:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "39795:13:32" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "39785:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "39856:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "39864:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "39852:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "39852:15:32" - }, - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "39873:3:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "39878:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "39869:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "39869:12:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "39883:6:32" - } - ], - "functionName": { - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulIdentifier", - "src": "39817:34:32" - }, - "nodeType": "YulFunctionCall", - "src": "39817:73:32" - }, - "nodeType": "YulExpressionStatement", - "src": "39817:73:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "39899:26:32", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "39913:3:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "39918:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "39909:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "39909:16:32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "39903:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "39945:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "39949:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "39941:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "39941:11:32" - }, - { - "arguments": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "39958:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "39978:2:32", - "type": "", - "value": "96" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "39982:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "39974:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "39974:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "39986:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "39970:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "39970:18:32" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "39966:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "39966:23:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "39954:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "39954:36:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "39934:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "39934:57:32" - }, - "nodeType": "YulExpressionStatement", - "src": "39934:57:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "40000:29:32", - "value": { - "arguments": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "40022:6:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "40016:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "40016:13:32" - }, - "variables": [ - { - "name": "length_1", - "nodeType": "YulTypedName", - "src": "40004:8:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "40077:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "40085:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "40073:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "40073:15:32" - }, - { - "arguments": [ - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "40094:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "40098:2:32", - "type": "", - "value": "52" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "40090:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "40090:11:32" - }, - { - "name": "length_1", - "nodeType": "YulIdentifier", - "src": "40103:8:32" - } - ], - "functionName": { - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulIdentifier", - "src": "40038:34:32" - }, - "nodeType": "YulFunctionCall", - "src": "40038:74:32" - }, - "nodeType": "YulExpressionStatement", - "src": "40038:74:32" - }, - { - "nodeType": "YulAssignment", - "src": "40121:33:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "40136:2:32" - }, - { - "name": "length_1", - "nodeType": "YulIdentifier", - "src": "40140:8:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "40132:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "40132:17:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "40151:2:32", - "type": "", - "value": "52" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "40128:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "40128:26:32" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "40121:3:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_packed_t_bytes32_t_bytes_memory_ptr_t_bytes20_t_bytes_memory_ptr__to_t_bytes32_t_bytes_memory_ptr_t_bytes20_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "39695:3:32", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "39700:6:32", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "39708:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "39716:6:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "39724:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "39735:3:32", - "type": "" - } - ], - "src": "39504:656:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "40228:379:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "40277:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "40286:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "40289:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "40279:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "40279:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "40279:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "40256:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "40264:4:32", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "40252:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "40252:17:32" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "40271:3:32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "40248:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "40248:27:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "40241:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "40241:35:32" - }, - "nodeType": "YulIf", - "src": "40238:55:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "40302:23:32", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "40318:6:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "40312:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "40312:13:32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "40306:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "40334:64:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "40394:2:32" - } - ], - "functionName": { - "name": "array_allocation_size_string", - "nodeType": "YulIdentifier", - "src": "40365:28:32" - }, - "nodeType": "YulFunctionCall", - "src": "40365:32:32" - } - ], - "functionName": { - "name": "allocate_memory", - "nodeType": "YulIdentifier", - "src": "40349:15:32" - }, - "nodeType": "YulFunctionCall", - "src": "40349:49:32" - }, - "variables": [ - { - "name": "array_1", - "nodeType": "YulTypedName", - "src": "40338:7:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "array_1", - "nodeType": "YulIdentifier", - "src": "40414:7:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "40423:2:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "40407:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "40407:19:32" - }, - "nodeType": "YulExpressionStatement", - "src": "40407:19:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "40474:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "40483:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "40486:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "40476:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "40476:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "40476:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "40449:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "40457:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "40445:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "40445:15:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "40462:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "40441:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "40441:26:32" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "40469:3:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "40438:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "40438:35:32" - }, - "nodeType": "YulIf", - "src": "40435:55:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "40538:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "40546:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "40534:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "40534:17:32" - }, - { - "arguments": [ - { - "name": "array_1", - "nodeType": "YulIdentifier", - "src": "40557:7:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "40566:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "40553:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "40553:18:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "40573:2:32" - } - ], - "functionName": { - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulIdentifier", - "src": "40499:34:32" - }, - "nodeType": "YulFunctionCall", - "src": "40499:77:32" - }, - "nodeType": "YulExpressionStatement", - "src": "40499:77:32" - }, - { - "nodeType": "YulAssignment", - "src": "40585:16:32", - "value": { - "name": "array_1", - "nodeType": "YulIdentifier", - "src": "40594:7:32" - }, - "variableNames": [ - { - "name": "array", - "nodeType": "YulIdentifier", - "src": "40585:5:32" - } - ] - } - ] - }, - "name": "abi_decode_bytes_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "40202:6:32", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "40210:3:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "array", - "nodeType": "YulTypedName", - "src": "40218:5:32", - "type": "" - } - ], - "src": "40165:442:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "40702:245:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "40748:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "40757:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "40760:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "40750:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "40750:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "40750:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "40723:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "40732:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "40719:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "40719:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "40744:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "40715:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "40715:32:32" - }, - "nodeType": "YulIf", - "src": "40712:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "40773:30:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "40793:9:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "40787:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "40787:16:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "40777:6:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "40846:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "40855:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "40858:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "40848:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "40848:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "40848:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "40818:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "40834:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "40838:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "40830:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "40830:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "40842:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "40826:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "40826:18:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "40815:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "40815:30:32" - }, - "nodeType": "YulIf", - "src": "40812:50:32" - }, - { - "nodeType": "YulAssignment", - "src": "40871:70:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "40913:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "40924:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "40909:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "40909:22:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "40933:7:32" - } - ], - "functionName": { - "name": "abi_decode_bytes_fromMemory", - "nodeType": "YulIdentifier", - "src": "40881:27:32" - }, - "nodeType": "YulFunctionCall", - "src": "40881:60:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "40871:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bytes_memory_ptr_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "40668:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "40679:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "40691:6:32", - "type": "" - } - ], - "src": "40612:335:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "41297:263:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "41314:3:32" - }, - { - "hexValue": "20", - "kind": "string", - "nodeType": "YulLiteral", - "src": "41319:3:32", - "type": "", - "value": " " - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "41307:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "41307:16:32" - }, - "nodeType": "YulExpressionStatement", - "src": "41307:16:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "41343:3:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "41348:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "41339:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "41339:11:32" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "41352:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "41332:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "41332:27:32" - }, - "nodeType": "YulExpressionStatement", - "src": "41332:27:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "41379:3:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "41384:2:32", - "type": "", - "value": "33" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "41375:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "41375:12:32" - }, - { - "hexValue": "75", - "kind": "string", - "nodeType": "YulLiteral", - "src": "41389:3:32", - "type": "", - "value": "u" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "41368:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "41368:25:32" - }, - "nodeType": "YulExpressionStatement", - "src": "41368:25:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "41402:27:32", - "value": { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "41422:6:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "41416:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "41416:13:32" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "41406:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "41477:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "41485:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "41473:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "41473:17:32" - }, - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "41496:3:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "41501:2:32", - "type": "", - "value": "34" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "41492:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "41492:12:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "41506:6:32" - } - ], - "functionName": { - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulIdentifier", - "src": "41438:34:32" - }, - "nodeType": "YulFunctionCall", - "src": "41438:75:32" - }, - "nodeType": "YulExpressionStatement", - "src": "41438:75:32" - }, - { - "nodeType": "YulAssignment", - "src": "41522:32:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "41537:3:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "41542:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "41533:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "41533:16:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "41551:2:32", - "type": "", - "value": "34" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "41529:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "41529:25:32" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "41522:3:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_packed_t_stringliteral_681afa780d17da29203322b473d3f210a7d621259a4e6ce9e403f5a266ff719a_t_bytes32_t_stringliteral_32cefdcd8e794145c9af8dd1f4b1fbd92d6e547ae855553080fc8bd19c4883a0_t_bytes_memory_ptr__to_t_bytes1_t_bytes32_t_bytes1_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "41265:3:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "41270:6:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "41278:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "41289:3:32", - "type": "" - } - ], - "src": "40952:608:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "41760:273:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "41777:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "41788:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "41770:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "41770:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "41770:21:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "41800:59:32", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "41832:6:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "41844:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "41855:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "41840:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "41840:18:32" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "41814:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "41814:45:32" - }, - "variables": [ - { - "name": "tail_1", - "nodeType": "YulTypedName", - "src": "41804:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "41879:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "41890:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "41875:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "41875:18:32" - }, - { - "arguments": [ - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "41899:6:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "41907:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "41895:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "41895:22:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "41868:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "41868:50:32" - }, - "nodeType": "YulExpressionStatement", - "src": "41868:50:32" - }, - { - "nodeType": "YulAssignment", - "src": "41927:41:32", - "value": { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "41953:6:32" - }, - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "41961:6:32" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "41935:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "41935:33:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "41927:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "41988:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "41999:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "41984:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "41984:18:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "42018:6:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "42011:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "42011:14:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "42004:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "42004:22:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "41977:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "41977:50:32" - }, - "nodeType": "YulExpressionStatement", - "src": "41977:50:32" - } - ] - }, - "name": "abi_encode_tuple_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bool__to_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bool__fromStack_library_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "41713:9:32", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "41724:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "41732:6:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "41740:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "41751:4:32", - "type": "" - } - ], - "src": "41565:468:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "42212:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "42229:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "42240:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "42222:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "42222:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "42222:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "42263:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "42274:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "42259:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "42259:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "42279:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "42252:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "42252:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "42252:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "42301:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "42312:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "42297:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "42297:18:32" - }, - { - "hexValue": "4c4243303234", - "kind": "string", - "nodeType": "YulLiteral", - "src": "42317:8:32", - "type": "", - "value": "LBC024" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "42290:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "42290:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "42290:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "42335:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "42347:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "42358:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "42343:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "42343:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "42335:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_9c6c58d5603e5b2aab0d13c183f0136466f0ce13826630d90e079bf910078715__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "42189:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "42203:4:32", - "type": "" - } - ], - "src": "42038:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "42546:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "42563:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "42574:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "42556:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "42556:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "42556:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "42597:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "42608:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "42593:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "42593:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "42613:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "42586:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "42586:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "42586:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "42635:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "42646:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "42631:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "42631:18:32" - }, - { - "hexValue": "4c4243303235", - "kind": "string", - "nodeType": "YulLiteral", - "src": "42651:8:32", - "type": "", - "value": "LBC025" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "42624:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "42624:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "42624:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "42669:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "42681:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "42692:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "42677:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "42677:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "42669:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_ceda09d74f8a59745bfad5393e75482469dc6db77c24fde6f52df4409a3f744c__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "42523:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "42537:4:32", - "type": "" - } - ], - "src": "42372:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "42753:125:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "42763:20:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "42773:10:32", - "type": "", - "value": "0xffffffff" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "42767:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "42792:34:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "42807:1:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "42810:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "42803:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "42803:10:32" - }, - { - "arguments": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "42819:1:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "42822:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "42815:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "42815:10:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "42799:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "42799:27:32" - }, - "variableNames": [ - { - "name": "sum", - "nodeType": "YulIdentifier", - "src": "42792:3:32" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "42850:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x11", - "nodeType": "YulIdentifier", - "src": "42852:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "42852:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "42852:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "sum", - "nodeType": "YulIdentifier", - "src": "42841:3:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "42846:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "42838:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "42838:11:32" - }, - "nodeType": "YulIf", - "src": "42835:37:32" - } - ] - }, - "name": "checked_add_t_uint32", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "x", - "nodeType": "YulTypedName", - "src": "42736:1:32", - "type": "" - }, - { - "name": "y", - "nodeType": "YulTypedName", - "src": "42739:1:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "sum", - "nodeType": "YulTypedName", - "src": "42745:3:32", - "type": "" - } - ], - "src": "42706:172:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "43057:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "43074:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "43085:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "43067:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "43067:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "43067:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "43108:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "43119:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "43104:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "43104:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "43124:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "43097:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "43097:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "43097:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "43146:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "43157:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "43142:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "43142:18:32" - }, - { - "hexValue": "4c4243303236", - "kind": "string", - "nodeType": "YulLiteral", - "src": "43162:8:32", - "type": "", - "value": "LBC026" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "43135:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "43135:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "43135:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "43180:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "43192:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "43203:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "43188:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "43188:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "43180:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_2d63cc93f65e3c34ca5cba24271c3d6869155fb2ffc83f083d82378f26d56cb0__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "43034:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "43048:4:32", - "type": "" - } - ], - "src": "42883:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "43391:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "43408:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "43419:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "43401:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "43401:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "43401:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "43442:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "43453:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "43438:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "43438:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "43458:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "43431:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "43431:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "43431:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "43480:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "43491:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "43476:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "43476:18:32" - }, - { - "hexValue": "4c4243303237", - "kind": "string", - "nodeType": "YulLiteral", - "src": "43496:8:32", - "type": "", - "value": "LBC027" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "43469:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "43469:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "43469:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "43514:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "43526:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "43537:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "43522:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "43522:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "43514:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_5a937cad92792f08abdaf15eed65a070909c29d924f856ec65923c138fd39a48__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "43368:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "43382:4:32", - "type": "" - } - ], - "src": "43217:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "43725:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "43742:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "43753:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "43735:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "43735:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "43735:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "43776:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "43787:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "43772:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "43772:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "43792:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "43765:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "43765:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "43765:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "43814:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "43825:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "43810:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "43810:18:32" - }, - { - "hexValue": "4c4243303337", - "kind": "string", - "nodeType": "YulLiteral", - "src": "43830:8:32", - "type": "", - "value": "LBC037" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "43803:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "43803:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "43803:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "43848:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "43860:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "43871:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "43856:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "43856:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "43848:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_ecc75ee801269ba7670799af84ad7f1d968d59315783a708807424c72ec63d04__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "43702:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "43716:4:32", - "type": "" - } - ], - "src": "43551:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "44059:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "44076:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "44087:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "44069:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "44069:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "44069:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "44110:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "44121:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "44106:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "44106:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "44126:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "44099:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "44099:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "44099:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "44148:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "44159:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "44144:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "44144:18:32" - }, - { - "hexValue": "4c4243303633", - "kind": "string", - "nodeType": "YulLiteral", - "src": "44164:8:32", - "type": "", - "value": "LBC063" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "44137:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "44137:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "44137:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "44182:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "44194:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "44205:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "44190:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "44190:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "44182:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_0267b5bcac1113eea8a4dc81e170e6fe59336df7f2c6a4d2ae7ad240f894a2f9__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "44036:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "44050:4:32", - "type": "" - } - ], - "src": "43885:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "44393:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "44410:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "44421:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "44403:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "44403:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "44403:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "44444:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "44455:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "44440:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "44440:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "44460:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "44433:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "44433:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "44433:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "44482:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "44493:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "44478:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "44478:18:32" - }, - { - "hexValue": "4c4243303635", - "kind": "string", - "nodeType": "YulLiteral", - "src": "44498:8:32", - "type": "", - "value": "LBC065" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "44471:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "44471:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "44471:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "44516:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "44528:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "44539:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "44524:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "44524:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "44516:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_39eacc26aa588693c014f46e6dd86f6cac22eb3287098210ddf746f1a6af8214__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "44370:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "44384:4:32", - "type": "" - } - ], - "src": "44219:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "44727:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "44744:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "44755:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "44737:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "44737:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "44737:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "44778:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "44789:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "44774:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "44774:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "44794:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "44767:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "44767:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "44767:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "44816:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "44827:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "44812:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "44812:18:32" - }, - { - "hexValue": "4c4243303436", - "kind": "string", - "nodeType": "YulLiteral", - "src": "44832:8:32", - "type": "", - "value": "LBC046" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "44805:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "44805:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "44805:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "44850:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "44862:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "44873:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "44858:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "44858:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "44850:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_c8999eb883ba6531127283b89d3773d87761ac547946da55d1f52c5931d8838f__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "44704:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "44718:4:32", - "type": "" - } - ], - "src": "44553:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "45061:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "45078:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "45089:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "45071:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "45071:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "45071:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "45112:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "45123:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "45108:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "45108:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "45128:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "45101:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "45101:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "45101:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "45150:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "45161:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "45146:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "45146:18:32" - }, - { - "hexValue": "4c4243303437", - "kind": "string", - "nodeType": "YulLiteral", - "src": "45166:8:32", - "type": "", - "value": "LBC047" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "45139:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "45139:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "45139:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "45184:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "45196:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "45207:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "45192:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "45192:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "45184:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_b400745c4fd650850c2059b2d13f12980ca63b7ccd87c008204992f11af559c2__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "45038:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "45052:4:32", - "type": "" - } - ], - "src": "44887:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "45395:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "45412:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "45423:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "45405:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "45405:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "45405:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "45446:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "45457:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "45442:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "45442:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "45462:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "45435:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "45435:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "45435:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "45484:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "45495:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "45480:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "45480:18:32" - }, - { - "hexValue": "4c4243303634", - "kind": "string", - "nodeType": "YulLiteral", - "src": "45500:8:32", - "type": "", - "value": "LBC064" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "45473:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "45473:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "45473:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "45518:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "45530:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "45541:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "45526:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "45526:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "45518:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_35937926b0033772f3bb574f0cbcffec40211211a6070977d47733885bf234eb__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "45372:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "45386:4:32", - "type": "" - } - ], - "src": "45221:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "45649:1256:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "45659:24:32", - "value": { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "45679:3:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "45673:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "45673:10:32" - }, - "variables": [ - { - "name": "newLen", - "nodeType": "YulTypedName", - "src": "45663:6:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "45726:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "45728:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "45728:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "45728:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "45698:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "45714:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "45718:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "45710:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "45710:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "45722:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "45706:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "45706:18:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "45695:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "45695:30:32" - }, - "nodeType": "YulIf", - "src": "45692:56:32" - }, - { - "expression": { - "arguments": [ - { - "name": "slot", - "nodeType": "YulIdentifier", - "src": "45801:4:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "slot", - "nodeType": "YulIdentifier", - "src": "45839:4:32" - } - ], - "functionName": { - "name": "sload", - "nodeType": "YulIdentifier", - "src": "45833:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "45833:11:32" - } - ], - "functionName": { - "name": "extract_byte_array_length", - "nodeType": "YulIdentifier", - "src": "45807:25:32" - }, - "nodeType": "YulFunctionCall", - "src": "45807:38:32" - }, - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "45847:6:32" - } - ], - "functionName": { - "name": "clean_up_bytearray_end_slots_string_storage", - "nodeType": "YulIdentifier", - "src": "45757:43:32" - }, - "nodeType": "YulFunctionCall", - "src": "45757:97:32" - }, - "nodeType": "YulExpressionStatement", - "src": "45757:97:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "45863:18:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "45880:1:32", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "srcOffset", - "nodeType": "YulTypedName", - "src": "45867:9:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "45890:23:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "45909:4:32", - "type": "", - "value": "0x20" - }, - "variables": [ - { - "name": "srcOffset_1", - "nodeType": "YulTypedName", - "src": "45894:11:32", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "45922:24:32", - "value": { - "name": "srcOffset_1", - "nodeType": "YulIdentifier", - "src": "45935:11:32" - }, - "variableNames": [ - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "45922:9:32" - } - ] - }, - { - "cases": [ - { - "body": { - "nodeType": "YulBlock", - "src": "45992:656:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "46006:35:32", - "value": { - "arguments": [ - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "46025:6:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "46037:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "46033:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "46033:7:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "46021:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "46021:20:32" - }, - "variables": [ - { - "name": "loopEnd", - "nodeType": "YulTypedName", - "src": "46010:7:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "46054:49:32", - "value": { - "arguments": [ - { - "name": "slot", - "nodeType": "YulIdentifier", - "src": "46098:4:32" - } - ], - "functionName": { - "name": "array_dataslot_string_storage", - "nodeType": "YulIdentifier", - "src": "46068:29:32" - }, - "nodeType": "YulFunctionCall", - "src": "46068:35:32" - }, - "variables": [ - { - "name": "dstPtr", - "nodeType": "YulTypedName", - "src": "46058:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "46116:10:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "46125:1:32", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "i", - "nodeType": "YulTypedName", - "src": "46120:1:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "46203:172:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "dstPtr", - "nodeType": "YulIdentifier", - "src": "46228:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "46246:3:32" - }, - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "46251:9:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "46242:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "46242:19:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "46236:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "46236:26:32" - } - ], - "functionName": { - "name": "sstore", - "nodeType": "YulIdentifier", - "src": "46221:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "46221:42:32" - }, - "nodeType": "YulExpressionStatement", - "src": "46221:42:32" - }, - { - "nodeType": "YulAssignment", - "src": "46280:24:32", - "value": { - "arguments": [ - { - "name": "dstPtr", - "nodeType": "YulIdentifier", - "src": "46294:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "46302:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "46290:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "46290:14:32" - }, - "variableNames": [ - { - "name": "dstPtr", - "nodeType": "YulIdentifier", - "src": "46280:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "46321:40:32", - "value": { - "arguments": [ - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "46338:9:32" - }, - { - "name": "srcOffset_1", - "nodeType": "YulIdentifier", - "src": "46349:11:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "46334:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "46334:27:32" - }, - "variableNames": [ - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "46321:9:32" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "46150:1:32" - }, - { - "name": "loopEnd", - "nodeType": "YulIdentifier", - "src": "46153:7:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "46147:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "46147:14:32" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "46162:28:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "46164:24:32", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "46173:1:32" - }, - { - "name": "srcOffset_1", - "nodeType": "YulIdentifier", - "src": "46176:11:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "46169:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "46169:19:32" - }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "46164:1:32" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "46143:3:32", - "statements": [] - }, - "src": "46139:236:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "46423:166:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "46441:43:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "46468:3:32" - }, - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "46473:9:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "46464:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "46464:19:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "46458:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "46458:26:32" - }, - "variables": [ - { - "name": "lastValue", - "nodeType": "YulTypedName", - "src": "46445:9:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "dstPtr", - "nodeType": "YulIdentifier", - "src": "46508:6:32" - }, - { - "arguments": [ - { - "name": "lastValue", - "nodeType": "YulIdentifier", - "src": "46520:9:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "46547:1:32", - "type": "", - "value": "3" - }, - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "46550:6:32" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "46543:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "46543:14:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "46559:3:32", - "type": "", - "value": "248" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "46539:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "46539:24:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "46569:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "46565:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "46565:6:32" - } - ], - "functionName": { - "name": "shr", - "nodeType": "YulIdentifier", - "src": "46535:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "46535:37:32" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "46531:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "46531:42:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "46516:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "46516:58:32" - } - ], - "functionName": { - "name": "sstore", - "nodeType": "YulIdentifier", - "src": "46501:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "46501:74:32" - }, - "nodeType": "YulExpressionStatement", - "src": "46501:74:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "loopEnd", - "nodeType": "YulIdentifier", - "src": "46394:7:32" - }, - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "46403:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "46391:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "46391:19:32" - }, - "nodeType": "YulIf", - "src": "46388:201:32" - }, - { - "expression": { - "arguments": [ - { - "name": "slot", - "nodeType": "YulIdentifier", - "src": "46609:4:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "46623:1:32", - "type": "", - "value": "1" - }, - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "46626:6:32" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "46619:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "46619:14:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "46635:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "46615:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "46615:22:32" - } - ], - "functionName": { - "name": "sstore", - "nodeType": "YulIdentifier", - "src": "46602:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "46602:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "46602:36:32" - } - ] - }, - "nodeType": "YulCase", - "src": "45985:663:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "45990:1:32", - "type": "", - "value": "1" - } - }, - { - "body": { - "nodeType": "YulBlock", - "src": "46665:234:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "46679:14:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "46692:1:32", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "46683:5:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "46728:67:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "46746:35:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "46765:3:32" - }, - { - "name": "srcOffset", - "nodeType": "YulIdentifier", - "src": "46770:9:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "46761:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "46761:19:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "46755:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "46755:26:32" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "46746:5:32" - } - ] - } - ] - }, - "condition": { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "46709:6:32" - }, - "nodeType": "YulIf", - "src": "46706:89:32" - }, - { - "expression": { - "arguments": [ - { - "name": "slot", - "nodeType": "YulIdentifier", - "src": "46815:4:32" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "46874:5:32" - }, - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "46881:6:32" - } - ], - "functionName": { - "name": "extract_used_part_and_set_length_of_short_byte_array", - "nodeType": "YulIdentifier", - "src": "46821:52:32" - }, - "nodeType": "YulFunctionCall", - "src": "46821:67:32" - } - ], - "functionName": { - "name": "sstore", - "nodeType": "YulIdentifier", - "src": "46808:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "46808:81:32" - }, - "nodeType": "YulExpressionStatement", - "src": "46808:81:32" - } - ] - }, - "nodeType": "YulCase", - "src": "46657:242:32", - "value": "default" - } - ], - "expression": { - "arguments": [ - { - "name": "newLen", - "nodeType": "YulIdentifier", - "src": "45965:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "45973:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "45962:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "45962:14:32" - }, - "nodeType": "YulSwitch", - "src": "45955:944:32" - } - ] - }, - "name": "copy_byte_array_to_storage_from_t_bytes_memory_ptr_to_t_bytes_storage", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "slot", - "nodeType": "YulTypedName", - "src": "45634:4:32", - "type": "" - }, - { - "name": "src", - "nodeType": "YulTypedName", - "src": "45640:3:32", - "type": "" - } - ], - "src": "45555:1350:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "47084:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "47101:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "47112:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "47094:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "47094:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "47094:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "47135:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "47146:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "47131:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "47131:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "47151:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "47124:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "47124:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "47124:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "47173:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "47184:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "47169:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "47169:18:32" - }, - { - "hexValue": "4c4243303432", - "kind": "string", - "nodeType": "YulLiteral", - "src": "47189:8:32", - "type": "", - "value": "LBC042" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "47162:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "47162:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "47162:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "47207:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "47219:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "47230:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "47215:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "47215:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "47207:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_100fb89310beea959f828c5ca2a95ca4d28be5d0ba0e61e54b1345b68d14b6a1__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "47061:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "47075:4:32", - "type": "" - } - ], - "src": "46910:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "47418:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "47435:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "47446:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "47428:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "47428:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "47428:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "47469:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "47480:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "47465:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "47465:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "47485:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "47458:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "47458:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "47458:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "47507:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "47518:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "47503:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "47503:18:32" - }, - { - "hexValue": "4c4243303431", - "kind": "string", - "nodeType": "YulLiteral", - "src": "47523:8:32", - "type": "", - "value": "LBC041" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "47496:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "47496:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "47496:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "47541:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "47553:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "47564:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "47549:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "47549:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "47541:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_476e33256b298fee7fc3dab0c339427caa3a9a4a44654f7f02b328083d44ca74__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "47395:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "47409:4:32", - "type": "" - } - ], - "src": "47244:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "47707:145:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "47717:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "47729:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "47740:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "47725:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "47725:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "47717:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "47759:9:32" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "47770:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "47752:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "47752:25:32" - }, - "nodeType": "YulExpressionStatement", - "src": "47752:25:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "47797:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "47808:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "47793:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "47793:18:32" - }, - { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "47817:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "47833:3:32", - "type": "", - "value": "160" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "47838:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "47829:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "47829:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "47842:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "47825:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "47825:19:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "47813:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "47813:32:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "47786:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "47786:60:32" - }, - "nodeType": "YulExpressionStatement", - "src": "47786:60:32" - } - ] - }, - "name": "abi_encode_tuple_t_uint256_t_address__to_t_uint256_t_address__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "47668:9:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "47679:6:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "47687:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "47698:4:32", - "type": "" - } - ], - "src": "47578:274:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "48031:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "48048:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "48059:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "48041:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "48041:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "48041:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "48082:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "48093:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "48078:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "48078:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "48098:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "48071:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "48071:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "48071:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "48120:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "48131:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "48116:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "48116:18:32" - }, - { - "hexValue": "4c4243303434", - "kind": "string", - "nodeType": "YulLiteral", - "src": "48136:8:32", - "type": "", - "value": "LBC044" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "48109:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "48109:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "48109:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "48154:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "48166:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "48177:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "48162:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "48162:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "48154:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_0a7ff570d31f7e351d06bf5b8d0ef26a9275a9d32a7dffd7981a6c6ac58227c6__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "48008:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "48022:4:32", - "type": "" - } - ], - "src": "47857:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "48318:99:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "48335:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "48346:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "48328:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "48328:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "48328:21:32" - }, - { - "nodeType": "YulAssignment", - "src": "48358:53:32", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "48384:6:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "48396:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "48407:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "48392:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "48392:18:32" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "48366:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "48366:45:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "48358:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_library_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "48287:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "48298:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "48309:4:32", - "type": "" - } - ], - "src": "48191:226:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "48557:1872:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "48567:12:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "48577:2:32", - "type": "", - "value": "32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "48571:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "48624:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "48633:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "48636:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "48626:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "48626:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "48626:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "48599:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "48608:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "48595:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "48595:23:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "48620:2:32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "48591:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "48591:32:32" - }, - "nodeType": "YulIf", - "src": "48588:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "48649:30:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "48669:9:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "48663:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "48663:16:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "48653:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "48688:28:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "48706:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "48710:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "48702:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "48702:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "48714:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "48698:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "48698:18:32" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "48692:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "48743:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "48752:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "48755:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "48745:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "48745:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "48745:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "48731:6:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "48739:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "48728:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "48728:14:32" - }, - "nodeType": "YulIf", - "src": "48725:34:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "48768:32:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "48782:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "48793:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "48778:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "48778:22:32" - }, - "variables": [ - { - "name": "_3", - "nodeType": "YulTypedName", - "src": "48772:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "48848:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "48857:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "48860:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "48850:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "48850:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "48850:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "48827:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "48831:4:32", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "48823:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "48823:13:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "48838:7:32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "48819:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "48819:27:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "48812:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "48812:35:32" - }, - "nodeType": "YulIf", - "src": "48809:55:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "48873:19:32", - "value": { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "48889:2:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "48883:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "48883:9:32" - }, - "variables": [ - { - "name": "_4", - "nodeType": "YulTypedName", - "src": "48877:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "48901:71:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "48968:2:32" - } - ], - "functionName": { - "name": "array_allocation_size_array_bytes32_dyn", - "nodeType": "YulIdentifier", - "src": "48928:39:32" - }, - "nodeType": "YulFunctionCall", - "src": "48928:43:32" - } - ], - "functionName": { - "name": "allocate_memory", - "nodeType": "YulIdentifier", - "src": "48912:15:32" - }, - "nodeType": "YulFunctionCall", - "src": "48912:60:32" - }, - "variables": [ - { - "name": "dst", - "nodeType": "YulTypedName", - "src": "48905:3:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "48981:16:32", - "value": { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "48994:3:32" - }, - "variables": [ - { - "name": "dst_1", - "nodeType": "YulTypedName", - "src": "48985:5:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "49013:3:32" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "49018:2:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "49006:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "49006:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "49006:15:32" - }, - { - "nodeType": "YulAssignment", - "src": "49030:19:32", - "value": { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "49041:3:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "49046:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "49037:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "49037:12:32" - }, - "variableNames": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "49030:3:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "49058:42:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "49080:2:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "49088:1:32", - "type": "", - "value": "5" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "49091:2:32" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "49084:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "49084:10:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "49076:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "49076:19:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "49097:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "49072:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "49072:28:32" - }, - "variables": [ - { - "name": "srcEnd", - "nodeType": "YulTypedName", - "src": "49062:6:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "49132:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "49141:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "49144:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "49134:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "49134:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "49134:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "srcEnd", - "nodeType": "YulIdentifier", - "src": "49115:6:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "49123:7:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "49112:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "49112:19:32" - }, - "nodeType": "YulIf", - "src": "49109:39:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "49157:22:32", - "value": { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "49172:2:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "49176:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "49168:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "49168:11:32" - }, - "variables": [ - { - "name": "src", - "nodeType": "YulTypedName", - "src": "49161:3:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "49244:1155:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "49258:29:32", - "value": { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "49283:3:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "49277:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "49277:10:32" - }, - "variables": [ - { - "name": "innerOffset", - "nodeType": "YulTypedName", - "src": "49262:11:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "49335:74:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "49353:11:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "49363:1:32", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "_5", - "nodeType": "YulTypedName", - "src": "49357:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "_5", - "nodeType": "YulIdentifier", - "src": "49388:2:32" - }, - { - "name": "_5", - "nodeType": "YulIdentifier", - "src": "49392:2:32" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "49381:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "49381:14:32" - }, - "nodeType": "YulExpressionStatement", - "src": "49381:14:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "innerOffset", - "nodeType": "YulIdentifier", - "src": "49306:11:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "49319:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "49303:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "49303:19:32" - }, - "nodeType": "YulIf", - "src": "49300:109:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "49422:30:32", - "value": { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "49436:2:32" - }, - { - "name": "innerOffset", - "nodeType": "YulIdentifier", - "src": "49440:11:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "49432:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "49432:20:32" - }, - "variables": [ - { - "name": "_6", - "nodeType": "YulTypedName", - "src": "49426:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "49465:14:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "49475:4:32", - "type": "", - "value": "0x80" - }, - "variables": [ - { - "name": "_7", - "nodeType": "YulTypedName", - "src": "49469:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "49547:74:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "49565:11:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "49575:1:32", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "_8", - "nodeType": "YulTypedName", - "src": "49569:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "_8", - "nodeType": "YulIdentifier", - "src": "49600:2:32" - }, - { - "name": "_8", - "nodeType": "YulIdentifier", - "src": "49604:2:32" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "49593:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "49593:14:32" - }, - "nodeType": "YulExpressionStatement", - "src": "49593:14:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "49507:7:32" - }, - { - "name": "_6", - "nodeType": "YulIdentifier", - "src": "49516:2:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "49503:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "49503:16:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "49525:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "49521:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "49521:7:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "49499:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "49499:30:32" - }, - { - "name": "_7", - "nodeType": "YulIdentifier", - "src": "49531:2:32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "49495:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "49495:39:32" - }, - "nodeType": "YulIf", - "src": "49492:129:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "49634:35:32", - "value": { - "arguments": [], - "functionName": { - "name": "allocate_memory_8445", - "nodeType": "YulIdentifier", - "src": "49647:20:32" - }, - "nodeType": "YulFunctionCall", - "src": "49647:22:32" - }, - "variables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "49638:5:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "49682:33:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "_6", - "nodeType": "YulIdentifier", - "src": "49707:2:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "49711:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "49703:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "49703:11:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "49697:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "49697:18:32" - }, - "variables": [ - { - "name": "value_1", - "nodeType": "YulTypedName", - "src": "49686:7:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "49781:74:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "49799:11:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "49809:1:32", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "_9", - "nodeType": "YulTypedName", - "src": "49803:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "_9", - "nodeType": "YulIdentifier", - "src": "49834:2:32" - }, - { - "name": "_9", - "nodeType": "YulIdentifier", - "src": "49838:2:32" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "49827:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "49827:14:32" - }, - "nodeType": "YulExpressionStatement", - "src": "49827:14:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value_1", - "nodeType": "YulIdentifier", - "src": "49741:7:32" - }, - { - "arguments": [ - { - "name": "value_1", - "nodeType": "YulIdentifier", - "src": "49754:7:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "49763:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "49750:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "49750:16:32" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "49738:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "49738:29:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "49731:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "49731:37:32" - }, - "nodeType": "YulIf", - "src": "49728:127:32" - }, - { - "expression": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "49875:5:32" - }, - { - "name": "value_1", - "nodeType": "YulIdentifier", - "src": "49882:7:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "49868:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "49868:22:32" - }, - "nodeType": "YulExpressionStatement", - "src": "49868:22:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "49903:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "49914:2:32", - "type": "", - "value": "64" - }, - "variables": [ - { - "name": "_10", - "nodeType": "YulTypedName", - "src": "49907:3:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "49929:35:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "_6", - "nodeType": "YulIdentifier", - "src": "49955:2:32" - }, - { - "name": "_10", - "nodeType": "YulIdentifier", - "src": "49959:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "49951:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "49951:12:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "49945:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "49945:19:32" - }, - "variables": [ - { - "name": "offset_1", - "nodeType": "YulTypedName", - "src": "49933:8:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "50009:77:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "50027:12:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "50038:1:32", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "_11", - "nodeType": "YulTypedName", - "src": "50031:3:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "_11", - "nodeType": "YulIdentifier", - "src": "50063:3:32" - }, - { - "name": "_11", - "nodeType": "YulIdentifier", - "src": "50068:3:32" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "50056:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "50056:16:32" - }, - "nodeType": "YulExpressionStatement", - "src": "50056:16:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "49983:8:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "49993:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "49980:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "49980:16:32" - }, - "nodeType": "YulIf", - "src": "49977:109:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "50110:5:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "50117:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "50106:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "50106:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_6", - "nodeType": "YulIdentifier", - "src": "50158:2:32" - }, - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "50162:8:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "50154:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "50154:17:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "50173:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "50150:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "50150:26:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "50178:7:32" - } - ], - "functionName": { - "name": "abi_decode_bytes_fromMemory", - "nodeType": "YulIdentifier", - "src": "50122:27:32" - }, - "nodeType": "YulFunctionCall", - "src": "50122:64:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "50099:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "50099:88:32" - }, - "nodeType": "YulExpressionStatement", - "src": "50099:88:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "50200:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "50211:2:32", - "type": "", - "value": "96" - }, - "variables": [ - { - "name": "_12", - "nodeType": "YulTypedName", - "src": "50204:3:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "50237:5:32" - }, - { - "name": "_10", - "nodeType": "YulIdentifier", - "src": "50244:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "50233:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "50233:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "_6", - "nodeType": "YulIdentifier", - "src": "50260:2:32" - }, - { - "name": "_12", - "nodeType": "YulIdentifier", - "src": "50264:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "50256:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "50256:12:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "50250:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "50250:19:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "50226:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "50226:44:32" - }, - "nodeType": "YulExpressionStatement", - "src": "50226:44:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "50294:5:32" - }, - { - "name": "_12", - "nodeType": "YulIdentifier", - "src": "50301:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "50290:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "50290:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "_6", - "nodeType": "YulIdentifier", - "src": "50317:2:32" - }, - { - "name": "_7", - "nodeType": "YulIdentifier", - "src": "50321:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "50313:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "50313:11:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "50307:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "50307:18:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "50283:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "50283:43:32" - }, - "nodeType": "YulExpressionStatement", - "src": "50283:43:32" - }, - { - "expression": { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "50346:3:32" - }, - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "50351:5:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "50339:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "50339:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "50339:18:32" - }, - { - "nodeType": "YulAssignment", - "src": "50370:19:32", - "value": { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "50381:3:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "50386:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "50377:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "50377:12:32" - }, - "variableNames": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "50370:3:32" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "49199:3:32" - }, - { - "name": "srcEnd", - "nodeType": "YulIdentifier", - "src": "49204:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "49196:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "49196:15:32" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "49212:23:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "49214:19:32", - "value": { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "49225:3:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "49230:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "49221:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "49221:12:32" - }, - "variableNames": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "49214:3:32" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "49192:3:32", - "statements": [] - }, - "src": "49188:1211:32" - }, - { - "nodeType": "YulAssignment", - "src": "50408:15:32", - "value": { - "name": "dst_1", - "nodeType": "YulIdentifier", - "src": "50418:5:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "50408:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_array$_t_struct$_TxRawOutput_$2307_memory_ptr_$dyn_memory_ptr_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "48523:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "48534:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "48546:6:32", - "type": "" - } - ], - "src": "48422:2007:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "50466:95:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "50483:1:32", - "type": "", - "value": "0" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "50490:3:32", - "type": "", - "value": "224" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "50495:10:32", - "type": "", - "value": "0x4e487b71" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "50486:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "50486:20:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "50476:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "50476:31:32" - }, - "nodeType": "YulExpressionStatement", - "src": "50476:31:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "50523:1:32", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "50526:4:32", - "type": "", - "value": "0x32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "50516:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "50516:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "50516:15:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "50547:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "50550:4:32", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "50540:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "50540:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "50540:15:32" - } - ] - }, - "name": "panic_error_0x32", - "nodeType": "YulFunctionDefinition", - "src": "50434:127:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "50740:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "50757:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "50768:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "50750:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "50750:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "50750:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "50791:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "50802:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "50787:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "50787:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "50807:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "50780:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "50780:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "50780:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "50829:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "50840:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "50825:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "50825:18:32" - }, - { - "hexValue": "4c4243303735", - "kind": "string", - "nodeType": "YulLiteral", - "src": "50845:8:32", - "type": "", - "value": "LBC075" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "50818:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "50818:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "50818:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "50863:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "50875:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "50886:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "50871:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "50871:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "50863:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_d0a12d6767c9352a89748f00976b0ffc4b9ff4b643d9cc1082f2df3b625d402a__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "50717:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "50731:4:32", - "type": "" - } - ], - "src": "50566:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "50946:102:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "50956:38:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "50971:1:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "50974:4:32", - "type": "", - "value": "0xff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "50967:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "50967:12:32" - }, - { - "arguments": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "50985:1:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "50988:4:32", - "type": "", - "value": "0xff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "50981:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "50981:12:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "50963:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "50963:31:32" - }, - "variableNames": [ - { - "name": "sum", - "nodeType": "YulIdentifier", - "src": "50956:3:32" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "51020:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x11", - "nodeType": "YulIdentifier", - "src": "51022:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "51022:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "51022:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "sum", - "nodeType": "YulIdentifier", - "src": "51009:3:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "51014:4:32", - "type": "", - "value": "0xff" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "51006:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "51006:13:32" - }, - "nodeType": "YulIf", - "src": "51003:39:32" - } - ] - }, - "name": "checked_add_t_uint8", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "x", - "nodeType": "YulTypedName", - "src": "50929:1:32", - "type": "" - }, - { - "name": "y", - "nodeType": "YulTypedName", - "src": "50932:1:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "sum", - "nodeType": "YulTypedName", - "src": "50938:3:32", - "type": "" - } - ], - "src": "50900:148:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "51098:130:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "51108:31:32", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "51127:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "51134:4:32", - "type": "", - "value": "0xff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "51123:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "51123:16:32" - }, - "variables": [ - { - "name": "value_1", - "nodeType": "YulTypedName", - "src": "51112:7:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "51169:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x11", - "nodeType": "YulIdentifier", - "src": "51171:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "51171:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "51171:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "value_1", - "nodeType": "YulIdentifier", - "src": "51154:7:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "51163:4:32", - "type": "", - "value": "0xff" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "51151:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "51151:17:32" - }, - "nodeType": "YulIf", - "src": "51148:43:32" - }, - { - "nodeType": "YulAssignment", - "src": "51200:22:32", - "value": { - "arguments": [ - { - "name": "value_1", - "nodeType": "YulIdentifier", - "src": "51211:7:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "51220:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "51207:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "51207:15:32" - }, - "variableNames": [ - { - "name": "ret", - "nodeType": "YulIdentifier", - "src": "51200:3:32" - } - ] - } - ] - }, - "name": "increment_t_uint8", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "51080:5:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "ret", - "nodeType": "YulTypedName", - "src": "51090:3:32", - "type": "" - } - ], - "src": "51053:175:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "51314:103:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "51360:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "51369:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "51372:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "51362:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "51362:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "51362:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "51335:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "51344:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "51331:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "51331:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "51356:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "51327:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "51327:32:32" - }, - "nodeType": "YulIf", - "src": "51324:52:32" - }, - { - "nodeType": "YulAssignment", - "src": "51385:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "51401:9:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "51395:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "51395:16:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "51385:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bytes32_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "51280:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "51291:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "51303:6:32", - "type": "" - } - ], - "src": "51233:184:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "51596:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "51613:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "51624:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "51606:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "51606:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "51606:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "51647:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "51658:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "51643:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "51643:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "51663:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "51636:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "51636:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "51636:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "51685:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "51696:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "51681:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "51681:18:32" - }, - { - "hexValue": "4c4243303639", - "kind": "string", - "nodeType": "YulLiteral", - "src": "51701:8:32", - "type": "", - "value": "LBC069" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "51674:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "51674:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "51674:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "51719:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "51731:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "51742:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "51727:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "51727:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "51719:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_5cf5f7c75a2357c5697933702fe9f20c432f8f5205def7bf18572d390cea5cc1__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "51573:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "51587:4:32", - "type": "" - } - ], - "src": "51422:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "51930:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "51947:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "51958:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "51940:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "51940:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "51940:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "51981:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "51992:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "51977:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "51977:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "51997:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "51970:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "51970:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "51970:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "52019:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "52030:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "52015:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "52015:18:32" - }, - { - "hexValue": "4c4243303438", - "kind": "string", - "nodeType": "YulLiteral", - "src": "52035:8:32", - "type": "", - "value": "LBC048" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "52008:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "52008:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "52008:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "52053:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "52065:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "52076:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "52061:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "52061:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "52053:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_3c14ff4570332247d29826742fdf7f014a86ddbee2c49b0252a79ef49351f196__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "51907:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "51921:4:32", - "type": "" - } - ], - "src": "51756:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "52325:613:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "52335:33:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "52353:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "52364:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "52349:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "52349:19:32" - }, - "variables": [ - { - "name": "tail_1", - "nodeType": "YulTypedName", - "src": "52339:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "52384:9:32" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "52395:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "52377:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "52377:25:32" - }, - "nodeType": "YulExpressionStatement", - "src": "52377:25:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "52411:12:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "52421:2:32", - "type": "", - "value": "32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "52415:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "52443:9:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "52454:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "52439:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "52439:18:32" - }, - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "52459:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "52432:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "52432:34:32" - }, - "nodeType": "YulExpressionStatement", - "src": "52432:34:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "52486:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "52497:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "52482:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "52482:18:32" - }, - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "52502:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "52475:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "52475:34:32" - }, - "nodeType": "YulExpressionStatement", - "src": "52475:34:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "52529:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "52540:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "52525:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "52525:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "52545:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "52518:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "52518:31:32" - }, - "nodeType": "YulExpressionStatement", - "src": "52518:31:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "52558:17:32", - "value": { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "52569:6:32" - }, - "variables": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "52562:3:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "52584:27:32", - "value": { - "arguments": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "52604:6:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "52598:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "52598:13:32" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "52588:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "52627:6:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "52635:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "52620:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "52620:22:32" - }, - "nodeType": "YulExpressionStatement", - "src": "52620:22:32" - }, - { - "nodeType": "YulAssignment", - "src": "52651:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "52662:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "52673:3:32", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "52658:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "52658:19:32" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "52651:3:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "52686:29:32", - "value": { - "arguments": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "52704:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "52712:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "52700:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "52700:15:32" - }, - "variables": [ - { - "name": "srcPtr", - "nodeType": "YulTypedName", - "src": "52690:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "52724:10:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "52733:1:32", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "i", - "nodeType": "YulTypedName", - "src": "52728:1:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "52792:120:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "52813:3:32" - }, - { - "arguments": [ - { - "name": "srcPtr", - "nodeType": "YulIdentifier", - "src": "52824:6:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "52818:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "52818:13:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "52806:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "52806:26:32" - }, - "nodeType": "YulExpressionStatement", - "src": "52806:26:32" - }, - { - "nodeType": "YulAssignment", - "src": "52845:19:32", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "52856:3:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "52861:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "52852:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "52852:12:32" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "52845:3:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "52877:25:32", - "value": { - "arguments": [ - { - "name": "srcPtr", - "nodeType": "YulIdentifier", - "src": "52891:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "52899:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "52887:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "52887:15:32" - }, - "variableNames": [ - { - "name": "srcPtr", - "nodeType": "YulIdentifier", - "src": "52877:6:32" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "52754:1:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "52757:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "52751:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "52751:13:32" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "52765:18:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "52767:14:32", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "52776:1:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "52779:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "52772:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "52772:9:32" - }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "52767:1:32" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "52747:3:32", - "statements": [] - }, - "src": "52743:169:32" - }, - { - "nodeType": "YulAssignment", - "src": "52921:11:32", - "value": { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "52929:3:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "52921:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_bytes32_t_bytes32_t_uint256_t_array$_t_bytes32_$dyn_memory_ptr__to_t_bytes32_t_bytes32_t_uint256_t_array$_t_bytes32_$dyn_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "52270:9:32", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "52281:6:32", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "52289:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "52297:6:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "52305:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "52316:4:32", - "type": "" - } - ], - "src": "52090:848:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "53023:103:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "53069:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "53078:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "53081:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "53071:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "53071:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "53071:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "53044:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "53053:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "53040:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "53040:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "53065:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "53036:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "53036:32:32" - }, - "nodeType": "YulIf", - "src": "53033:52:32" - }, - { - "nodeType": "YulAssignment", - "src": "53094:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "53110:9:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "53104:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "53104:16:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "53094:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_int256_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "52989:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "53000:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "53012:6:32", - "type": "" - } - ], - "src": "52943:183:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "53305:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "53322:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "53333:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "53315:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "53315:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "53315:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "53356:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "53367:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "53352:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "53352:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "53372:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "53345:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "53345:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "53345:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "53394:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "53405:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "53390:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "53390:18:32" - }, - { - "hexValue": "4c4243303439", - "kind": "string", - "nodeType": "YulLiteral", - "src": "53410:8:32", - "type": "", - "value": "LBC049" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "53383:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "53383:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "53383:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "53428:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "53440:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "53451:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "53436:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "53436:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "53428:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_41cc9877d5a72c2a0ef0c602e024ddc86a1f279ef7306bab75dd3c5447ffb6e0__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "53282:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "53296:4:32", - "type": "" - } - ], - "src": "53131:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "53639:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "53656:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "53667:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "53649:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "53649:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "53649:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "53690:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "53701:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "53686:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "53686:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "53706:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "53679:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "53679:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "53679:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "53728:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "53739:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "53724:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "53724:18:32" - }, - { - "hexValue": "4c4243303637", - "kind": "string", - "nodeType": "YulLiteral", - "src": "53744:8:32", - "type": "", - "value": "LBC067" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "53717:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "53717:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "53717:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "53762:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "53774:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "53785:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "53770:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "53770:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "53762:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_94643b69f05d64f660a022cd48046be494c1ed271b5d9ae602f6fdadc77976be__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "53616:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "53630:4:32", - "type": "" - } - ], - "src": "53465:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "53948:158:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "53965:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "53976:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "53958:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "53958:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "53958:21:32" - }, - { - "nodeType": "YulAssignment", - "src": "53988:53:32", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "54014:6:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "54026:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "54037:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "54022:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "54022:18:32" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "53996:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "53996:45:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "53988:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "54061:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "54072:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "54057:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "54057:18:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "54091:6:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "54084:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "54084:14:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "54077:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "54077:22:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "54050:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "54050:50:32" - }, - "nodeType": "YulExpressionStatement", - "src": "54050:50:32" - } - ] - }, - "name": "abi_encode_tuple_t_bytes_memory_ptr_t_bool__to_t_bytes_memory_ptr_t_bool__fromStack_library_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "53909:9:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "53920:6:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "53928:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "53939:4:32", - "type": "" - } - ], - "src": "53799:307:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "54245:706:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "54255:12:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "54266:1:32", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "ret", - "nodeType": "YulTypedName", - "src": "54259:3:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "54276:30:32", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "54299:6:32" - } - ], - "functionName": { - "name": "sload", - "nodeType": "YulIdentifier", - "src": "54293:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "54293:13:32" - }, - "variables": [ - { - "name": "slotValue", - "nodeType": "YulTypedName", - "src": "54280:9:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "54315:50:32", - "value": { - "arguments": [ - { - "name": "slotValue", - "nodeType": "YulIdentifier", - "src": "54355:9:32" - } - ], - "functionName": { - "name": "extract_byte_array_length", - "nodeType": "YulIdentifier", - "src": "54329:25:32" - }, - "nodeType": "YulFunctionCall", - "src": "54329:36:32" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "54319:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "54374:11:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "54384:1:32", - "type": "", - "value": "1" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "54378:2:32", - "type": "" - } - ] - }, - { - "cases": [ - { - "body": { - "nodeType": "YulBlock", - "src": "54435:126:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "54456:3:32" - }, - { - "arguments": [ - { - "name": "slotValue", - "nodeType": "YulIdentifier", - "src": "54465:9:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "54480:3:32", - "type": "", - "value": "255" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "54476:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "54476:8:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "54461:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "54461:24:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "54449:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "54449:37:32" - }, - "nodeType": "YulExpressionStatement", - "src": "54449:37:32" - }, - { - "nodeType": "YulAssignment", - "src": "54499:52:32", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "54510:3:32" - }, - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "54519:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "54541:6:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "54534:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "54534:14:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "54527:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "54527:22:32" - } - ], - "functionName": { - "name": "mul", - "nodeType": "YulIdentifier", - "src": "54515:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "54515:35:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "54506:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "54506:45:32" - }, - "variableNames": [ - { - "name": "ret", - "nodeType": "YulIdentifier", - "src": "54499:3:32" - } - ] - } - ] - }, - "nodeType": "YulCase", - "src": "54428:133:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "54433:1:32", - "type": "", - "value": "0" - } - }, - { - "body": { - "nodeType": "YulBlock", - "src": "54577:349:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "54598:1:32", - "type": "", - "value": "0" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "54601:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "54591:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "54591:17:32" - }, - "nodeType": "YulExpressionStatement", - "src": "54591:17:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "54621:14:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "54631:4:32", - "type": "", - "value": "0x20" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "54625:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "54648:31:32", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "54673:1:32", - "type": "", - "value": "0" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "54676:2:32" - } - ], - "functionName": { - "name": "keccak256", - "nodeType": "YulIdentifier", - "src": "54663:9:32" - }, - "nodeType": "YulFunctionCall", - "src": "54663:16:32" - }, - "variables": [ - { - "name": "dataPos", - "nodeType": "YulTypedName", - "src": "54652:7:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "54692:10:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "54701:1:32", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "i", - "nodeType": "YulTypedName", - "src": "54696:1:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "54769:111:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "54798:3:32" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "54803:1:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "54794:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "54794:11:32" - }, - { - "arguments": [ - { - "name": "dataPos", - "nodeType": "YulIdentifier", - "src": "54813:7:32" - } - ], - "functionName": { - "name": "sload", - "nodeType": "YulIdentifier", - "src": "54807:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "54807:14:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "54787:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "54787:35:32" - }, - "nodeType": "YulExpressionStatement", - "src": "54787:35:32" - }, - { - "nodeType": "YulAssignment", - "src": "54839:27:32", - "value": { - "arguments": [ - { - "name": "dataPos", - "nodeType": "YulIdentifier", - "src": "54854:7:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "54863:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "54850:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "54850:16:32" - }, - "variableNames": [ - { - "name": "dataPos", - "nodeType": "YulIdentifier", - "src": "54839:7:32" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "54726:1:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "54729:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "54723:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "54723:13:32" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "54737:19:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "54739:15:32", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "54748:1:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "54751:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "54744:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "54744:10:32" - }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "54739:1:32" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "54719:3:32", - "statements": [] - }, - "src": "54715:165:32" - }, - { - "nodeType": "YulAssignment", - "src": "54893:23:32", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "54904:3:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "54909:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "54900:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "54900:16:32" - }, - "variableNames": [ - { - "name": "ret", - "nodeType": "YulIdentifier", - "src": "54893:3:32" - } - ] - } - ] - }, - "nodeType": "YulCase", - "src": "54570:356:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "54575:1:32", - "type": "", - "value": "1" - } - } - ], - "expression": { - "arguments": [ - { - "name": "slotValue", - "nodeType": "YulIdentifier", - "src": "54405:9:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "54416:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "54401:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "54401:18:32" - }, - "nodeType": "YulSwitch", - "src": "54394:532:32" - }, - { - "nodeType": "YulAssignment", - "src": "54935:10:32", - "value": { - "name": "ret", - "nodeType": "YulIdentifier", - "src": "54942:3:32" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "54935:3:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_packed_t_bytes_storage__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "54221:3:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "54226:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "54237:3:32", - "type": "" - } - ], - "src": "54111:840:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "55130:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "55147:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "55158:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "55140:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "55140:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "55140:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "55181:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "55192:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "55177:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "55177:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "55197:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "55170:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "55170:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "55170:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "55219:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "55230:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "55215:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "55215:18:32" - }, - { - "hexValue": "4c4243303638", - "kind": "string", - "nodeType": "YulLiteral", - "src": "55235:8:32", - "type": "", - "value": "LBC068" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "55208:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "55208:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "55208:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "55253:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "55265:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "55276:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "55261:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "55261:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "55253:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_7cd3d68dd2419ceccbacf2f69bda9c4c2f3bdb0c0535db4bbef90be788c8f7de__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "55107:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "55121:4:32", - "type": "" - } - ], - "src": "54956:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "55464:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "55481:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "55492:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "55474:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "55474:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "55474:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "55515:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "55526:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "55511:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "55511:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "55531:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "55504:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "55504:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "55504:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "55553:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "55564:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "55549:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "55549:18:32" - }, - { - "hexValue": "4c4243303530", - "kind": "string", - "nodeType": "YulLiteral", - "src": "55569:8:32", - "type": "", - "value": "LBC050" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "55542:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "55542:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "55542:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "55587:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "55599:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "55610:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "55595:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "55595:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "55587:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_3dcf1159943f9eee729b997e5df9acd0f1771321696b1fb47efa6e54bee2f352__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "55441:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "55455:4:32", - "type": "" - } - ], - "src": "55290:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "55798:228:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "55815:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "55826:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "55808:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "55808:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "55808:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "55849:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "55860:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "55845:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "55845:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "55865:2:32", - "type": "", - "value": "38" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "55838:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "55838:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "55838:30:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "55888:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "55899:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "55884:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "55884:18:32" - }, - { - "hexValue": "4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061", - "kind": "string", - "nodeType": "YulLiteral", - "src": "55904:34:32", - "type": "", - "value": "Ownable: new owner is the zero a" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "55877:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "55877:62:32" - }, - "nodeType": "YulExpressionStatement", - "src": "55877:62:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "55959:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "55970:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "55955:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "55955:18:32" - }, - { - "hexValue": "646472657373", - "kind": "string", - "nodeType": "YulLiteral", - "src": "55975:8:32", - "type": "", - "value": "ddress" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "55948:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "55948:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "55948:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "55993:27:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "56005:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "56016:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "56001:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "56001:19:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "55993:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "55775:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "55789:4:32", - "type": "" - } - ], - "src": "55624:402:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "56205:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "56222:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "56233:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "56215:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "56215:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "56215:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "56256:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "56267:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "56252:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "56252:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "56272:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "56245:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "56245:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "56245:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "56294:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "56305:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "56290:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "56290:18:32" - }, - { - "hexValue": "4c4243303536", - "kind": "string", - "nodeType": "YulLiteral", - "src": "56310:8:32", - "type": "", - "value": "LBC056" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "56283:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "56283:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "56283:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "56328:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "56340:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "56351:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "56336:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "56336:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "56328:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_5004352c178489e456f74ee0937a3403e68ee3fa72f6afa5bff20fe549075132__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "56182:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "56196:4:32", - "type": "" - } - ], - "src": "56031:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "56534:2469:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "56551:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "56562:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "56544:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "56544:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "56544:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "56599:6:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "56593:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "56593:13:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "56612:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "56623:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "56608:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "56608:18:32" - } - ], - "functionName": { - "name": "abi_encode_address", - "nodeType": "YulIdentifier", - "src": "56574:18:32" - }, - "nodeType": "YulFunctionCall", - "src": "56574:53:32" - }, - "nodeType": "YulExpressionStatement", - "src": "56574:53:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "56636:42:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "56666:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "56674:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "56662:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "56662:15:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "56656:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "56656:22:32" - }, - "variables": [ - { - "name": "memberValue0", - "nodeType": "YulTypedName", - "src": "56640:12:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "memberValue0", - "nodeType": "YulIdentifier", - "src": "56706:12:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "56724:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "56735:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "56720:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "56720:18:32" - } - ], - "functionName": { - "name": "abi_encode_address", - "nodeType": "YulIdentifier", - "src": "56687:18:32" - }, - "nodeType": "YulFunctionCall", - "src": "56687:52:32" - }, - "nodeType": "YulExpressionStatement", - "src": "56687:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "56748:44:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "56780:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "56788:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "56776:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "56776:15:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "56770:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "56770:22:32" - }, - "variables": [ - { - "name": "memberValue0_1", - "nodeType": "YulTypedName", - "src": "56752:14:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "56801:16:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "56811:6:32", - "type": "", - "value": "0x0260" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "56805:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "56837:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "56848:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "56833:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "56833:18:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "56853:2:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "56826:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "56826:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "56826:30:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "56865:68:32", - "value": { - "arguments": [ - { - "name": "memberValue0_1", - "nodeType": "YulIdentifier", - "src": "56897:14:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "56917:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "56928:3:32", - "type": "", - "value": "640" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "56913:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "56913:19:32" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "56879:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "56879:54:32" - }, - "variables": [ - { - "name": "tail_1", - "nodeType": "YulTypedName", - "src": "56869:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "56942:44:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "56974:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "56982:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "56970:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "56970:15:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "56964:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "56964:22:32" - }, - "variables": [ - { - "name": "memberValue0_2", - "nodeType": "YulTypedName", - "src": "56946:14:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "memberValue0_2", - "nodeType": "YulIdentifier", - "src": "57014:14:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "57034:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "57045:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "57030:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "57030:19:32" - } - ], - "functionName": { - "name": "abi_encode_address", - "nodeType": "YulIdentifier", - "src": "56995:18:32" - }, - "nodeType": "YulFunctionCall", - "src": "56995:55:32" - }, - "nodeType": "YulExpressionStatement", - "src": "56995:55:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "57059:45:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "57091:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "57099:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "57087:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "57087:16:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "57081:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "57081:23:32" - }, - "variables": [ - { - "name": "memberValue0_3", - "nodeType": "YulTypedName", - "src": "57063:14:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "57113:17:32", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "57127:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "57123:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "57123:7:32" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "57117:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "57150:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "57161:3:32", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "57146:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "57146:19:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "57175:6:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "57183:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "57171:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "57171:22:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "57195:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "57167:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "57167:31:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "57139:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "57139:60:32" - }, - "nodeType": "YulExpressionStatement", - "src": "57139:60:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "57208:55:32", - "value": { - "arguments": [ - { - "name": "memberValue0_3", - "nodeType": "YulIdentifier", - "src": "57240:14:32" - }, - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "57256:6:32" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "57222:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "57222:41:32" - }, - "variables": [ - { - "name": "tail_2", - "nodeType": "YulTypedName", - "src": "57212:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "57283:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "57294:3:32", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "57279:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "57279:19:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "57310:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "57318:3:32", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "57306:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "57306:16:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "57300:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "57300:23:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "57272:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "57272:52:32" - }, - "nodeType": "YulExpressionStatement", - "src": "57272:52:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "57344:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "57355:3:32", - "type": "", - "value": "224" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "57340:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "57340:19:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "57371:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "57379:3:32", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "57367:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "57367:16:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "57361:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "57361:23:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "57333:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "57333:52:32" - }, - "nodeType": "YulExpressionStatement", - "src": "57333:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "57394:45:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "57426:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "57434:3:32", - "type": "", - "value": "224" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "57422:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "57422:16:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "57416:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "57416:23:32" - }, - "variables": [ - { - "name": "memberValue0_4", - "nodeType": "YulTypedName", - "src": "57398:14:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "57448:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "57458:3:32", - "type": "", - "value": "256" - }, - "variables": [ - { - "name": "_3", - "nodeType": "YulTypedName", - "src": "57452:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "memberValue0_4", - "nodeType": "YulIdentifier", - "src": "57487:14:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "57507:9:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "57518:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "57503:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "57503:18:32" - } - ], - "functionName": { - "name": "abi_encode_int64", - "nodeType": "YulIdentifier", - "src": "57470:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "57470:52:32" - }, - "nodeType": "YulExpressionStatement", - "src": "57470:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "57531:44:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "57563:6:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "57571:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "57559:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "57559:15:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "57553:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "57553:22:32" - }, - "variables": [ - { - "name": "memberValue0_5", - "nodeType": "YulTypedName", - "src": "57535:14:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "57584:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "57594:3:32", - "type": "", - "value": "288" - }, - "variables": [ - { - "name": "_4", - "nodeType": "YulTypedName", - "src": "57588:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "57617:9:32" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "57628:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "57613:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "57613:18:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "57641:6:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "57649:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "57637:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "57637:22:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "57661:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "57633:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "57633:31:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "57606:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "57606:59:32" - }, - "nodeType": "YulExpressionStatement", - "src": "57606:59:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "57674:55:32", - "value": { - "arguments": [ - { - "name": "memberValue0_5", - "nodeType": "YulIdentifier", - "src": "57706:14:32" - }, - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "57722:6:32" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "57688:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "57688:41:32" - }, - "variables": [ - { - "name": "tail_3", - "nodeType": "YulTypedName", - "src": "57678:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "57738:32:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "57758:6:32" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "57766:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "57754:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "57754:15:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "57748:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "57748:22:32" - }, - "variables": [ - { - "name": "_5", - "nodeType": "YulTypedName", - "src": "57742:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "57779:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "57789:3:32", - "type": "", - "value": "320" - }, - "variables": [ - { - "name": "_6", - "nodeType": "YulTypedName", - "src": "57783:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "57812:9:32" - }, - { - "name": "_6", - "nodeType": "YulIdentifier", - "src": "57823:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "57808:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "57808:18:32" - }, - { - "name": "_5", - "nodeType": "YulIdentifier", - "src": "57828:2:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "57801:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "57801:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "57801:30:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "57840:44:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "57872:6:32" - }, - { - "name": "_6", - "nodeType": "YulIdentifier", - "src": "57880:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "57868:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "57868:15:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "57862:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "57862:22:32" - }, - "variables": [ - { - "name": "memberValue0_6", - "nodeType": "YulTypedName", - "src": "57844:14:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "57893:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "57903:3:32", - "type": "", - "value": "352" - }, - "variables": [ - { - "name": "_7", - "nodeType": "YulTypedName", - "src": "57897:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "memberValue0_6", - "nodeType": "YulIdentifier", - "src": "57933:14:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "57953:9:32" - }, - { - "name": "_7", - "nodeType": "YulIdentifier", - "src": "57964:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "57949:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "57949:18:32" - } - ], - "functionName": { - "name": "abi_encode_uint32", - "nodeType": "YulIdentifier", - "src": "57915:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "57915:53:32" - }, - "nodeType": "YulExpressionStatement", - "src": "57915:53:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "57977:44:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "58009:6:32" - }, - { - "name": "_7", - "nodeType": "YulIdentifier", - "src": "58017:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "58005:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "58005:15:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "57999:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "57999:22:32" - }, - "variables": [ - { - "name": "memberValue0_7", - "nodeType": "YulTypedName", - "src": "57981:14:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "58030:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "58040:3:32", - "type": "", - "value": "384" - }, - "variables": [ - { - "name": "_8", - "nodeType": "YulTypedName", - "src": "58034:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "memberValue0_7", - "nodeType": "YulIdentifier", - "src": "58070:14:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "58090:9:32" - }, - { - "name": "_8", - "nodeType": "YulIdentifier", - "src": "58101:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "58086:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "58086:18:32" - } - ], - "functionName": { - "name": "abi_encode_uint32", - "nodeType": "YulIdentifier", - "src": "58052:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "58052:53:32" - }, - "nodeType": "YulExpressionStatement", - "src": "58052:53:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "58114:44:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "58146:6:32" - }, - { - "name": "_8", - "nodeType": "YulIdentifier", - "src": "58154:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "58142:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "58142:15:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "58136:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "58136:22:32" - }, - "variables": [ - { - "name": "memberValue0_8", - "nodeType": "YulTypedName", - "src": "58118:14:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "58167:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "58177:3:32", - "type": "", - "value": "416" - }, - "variables": [ - { - "name": "_9", - "nodeType": "YulTypedName", - "src": "58171:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "memberValue0_8", - "nodeType": "YulIdentifier", - "src": "58207:14:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "58227:9:32" - }, - { - "name": "_9", - "nodeType": "YulIdentifier", - "src": "58238:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "58223:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "58223:18:32" - } - ], - "functionName": { - "name": "abi_encode_uint16", - "nodeType": "YulIdentifier", - "src": "58189:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "58189:53:32" - }, - "nodeType": "YulExpressionStatement", - "src": "58189:53:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "58251:44:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "58283:6:32" - }, - { - "name": "_9", - "nodeType": "YulIdentifier", - "src": "58291:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "58279:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "58279:15:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "58273:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "58273:22:32" - }, - "variables": [ - { - "name": "memberValue0_9", - "nodeType": "YulTypedName", - "src": "58255:14:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "58304:14:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "58315:3:32", - "type": "", - "value": "448" - }, - "variables": [ - { - "name": "_10", - "nodeType": "YulTypedName", - "src": "58308:3:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "memberValue0_9", - "nodeType": "YulIdentifier", - "src": "58345:14:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "58365:9:32" - }, - { - "name": "_10", - "nodeType": "YulIdentifier", - "src": "58376:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "58361:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "58361:19:32" - } - ], - "functionName": { - "name": "abi_encode_uint16", - "nodeType": "YulIdentifier", - "src": "58327:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "58327:54:32" - }, - "nodeType": "YulExpressionStatement", - "src": "58327:54:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "58390:46:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "58423:6:32" - }, - { - "name": "_10", - "nodeType": "YulIdentifier", - "src": "58431:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "58419:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "58419:16:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "58413:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "58413:23:32" - }, - "variables": [ - { - "name": "memberValue0_10", - "nodeType": "YulTypedName", - "src": "58394:15:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "58445:14:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "58456:3:32", - "type": "", - "value": "480" - }, - "variables": [ - { - "name": "_11", - "nodeType": "YulTypedName", - "src": "58449:3:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "memberValue0_10", - "nodeType": "YulIdentifier", - "src": "58486:15:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "58507:9:32" - }, - { - "name": "_11", - "nodeType": "YulIdentifier", - "src": "58518:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "58503:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "58503:19:32" - } - ], - "functionName": { - "name": "abi_encode_uint32", - "nodeType": "YulIdentifier", - "src": "58468:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "58468:55:32" - }, - "nodeType": "YulExpressionStatement", - "src": "58468:55:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "58532:46:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "58565:6:32" - }, - { - "name": "_11", - "nodeType": "YulIdentifier", - "src": "58573:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "58561:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "58561:16:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "58555:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "58555:23:32" - }, - "variables": [ - { - "name": "memberValue0_11", - "nodeType": "YulTypedName", - "src": "58536:15:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "58587:14:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "58598:3:32", - "type": "", - "value": "512" - }, - "variables": [ - { - "name": "_12", - "nodeType": "YulTypedName", - "src": "58591:3:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "memberValue0_11", - "nodeType": "YulIdentifier", - "src": "58628:15:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "58649:9:32" - }, - { - "name": "_12", - "nodeType": "YulIdentifier", - "src": "58660:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "58645:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "58645:19:32" - } - ], - "functionName": { - "name": "abi_encode_uint32", - "nodeType": "YulIdentifier", - "src": "58610:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "58610:55:32" - }, - "nodeType": "YulExpressionStatement", - "src": "58610:55:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "58674:46:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "58707:6:32" - }, - { - "name": "_12", - "nodeType": "YulIdentifier", - "src": "58715:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "58703:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "58703:16:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "58697:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "58697:23:32" - }, - "variables": [ - { - "name": "memberValue0_12", - "nodeType": "YulTypedName", - "src": "58678:15:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "58729:14:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "58740:3:32", - "type": "", - "value": "544" - }, - "variables": [ - { - "name": "_13", - "nodeType": "YulTypedName", - "src": "58733:3:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "memberValue0_12", - "nodeType": "YulIdentifier", - "src": "58770:15:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "58791:9:32" - }, - { - "name": "_13", - "nodeType": "YulIdentifier", - "src": "58802:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "58787:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "58787:19:32" - } - ], - "functionName": { - "name": "abi_encode_uint32", - "nodeType": "YulIdentifier", - "src": "58752:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "58752:55:32" - }, - "nodeType": "YulExpressionStatement", - "src": "58752:55:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "58816:34:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "58837:6:32" - }, - { - "name": "_13", - "nodeType": "YulIdentifier", - "src": "58845:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "58833:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "58833:16:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "58827:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "58827:23:32" - }, - "variables": [ - { - "name": "_14", - "nodeType": "YulTypedName", - "src": "58820:3:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "58859:14:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "58870:3:32", - "type": "", - "value": "576" - }, - "variables": [ - { - "name": "_15", - "nodeType": "YulTypedName", - "src": "58863:3:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "58893:9:32" - }, - { - "name": "_15", - "nodeType": "YulIdentifier", - "src": "58904:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "58889:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "58889:19:32" - }, - { - "name": "_14", - "nodeType": "YulIdentifier", - "src": "58910:3:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "58882:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "58882:32:32" - }, - "nodeType": "YulExpressionStatement", - "src": "58882:32:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "58934:9:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "58945:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "58930:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "58930:18:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "58960:6:32" - }, - { - "name": "_15", - "nodeType": "YulIdentifier", - "src": "58968:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "58956:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "58956:16:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "58950:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "58950:23:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "58923:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "58923:51:32" - }, - "nodeType": "YulExpressionStatement", - "src": "58923:51:32" - }, - { - "nodeType": "YulAssignment", - "src": "58983:14:32", - "value": { - "name": "tail_3", - "nodeType": "YulIdentifier", - "src": "58991:6:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "58983:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_struct$_PegOutQuote_$11272_memory_ptr__to_t_struct$_PegOutQuote_$11272_memory_ptr__fromStack_library_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "56503:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "56514:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "56525:4:32", - "type": "" - } - ], - "src": "56365:2638:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "59182:181:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "59199:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "59210:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "59192:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "59192:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "59192:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "59233:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "59244:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "59229:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "59229:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "59249:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "59222:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "59222:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "59222:30:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "59272:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "59283:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "59268:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "59268:18:32" - }, - { - "hexValue": "5265656e7472616e637947756172643a207265656e7472616e742063616c6c", - "kind": "string", - "nodeType": "YulLiteral", - "src": "59288:33:32", - "type": "", - "value": "ReentrancyGuard: reentrant call" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "59261:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "59261:61:32" - }, - "nodeType": "YulExpressionStatement", - "src": "59261:61:32" - }, - { - "nodeType": "YulAssignment", - "src": "59331:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "59343:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "59354:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "59339:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "59339:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "59331:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_ebf73bba305590e4764d5cb53b69bffd6d4d092d1a67551cb346f8cfcdab8619__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "59159:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "59173:4:32", - "type": "" - } - ], - "src": "59008:355:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "59542:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "59559:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "59570:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "59552:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "59552:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "59552:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "59593:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "59604:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "59589:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "59589:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "59609:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "59582:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "59582:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "59582:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "59631:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "59642:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "59627:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "59627:18:32" - }, - { - "hexValue": "4c4243303531", - "kind": "string", - "nodeType": "YulLiteral", - "src": "59647:8:32", - "type": "", - "value": "LBC051" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "59620:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "59620:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "59620:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "59665:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "59677:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "59688:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "59673:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "59673:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "59665:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_ed7029e52dbf10ed9f0aafb2c33265c713a3f4dfd10cc113f22ba3c1270e1ddb__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "59519:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "59533:4:32", - "type": "" - } - ], - "src": "59368:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "59876:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "59893:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "59904:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "59886:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "59886:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "59886:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "59927:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "59938:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "59923:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "59923:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "59943:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "59916:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "59916:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "59916:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "59965:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "59976:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "59961:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "59961:18:32" - }, - { - "hexValue": "4c4243303532", - "kind": "string", - "nodeType": "YulLiteral", - "src": "59981:8:32", - "type": "", - "value": "LBC052" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "59954:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "59954:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "59954:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "59999:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "60011:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "60022:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "60007:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "60007:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "59999:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_a1a398356814e2eac3017ce127db7657cbb8e2f1d90a78bc426eaa92c56969eb__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "59853:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "59867:4:32", - "type": "" - } - ], - "src": "59702:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "60210:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "60227:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "60238:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "60220:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "60220:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "60220:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "60261:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "60272:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "60257:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "60257:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "60277:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "60250:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "60250:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "60250:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "60299:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "60310:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "60295:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "60295:18:32" - }, - { - "hexValue": "4c4243303533", - "kind": "string", - "nodeType": "YulLiteral", - "src": "60315:8:32", - "type": "", - "value": "LBC053" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "60288:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "60288:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "60288:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "60333:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "60345:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "60356:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "60341:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "60341:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "60333:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_923b965409721a83cf4ae76f34fa52de6eb09679d5b7141d2c0fc518a94192db__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "60187:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "60201:4:32", - "type": "" - } - ], - "src": "60036:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "60544:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "60561:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "60572:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "60554:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "60554:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "60554:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "60595:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "60606:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "60591:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "60591:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "60611:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "60584:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "60584:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "60584:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "60633:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "60644:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "60629:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "60629:18:32" - }, - { - "hexValue": "4c4243303534", - "kind": "string", - "nodeType": "YulLiteral", - "src": "60649:8:32", - "type": "", - "value": "LBC054" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "60622:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "60622:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "60622:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "60667:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "60679:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "60690:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "60675:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "60675:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "60667:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_472231c5f3abacc190b5fd56153fbfc4b6c39c18040d443b29faee14791d54d9__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "60521:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "60535:4:32", - "type": "" - } - ], - "src": "60370:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "60878:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "60895:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "60906:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "60888:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "60888:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "60888:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "60929:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "60940:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "60925:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "60925:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "60945:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "60918:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "60918:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "60918:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "60967:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "60978:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "60963:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "60963:18:32" - }, - { - "hexValue": "4c4243303535", - "kind": "string", - "nodeType": "YulLiteral", - "src": "60983:8:32", - "type": "", - "value": "LBC055" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "60956:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "60956:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "60956:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "61001:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "61013:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "61024:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "61009:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "61009:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "61001:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_1bdc71792e300c3b19739ad62e7651b4b49de502b7d1b6227970563bffaad71e__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "60855:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "60869:4:32", - "type": "" - } - ], - "src": "60704:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "61085:133:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "61095:28:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "61113:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "61117:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "61109:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "61109:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "61121:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "61105:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "61105:18:32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "61099:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "61132:34:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "61147:1:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "61150:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "61143:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "61143:10:32" - }, - { - "arguments": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "61159:1:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "61162:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "61155:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "61155:10:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "61139:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "61139:27:32" - }, - "variableNames": [ - { - "name": "sum", - "nodeType": "YulIdentifier", - "src": "61132:3:32" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "61190:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x11", - "nodeType": "YulIdentifier", - "src": "61192:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "61192:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "61192:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "sum", - "nodeType": "YulIdentifier", - "src": "61181:3:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "61186:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "61178:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "61178:11:32" - }, - "nodeType": "YulIf", - "src": "61175:37:32" - } - ] - }, - "name": "checked_add_t_uint64", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "x", - "nodeType": "YulTypedName", - "src": "61068:1:32", - "type": "" - }, - { - "name": "y", - "nodeType": "YulTypedName", - "src": "61071:1:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "sum", - "nodeType": "YulTypedName", - "src": "61077:3:32", - "type": "" - } - ], - "src": "61038:180:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "61397:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "61414:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "61425:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "61407:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "61407:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "61407:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "61448:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "61459:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "61444:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "61444:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "61464:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "61437:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "61437:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "61437:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "61486:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "61497:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "61482:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "61482:18:32" - }, - { - "hexValue": "4c4243303731", - "kind": "string", - "nodeType": "YulLiteral", - "src": "61502:8:32", - "type": "", - "value": "LBC071" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "61475:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "61475:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "61475:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "61520:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "61532:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "61543:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "61528:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "61528:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "61520:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_79d3c6c4bda42d819072ed97d83e6147bd9ad75bd5415529ecb6a41984271fb2__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "61374:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "61388:4:32", - "type": "" - } - ], - "src": "61223:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "61724:110:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "61741:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "61752:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "61734:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "61734:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "61734:21:32" - }, - { - "nodeType": "YulAssignment", - "src": "61764:64:32", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "61801:6:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "61813:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "61824:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "61809:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "61809:18:32" - } - ], - "functionName": { - "name": "abi_encode_struct_PeginQuote", - "nodeType": "YulIdentifier", - "src": "61772:28:32" - }, - "nodeType": "YulFunctionCall", - "src": "61772:56:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "61764:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_struct$_PeginQuote_$11233_memory_ptr__to_t_struct$_PeginQuote_$11233_memory_ptr__fromStack_library_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "61693:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "61704:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "61715:4:32", - "type": "" - } - ], - "src": "61557:277:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "62218:684:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "62228:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "62238:3:32", - "type": "", - "value": "256" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "62232:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "62257:9:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "62268:2:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "62250:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "62250:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "62250:21:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "62280:59:32", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "62312:6:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "62324:9:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "62335:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "62320:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "62320:18:32" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "62294:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "62294:45:32" - }, - "variables": [ - { - "name": "tail_1", - "nodeType": "YulTypedName", - "src": "62284:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "62359:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "62370:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "62355:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "62355:18:32" - }, - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "62375:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "62348:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "62348:34:32" - }, - "nodeType": "YulExpressionStatement", - "src": "62348:34:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "62402:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "62413:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "62398:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "62398:18:32" - }, - { - "arguments": [ - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "62422:6:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "62430:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "62418:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "62418:22:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "62391:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "62391:50:32" - }, - "nodeType": "YulExpressionStatement", - "src": "62391:50:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "62450:47:32", - "value": { - "arguments": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "62482:6:32" - }, - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "62490:6:32" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "62464:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "62464:33:32" - }, - "variables": [ - { - "name": "tail_2", - "nodeType": "YulTypedName", - "src": "62454:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "62517:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "62528:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "62513:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "62513:18:32" - }, - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "62533:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "62506:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "62506:34:32" - }, - "nodeType": "YulExpressionStatement", - "src": "62506:34:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "62560:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "62571:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "62556:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "62556:19:32" - }, - { - "arguments": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "62581:6:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "62589:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "62577:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "62577:22:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "62549:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "62549:51:32" - }, - "nodeType": "YulExpressionStatement", - "src": "62549:51:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "62609:47:32", - "value": { - "arguments": [ - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "62641:6:32" - }, - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "62649:6:32" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "62623:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "62623:33:32" - }, - "variables": [ - { - "name": "tail_3", - "nodeType": "YulTypedName", - "src": "62613:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "62676:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "62687:3:32", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "62672:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "62672:19:32" - }, - { - "arguments": [ - { - "name": "value5", - "nodeType": "YulIdentifier", - "src": "62697:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "62713:3:32", - "type": "", - "value": "160" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "62718:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "62709:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "62709:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "62722:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "62705:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "62705:19:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "62693:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "62693:32:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "62665:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "62665:61:32" - }, - "nodeType": "YulExpressionStatement", - "src": "62665:61:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "62746:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "62757:3:32", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "62742:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "62742:19:32" - }, - { - "arguments": [ - { - "name": "tail_3", - "nodeType": "YulIdentifier", - "src": "62767:6:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "62775:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "62763:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "62763:22:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "62735:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "62735:51:32" - }, - "nodeType": "YulExpressionStatement", - "src": "62735:51:32" - }, - { - "nodeType": "YulAssignment", - "src": "62795:41:32", - "value": { - "arguments": [ - { - "name": "value6", - "nodeType": "YulIdentifier", - "src": "62821:6:32" - }, - { - "name": "tail_3", - "nodeType": "YulIdentifier", - "src": "62829:6:32" - } - ], - "functionName": { - "name": "abi_encode_string", - "nodeType": "YulIdentifier", - "src": "62803:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "62803:33:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "62795:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "62856:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "62867:3:32", - "type": "", - "value": "224" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "62852:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "62852:19:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "value7", - "nodeType": "YulIdentifier", - "src": "62887:6:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "62880:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "62880:14:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "62873:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "62873:22:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "62845:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "62845:51:32" - }, - "nodeType": "YulExpressionStatement", - "src": "62845:51:32" - } - ] - }, - "name": "abi_encode_tuple_t_bytes_memory_ptr_t_uint256_t_bytes_memory_ptr_t_bytes32_t_bytes_memory_ptr_t_address_payable_t_bytes_memory_ptr_t_bool__to_t_bytes_memory_ptr_t_uint256_t_bytes_memory_ptr_t_bytes32_t_bytes_memory_ptr_t_address_payable_t_bytes_memory_ptr_t_bool__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "62131:9:32", - "type": "" - }, - { - "name": "value7", - "nodeType": "YulTypedName", - "src": "62142:6:32", - "type": "" - }, - { - "name": "value6", - "nodeType": "YulTypedName", - "src": "62150:6:32", - "type": "" - }, - { - "name": "value5", - "nodeType": "YulTypedName", - "src": "62158:6:32", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "62166:6:32", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "62174:6:32", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "62182:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "62190:6:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "62198:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "62209:4:32", - "type": "" - } - ], - "src": "61839:1063:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "63081:170:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "63098:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "63109:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "63091:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "63091:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "63091:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "63132:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "63143:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "63128:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "63128:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "63148:2:32", - "type": "", - "value": "20" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "63121:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "63121:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "63121:30:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "63171:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "63182:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "63167:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "63167:18:32" - }, - { - "hexValue": "496e76616c696420626c6f636b20686569676874", - "kind": "string", - "nodeType": "YulLiteral", - "src": "63187:22:32", - "type": "", - "value": "Invalid block height" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "63160:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "63160:50:32" - }, - "nodeType": "YulExpressionStatement", - "src": "63160:50:32" - }, - { - "nodeType": "YulAssignment", - "src": "63219:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "63231:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "63242:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "63227:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "63227:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "63219:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_b13cbe420d932534b4c4c376e19a45f25e0ca05c6f1a458489ccb0574b26a6d9__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "63058:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "63072:4:32", - "type": "" - } - ], - "src": "62907:344:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "63337:103:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "63383:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "63392:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "63395:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "63385:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "63385:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "63385:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "63358:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "63367:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "63354:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "63354:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "63379:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "63350:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "63350:32:32" - }, - "nodeType": "YulIf", - "src": "63347:52:32" - }, - { - "nodeType": "YulAssignment", - "src": "63408:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "63424:9:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "63418:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "63418:16:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "63408:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_uint256_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "63303:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "63314:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "63326:6:32", - "type": "" - } - ], - "src": "63256:184:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "63619:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "63636:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "63647:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "63629:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "63629:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "63629:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "63670:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "63681:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "63666:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "63666:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "63686:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "63659:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "63659:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "63659:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "63708:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "63719:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "63704:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "63704:18:32" - }, - { - "hexValue": "4c4243303538", - "kind": "string", - "nodeType": "YulLiteral", - "src": "63724:8:32", - "type": "", - "value": "LBC058" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "63697:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "63697:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "63697:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "63742:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "63754:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "63765:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "63750:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "63750:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "63742:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_bac19bb4c4dce4ec87196bdccebfa1c4310f60332f1259cdc0bb93303ee1c2a0__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "63596:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "63610:4:32", - "type": "" - } - ], - "src": "63445:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "63953:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "63970:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "63981:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "63963:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "63963:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "63963:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "64004:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "64015:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "64000:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "64000:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "64020:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "63993:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "63993:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "63993:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "64042:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "64053:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "64038:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "64038:18:32" - }, - { - "hexValue": "4c4243303734", - "kind": "string", - "nodeType": "YulLiteral", - "src": "64058:8:32", - "type": "", - "value": "LBC074" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "64031:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "64031:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "64031:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "64076:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "64088:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "64099:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "64084:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "64084:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "64076:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_e9fc4e098febe7043f1662405d88fa2495f2ac8d8f35918e247815b713cfd00a__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "63930:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "63944:4:32", - "type": "" - } - ], - "src": "63779:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "64287:182:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "64304:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "64315:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "64297:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "64297:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "64297:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "64338:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "64349:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "64334:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "64334:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "64354:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "64327:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "64327:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "64327:30:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "64377:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "64388:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "64373:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "64373:18:32" - }, - { - "hexValue": "4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572", - "kind": "string", - "nodeType": "YulLiteral", - "src": "64393:34:32", - "type": "", - "value": "Ownable: caller is not the owner" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "64366:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "64366:62:32" - }, - "nodeType": "YulExpressionStatement", - "src": "64366:62:32" - }, - { - "nodeType": "YulAssignment", - "src": "64437:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "64449:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "64460:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "64445:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "64445:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "64437:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "64264:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "64278:4:32", - "type": "" - } - ], - "src": "64113:356:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "64648:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "64665:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "64676:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "64658:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "64658:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "64658:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "64699:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "64710:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "64695:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "64695:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "64715:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "64688:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "64688:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "64688:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "64737:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "64748:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "64733:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "64733:18:32" - }, - { - "hexValue": "4c4243303539", - "kind": "string", - "nodeType": "YulLiteral", - "src": "64753:8:32", - "type": "", - "value": "LBC059" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "64726:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "64726:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "64726:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "64771:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "64783:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "64794:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "64779:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "64779:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "64771:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_319f398ccb7cc8c2c2304e07f301f618437c863aa2ff561ced1eaa40fcd3df63__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "64625:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "64639:4:32", - "type": "" - } - ], - "src": "64474:329:32" - } - ] - }, - "contents": "{\n { }\n function abi_encode_tuple_t_stringliteral_a23daf30bd1e42cc69e3bea751166702f08d640860ab6f4c84d6bacb970360da__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC007\")\n tail := add(headStart, 96)\n }\n function panic_error_0x41()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n function allocate_memory_8440() -> memPtr\n {\n memPtr := mload(64)\n let newFreePtr := add(memPtr, 0x0260)\n if or(gt(newFreePtr, sub(shl(64, 1), 1)), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n function allocate_memory_8441() -> memPtr\n {\n memPtr := mload(64)\n let newFreePtr := add(memPtr, 0x0280)\n if or(gt(newFreePtr, sub(shl(64, 1), 1)), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n function allocate_memory_8445() -> memPtr\n {\n memPtr := mload(64)\n let newFreePtr := add(memPtr, 0x80)\n if or(gt(newFreePtr, sub(shl(64, 1), 1)), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n function allocate_memory(size) -> memPtr\n {\n memPtr := mload(64)\n let newFreePtr := add(memPtr, and(add(size, 31), not(31)))\n if or(gt(newFreePtr, sub(shl(64, 1), 1)), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n function array_allocation_size_string(length) -> size\n {\n if gt(length, sub(shl(64, 1), 1)) { panic_error_0x41() }\n size := add(and(add(length, 31), not(31)), 0x20)\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 array_1 := allocate_memory(array_allocation_size_string(_1))\n mstore(array_1, _1)\n if gt(add(add(offset, _1), 0x20), end) { revert(0, 0) }\n calldatacopy(add(array_1, 0x20), add(offset, 0x20), _1)\n mstore(add(add(array_1, _1), 0x20), 0)\n array := array_1\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 := sub(shl(64, 1), 1)\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 abi_encode_tuple_t_uint8__to_t_uint8__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, 0xff))\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 validator_revert_address(value)\n {\n if iszero(eq(value, and(value, sub(shl(160, 1), 1)))) { revert(0, 0) }\n }\n function abi_decode_address(offset) -> value\n {\n value := calldataload(offset)\n validator_revert_address(value)\n }\n function abi_decode_int64(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, signextend(7, value))) { revert(0, 0) }\n }\n function abi_decode_uint32(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, 0xffffffff))) { revert(0, 0) }\n }\n function abi_decode_uint16(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, 0xffff))) { revert(0, 0) }\n }\n function abi_decode_struct_PegOutQuote(headStart, end) -> value\n {\n if slt(sub(end, headStart), 0x0260) { revert(0, 0) }\n value := allocate_memory_8440()\n mstore(value, abi_decode_address(headStart))\n mstore(add(value, 32), abi_decode_address(add(headStart, 32)))\n let offset := calldataload(add(headStart, 64))\n let _1 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n mstore(add(value, 64), abi_decode_string(add(headStart, offset), end))\n mstore(add(value, 96), abi_decode_address(add(headStart, 96)))\n let offset_1 := calldataload(add(headStart, 128))\n if gt(offset_1, _1) { revert(0, 0) }\n mstore(add(value, 128), abi_decode_string(add(headStart, offset_1), end))\n mstore(add(value, 160), calldataload(add(headStart, 160)))\n mstore(add(value, 192), calldataload(add(headStart, 192)))\n mstore(add(value, 224), abi_decode_int64(add(headStart, 224)))\n let _2 := 256\n let offset_2 := calldataload(add(headStart, _2))\n if gt(offset_2, _1) { revert(0, 0) }\n mstore(add(value, _2), abi_decode_string(add(headStart, offset_2), end))\n let _3 := 288\n mstore(add(value, _3), calldataload(add(headStart, _3)))\n let _4 := 320\n mstore(add(value, _4), abi_decode_uint32(add(headStart, _4)))\n let _5 := 352\n mstore(add(value, _5), abi_decode_uint32(add(headStart, _5)))\n let _6 := 384\n mstore(add(value, _6), abi_decode_uint16(add(headStart, _6)))\n let _7 := 416\n mstore(add(value, _7), abi_decode_uint16(add(headStart, _7)))\n let _8 := 448\n mstore(add(value, _8), abi_decode_uint32(add(headStart, _8)))\n let _9 := 480\n mstore(add(value, _9), abi_decode_uint32(add(headStart, _9)))\n let _10 := 512\n mstore(add(value, _10), abi_decode_uint32(add(headStart, _10)))\n let _11 := 544\n mstore(add(value, _11), calldataload(add(headStart, _11)))\n let _12 := 576\n mstore(add(value, _12), calldataload(add(headStart, _12)))\n }\n function abi_decode_tuple_t_struct$_PegOutQuote_$11272_memory_ptr(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let offset := calldataload(headStart)\n if gt(offset, sub(shl(64, 1), 1)) { revert(0, 0) }\n value0 := abi_decode_struct_PegOutQuote(add(headStart, offset), dataEnd)\n }\n function abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, value0)\n }\n function abi_decode_bytes20(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, not(sub(shl(96, 1), 1))))) { revert(0, 0) }\n }\n function validator_revert_bool(value)\n {\n if iszero(eq(value, iszero(iszero(value)))) { revert(0, 0) }\n }\n function abi_decode_bool(offset) -> value\n {\n value := calldataload(offset)\n validator_revert_bool(value)\n }\n function abi_decode_struct_PeginQuote(headStart, end) -> value\n {\n if slt(sub(end, headStart), 0x0280) { revert(0, 0) }\n value := allocate_memory_8441()\n mstore(value, abi_decode_bytes20(headStart))\n mstore(add(value, 32), abi_decode_address(add(headStart, 32)))\n mstore(add(value, 64), abi_decode_address(add(headStart, 64)))\n let offset := calldataload(add(headStart, 96))\n let _1 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n mstore(add(value, 96), abi_decode_string(add(headStart, offset), end))\n mstore(add(value, 128), abi_decode_address(add(headStart, 128)))\n let offset_1 := calldataload(add(headStart, 160))\n if gt(offset_1, _1) { revert(0, 0) }\n mstore(add(value, 160), abi_decode_string(add(headStart, offset_1), end))\n mstore(add(value, 192), calldataload(add(headStart, 192)))\n mstore(add(value, 224), calldataload(add(headStart, 224)))\n let _2 := 256\n mstore(add(value, _2), abi_decode_address(add(headStart, _2)))\n let _3 := 288\n let offset_2 := calldataload(add(headStart, _3))\n if gt(offset_2, _1) { revert(0, 0) }\n mstore(add(value, _3), abi_decode_string(add(headStart, offset_2), end))\n let _4 := 320\n mstore(add(value, _4), abi_decode_uint32(add(headStart, _4)))\n let _5 := 352\n mstore(add(value, _5), abi_decode_int64(add(headStart, _5)))\n let _6 := 384\n mstore(add(value, _6), calldataload(add(headStart, _6)))\n let _7 := 416\n mstore(add(value, _7), abi_decode_uint32(add(headStart, _7)))\n let _8 := 448\n mstore(add(value, _8), abi_decode_uint32(add(headStart, _8)))\n let _9 := 480\n mstore(add(value, _9), abi_decode_uint32(add(headStart, _9)))\n let _10 := 512\n mstore(add(value, _10), abi_decode_uint16(add(headStart, _10)))\n let _11 := 544\n mstore(add(value, _11), abi_decode_bool(add(headStart, _11)))\n let _12 := 576\n mstore(add(value, _12), calldataload(add(headStart, _12)))\n let _13 := 608\n mstore(add(value, _13), calldataload(add(headStart, _13)))\n }\n function abi_decode_tuple_t_struct$_PeginQuote_$11233_memory_ptrt_bytes_memory_ptrt_bytes_memory_ptrt_bytes_memory_ptrt_uint256(headStart, dataEnd) -> value0, value1, value2, value3, value4\n {\n if slt(sub(dataEnd, headStart), 160) { revert(0, 0) }\n let offset := calldataload(headStart)\n let _1 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n value0 := abi_decode_struct_PeginQuote(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 let offset_2 := calldataload(add(headStart, 64))\n if gt(offset_2, _1) { revert(0, 0) }\n value2 := abi_decode_string(add(headStart, offset_2), dataEnd)\n let offset_3 := calldataload(add(headStart, 96))\n if gt(offset_3, _1) { revert(0, 0) }\n value3 := abi_decode_string(add(headStart, offset_3), dataEnd)\n value4 := calldataload(add(headStart, 128))\n }\n function abi_encode_tuple_t_int256__to_t_int256__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, value0)\n }\n function abi_decode_tuple_t_uint256(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := calldataload(headStart)\n }\n function abi_decode_tuple_t_string_memory_ptrt_string_memory_ptrt_boolt_string_memory_ptr(headStart, dataEnd) -> value0, value1, value2, value3\n {\n if slt(sub(dataEnd, headStart), 128) { revert(0, 0) }\n let offset := calldataload(headStart)\n let _1 := sub(shl(64, 1), 1)\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 let value := calldataload(add(headStart, 64))\n validator_revert_bool(value)\n value2 := value\n let offset_2 := calldataload(add(headStart, 96))\n if gt(offset_2, _1) { revert(0, 0) }\n value3 := abi_decode_string(add(headStart, offset_2), dataEnd)\n }\n function abi_encode_tuple_t_int16__to_t_int16__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, signextend(1, value0))\n }\n function abi_decode_tuple_t_address(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let value := calldataload(headStart)\n validator_revert_address(value)\n value0 := value\n }\n function abi_encode_bool(value, pos)\n {\n mstore(pos, iszero(iszero(value)))\n }\n function abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, iszero(iszero(value0)))\n }\n function abi_decode_tuple_t_bytes32(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := calldataload(headStart)\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), not(31))), 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_address(value, pos)\n {\n mstore(pos, and(value, sub(shl(160, 1), 1)))\n }\n function abi_encode_struct_LiquidityProvider(value, pos) -> end\n {\n mstore(pos, mload(value))\n mstore(add(pos, 0x20), and(mload(add(value, 0x20)), sub(shl(160, 1), 1)))\n let memberValue0 := mload(add(value, 0x40))\n mstore(add(pos, 0x40), 0xc0)\n let tail := abi_encode_string(memberValue0, add(pos, 0xc0))\n let memberValue0_1 := mload(add(value, 0x60))\n mstore(add(pos, 0x60), sub(tail, pos))\n let tail_1 := abi_encode_string(memberValue0_1, tail)\n mstore(add(pos, 0x80), iszero(iszero(mload(add(value, 0x80)))))\n let memberValue0_2 := mload(add(value, 0xa0))\n mstore(add(pos, 0xa0), sub(tail_1, pos))\n end := abi_encode_string(memberValue0_2, tail_1)\n }\n function abi_encode_tuple_t_struct$_LiquidityProvider_$8026_memory_ptr__to_t_struct$_LiquidityProvider_$8026_memory_ptr__fromStack_reversed(headStart, value0) -> tail\n {\n mstore(headStart, 32)\n tail := abi_encode_struct_LiquidityProvider(value0, add(headStart, 32))\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, sub(shl(160, 1), 1)))\n }\n function abi_decode_tuple_t_uint256t_bool(headStart, dataEnd) -> value0, value1\n {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n value0 := calldataload(headStart)\n let value := calldataload(add(headStart, 32))\n validator_revert_bool(value)\n value1 := value\n }\n function abi_decode_tuple_t_struct$_PeginQuote_$11233_memory_ptrt_bytes_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 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n value0 := abi_decode_struct_PeginQuote(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 abi_decode_tuple_t_struct$_PeginQuote_$11233_memory_ptr(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let offset := calldataload(headStart)\n if gt(offset, sub(shl(64, 1), 1)) { revert(0, 0) }\n value0 := abi_decode_struct_PeginQuote(add(headStart, offset), dataEnd)\n }\n function abi_decode_tuple_t_struct$_PegOutQuote_$11272_memory_ptrt_bytes_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 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n value0 := abi_decode_struct_PegOutQuote(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 abi_encode_uint16(value, pos)\n {\n mstore(pos, and(value, 0xffff))\n }\n function abi_encode_tuple_t_uint16__to_t_uint16__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, 0xffff))\n }\n function array_allocation_size_array_bytes32_dyn(length) -> size\n {\n if gt(length, sub(shl(64, 1), 1)) { panic_error_0x41() }\n size := add(shl(5, length), 0x20)\n }\n function abi_decode_tuple_t_bytes32t_bytes_memory_ptrt_bytes32t_uint256t_array$_t_bytes32_$dyn_memory_ptr(headStart, dataEnd) -> value0, value1, value2, value3, value4\n {\n if slt(sub(dataEnd, headStart), 160) { revert(0, 0) }\n value0 := calldataload(headStart)\n let _1 := 32\n let offset := calldataload(add(headStart, _1))\n let _2 := sub(shl(64, 1), 1)\n if gt(offset, _2) { revert(0, 0) }\n value1 := abi_decode_string(add(headStart, offset), dataEnd)\n value2 := calldataload(add(headStart, 64))\n value3 := calldataload(add(headStart, 96))\n let offset_1 := calldataload(add(headStart, 128))\n if gt(offset_1, _2) { revert(0, 0) }\n let _3 := add(headStart, offset_1)\n if iszero(slt(add(_3, 0x1f), dataEnd)) { revert(0, 0) }\n let _4 := calldataload(_3)\n let dst := allocate_memory(array_allocation_size_array_bytes32_dyn(_4))\n let dst_1 := dst\n mstore(dst, _4)\n dst := add(dst, _1)\n let srcEnd := add(add(_3, shl(5, _4)), _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 mstore(dst, calldataload(src))\n dst := add(dst, _1)\n }\n value4 := dst_1\n }\n function abi_encode_tuple_t_contract$_Bridge_$4173__to_t_address_payable__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, sub(shl(160, 1), 1)))\n }\n function abi_encode_tuple_t_array$_t_struct$_LiquidityProvider_$8026_memory_ptr_$dyn_memory_ptr__to_t_array$_t_struct$_LiquidityProvider_$8026_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 pos := add(headStart, 64)\n let tail_2 := add(add(headStart, shl(5, length)), 64)\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), not(63)))\n tail_2 := abi_encode_struct_LiquidityProvider(mload(srcPtr), tail_2)\n srcPtr := add(srcPtr, _1)\n pos := add(pos, _1)\n }\n tail := tail_2\n }\n function abi_encode_tuple_t_stringliteral_686eb4b4538782c6c5d7601cff771332305044e1e5a85d59133150cea60acf31__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC076\")\n tail := add(headStart, 96)\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_string_storage(value, pos) -> ret\n {\n let slotValue := sload(value)\n let length := extract_byte_array_length(slotValue)\n mstore(pos, length)\n let _1 := 0x20\n let _2 := 1\n switch and(slotValue, _2)\n case 0 {\n mstore(add(pos, _1), and(slotValue, not(255)))\n ret := add(add(pos, shl(5, iszero(iszero(length)))), _1)\n }\n case 1 {\n mstore(0, value)\n let dataPos := keccak256(0, _1)\n let i := 0\n for { } lt(i, length) { i := add(i, _1) }\n {\n mstore(add(add(pos, i), _1), sload(dataPos))\n dataPos := add(dataPos, _2)\n }\n ret := add(add(pos, i), _1)\n }\n }\n function abi_encode_tuple_t_string_storage_t_string_storage__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_storage(value0, add(headStart, 64))\n mstore(add(headStart, 32), sub(tail_1, headStart))\n tail := abi_encode_string_storage(value1, tail_1)\n }\n function panic_error_0x11()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n function increment_t_uint256(value) -> ret\n {\n if eq(value, not(0)) { panic_error_0x11() }\n ret := add(value, 1)\n }\n function abi_encode_tuple_t_stringliteral_a509ede2323476f3f5be48987391c5516e4ea8116b376287322ed2188be0e53c__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC001\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_4c4b8fd0ae53a3caa85e74f53bba210cefdcb0e1d1c519eb8385d2cd3741f7fb__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC028\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_address_t_bytes32_t_bytes_memory_ptr__to_t_address_t_bytes32_t_bytes_memory_ptr__fromStack_library_reversed(headStart, value2, value1, value0) -> tail\n {\n mstore(headStart, and(value0, sub(shl(160, 1), 1)))\n mstore(add(headStart, 32), value1)\n mstore(add(headStart, 64), 96)\n tail := abi_encode_string(value2, add(headStart, 96))\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 validator_revert_bool(value)\n value0 := value\n }\n function abi_encode_tuple_t_stringliteral_ebb41fd1c3d95b8eaff1e56d491f7a983f7f3039fac57e6fad7993de139e2216__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC029\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_6b987c2142a6ed89e76021f4d9a60f3cbfc2f7110bd81bc33ff58ad7cf27befa__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC030\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_b9f5a33cea5e5738277827f2f81faa92d1d3c73cf030e2542a7b80c6f7bdc8a7__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC031\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_5d8d108d93a53583cf1949d2287cc7f0af5603bd102faf9db90e7e6bbc90ade8__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC032\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_e976d8a3febca36c67dcd5b38ae845ffd2f248a24eaf2d7a97f208ffd80ff125__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC033\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_745436b16371784f7b451bf4bed6f0978e2f007f74e71dfa0c49414b3a522759__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC034\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_37570ea73114ff69cb8aab9e09d6f5beb11b36ce1a2ae19ee6f5de28dc42d754__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC035\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_5ccb4449252c316623411606962515c0966208bcce5fe352c2e850b058d1077c__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC036\")\n tail := add(headStart, 96)\n }\n function checked_sub_t_uint256(x, y) -> diff\n {\n diff := sub(x, y)\n if gt(diff, x) { panic_error_0x11() }\n }\n function abi_encode_tuple_t_address_t_uint256_t_bytes32__to_t_address_t_uint256_t_bytes32__fromStack_reversed(headStart, value2, value1, value0) -> tail\n {\n tail := add(headStart, 96)\n mstore(headStart, and(value0, sub(shl(160, 1), 1)))\n mstore(add(headStart, 32), value1)\n mstore(add(headStart, 64), value2)\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 panic_error_0x12()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x12)\n revert(0, 0x24)\n }\n function checked_div_t_uint256(x, y) -> r\n {\n if iszero(y) { panic_error_0x12() }\n r := div(x, y)\n }\n function abi_encode_tuple_t_bytes32_t_int256__to_t_bytes32_t_int256__fromStack_reversed(headStart, value1, value0) -> tail\n {\n tail := add(headStart, 64)\n mstore(headStart, value0)\n mstore(add(headStart, 32), value1)\n }\n function abi_encode_bytes20(value, pos)\n {\n mstore(pos, and(value, not(sub(shl(96, 1), 1))))\n }\n function abi_encode_uint32(value, pos)\n {\n mstore(pos, and(value, 0xffffffff))\n }\n function abi_encode_int64(value, pos)\n {\n mstore(pos, signextend(7, value))\n }\n function abi_encode_struct_PeginQuote(value, pos) -> end\n {\n let _1 := 0x0280\n abi_encode_bytes20(mload(value), pos)\n let memberValue0 := mload(add(value, 0x20))\n abi_encode_address(memberValue0, add(pos, 0x20))\n let memberValue0_1 := mload(add(value, 0x40))\n abi_encode_address(memberValue0_1, add(pos, 0x40))\n let memberValue0_2 := mload(add(value, 0x60))\n mstore(add(pos, 0x60), _1)\n let tail := abi_encode_string(memberValue0_2, add(pos, _1))\n let memberValue0_3 := mload(add(value, 0x80))\n abi_encode_address(memberValue0_3, add(pos, 0x80))\n let memberValue0_4 := mload(add(value, 0xa0))\n mstore(add(pos, 0xa0), sub(tail, pos))\n let tail_1 := abi_encode_string(memberValue0_4, tail)\n mstore(add(pos, 0xc0), mload(add(value, 0xc0)))\n mstore(add(pos, 0xe0), mload(add(value, 0xe0)))\n let _2 := 0x0100\n let memberValue0_5 := mload(add(value, _2))\n abi_encode_address(memberValue0_5, add(pos, _2))\n let _3 := 0x0120\n let memberValue0_6 := mload(add(value, _3))\n mstore(add(pos, _3), sub(tail_1, pos))\n let tail_2 := abi_encode_string(memberValue0_6, tail_1)\n let _4 := 0x0140\n let memberValue0_7 := mload(add(value, _4))\n abi_encode_uint32(memberValue0_7, add(pos, _4))\n let _5 := 0x0160\n let memberValue0_8 := mload(add(value, _5))\n abi_encode_int64(memberValue0_8, add(pos, _5))\n let _6 := 0x0180\n mstore(add(pos, _6), mload(add(value, _6)))\n let _7 := 0x01a0\n let memberValue0_9 := mload(add(value, _7))\n abi_encode_uint32(memberValue0_9, add(pos, _7))\n let _8 := 0x01c0\n let memberValue0_10 := mload(add(value, _8))\n abi_encode_uint32(memberValue0_10, add(pos, _8))\n let _9 := 0x01e0\n let memberValue0_11 := mload(add(value, _9))\n abi_encode_uint32(memberValue0_11, add(pos, _9))\n let _10 := 0x0200\n let memberValue0_12 := mload(add(value, _10))\n abi_encode_uint16(memberValue0_12, add(pos, _10))\n let _11 := 0x0220\n let memberValue0_13 := mload(add(value, _11))\n abi_encode_bool(memberValue0_13, add(pos, _11))\n let _12 := 0x0240\n mstore(add(pos, _12), mload(add(value, _12)))\n let _13 := 0x0260\n mstore(add(pos, _13), mload(add(value, _13)))\n end := tail_2\n }\n function abi_encode_tuple_t_struct$_PeginQuote_$11233_memory_ptr_t_uint256__to_t_struct$_PeginQuote_$11233_memory_ptr_t_uint256__fromStack_library_reversed(headStart, value1, value0) -> tail\n {\n mstore(headStart, 64)\n tail := abi_encode_struct_PeginQuote(value0, add(headStart, 64))\n mstore(add(headStart, 32), value1)\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 abi_encode_tuple_packed_t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos) -> end\n { end := pos }\n function abi_encode_tuple_t_address_payable_t_uint256_t_bool_t_bytes32__to_t_address_t_uint256_t_bool_t_bytes32__fromStack_reversed(headStart, value3, value2, value1, value0) -> tail\n {\n tail := add(headStart, 128)\n mstore(headStart, and(value0, sub(shl(160, 1), 1)))\n mstore(add(headStart, 32), value1)\n mstore(add(headStart, 64), iszero(iszero(value2)))\n mstore(add(headStart, 96), value3)\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_uint32_t_uint256_t_bytes_memory_ptr_t_bool_t_bytes32__to_t_uint256_t_uint256_t_bytes_memory_ptr_t_bool_t_bytes32__fromStack_reversed(headStart, value4, value3, value2, value1, value0) -> tail\n {\n mstore(headStart, and(value0, 0xffffffff))\n mstore(add(headStart, 32), value1)\n mstore(add(headStart, 64), 160)\n tail := abi_encode_string(value2, add(headStart, 160))\n mstore(add(headStart, 96), iszero(iszero(value3)))\n mstore(add(headStart, 128), value4)\n }\n function abi_encode_tuple_t_stringliteral_41f42e8d0f67be0e87abf05a33ed728b4868df2f2b92840d9519a852352eb909__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC019\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_5c242c0534fa00b11577be4ea886875d641e4a1ad40749685bb740e7c1a67fc9__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC020\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_address_t_uint256__to_t_address_t_uint256__fromStack_reversed(headStart, value1, value0) -> tail\n {\n tail := add(headStart, 64)\n mstore(headStart, and(value0, sub(shl(160, 1), 1)))\n mstore(add(headStart, 32), value1)\n }\n function abi_encode_tuple_t_stringliteral_7e21a7b13292bf184f2fc166cca229506aa89a730258f15cdce6a2f8dc225415__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC003\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_b91014d5c812b217b1f7abf06d04044851a14f3d4efa9b6795d3964c23897cc9__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC010\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_849663c0a27b21987cfc03f3233af0a7a46b23f0af09d39a18720d9610bcba81__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC017\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_packed_t_stringliteral_4dc7b383aaca8b1076677685b160d1864e4801cbbaf42c8044d4665ea1c41120__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed(pos) -> end\n {\n mstore(pos, \"pegin\")\n end := add(pos, 5)\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 abi_encode_tuple_packed_t_stringliteral_ac320a165668abf6cbe2f0b8e46bf2426fe38861df98fc1861161bf05a853587__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed(pos) -> end\n {\n mstore(pos, \"pegout\")\n end := add(pos, 6)\n }\n function abi_encode_tuple_packed_t_stringliteral_36ad643d447cde9387780ae6f5b371120b595aaff5d56b8440952d5f7116fa16__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed(pos) -> end\n {\n mstore(pos, \"both\")\n end := add(pos, 4)\n }\n function abi_encode_tuple_t_stringliteral_c8a2f96b1c149a2cda2dda6db9bbdafbecddac69bce104e31ad4dd14842e4820__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC018\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_a80fe4c2764b7c4b52829ebb2b1bb3117b2b8ffa6a6401dbe00248ec851a73a8__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC070\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_f838e22b544c153329abcc9856d1b1f7e7f6c83118dc13d7a0606e65edb3cdd8__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC009\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_26efcc4d852e81be6f75389e4f50496331355ea059764b90ab1412936d29ab69__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC008\")\n tail := add(headStart, 96)\n }\n function mod_t_uint256(x, y) -> r\n {\n if iszero(y) { panic_error_0x12() }\n r := mod(x, y)\n }\n function abi_encode_tuple_t_uint256_t_uint256__to_t_uint256_t_uint256__fromStack_reversed(headStart, value1, value0) -> tail\n {\n tail := add(headStart, 64)\n mstore(headStart, value0)\n mstore(add(headStart, 32), value1)\n }\n function abi_encode_tuple_t_stringliteral_ccfdeeda37cff52b8b53c7f459ead001a00858d8cd279133dc1e599c6257c485__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC021\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_ae5a5bd2536c79a56736074670f517df1b8a17deb822b59dfa1648888074b4cc__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC022\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_1e153c8413fa71b1dc88c42214ae3211e20bbd7d323adc3a7cb82fb90c05d672__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC023\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_0a36b25bf1b768acf545d4a7d22e9fceeba3414a7a19dc34973fc2e1be01a831__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC005\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_packed_t_bytes32_t_bytes_memory_ptr_t_bytes20_t_bytes_memory_ptr__to_t_bytes32_t_bytes_memory_ptr_t_bytes20_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value3, value2, value1, value0) -> end\n {\n mstore(pos, value0)\n let length := mload(value1)\n copy_memory_to_memory_with_cleanup(add(value1, 32), add(pos, 32), length)\n let _1 := add(pos, length)\n mstore(add(_1, 32), and(value2, not(sub(shl(96, 1), 1))))\n let length_1 := mload(value3)\n copy_memory_to_memory_with_cleanup(add(value3, 32), add(_1, 52), length_1)\n end := add(add(_1, length_1), 52)\n }\n function abi_decode_bytes_fromMemory(offset, end) -> array\n {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n let _1 := mload(offset)\n let array_1 := allocate_memory(array_allocation_size_string(_1))\n mstore(array_1, _1)\n if gt(add(add(offset, _1), 0x20), end) { revert(0, 0) }\n copy_memory_to_memory_with_cleanup(add(offset, 0x20), add(array_1, 0x20), _1)\n array := array_1\n }\n function abi_decode_tuple_t_bytes_memory_ptr_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let offset := mload(headStart)\n if gt(offset, sub(shl(64, 1), 1)) { revert(0, 0) }\n value0 := abi_decode_bytes_fromMemory(add(headStart, offset), dataEnd)\n }\n function abi_encode_tuple_packed_t_stringliteral_681afa780d17da29203322b473d3f210a7d621259a4e6ce9e403f5a266ff719a_t_bytes32_t_stringliteral_32cefdcd8e794145c9af8dd1f4b1fbd92d6e547ae855553080fc8bd19c4883a0_t_bytes_memory_ptr__to_t_bytes1_t_bytes32_t_bytes1_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value1, value0) -> end\n {\n mstore(pos, \" \")\n mstore(add(pos, 1), value0)\n mstore(add(pos, 33), \"u\")\n let length := mload(value1)\n copy_memory_to_memory_with_cleanup(add(value1, 0x20), add(pos, 34), length)\n end := add(add(pos, length), 34)\n }\n function abi_encode_tuple_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bool__to_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bool__fromStack_library_reversed(headStart, value2, value1, value0) -> tail\n {\n mstore(headStart, 96)\n let tail_1 := abi_encode_string(value0, add(headStart, 96))\n mstore(add(headStart, 32), sub(tail_1, headStart))\n tail := abi_encode_string(value1, tail_1)\n mstore(add(headStart, 64), iszero(iszero(value2)))\n }\n function abi_encode_tuple_t_stringliteral_9c6c58d5603e5b2aab0d13c183f0136466f0ce13826630d90e079bf910078715__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC024\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_ceda09d74f8a59745bfad5393e75482469dc6db77c24fde6f52df4409a3f744c__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC025\")\n tail := add(headStart, 96)\n }\n function checked_add_t_uint32(x, y) -> sum\n {\n let _1 := 0xffffffff\n sum := add(and(x, _1), and(y, _1))\n if gt(sum, _1) { panic_error_0x11() }\n }\n function abi_encode_tuple_t_stringliteral_2d63cc93f65e3c34ca5cba24271c3d6869155fb2ffc83f083d82378f26d56cb0__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC026\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_5a937cad92792f08abdaf15eed65a070909c29d924f856ec65923c138fd39a48__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC027\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_ecc75ee801269ba7670799af84ad7f1d968d59315783a708807424c72ec63d04__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC037\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_0267b5bcac1113eea8a4dc81e170e6fe59336df7f2c6a4d2ae7ad240f894a2f9__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC063\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_39eacc26aa588693c014f46e6dd86f6cac22eb3287098210ddf746f1a6af8214__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC065\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_c8999eb883ba6531127283b89d3773d87761ac547946da55d1f52c5931d8838f__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC046\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_b400745c4fd650850c2059b2d13f12980ca63b7ccd87c008204992f11af559c2__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC047\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_35937926b0033772f3bb574f0cbcffec40211211a6070977d47733885bf234eb__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC064\")\n tail := add(headStart, 96)\n }\n function copy_byte_array_to_storage_from_t_bytes_memory_ptr_to_t_bytes_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_t_stringliteral_100fb89310beea959f828c5ca2a95ca4d28be5d0ba0e61e54b1345b68d14b6a1__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC042\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_476e33256b298fee7fc3dab0c339427caa3a9a4a44654f7f02b328083d44ca74__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC041\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_uint256_t_address__to_t_uint256_t_address__fromStack_reversed(headStart, value1, value0) -> tail\n {\n tail := add(headStart, 64)\n mstore(headStart, value0)\n mstore(add(headStart, 32), and(value1, sub(shl(160, 1), 1)))\n }\n function abi_encode_tuple_t_stringliteral_0a7ff570d31f7e351d06bf5b8d0ef26a9275a9d32a7dffd7981a6c6ac58227c6__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC044\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_library_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_array$_t_struct$_TxRawOutput_$2307_memory_ptr_$dyn_memory_ptr_fromMemory(headStart, dataEnd) -> value0\n {\n let _1 := 32\n if slt(sub(dataEnd, headStart), _1) { revert(0, 0) }\n let offset := mload(headStart)\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 let dst := allocate_memory(array_allocation_size_array_bytes32_dyn(_4))\n let dst_1 := dst\n mstore(dst, _4)\n dst := add(dst, _1)\n let srcEnd := add(add(_3, shl(5, _4)), _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 := mload(src)\n if gt(innerOffset, _2)\n {\n let _5 := 0\n revert(_5, _5)\n }\n let _6 := add(_3, innerOffset)\n let _7 := 0x80\n if slt(add(sub(dataEnd, _6), not(31)), _7)\n {\n let _8 := 0\n revert(_8, _8)\n }\n let value := allocate_memory_8445()\n let value_1 := mload(add(_6, _1))\n if iszero(eq(value_1, and(value_1, _2)))\n {\n let _9 := 0\n revert(_9, _9)\n }\n mstore(value, value_1)\n let _10 := 64\n let offset_1 := mload(add(_6, _10))\n if gt(offset_1, _2)\n {\n let _11 := 0\n revert(_11, _11)\n }\n mstore(add(value, _1), abi_decode_bytes_fromMemory(add(add(_6, offset_1), _1), dataEnd))\n let _12 := 96\n mstore(add(value, _10), mload(add(_6, _12)))\n mstore(add(value, _12), mload(add(_6, _7)))\n mstore(dst, value)\n dst := add(dst, _1)\n }\n value0 := dst_1\n }\n function panic_error_0x32()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x32)\n revert(0, 0x24)\n }\n function abi_encode_tuple_t_stringliteral_d0a12d6767c9352a89748f00976b0ffc4b9ff4b643d9cc1082f2df3b625d402a__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC075\")\n tail := add(headStart, 96)\n }\n function checked_add_t_uint8(x, y) -> sum\n {\n sum := add(and(x, 0xff), and(y, 0xff))\n if gt(sum, 0xff) { panic_error_0x11() }\n }\n function increment_t_uint8(value) -> ret\n {\n let value_1 := and(value, 0xff)\n if eq(value_1, 0xff) { panic_error_0x11() }\n ret := add(value_1, 1)\n }\n function abi_decode_tuple_t_bytes32_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := mload(headStart)\n }\n function abi_encode_tuple_t_stringliteral_5cf5f7c75a2357c5697933702fe9f20c432f8f5205def7bf18572d390cea5cc1__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC069\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_3c14ff4570332247d29826742fdf7f014a86ddbee2c49b0252a79ef49351f196__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC048\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_bytes32_t_bytes32_t_uint256_t_array$_t_bytes32_$dyn_memory_ptr__to_t_bytes32_t_bytes32_t_uint256_t_array$_t_bytes32_$dyn_memory_ptr__fromStack_reversed(headStart, value3, value2, value1, value0) -> tail\n {\n let tail_1 := add(headStart, 128)\n mstore(headStart, value0)\n let _1 := 32\n mstore(add(headStart, _1), value1)\n mstore(add(headStart, 64), value2)\n mstore(add(headStart, 96), 128)\n let pos := tail_1\n let length := mload(value3)\n mstore(tail_1, length)\n pos := add(headStart, 160)\n let srcPtr := add(value3, _1)\n let i := 0\n for { } lt(i, length) { i := add(i, 1) }\n {\n mstore(pos, mload(srcPtr))\n pos := add(pos, _1)\n srcPtr := add(srcPtr, _1)\n }\n tail := pos\n }\n function abi_decode_tuple_t_int256_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := mload(headStart)\n }\n function abi_encode_tuple_t_stringliteral_41cc9877d5a72c2a0ef0c602e024ddc86a1f279ef7306bab75dd3c5447ffb6e0__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC049\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_94643b69f05d64f660a022cd48046be494c1ed271b5d9ae602f6fdadc77976be__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC067\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_bytes_memory_ptr_t_bool__to_t_bytes_memory_ptr_t_bool__fromStack_library_reversed(headStart, value1, value0) -> tail\n {\n mstore(headStart, 64)\n tail := abi_encode_string(value0, add(headStart, 64))\n mstore(add(headStart, 32), iszero(iszero(value1)))\n }\n function abi_encode_tuple_packed_t_bytes_storage__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value0) -> end\n {\n let ret := 0\n let slotValue := sload(value0)\n let length := extract_byte_array_length(slotValue)\n let _1 := 1\n switch and(slotValue, _1)\n case 0 {\n mstore(pos, and(slotValue, not(255)))\n ret := add(pos, mul(length, iszero(iszero(length))))\n }\n case 1 {\n mstore(0, value0)\n let _2 := 0x20\n let dataPos := keccak256(0, _2)\n let i := 0\n for { } lt(i, length) { i := add(i, _2) }\n {\n mstore(add(pos, i), sload(dataPos))\n dataPos := add(dataPos, _1)\n }\n ret := add(pos, length)\n }\n end := ret\n }\n function abi_encode_tuple_t_stringliteral_7cd3d68dd2419ceccbacf2f69bda9c4c2f3bdb0c0535db4bbef90be788c8f7de__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC068\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_3dcf1159943f9eee729b997e5df9acd0f1771321696b1fb47efa6e54bee2f352__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC050\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 38)\n mstore(add(headStart, 64), \"Ownable: new owner is the zero a\")\n mstore(add(headStart, 96), \"ddress\")\n tail := add(headStart, 128)\n }\n function abi_encode_tuple_t_stringliteral_5004352c178489e456f74ee0937a3403e68ee3fa72f6afa5bff20fe549075132__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC056\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_struct$_PegOutQuote_$11272_memory_ptr__to_t_struct$_PegOutQuote_$11272_memory_ptr__fromStack_library_reversed(headStart, value0) -> tail\n {\n mstore(headStart, 32)\n abi_encode_address(mload(value0), add(headStart, 32))\n let memberValue0 := mload(add(value0, 32))\n abi_encode_address(memberValue0, add(headStart, 64))\n let memberValue0_1 := mload(add(value0, 64))\n let _1 := 0x0260\n mstore(add(headStart, 96), _1)\n let tail_1 := abi_encode_string(memberValue0_1, add(headStart, 640))\n let memberValue0_2 := mload(add(value0, 96))\n abi_encode_address(memberValue0_2, add(headStart, 128))\n let memberValue0_3 := mload(add(value0, 128))\n let _2 := not(31)\n mstore(add(headStart, 160), add(sub(tail_1, headStart), _2))\n let tail_2 := abi_encode_string(memberValue0_3, tail_1)\n mstore(add(headStart, 192), mload(add(value0, 160)))\n mstore(add(headStart, 224), mload(add(value0, 192)))\n let memberValue0_4 := mload(add(value0, 224))\n let _3 := 256\n abi_encode_int64(memberValue0_4, add(headStart, _3))\n let memberValue0_5 := mload(add(value0, _3))\n let _4 := 288\n mstore(add(headStart, _4), add(sub(tail_2, headStart), _2))\n let tail_3 := abi_encode_string(memberValue0_5, tail_2)\n let _5 := mload(add(value0, _4))\n let _6 := 320\n mstore(add(headStart, _6), _5)\n let memberValue0_6 := mload(add(value0, _6))\n let _7 := 352\n abi_encode_uint32(memberValue0_6, add(headStart, _7))\n let memberValue0_7 := mload(add(value0, _7))\n let _8 := 384\n abi_encode_uint32(memberValue0_7, add(headStart, _8))\n let memberValue0_8 := mload(add(value0, _8))\n let _9 := 416\n abi_encode_uint16(memberValue0_8, add(headStart, _9))\n let memberValue0_9 := mload(add(value0, _9))\n let _10 := 448\n abi_encode_uint16(memberValue0_9, add(headStart, _10))\n let memberValue0_10 := mload(add(value0, _10))\n let _11 := 480\n abi_encode_uint32(memberValue0_10, add(headStart, _11))\n let memberValue0_11 := mload(add(value0, _11))\n let _12 := 512\n abi_encode_uint32(memberValue0_11, add(headStart, _12))\n let memberValue0_12 := mload(add(value0, _12))\n let _13 := 544\n abi_encode_uint32(memberValue0_12, add(headStart, _13))\n let _14 := mload(add(value0, _13))\n let _15 := 576\n mstore(add(headStart, _15), _14)\n mstore(add(headStart, _1), mload(add(value0, _15)))\n tail := tail_3\n }\n function abi_encode_tuple_t_stringliteral_ebf73bba305590e4764d5cb53b69bffd6d4d092d1a67551cb346f8cfcdab8619__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 31)\n mstore(add(headStart, 64), \"ReentrancyGuard: reentrant call\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_ed7029e52dbf10ed9f0aafb2c33265c713a3f4dfd10cc113f22ba3c1270e1ddb__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC051\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_a1a398356814e2eac3017ce127db7657cbb8e2f1d90a78bc426eaa92c56969eb__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC052\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_923b965409721a83cf4ae76f34fa52de6eb09679d5b7141d2c0fc518a94192db__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC053\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_472231c5f3abacc190b5fd56153fbfc4b6c39c18040d443b29faee14791d54d9__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC054\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_1bdc71792e300c3b19739ad62e7651b4b49de502b7d1b6227970563bffaad71e__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC055\")\n tail := add(headStart, 96)\n }\n function checked_add_t_uint64(x, y) -> sum\n {\n let _1 := sub(shl(64, 1), 1)\n sum := add(and(x, _1), and(y, _1))\n if gt(sum, _1) { panic_error_0x11() }\n }\n function abi_encode_tuple_t_stringliteral_79d3c6c4bda42d819072ed97d83e6147bd9ad75bd5415529ecb6a41984271fb2__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC071\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_struct$_PeginQuote_$11233_memory_ptr__to_t_struct$_PeginQuote_$11233_memory_ptr__fromStack_library_reversed(headStart, value0) -> tail\n {\n mstore(headStart, 32)\n tail := abi_encode_struct_PeginQuote(value0, add(headStart, 32))\n }\n function abi_encode_tuple_t_bytes_memory_ptr_t_uint256_t_bytes_memory_ptr_t_bytes32_t_bytes_memory_ptr_t_address_payable_t_bytes_memory_ptr_t_bool__to_t_bytes_memory_ptr_t_uint256_t_bytes_memory_ptr_t_bytes32_t_bytes_memory_ptr_t_address_payable_t_bytes_memory_ptr_t_bool__fromStack_reversed(headStart, value7, value6, value5, value4, value3, value2, value1, value0) -> tail\n {\n let _1 := 256\n mstore(headStart, _1)\n let tail_1 := abi_encode_string(value0, add(headStart, _1))\n mstore(add(headStart, 32), value1)\n mstore(add(headStart, 64), sub(tail_1, headStart))\n let tail_2 := abi_encode_string(value2, tail_1)\n mstore(add(headStart, 96), value3)\n mstore(add(headStart, 128), sub(tail_2, headStart))\n let tail_3 := abi_encode_string(value4, tail_2)\n mstore(add(headStart, 160), and(value5, sub(shl(160, 1), 1)))\n mstore(add(headStart, 192), sub(tail_3, headStart))\n tail := abi_encode_string(value6, tail_3)\n mstore(add(headStart, 224), iszero(iszero(value7)))\n }\n function abi_encode_tuple_t_stringliteral_b13cbe420d932534b4c4c376e19a45f25e0ca05c6f1a458489ccb0574b26a6d9__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), \"Invalid block height\")\n tail := add(headStart, 96)\n }\n function abi_decode_tuple_t_uint256_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := mload(headStart)\n }\n function abi_encode_tuple_t_stringliteral_bac19bb4c4dce4ec87196bdccebfa1c4310f60332f1259cdc0bb93303ee1c2a0__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC058\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_e9fc4e098febe7043f1662405d88fa2495f2ac8d8f35918e247815b713cfd00a__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC074\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 32)\n mstore(add(headStart, 64), \"Ownable: caller is not the owner\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_319f398ccb7cc8c2c2304e07f301f618437c863aa2ff561ced1eaa40fcd3df63__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC059\")\n tail := add(headStart, 96)\n }\n}", - "id": 32, - "language": "Yul", - "name": "#utility.yul" - } - ], - "sourceMap": "481:34585:24:-:0;;;;;;;;;;;;;;;;;;;", - "deployedSourceMap": "481:34585:24:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5084:6;;-1:-1:-1;;;;;5084:6:24;5062:10;:29;5054:48;;;;-1:-1:-1;;;5054:48:24;;216:2:32;5054:48:24;;;198:21:32;255:1;235:18;;;228:29;-1:-1:-1;;;273:18:32;;;266:36;319:18;;5054:48:24;;;;;;;;;481:34585;;;;;34515:549;;;;;;;;;;-1:-1:-1;34515:549:24;;;;;:::i;:::-;;:::i;752:40::-;;;;;;;;;;;;791:1;752:40;;;;;2919:4:32;2907:17;;;2889:36;;2877:2;2862:18;752:40:24;;;;;;;;798:46;;;;;;;;;;;;843:1;798:46;;5209:89;;;;;;;;;;-1:-1:-1;5281:10:24;;5209:89;;;3082:25:32;;;3070:2;3055:18;5209:89:24;2936:177:32;27924:161:24;;;;;;;;;;-1:-1:-1;27924:161:24;;;;;:::i;:::-;;:::i;15247:6502::-;;;;;;;;;;-1:-1:-1;15247:6502:24;;;;;:::i;:::-;;:::i;10942:292::-;;;;;;;;;;-1:-1:-1;10942:292:24;;;;;:::i;:::-;;:::i;5804:85::-;;;;;;;;;;-1:-1:-1;5878:4:24;;5804:85;;6868:2171;;;;;;:::i;:::-;;:::i;1392:94::-;;;;;;;;;;;;-1:-1:-1;;1392:94:24;;;;;11620:1:32;11609:21;;;;11591:40;;11579:2;11564:18;1392:94:24;11449:188:32;10470:192:24;;;:::i;6227:145::-;;;;;;;;;;-1:-1:-1;6227:145:24;;;;;:::i;:::-;;:::i;:::-;;;12155:14:32;;12148:22;12130:41;;12118:2;12103:18;6227:145:24;11990:187:32;6566:193:24;;;;;;;;;;-1:-1:-1;6566:193:24;;;;;:::i;:::-;;:::i;5895:139::-;;;;;;;;;;-1:-1:-1;5895:139:24;;;;;:::i;:::-;5969:4;5992:25;;;:14;:25;;;;;:35;;;;;;5895:139;5115:88;;;;;;;;;;-1:-1:-1;5182:14:24;;;;;;;;;;;-1:-1:-1;;;5182:14:24;;;;5115:88;;;;5182:14;5115:88;:::i;9713:314::-;;;;;;;;;;-1:-1:-1;9713:314:24;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;11308:618::-;;;;;;;;;;;;;:::i;4289:35::-;;;;;;;;;;;;;;;;12000:205;;;;;;;;;;;;;:::i;4330:37::-;;;;;;;;;;-1:-1:-1;4330:37:24;;;;-1:-1:-1;;;;;4330:37:24;;;;;;;;;;:::i;2085:101:0:-;;;;;;;;;;;;;:::i;4824:187:24:-;;;;;;;;;;-1:-1:-1;4824:187:24;;;;;:::i;:::-;;:::i;26874:699::-;;;;;;;;;;-1:-1:-1;26874:699:24;;;;;:::i;:::-;;:::i;13139:1591::-;;;;;;:::i;:::-;;:::i;4008:22::-;;;;;;;;;;;;;;;;21755:1183;;;;;;:::i;:::-;;:::i;1066:79::-;;;;;;;;;;;;-1:-1:-1;;1066:79:24;;1462:85:0;;;;;;;;;;;;;:::i;22944:1084:24:-;;;;;;;;;;-1:-1:-1;22944:1084:24;;;;;:::i;:::-;;:::i;12403:109::-;;;;;;;;;;-1:-1:-1;12403:109:24;;;;;:::i;:::-;-1:-1:-1;;;;;12489:16:24;12463:7;12489:16;;;:10;:16;;;;;;;12403:109;698:48;;;;;;;;;;;;745:1;698:48;;587;;;;;;;;;;;;630:5;587:48;;;;;16577:6:32;16565:19;;;16547:38;;16535:2;16520:18;587:48:24;16403:188:32;10299:165:24;;;:::i;1600:42::-;;;;;;;;;;;;1641:1;1600:42;;1151:82;;;;;;;;;;;;-1:-1:-1;;1151:82:24;;983:77;;;;;;;;;;;;-1:-1:-1;;983:77:24;;1492:50;;;;;;;;;;;;-1:-1:-1;;1492:50:24;;27784:134;;;;;;;;;;-1:-1:-1;27784:134:24;;;;;:::i;:::-;;:::i;1648:51::-;;;;;;;;;;;;1693:6;1648:51;;12518:121;;;;;;;;;;-1:-1:-1;12518:121:24;;;;;:::i;:::-;-1:-1:-1;;;;;12610:22:24;12584:7;12610:22;;;:16;:22;;;;;;;12518:121;5694:104;;;;;;;;;;-1:-1:-1;5772:19:24;;-1:-1:-1;;;5772:19:24;;;;5694:104;;1548:46;;;;;;;;;;;;1593:1;1548:46;;1239:71;;;;;;;;;;;;-1:-1:-1;;1239:71:24;;5597:91;;;;;;;;;;-1:-1:-1;5674:7:24;;;;5597:91;;1316:70;;;;;;;;;;;;-1:-1:-1;;1316:70:24;;10733:106;;;:::i;24034:2834::-;;;;;;;;;;-1:-1:-1;24034:2834:24;;;;;:::i;:::-;;:::i;641:50::-;;;;;;;;;;;;687:4;641:50;;918:59;;;;;;;;;;;;-1:-1:-1;;918:59:24;;3481:20;;;;;;;;;;-1:-1:-1;3481:20:24;;;;-1:-1:-1;;;;;3481:20:24;;;5409:92;;;;;;;;;;-1:-1:-1;5481:13:24;;5409:92;;851:61;;;;;;;;;;;;-1:-1:-1;;851:61:24;;9045:662;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;2335:198:0:-;;;;;;;;;;-1:-1:-1;2335:198:0;;;;;:::i;:::-;;:::i;12838:104:24:-;;;;;;;;;;-1:-1:-1;12838:104:24;;;;;:::i;:::-;-1:-1:-1;;;;;12921:14:24;12895:7;12921:14;;;:8;:14;;;;;;;12838:104;5507:84;;;;;;;;;;-1:-1:-1;5576:8:24;;5507:84;;5304:99;;;;;;;;;;-1:-1:-1;5389:6:24;;-1:-1:-1;;;;;5389:6:24;5304:99;;34515:549;34629:1;34613:5;34607:19;:23;:49;;;;;34655:1;34640:4;34634:18;:22;34607:49;34599:68;;;;-1:-1:-1;;;34599:68:24;;19415:2:32;34599:68:24;;;19397:21:32;19454:1;19434:18;;;19427:29;-1:-1:-1;;;19472:18:32;;;19465:36;19518:18;;34599:68:24;19213:329:32;34599:68:24;34677:28;34729:1;34715:317;34737:10;;34732:1;:15;34715:317;;34773:21;;;;:18;:21;;;;;34826:11;;;;34773:21;;-1:-1:-1;;;;;;34826:11:24;34812:10;:25;34808:214;;34857:7;;;:15;34867:5;34857:7;:15;:::i;:::-;-1:-1:-1;34890:13:24;;;:20;34906:4;34890:13;:20;:::i;:::-;;34948:10;-1:-1:-1;;;;;34933:50:24;;34960:2;:7;;34969:2;:13;;34933:50;;;;;;;:::i;:::-;;;;;;;;35001:7;;34515:549;;:::o;34808:214::-;34749:3;;;;:::i;:::-;;;;34715:317;;;;35041:16;;-1:-1:-1;;;35041:16:24;;;;;;;:::i;27924:161::-;28019:7;28045:33;28072:5;28045:26;:33::i;:::-;28038:40;27924:161;-1:-1:-1;;27924:161:24:o;15247:6502::-;15485:6;2526:21:2;:19;:21::i;:::-;15503:17:24::1;15523:27;15544:5;15523:20;:27::i;:::-;15676:26;::::0;;;:15:::1;:26;::::0;;;;;;;-1:-1:-1;791:1:24::1;15676:44;:26:::0;;::::1;:44;;15655:97;;;;-1:-1:-1::0;;;15655:97:24::1;;;;;;;:::i;:::-;15826:33;::::0;;::::1;::::0;15783:144;;-1:-1:-1;;;15783:144:24;;:18:::1;::::0;:25:::1;::::0;:144:::1;::::0;15826:33;15877:9;;15904;;15783:144:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;15762:197;;;;-1:-1:-1::0;;;15762:197:24::1;;;;;;;:::i;:::-;16001:15;15977:41:::0;::::1;15969:60;;;::::0;-1:-1:-1;;;15969:60:24;;25436:2:32;15969:60:24::1;::::0;::::1;25418:21:32::0;25475:1;25455:18;;;25448:29;-1:-1:-1;;;25493:18:32;;;25486:36;25539:18;;15969:60:24::1;25234:329:32::0;15969:60:24::1;16040:35;16078:148;16106:5;16125:17;16156;16187:6;16207:9;16078:14;:148::i;:::-;16040:186:::0;-1:-1:-1;16258:85:24;;;16237:138:::1;;;::::0;-1:-1:-1;;;16237:138:24;;25770:2:32;16237:138:24::1;::::0;::::1;25752:21:32::0;25809:1;25789:18;;;25782:29;-1:-1:-1;;;25827:18:32;;;25820:36;25873:18;;16237:138:24::1;25568:329:32::0;16237:138:24::1;16406:96:::0;;;16385:149:::1;;;::::0;-1:-1:-1;;;16385:149:24;;26104:2:32;16385:149:24::1;::::0;::::1;26086:21:32::0;26143:1;26123:18;;;26116:29;-1:-1:-1;;;26161:18:32;;;26154:36;26207:18;;16385:149:24::1;25902:329:32::0;16385:149:24::1;16565:84:::0;;;16544:137:::1;;;::::0;-1:-1:-1;;;16544:137:24;;26438:2:32;16544:137:24::1;::::0;::::1;26420:21:32::0;26477:1;26457:18;;;26450:29;-1:-1:-1;;;26495:18:32;;;26488:36;26541:18;;16544:137:24::1;26236:329:32::0;16544:137:24::1;16712:104:::0;;;16691:157:::1;;;::::0;-1:-1:-1;;;16691:157:24;;26772:2:32;16691:157:24::1;::::0;::::1;26754:21:32::0;26811:1;26791:18;;;26784:29;-1:-1:-1;;;26829:18:32;;;26822:36;26875:18;;16691:157:24::1;26570:329:32::0;16691:157:24::1;16879:52:::0;;;16858:105:::1;;;::::0;-1:-1:-1;;;16858:105:24;;27106:2:32;16858:105:24::1;::::0;::::1;27088:21:32::0;27145:1;27125:18;;;27118:29;-1:-1:-1;;;27163:18:32;;;27156:36;27209:18;;16858:105:24::1;26904:329:32::0;16858:105:24::1;17025:1;16994:28;:32;:109;;;-1:-1:-1::0;;;17042:61:24;::::1;16994:109;:188;;;-1:-1:-1::0;;;17119:63:24;::::1;16994:188;16973:241;;;::::0;-1:-1:-1;;;16973:241:24;;27440:2:32;16973:241:24::1;::::0;::::1;27422:21:32::0;27479:1;27459:18;;;27452:29;-1:-1:-1;;;27497:18:32;;;27490:36;27543:18;;16973:241:24::1;27238:329:32::0;16973:241:24::1;17333:23;::::0;;;:12:::1;:23;::::0;;;;:33;17242:154:::1;::::0;17272:5;;17291:28;;17333:33:::1;;17380:6:::0;17242:16:::1;:154::i;:::-;17225:816;;;17468:16;::::0;::::1;::::0;17513:33:::1;::::0;;::::1;::::0;-1:-1:-1;;;;;17502:45:24::1;17421:23;17502:45:::0;;;:10:::1;:45;::::0;;;;;17421:23;;17447:114:::1;::::0;:3:::1;:114::i;:::-;17421:140;;17687:18;17638:10;:45;17649:5;:33;;;-1:-1:-1::0;;;;;17638:45:24::1;-1:-1:-1::0;;;;;17638:45:24::1;;;;;;;;;;;;;:67;;;;;;;:::i;:::-;::::0;;;-1:-1:-1;;17751:33:24::1;::::0;;::::1;::::0;17724:137;;-1:-1:-1;;;;;;;;;;;17724:137:24;::::1;::::0;17802:18;;17838:9;;17724:137:::1;:::i;:::-;;;;;;;;17959:7;::::0;17912:22:::1;::::0;17970:3:::1;::::0;17938:28:::1;::::0;17959:7:::1;;17938:18:::0;:28:::1;:::i;:::-;17937:36;;;;:::i;:::-;17912:61;;17987:43;18003:10;18015:14;17987:15;:43::i;:::-;17407:634;;17225:816;-1:-1:-1::0;;18068:61:24;::::1;::::0;:140:::1;;-1:-1:-1::0;;;18145:63:24;::::1;18068:140;18051:447;;;18268:26;::::0;;;:15:::1;:26;::::0;;;;;;;:49;;-1:-1:-1;;18268:49:24::1;843:1;18268:49;::::0;;18338:12:::1;:23:::0;;;;;;18331:30;;-1:-1:-1;;18331:30:24;;;18380:58;;28657:25:32;;;28698:18;;;28691:34;;;18380:58:24::1;::::0;28630:18:32;18380:58:24::1;;;;;;;18459:28:::0;-1:-1:-1;18452:35:24::1;::::0;-1:-1:-1;18452:35:24::1;18051:447;18754:52;::::0;-1:-1:-1;;;18754:52:24;;18714:28;;18754:8:::1;::::0;:26:::1;::::0;:52:::1;::::0;18781:5;;18714:28;;18754:52:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;;18857:1:24::1;18821:23:::0;;;:12:::1;:23;::::0;;;;:33;::::1;;:37:::0;;-1:-1:-1;18817:2711:24::1;;18874:17;18910:23:::0;;;:12:::1;:23;::::0;;;;:31;-1:-1:-1;;;18910:31:24;::::1;;;18906:315;;;18976:124;19001:17;19070:5;:12;;;19054:5;:13;;;19040:5;:11;;;:27;;;;:::i;:::-;:42;;;;:::i;:::-;18976:3;:124::i;:::-;18961:139;;18906:315;;;19154:52;19158:17;19193:5;:12;;;19177:5;:13;;;:28;;;;:::i;19154:52::-;19139:67;;18906:315;19234:64;19250:5;:33;;;19285:12;19234:15;:64::i;:::-;19313:20;19336:32;19356:12:::0;19336:17;:32:::1;:::i;:::-;19313:55;;19382:52;19400:5;:22;;;19424:9;19382:17;:52::i;:::-;19471:4;;19453:15;:22;19449:829;;;19595:22;::::0;::::1;::::0;:152:::1;::::0;19578:12:::1;::::0;-1:-1:-1;;;;;19595:27:24::1;::::0;687:4:::1;::::0;19706:15;;19578:12;19595:152;19578:12;19595:152;19706:15;19595:27;687:4;19595:152:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19577:170;;;-1:-1:-1::0;;;;;;;;;;;19798:5:24::1;:22;;;19842:15;19879:7;19908:9;19770:165;;;;;;;;;:::i;:::-;;;;;;;;19959:7;19954:310;;20108:137;20149:5;:33;;;20208:15;20108;:137::i;:::-;19477:801;19449:829;18860:1428;;18817:2711;;;20364:20;::::0;::::1;::::0;20328:17;;20364:51;::::1;;;;20404:5;:11;;;20388:12;:27;;20364:51;20360:656;;;20436:16;20457:5;:21;;;-1:-1:-1::0;;;;;20457:26:24::1;20514:5;:14;;;20457:149;;20561:5;:11;;;20595:5;:10;;;20457:149;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20435:171;;;20694:5;:21;;;-1:-1:-1::0;;;;;20629:269:24::1;20662:10;-1:-1:-1::0;;;;;20629:269:24::1;-1:-1:-1::0;;;;;;;;;;;20737:5:24::1;:14;;;20773:5;:11;;;20806:5;:10;;;20838:11;20871:9;20629:269;;;;;;;;;;:::i;:::-;;;;;;;;20921:11;20917:85;;;20972:11;::::0;::::1;::::0;20956:27:::1;::::0;;::::1;:::i;:::-;;;20917:85;20417:599;20360:656;21048:4;;21033:12;:19;21029:489;;;21169:22;::::0;::::1;::::0;:149:::1;::::0;21152:12:::1;::::0;-1:-1:-1;;;;;21169:27:24::1;::::0;687:4:::1;::::0;21280:12;;21152;21169:149;21152:12;21169:149;21280:12;21169:27;687:4;21169:149:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21151:167;;;-1:-1:-1::0;;;;;;;;;;;21369:5:24::1;:22;;;21413:12;21447:7;21476:9;21341:162;;;;;;;;;:::i;:::-;;;;;;;;21054:464;21029:489;20294:1234;18817:2711;21537:26;::::0;;;:15:::1;:26;::::0;;;;;;;:49;;-1:-1:-1;;21537:49:24::1;843:1;21537:49;::::0;;21603:12:::1;:23:::0;;;;;;21596:30;;-1:-1:-1;;21596:30:24;;;21641:56;;3082:25:32;;;21537:26:24;;21641:56:::1;::::0;3055:18:32;21641:56:24::1;;;;;;;-1:-1:-1::0;21714:28:24;-1:-1:-1;;2557:1:2::1;2568:20:::0;1808:1;3074:7;:22;2894:209;2568:20;15247:6502:24;;;;;;;:::o;10942:292::-;11012:10;11003:20;;;;:8;:20;;;;;;:30;-1:-1:-1;11003:30:24;10995:49;;;;-1:-1:-1;;;10995:49:24;;;;;;;:::i;:::-;11063:10;11054:20;;;;:8;:20;;;;;:30;;11078:6;;11054:20;:30;;11078:6;;11054:30;:::i;:::-;;;;-1:-1:-1;;11112:34:24;;11095:12;;11112:10;;11135:6;;11095:12;11112:34;11095:12;11112:34;11135:6;11112:10;:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11094:52;;;11164:7;11156:26;;;;-1:-1:-1;;;11156:26:24;;;;;;;:::i;:::-;11197:30;11208:10;11220:6;11197:30;;;;;;;:::i;:::-;;;;;;;;10985:249;10942:292;:::o;6868:2171::-;7041:4;7065:9;7078:10;7065:23;7057:42;;;;-1:-1:-1;;;7057:42:24;;34588:2:32;7057:42:24;;;34570:21:32;34627:1;34607:18;;;34600:29;-1:-1:-1;;;34645:18:32;;;34638:36;34691:18;;7057:42:24;34386:329:32;7057:42:24;7209:1;7193:5;7187:19;:23;7179:42;;;;-1:-1:-1;;;7179:42:24;;34922:2:32;7179:42:24;;;34904:21:32;34961:1;34941:18;;;34934:29;-1:-1:-1;;;34979:18:32;;;34972:36;35025:18;;7179:42:24;34720:329:32;7179:42:24;7280:1;7258:11;7252:25;:29;7231:82;;;;-1:-1:-1;;;7231:82:24;;35256:2:32;7231:82:24;;;35238:21:32;35295:1;35275:18;;;35268:29;-1:-1:-1;;;35313:18:32;;;35306:36;35359:18;;7231:82:24;35054:329:32;7231:82:24;7475:25;;;;;;;:::i;:::-;;;;;;;;;;;;;7465:36;;;;;;7434:13;7417:31;;;;;;;;:::i;:::-;;;;;;;;;;;;;7407:42;;;;;;:94;:205;;;;7585:26;;;;;;;:::i;:::-;;;;;;;;;;;;;7575:37;;;;;;7544:13;7527:31;;;;;;;;:::i;:::-;;;;;;;;;;;;;7517:42;;;;;;:95;7407:205;:314;;;-1:-1:-1;7696:24:24;;-1:-1:-1;;;7696:24:24;;;36405:19:32;36440:11;;7696:24:24;;;;;;;;;;;;7686:35;;;;;;7655:13;7638:31;;;;;;;;:::i;:::-;;;;;;;;;;;;;7628:42;;;;;;:93;7407:314;7386:367;;;;-1:-1:-1;;;7386:367:24;;36664:2:32;7386:367:24;;;36646:21:32;36703:1;36683:18;;;36676:29;-1:-1:-1;;;36721:18:32;;;36714:36;36767:18;;7386:367:24;36462:329:32;7386:367:24;7783:10;7772:22;;;;:10;:22;;;;;;:27;:64;;;;-1:-1:-1;7820:10:24;7803:28;;;;:16;:28;;;;;;:33;7772:64;7764:83;;;;-1:-1:-1;;;7764:83:24;;36998:2:32;7764:83:24;;;36980:21:32;37037:1;37017:18;;;37010:29;-1:-1:-1;;;37055:18:32;;;37048:36;37101:18;;7764:83:24;36796:329:32;7764:83:24;7898:10;7878:31;;;;:19;:31;;;;;;:36;7857:89;;;;-1:-1:-1;;;7857:89:24;;37332:2:32;7857:89:24;;;37314:21:32;37371:1;37351:18;;;37344:29;-1:-1:-1;;;37389:18:32;;;37382:36;37435:18;;7857:89:24;37130:329:32;7857:89:24;8017:25;;;;;;;:::i;:::-;;;;;;;;;;;;;8007:36;;;;;;7988:13;7971:31;;;;;;;;:::i;:::-;;;;;;;;;;;;;7961:42;;;;;;:82;7957:700;;8080:13;;8067:9;:26;;8059:45;;;;-1:-1:-1;;;8059:45:24;;;;;;;:::i;:::-;8129:10;8118:22;;;;:10;:22;;;;;8143:9;8118:34;;7957:700;;;8229:26;;;;;;;:::i;:::-;;;;;;;;;;;;;8219:37;;;;;;8200:13;8183:31;;;;;;;;:::i;:::-;;;;;;;;;;;;;8173:42;;;;;;:83;8169:488;;8293:13;;8280:9;:26;;8272:45;;;;-1:-1:-1;;;8272:45:24;;;;;;;:::i;:::-;8348:10;8331:28;;;;:16;:28;;;;;8362:9;8331:40;;8169:488;;;8423:13;;:17;;8439:1;8423:17;:::i;:::-;8410:9;:30;;8402:49;;;;-1:-1:-1;;;8402:49:24;;;;;;;:::i;:::-;8465:17;8485:13;8497:1;8485:9;:13;:::i;:::-;8465:33;-1:-1:-1;8537:13:24;8549:1;8537:9;:13;:::i;:::-;:18;:52;;8573:16;:12;8588:1;8573:16;:::i;:::-;8537:52;;;8558:12;8537:52;8523:10;8512:22;;;;:10;:22;;;;;;;;:77;;;;8603:16;:28;;;:43;8169:488;8667:10;:12;;;:10;:12;;;:::i;:::-;;;;-1:-1:-1;;8722:223:24;;;;;;;;8758:10;;8722:223;;;8792:10;8722:223;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;8689:30:24;;;:18;:30;;;;;;;:256;;;;;;;;;;;-1:-1:-1;;;;;;8689:256:24;-1:-1:-1;;;;;8689:256:24;;;;;;;;;;;8722:223;;8689:30;:256;;;;;;;;:::i;:::-;-1:-1:-1;8689:256:24;;;;;;;;;;;;:::i;:::-;-1:-1:-1;8689:256:24;;;;;;;;;-1:-1:-1;;8689:256:24;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;8969:10:24;;8960:43;;;28657:25:32;;;8993:9:24;28713:2:32;28698:18;;28691:34;8981:10:24;;-1:-1:-1;8960:43:24;;28630:18:32;8960:43:24;;;;;;;-1:-1:-1;9021:10:24;;6868:2171;;;;;;;:::o;10470:192::-;4530:33;4552:10;4530:21;:33::i;:::-;4522:52;;;;-1:-1:-1;;;4522:52:24;;;;;;;:::i;:::-;10569:10:::1;10552:28;::::0;;;:16:::1;:28;::::0;;;;:41;;10584:9:::1;::::0;10552:28;:41:::1;::::0;10584:9;;10552:41:::1;:::i;:::-;::::0;;;-1:-1:-1;;10608:47:24::1;::::0;::::1;::::0;::::1;::::0;10633:10:::1;::::0;10645:9:::1;::::0;10608:47:::1;:::i;:::-;;;;;;;;10470:192::o:0;6227:145::-;6287:4;6310:18;6323:4;6310:12;:18::i;:::-;:55;;;;-1:-1:-1;6352:13:24;;-1:-1:-1;;;;;6332:16:24;;;;;;:10;:16;;;;;;:33;;6303:62;6227:145;-1:-1:-1;;6227:145:24:o;6566:193::-;6635:4;6670:27;6692:4;6670:21;:27::i;:::-;:82;;;;-1:-1:-1;6739:13:24;;-1:-1:-1;;;;;6713:22:24;;;;;;:16;:22;;;;;;:39;;6651:101;6566:193;-1:-1:-1;;6566:193:24:o;9713:314::-;9780:24;;:::i;:::-;9830:1;9816:179;9838:10;;9833:1;:15;9816:179;;9873:21;;;;:18;:21;;;;;:30;;;-1:-1:-1;;;;;9873:49:24;;;:30;;:49;9869:116;;9949:21;;;;:18;:21;;;;;;;;;9942:28;;;;;;;;;;;;;;;-1:-1:-1;;;;;9942:28:24;;;;;;;;;;;;;;;9949:21;;9942:28;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;9942:28:24;;;-1:-1:-1;;9942:28:24;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9713:314;;;:::o;9869:116::-;9850:3;;;;:::i;:::-;;;;9816:179;;11308:618;2526:21:2;:19;:21::i;:::-;11398:10:24::1;11412:1;11378:31:::0;;;:19:::1;:31;::::0;;;;;11370:54:::1;;;::::0;-1:-1:-1;;;11370:54:24;;38370:2:32;11370:54:24::1;::::0;::::1;38352:21:32::0;38409:1;38389:18;;;38382:29;-1:-1:-1;;;38427:18:32;;;38420:36;38473:18;;11370:54:24::1;38168:329:32::0;11370:54:24::1;11517:19;::::0;11490:10:::1;11470:31;::::0;;;:19:::1;:31;::::0;;;;;-1:-1:-1;;;11517:19:24;;::::1;;;::::0;11455:46:::1;::::0;:12:::1;:46;:::i;:::-;:81;;11434:134;;;::::0;-1:-1:-1;;;11434:134:24;;38704:2:32;11434:134:24::1;::::0;::::1;38686:21:32::0;38743:1;38723:18;;;38716:29;-1:-1:-1;;;38761:18:32;;;38754:36;38807:18;;11434:134:24::1;38502:329:32::0;11434:134:24::1;11634:10;11578:11;11617:28:::0;;;:16:::1;:28;::::0;;;;;;;;11592:10:::1;:22:::0;;;;;;:53:::1;::::0;11617:28;11592:53:::1;:::i;:::-;11672:10;11686:1;11655:28:::0;;;:16:::1;:28;::::0;;;;;;;:32;;;11697:10:::1;:22:::0;;;;;:26;;;11733:19:::1;:31:::0;;;;;;:35;;;11796:34;11578:67;;-1:-1:-1;11686:1:24;11578:67;;11686:1;11796:34;11686:1;11796:34;11578:67;11672:10;11796:34:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11778:52;;;11848:7;11840:26;;;;-1:-1:-1::0;;;11840:26:24::1;;;;;;;:::i;:::-;11881:38;11900:10;11912:6;11881:38;;;;;;;:::i;:::-;;;;;;;;11360:566;;2568:20:2::0;1808:1;3074:7;:22;2894:209;2568:20;11308:618:24:o;12000:205::-;4418:24;4431:10;4418:12;:24::i;:::-;4410:43;;;;-1:-1:-1;;;4410:43:24;;;;;;;:::i;:::-;12080:10:::1;12060:31;::::0;;;:19:::1;:31;::::0;;;;;:36;12052:55:::1;;;::::0;-1:-1:-1;;;12052:55:24;;39038:2:32;12052:55:24::1;::::0;::::1;39020:21:32::0;39077:1;39057:18;;;39050:29;-1:-1:-1;;;39095:18:32;;;39088:36;39141:18;;12052:55:24::1;38836:329:32::0;12052:55:24::1;12137:10;12117:31;::::0;;;:19:::1;:31;::::0;;;;;;12151:12:::1;12117:46:::0;;12178:20;::::1;::::0;::::1;::::0;::::1;:::i;2085:101:0:-:0;1355:13;:11;:13::i;:::-;2149:30:::1;2176:1;2149:18;:30::i;4824:187:24:-:0;4934:11;4691:7;:5;:7::i;:::-;-1:-1:-1;;;;;4677:21:24;:10;-1:-1:-1;;;;;4677:21:24;;:91;;;-1:-1:-1;4728:31:24;;;;:18;:31;;;;;:40;;;-1:-1:-1;;;;;4728:40:24;4714:10;:54;4677:91;4656:144;;;;-1:-1:-1;;;4656:144:24;;39372:2:32;4656:144:24;;;39354:21:32;39411:1;39391:18;;;39384:29;-1:-1:-1;;;39429:18:32;;;39422:36;39475:18;;4656:144:24;39170:329:32;4656:144:24;-1:-1:-1;4957:31:24::1;::::0;;;:18:::1;:31;::::0;;;;;:38:::1;;:47:::0;;-1:-1:-1;;4957:47:24::1;::::0;::::1;;::::0;;;::::1;::::0;;4824:187::o;26874:699::-;27019:4;27035:23;27114:16;27124:5;27114:9;:16::i;:::-;27148:5;:22;;;27196:5;:16;;;27188:25;;27231:5;:33;;;27084:194;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;27061:227;;;;;;27035:253;;27298:32;27380:15;27430:6;;;;;;;;;-1:-1:-1;;;;;27430:6:24;-1:-1:-1;;;;;27430:34:24;;:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;27430:36:24;;;;;;;;;;;;:::i;:::-;27333:143;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;27333:143:24;;;;;;;;;;27558:7;;-1:-1:-1;;;27493:73:24;;27333:143;;-1:-1:-1;27493:8:24;;:27;;:73;;27521:14;;27333:143;;27558:7;;;;;27493:73;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;13139:1591::-;13262:4;4418:24;4431:10;4418:12;:24::i;:::-;4410:43;;;;-1:-1:-1;;;4410:43:24;;;;;;;:::i;:::-;2526:21:2::1;:19;:21::i;:::-;13313:5:24::2;:33;;;-1:-1:-1::0;;;;;13299:47:24::2;:10;-1:-1:-1::0;;;;;13299:47:24::2;;13278:100;;;::::0;-1:-1:-1;;;13278:100:24;;42240:2:32;13278:100:24::2;::::0;::::2;42222:21:32::0;42279:1;42259:18;;;42252:29;-1:-1:-1;;;42297:18:32;;;42290:36;42343:18;;13278:100:24::2;42038:329:32::0;13278:100:24::2;13480:11;::::0;::::2;::::0;13418:33:::2;::::0;;::::2;::::0;-1:-1:-1;;;;;13409:43:24::2;;::::0;;;:8:::2;:43;::::0;;;:55:::2;::::0;13455:9:::2;::::0;13409:55:::2;:::i;:::-;:82;;13388:135;;;;-1:-1:-1::0;;;13388:135:24::2;;;;;;;:::i;:::-;13534:17;13554:27;13575:5;13554:20;:27::i;:::-;745:1;13612:26:::0;;;:15:::2;:26;::::0;;;;;13534:47;;-1:-1:-1;13612:52:24::2;:26;:52:::0;13591:105:::2;;;::::0;-1:-1:-1;;;13591:105:24;;42574:2:32;13591:105:24::2;::::0;::::2;42556:21:32::0;42613:1;42593:18;;;42586:29;-1:-1:-1;;;42631:18:32;;;42624:36;42677:18;;13591:105:24::2;42372:329:32::0;13591:105:24::2;13707:61;13723:5;:33;;;13758:9;13707:15;:61::i;:::-;13914:14;::::0;::::2;::::0;:34:::2;::::0;630:5:::2;::::0;13914:34:::2;:::i;:::-;13901:47;;:9;:47;;13880:100;;;::::0;-1:-1:-1;;;13880:100:24;;43085:2:32;13880:100:24::2;::::0;::::2;43067:21:32::0;43124:1;43104:18;;;43097:29;-1:-1:-1;;;43142:18:32;;;43135:36;43188:18;;13880:100:24::2;42883:329:32::0;13880:100:24::2;13991:12;14008:5;:21;;;-1:-1:-1::0;;;;;14008:26:24::2;14057:5;:14;;;14008:125;;14096:5;:11;;;14122:5;:10;;;14008:125;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;13990:143:24;;-1:-1:-1;;14171:16:24::2;14152:15;:35;;14144:54;;;::::0;-1:-1:-1;;;14144:54:24;;43419:2:32;14144:54:24::2;::::0;::::2;43401:21:32::0;43458:1;43438:18;;;43431:29;-1:-1:-1;;;43476:18:32;;;43469:36;43522:18;;14144:54:24::2;43217:329:32::0;14144:54:24::2;14208:23;::::0;;;:12:::2;:23;::::0;;;;:59;;-1:-1:-1;;14208:59:24::2;14251:15;14208:59;;;::::0;;14278:153;::::2;;;14305:23;::::0;;;:12:::2;:23;::::0;;;;;;:38;;-1:-1:-1;;;;14305:38:24::2;-1:-1:-1::0;;;14305:38:24::2;::::0;;14373:33;::::2;::::0;14408:11:::2;::::0;::::2;::::0;14357:63:::2;::::0;14373:33;14357:15:::2;:63::i;:::-;14494:5;:21;;;-1:-1:-1::0;;;;;14445:201:24::2;14470:10;-1:-1:-1::0;;;;;14445:201:24::2;-1:-1:-1::0;;;;;;;;;;;14529:5:24::2;:14;;;14557:5;:11;;;14582:5;:10;;;14606:7;14627:9;14445:201;;;;;;;;;;:::i;:::-;;;;;;;;14656:26;::::0;;;:15:::2;:26;::::0;;;;;:43;;-1:-1:-1;;14656:43:24::2;791:1;14656:43;::::0;;14716:7;-1:-1:-1;2568:20:2::1;1808:1:::0;3074:7;:22;2894:209;2568:20:::1;13139:1591:24::0;;;:::o;21755:1183::-;21958:41;21980:5;:18;;;21958:21;:41::i;:::-;21950:60;;;;-1:-1:-1;;;21950:60:24;;43753:2:32;21950:60:24;;;43735:21:32;43792:1;43772:18;;;43765:29;-1:-1:-1;;;43810:18:32;;;43803:36;43856:18;;21950:60:24;43551:329:32;21950:60:24;22099:9;22083:5;:12;;;22058:5;:22;;;22042:5;:13;;;22028:5;:11;;;:27;;;;:::i;:::-;:52;;;;:::i;:::-;:67;;;;:::i;:::-;:80;;22020:99;;;;-1:-1:-1;;;22020:99:24;;44087:2:32;22020:99:24;;;44069:21:32;44126:1;44106:18;;;44099:29;-1:-1:-1;;;44144:18:32;;;44137:36;44190:18;;22020:99:24;43885:329:32;22020:99:24;22156:5;:22;;;22137:41;;:15;:41;;22129:60;;;;-1:-1:-1;;;22129:60:24;;44421:2:32;22129:60:24;;;44403:21:32;44460:1;44440:18;;;44433:29;-1:-1:-1;;;44478:18:32;;;44471:36;44524:18;;22129:60:24;44219:329:32;22129:60:24;22226:5;:16;;;22207:35;;:15;:35;;22199:54;;;;-1:-1:-1;;;22199:54:24;;44755:2:32;22199:54:24;;;44737:21:32;44794:1;44774:18;;;44767:29;-1:-1:-1;;;44812:18:32;;;44805:36;44858:18;;22199:54:24;44553:329:32;22199:54:24;22287:5;:17;;;22271:33;;:12;:33;;22263:52;;;;-1:-1:-1;;;22263:52:24;;45089:2:32;22263:52:24;;;45071:21:32;45128:1;45108:18;;;45101:29;-1:-1:-1;;;45146:18:32;;;45139:36;45192:18;;22263:52:24;44887:329:32;22263:52:24;22325:17;22345:22;22361:5;22345:15;:22::i;:::-;22424:18;;;;22398:67;;-1:-1:-1;;;22398:67:24;;22325:42;;-1:-1:-1;22398:18:24;;:25;;:67;;22325:42;;22455:9;;22398:67;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;22377:120;;;;-1:-1:-1;;;22377:120:24;;;;;;;:::i;:::-;22508:44;22555:33;;;:22;:33;;;;;;;;22607:14;:25;;;;;;:35;;;;;:44;22599:63;;;;-1:-1:-1;;;22599:63:24;;;;;;;:::i;:::-;22680:26;;-1:-1:-1;;;;;22680:26:24;:40;22672:59;;;;-1:-1:-1;;;22672:59:24;;;;;;;:::i;:::-;22741:33;;;;:22;:33;;;;;;;;;:41;;;;-1:-1:-1;;;;;;22741:41:24;;;-1:-1:-1;;;;;22741:41:24;;;;;;;;;;-1:-1:-1;22741:41:24;;;;;;;;;;;;;;;;;;;:33;:41;;;;;;;;:::i;:::-;-1:-1:-1;22741:41:24;;;;;;;;;-1:-1:-1;;;;;;22741:41:24;-1:-1:-1;;;;;22741:41:24;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;22741:41:24;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;22741:41:24;-1:-1:-1;;;;;22741:41:24;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;22741:41:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;22741:41:24;;;;;;;-1:-1:-1;;;22741:41:24;;;;;;;;;;;-1:-1:-1;;;;22741:41:24;-1:-1:-1;;;22741:41:24;;;;;-1:-1:-1;;;;22741:41:24;;-1:-1:-1;;;22741:41:24;;;;;;;;;-1:-1:-1;;;;;;;;22741:41:24;-1:-1:-1;;;22741:41:24;;;;;;;-1:-1:-1;;;;22741:41:24;;-1:-1:-1;;;22741:41:24;;;;;;;;-1:-1:-1;;;;22741:41:24;-1:-1:-1;;;22741:41:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;22792:25:24;;;:14;:25;;;;;;;;;22837:15;22792:60;;;;22867:64;;22904:9;28657:25:32;;28698:18;;;28691:34;22892:10:24;;22792:25;;22867:64;;28630:18:32;22867:64:24;;;;;;;21940:998;;21755:1183;;:::o;1462:85:0:-;1534:6;;-1:-1:-1;;;;;1534:6:0;;1462:85::o;22944:1084:24:-;2526:21:2;:19;:21::i;:::-;23035:34:24::1;23072:33:::0;;;:22:::1;:33;::::0;;;;23124:16;;-1:-1:-1;;;;;23124:16:24::1;23116:49;;;;-1:-1:-1::0;;;23116:49:24::1;;;;;;;:::i;:::-;23214:16;::::0;::::1;::::0;-1:-1:-1;;;23214:16:24;::::1;;;23196:15;:34;:82:::0;::::1;;;-1:-1:-1::0;23261:17:24::1;::::0;::::1;::::0;-1:-1:-1;;;23261:17:24;::::1;;;23246:12;:32;23196:82;23175:135;;;::::0;-1:-1:-1;;;23175:135:24;;47446:2:32;23175:135:24::1;::::0;::::1;47428:21:32::0;47485:1;47465:18;;;47458:29;-1:-1:-1;;;47503:18:32;;;47496:36;47549:18;;23175:135:24::1;47244:329:32::0;23175:135:24::1;23321:20;23399:5;:12;;;23374:5;:22;;;23358:5;:13;;;23344:5;:11;;;:27;;;;:::i;:::-;:52;;;;:::i;:::-;:67;;;;:::i;:::-;23449:22;::::0;::::1;::::0;23501:16:::1;::::0;::::1;::::0;23449:22;23536:18;::::1;::::0;-1:-1:-1;;;;;23536:18:24;;::::1;23421:25;23519:36:::0;;;:16:::1;:36;::::0;;;;;23321:90;;-1:-1:-1;23449:22:24;::::1;::::0;23497:59:::1;::::0;23501:16;23497:3:::1;:59::i;:::-;23583:18;::::0;::::1;::::0;-1:-1:-1;;;;;23583:18:24::1;23566:36;::::0;;;:16:::1;:36;::::0;;;;:47;;23482:74;;-1:-1:-1;23482:74:24;;23566:36;;;:47:::1;::::0;23482:74;;23566:47:::1;:::i;:::-;::::0;;;-1:-1:-1;;23639:18:24::1;::::0;::::1;::::0;23629:49:::1;::::0;-1:-1:-1;;;;;;;;;;;23629:49:24;::::1;::::0;-1:-1:-1;;;;;23639:18:24;;::::1;::::0;23659:7;;23668:9;;23629:49:::1;:::i;:::-;;;;;;;;23777:22;::::0;::::1;::::0;23693:116:::1;::::0;;47752:25:32;;;-1:-1:-1;;;;;23777:22:24;;::::1;47808:2:32::0;47793:18;;47786:60;23725:9:24;;23693:116:::1;::::0;47725:18:32;23693:116:24::1;;;;;;;23827:33;::::0;;;:22:::1;:33;::::0;;;;23820:40;;-1:-1:-1;;;;;;23820:40:24;;::::1;::::0;;;;::::1;::::0;;;;::::1;::::0;;23827:33;23820:40:::1;;::::0;::::1;23827:33:::0;23820:40:::1;:::i;:::-;;::::0;::::1;::::0;;-1:-1:-1;;;;;;23820:40:24::1;::::0;;::::1;;::::0;::::1;;;:::i;:::-;;;::::0;::::1;::::0;;;::::1;::::0;::::1;::::0;;;::::1;::::0;::::1;::::0;;-1:-1:-1;;;;;;23820:40:24::1;::::0;;::::1;::::0;::::1;::::0;::::1;::::0;::::1;:::i;:::-;-1:-1:-1::0;23820:40:24::1;;::::0;::::1;::::0;;;::::1;::::0;::::1;::::0;;-1:-1:-1;;;;;;23820:40:24;;;::::1;::::0;::::1;::::0;;;::::1;::::0;;::::1;::::0;;;23870:25;;;:14:::1;:25;::::0;;;;;-1:-1:-1;23870:35:24;;::::1;:42:::0;;-1:-1:-1;;23870:42:24::1;::::0;;::::1;::::0;;23938:50;-1:-1:-1;;;;;23938:22:24;::::1;::::0;23968:15;;23820:40;23938:50;23820:40;23938:50;23968:15;23938:22;:50:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23923:65;;;24006:4;23998:23;;;::::0;-1:-1:-1;;;23998:23:24;;48059:2:32;23998:23:24::1;::::0;::::1;48041:21:32::0;48098:1;48078:18;;;48071:29;-1:-1:-1;;;48116:18:32;;;48109:36;48162:18;;23998:23:24::1;47857:329:32::0;23998:23:24::1;23025:1003;;;;;2568:20:2::0;1808:1;3074:7;:22;2894:209;2568:20;22944:1084:24;:::o;10299:165::-;4418:24;4431:10;4418:12;:24::i;:::-;4410:43;;;;-1:-1:-1;;;4410:43:24;;;;;;;:::i;:::-;10377:10:::1;10366:22;::::0;;;:10:::1;:22;::::0;;;;:35;;10392:9:::1;::::0;10366:22;:35:::1;::::0;10392:9;;10366:35:::1;:::i;:::-;::::0;;;-1:-1:-1;;10416:41:24::1;::::0;::::1;::::0;::::1;::::0;10435:10:::1;::::0;10447:9:::1;::::0;10416:41:::1;:::i;27784:134::-:0;27858:7;27884:27;27905:5;27884:20;:27::i;10733:106::-;4418:24;4431:10;4418:12;:24::i;:::-;4410:43;;;;-1:-1:-1;;;4410:43:24;;;;;;;:::i;:::-;10794:38:::1;10810:10;10822:9;10794:15;:38::i;24034:2834::-:0;2526:21:2;:19;:21::i;:::-;4530:33:24::1;4552:10;4530:21;:33::i;:::-;4522:52;;;;-1:-1:-1::0;;;4522:52:24::1;;;;;;;:::i;:::-;24297:25:::2;::::0;;;:14:::2;:25;::::0;;;;:35:::2;;::::0;::::2;;:44;24289:63;;;;-1:-1:-1::0;;;24289:63:24::2;;;;;;;:::i;:::-;24362:34;24399:33:::0;;;:22:::2;:33;::::0;;;;24450:16;;-1:-1:-1;;;;;24450:16:24::2;24442:49;;;;-1:-1:-1::0;;;24442:49:24::2;;;;;;;:::i;:::-;24541:26;::::0;-1:-1:-1;;;24541:26:24;;24501:37:::2;::::0;24541:8:::2;::::0;:19:::2;::::0;:26:::2;::::0;24561:5;;24541:26:::2;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::2;;;;;;;;;;;;;;;;;::::0;;::::2;-1:-1:-1::0;;24541:26:24::2;::::0;::::2;;::::0;::::2;::::0;;;::::2;::::0;::::2;:::i;:::-;24501:66;;24577:26;24606:8;:28;24635:7;1641:1;24635:26;;;;;;;;:::i;:::-;;;;;;;:35;;;24606:65;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::2;;;;;;;;;;;;;;;;;::::0;;::::2;-1:-1:-1::0;;24606:65:24::2;::::0;::::2;;::::0;::::2;::::0;;;::::2;::::0;::::2;:::i;:::-;24577:94;;24689:13;:20;24713:2;24689:26;:54;;;;;24719:13;24733:1;24719:16;;;;;;;;:::i;:::-;;::::0;;;;-1:-1:-1;;;;;;24719:16:24;-1:-1:-1;;;24719:24:24::2;24689:54;24681:73;;;::::0;-1:-1:-1;;;24681:73:24;;50768:2:32;24681:73:24::2;::::0;::::2;50750:21:32::0;50807:1;50787:18;;;50780:29;-1:-1:-1;;;50825:18:32;;;50818:36;50871:18;;24681:73:24::2;50566:329:32::0;24681:73:24::2;24832:7;24827:118;24873:1;24850:13;:20;:24;;;;:::i;:::-;24846:1;:28;;;24827:118;;;24914:13:::0;24928:5:::2;:1:::0;24932::::2;24928:5;:::i;:::-;24914:20;;;;;;;;;;:::i;:::-;;;;;;;;;24895:13;24909:1;24895:16;;;;;;;;;;:::i;:::-;;;;:39;-1:-1:-1::0;;;;;24895:39:24::2;;;;;;;;-1:-1:-1::0;24876:3:24;::::2;::::0;::::2;:::i;:::-;;;;24827:118;;;;24954:19;24987:13;24976:36;;;;;;;;;;;;:::i;:::-;24954:58;;25043:11;25030:9;:24;25022:43;;;::::0;-1:-1:-1;;;25022:43:24;;51624:2:32;25022:43:24::2;::::0;::::2;51606:21:32::0;51663:1;51643:18;;;51636:29;-1:-1:-1;;;51681:18:32;;;51674:36;51727:18;;25022:43:24::2;51422:329:32::0;25022:43:24::2;25097:18;::::0;::::2;::::0;-1:-1:-1;;;;;25097:18:24::2;25083:10;:32;25075:51;;;::::0;-1:-1:-1;;;25075:51:24;;51958:2:32;25075:51:24::2;::::0;::::2;51940:21:32::0;51997:1;51977:18;;;51970:29;-1:-1:-1;;;52015:18:32;;;52008:36;52061:18;;25075:51:24::2;51756:329:32::0;25075:51:24::2;25374:27;::::0;::::2;::::0;25157:6:::2;::::0;25212:25:::2;::::0;-1:-1:-1;;;25212:25:24;;-1:-1:-1;;;25374:27:24;;::::2;;;::::0;-1:-1:-1;;;;;25157:6:24;;::::2;::::0;:37:::2;::::0;25212:8:::2;::::0;:18:::2;::::0;:25:::2;::::0;25231:5;;25212:25:::2;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;25255:18;25291:17;25326:18;25157:201;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:246;;25136:299;;;::::0;-1:-1:-1;;;25136:299:24;;53333:2:32;25136:299:24::2;::::0;::::2;53315:21:32::0;53372:1;53352:18;;;53345:29;-1:-1:-1;;;53390:18:32;;;53383:36;53436:18;;25136:299:24::2;53131:329:32::0;25136:299:24::2;25467:11;::::0;::::2;::::0;1693:6:::2;25492:35:::0;::::2;:81:::0;::::2;;;;1693:6;25532:5;:11;;;:35;;;;:::i;:::-;25531:42:::0;::::2;25492:81;25488:180;;;1693:6;25621:5;:11;;;:35;;;;:::i;:::-;25606:5;:11;;;:51;;;;:::i;:::-;25589:68;;25488:180;25677:15;1693:6;25695:7;1593:1;25695:30;;;;;;;;:::i;:::-;;;;;;;:36;;;-1:-1:-1::0;;;;;25695:60:24::2;;;;;:::i;:::-;25677:78;;25791:10;25773:14;:28;;25765:47;;;::::0;-1:-1:-1;;;25765:47:24;;53667:2:32;25765:47:24::2;::::0;::::2;53649:21:32::0;53706:1;53686:18;;;53679:29;-1:-1:-1;;;53724:18:32;;;53717:36;53770:18;;25765:47:24::2;53465:329:32::0;25765:47:24::2;25822:29;25854:8;:30;25898:7;1593:1;25898:30;;;;;;;;:::i;:::-;;::::0;;::::2;::::0;;;;;;;:39:::2;::::0;25951:7:::2;::::0;25854:114:::2;::::0;-1:-1:-1;;;;;;25854:114:24::2;::::0;;;;;;::::2;::::0;25898:39;25951:7:::2;;::::0;25854:114:::2;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::2;;;;;;;;;;;;;;;;;::::0;;::::2;-1:-1:-1::0;;25854:114:24::2;::::0;::::2;;::::0;::::2;::::0;;;::::2;::::0;::::2;:::i;:::-;25822:146;;26032:16;26022:27;;;;;;25996:5;:21;;25986:32;;;;;;:::i;:::-;;;;;;;;:63;25978:82;;;::::0;-1:-1:-1;;;25978:82:24;;55158:2:32;25978:82:24::2;::::0;::::2;55140:21:32::0;55197:1;55177:18;;;55170:29;-1:-1:-1;;;55215:18:32;;;55208:36;55261:18;;25978:82:24::2;54956:329:32::0;25978:82:24::2;26088:108;::::0;;::::2;::::0;::::2;::::0;;;;-1:-1:-1;;;;;26088:108:24;;::::2;::::0;;;;::::2;::::0;::::2;;::::0;::::2;::::0;::::2;::::0;::::2;::::0;;::::2;::::0;26124:5;;26088:108;;;;::::2;::::0;::::2;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;;26088:108:24;;;-1:-1:-1;;26088:108:24::2;::::0;::::2;::::0;-1:-1:-1;;;;;26088:108:24::2;;::::0;::::2;::::0;::::2;::::0;::::2;::::0;;;;;;;::::2;::::0;::::2;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;;26088:108:24;;;-1:-1:-1;;26088:108:24::2;::::0;::::2;::::0;::::2;::::0;::::2;::::0;::::2;::::0;::::2;::::0;;;;;::::2;::::0;;::::2;::::0;;::::2;::::0;;;;::::2;::::0;::::2;::::0;;;;;;;::::2;::::0;::::2;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;;26088:108:24;;;-1:-1:-1;;26088:108:24::2;::::0;::::2;::::0;::::2;::::0;::::2;::::0;::::2;::::0;::::2;::::0;::::2;::::0;;::::2;::::0;;;;-1:-1:-1;;;26088:108:24;::::2;::::0;::::2;::::0;;;;::::2;-1:-1:-1::0;;;26088:108:24;::::2;::::0;::::2;::::0;;;;-1:-1:-1;;;26088:108:24;::::2;;::::0;;;;-1:-1:-1;;;26088:108:24;::::2;::::0;::::2;::::0;;;;-1:-1:-1;;;26088:108:24;::::2;::::0;::::2;::::0;;;;-1:-1:-1;;;26088:108:24;;::::2;;;::::0;;;::::2;::::0;::::2;::::0;;;;;::::2;::::0;;::::2;::::0;;;;;;26143:11;26168:18;26088:22:::2;:108::i;:::-;26071:412;;;26257:16;::::0;::::2;::::0;26308:18:::2;::::0;::::2;::::0;-1:-1:-1;;;;;26308:18:24::2;26221:12;26291:36:::0;;;:16:::2;:36;::::0;;;;;26221:12;;26236:105:::2;::::0;:3:::2;:105::i;:::-;26372:18;::::0;::::2;::::0;-1:-1:-1;;;;;26372:18:24::2;26355:36;::::0;;;:16:::2;:36;::::0;;;;:47;;26221:120;;-1:-1:-1;26221:120:24;;26355:36;;;:47:::2;::::0;26221:120;;26355:47:::2;:::i;:::-;::::0;;;-1:-1:-1;;26431:18:24::2;::::0;::::2;::::0;26421:51:::2;::::0;-1:-1:-1;;;;;;;;;;;26421:51:24;::::2;::::0;-1:-1:-1;;;;;26431:18:24;;::::2;::::0;26451:7;;26460:11;;26421:51:::2;:::i;:::-;;;;;;;;26207:276;26071:412;26508:18;::::0;::::2;::::0;26586:12:::2;::::0;::::2;::::0;26570:13:::2;::::0;::::2;::::0;26556:11:::2;::::0;::::2;::::0;26494:9:::2;::::0;-1:-1:-1;;;;;26508:18:24::2;::::0;26586:12;26556:27:::2;::::0;::::2;:::i;:::-;:42;;;;:::i;:::-;26508:108;::::0;::::2;::::0;;;;;::::2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;26493:123;;;26634:4;26626:23;;;::::0;-1:-1:-1;;;26626:23:24;;55492:2:32;26626:23:24::2;::::0;::::2;55474:21:32::0;55531:1;55511:18;;;55504:29;-1:-1:-1;;;55549:18:32;;;55542:36;55595:18;;26626:23:24::2;55290:329:32::0;26626:23:24::2;26660:52;26678:5;:22;;;26702:9;26660:17;:52::i;:::-;26730:35;::::0;;;:22:::2;:35;::::0;;;;26723:42;;-1:-1:-1;;;;;;26723:42:24;;::::2;::::0;;;;::::2;::::0;;;;::::2;::::0;;26730:35;26723:42:::2;;::::0;::::2;26730:35:::0;26723:42:::2;:::i;:::-;;::::0;::::2;::::0;;-1:-1:-1;;;;;;26723:42:24::2;::::0;;::::2;;::::0;::::2;;;:::i;:::-;;;::::0;::::2;::::0;;;::::2;::::0;::::2;::::0;;;::::2;::::0;::::2;::::0;;-1:-1:-1;;;;;;26723:42:24::2;::::0;;::::2;::::0;::::2;::::0;::::2;::::0;::::2;:::i;:::-;-1:-1:-1::0;26723:42:24::2;;::::0;::::2;::::0;;;::::2;::::0;::::2;::::0;;-1:-1:-1;;;;;;26723:42:24;;;::::2;::::0;::::2;::::0;;;::::2;::::0;;::::2;::::0;;;26775:27;;;:14:::2;:27;::::0;;;;;26723:42;26775:37;;::::2;:44:::0;;-1:-1:-1;;26775:44:24::2;::::0;;::::2;::::0;;26834:27;26790:11;;26834:27:::2;::::0;::::2;24279:2589;;;;;;;;2568:20:2::0;1808:1;3074:7;:22;2894:209;2568:20;24034:2834:24;;;;;:::o;9045:662::-;9092:26;9130:10;;9206:1;9192:146;9214:10;;9209:1;:15;9192:146;;9264:21;;;;:18;:21;;;;;9249:37;;:14;:37::i;:::-;9245:83;;;9306:7;;;;:::i;:::-;;;;9245:83;9226:3;;;;:::i;:::-;;;;9192:146;;;;9347:44;9418:5;-1:-1:-1;;;;;9394:30:24;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;-1:-1:-1;9442:1:24;;-1:-1:-1;9347:77:24;-1:-1:-1;9467:1:24;9453:214;9475:10;;9470:1;:15;9453:214;;9511:21;;;;:18;:21;;;;;;-1:-1:-1;9550:18:24;9511:21;9550:14;:18::i;:::-;9546:111;;;9588:29;;;;;;;;;;;;;;;;-1:-1:-1;;;;;9588:29:24;;;;;;;;;;;;9615:2;;9588:29;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;9588:29:24;;;-1:-1:-1;;9588:29:24;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:17;9606:5;9588:24;;;;;;;;:::i;:::-;;;;;;:29;;;;9635:7;;;;;:::i;:::-;;;;9546:111;9487:3;;;;:::i;:::-;;;;9453:214;;;-1:-1:-1;9683:17:24;9045:662;-1:-1:-1;;;9045:662:24:o;2335:198:0:-;1355:13;:11;:13::i;:::-;-1:-1:-1;;;;;2423:22:0;::::1;2415:73;;;::::0;-1:-1:-1;;;2415:73:0;;55826:2:32;2415:73:0::1;::::0;::::1;55808:21:32::0;55865:2;55845:18;;;55838:30;55904:34;55884:18;;;55877:62;-1:-1:-1;;;55955:18:32;;;55948:36;56001:19;;2415:73:0::1;55624:402:32::0;2415:73:0::1;2498:28;2517:8;2498:18;:28::i;28980:247:24:-:0;29131:16;;29087:7;;-1:-1:-1;;;;;29114:33:24;29122:4;29114:33;29106:52;;;;-1:-1:-1;;;29106:52:24;;56233:2:32;29106:52:24;;;56215:21:32;56272:1;56252:18;;;56245:29;-1:-1:-1;;;56290:18:32;;;56283:36;56336:18;;29106:52:24;56031:329:32;29106:52:24;29186:33;;-1:-1:-1;;;29186:33:24;;:8;;:26;;:33;;29213:5;;29186:33;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;29186:33:24;;;;;;;;;;;;:::i;:::-;29176:44;;;;;;29169:51;;28980:247;;;:::o;2601:287:2:-;1851:1;2733:7;;:19;2725:63;;;;-1:-1:-1;;;2725:63:2;;59210:2:32;2725:63:2;;;59192:21:32;59249:2;59229:18;;;59222:30;59288:33;59268:18;;;59261:61;59339:18;;2725:63:2;59008:355:32;2725:63:2;1851:1;2863:7;:18;2601:287::o;28091:883:24:-;28191:7;28235:5;:16;;;-1:-1:-1;;;;;28218:33:24;28226:4;-1:-1:-1;;;;;28218:33:24;;28210:52;;;;-1:-1:-1;;;28210:52:24;;59570:2:32;28210:52:24;;;59552:21:32;59609:1;59589:18;;;59582:29;-1:-1:-1;;;59627:18:32;;;59620:36;59673:18;;28210:52:24;59368:329:32;28210:52:24;28312:21;;;;28301:6;;-1:-1:-1;;;;;28293:40:24;;;28301:6;;28293:40;28272:93;;;;-1:-1:-1;;;28272:93:24;;59904:2:32;28272:93:24;;;59886:21:32;59943:1;59923:18;;;59916:29;-1:-1:-1;;;59961:18:32;;;59954:36;60007:18;;28272:93:24;59702:329:32;28272:93:24;28396:5;:22;;;:29;28429:2;28396:35;:86;;;;28447:5;:22;;;:29;28480:2;28447:35;28396:86;28375:139;;;;-1:-1:-1;;;28375:139:24;;60238:2:32;28375:139:24;;;60220:21:32;60277:1;60257:18;;;60250:29;-1:-1:-1;;;60295:18:32;;;60288:36;60341:18;;28375:139:24;60036:329:32;28375:139:24;28545:5;:33;;;:40;28589:2;28545:46;28524:99;;;;-1:-1:-1;;;28524:99:24;;60572:2:32;28524:99:24;;;60554:21:32;60611:1;60591:18;;;60584:29;-1:-1:-1;;;60629:18:32;;;60622:36;60675:18;;28524:99:24;60370:329:32;28524:99:24;28725:8;;28709:5;:12;;;28684:5;:22;;;28668:5;:13;;;28654:5;:11;;;:27;;;;:::i;:::-;:52;;;;:::i;:::-;:67;;;;:::i;:::-;:79;;28633:132;;;;-1:-1:-1;;;28633:132:24;;60906:2:32;28633:132:24;;;60888:21:32;60945:1;60925:18;;;60918:29;-1:-1:-1;;;60963:18:32;;;60956:36;61009:18;;28633:132:24;60704:329:32;28633:132:24;28858:5;:20;;;28851:28;;28823:5;:24;;;28816:32;;:63;;;;:::i;:::-;-1:-1:-1;;;;;28796:83:24;:16;:83;;28775:136;;;;-1:-1:-1;;;28775:136:24;;61425:2:32;28775:136:24;;;61407:21:32;61464:1;61444:18;;;61437:29;-1:-1:-1;;;61482:18:32;;;61475:36;61528:18;;28775:136:24;61223:329:32;28775:136:24;28939:27;;-1:-1:-1;;;28939:27:24;;:8;;:20;;:27;;28960:5;;28939:27;;;:::i;30646:634::-;30908:6;;31071:22;;;;31134:33;;;;30871:6;31181:28;;;:12;:28;;;;;:38;30871:6;;-1:-1:-1;;;;;30908:6:24;;:39;;30961:17;;30992:6;;31012:17;;31043:14;;31115:4;;31134:33;31181:38;;:42;;;;:82;;-1:-1:-1;31227:28:24;;;;:12;:28;;;;;:36;-1:-1:-1;;;31227:36:24;;;;31181:82;30908:365;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;30889:384;30646:634;-1:-1:-1;;;;;;30646:634:24:o;31702:1644::-;31876:4;31966:1;31957:6;:10;:99;;;;;32044:5;:12;;;32019:5;:22;;;32003:5;:13;;;31989:5;:11;;;:27;;;;:::i;:::-;:52;;;;:::i;:::-;:67;;;;:::i;:::-;31979:6;31971:85;31957:99;31953:142;;;-1:-1:-1;32079:5:24;32072:12;;31953:142;32144:6;;:63;;-1:-1:-1;;;32144:63:24;;;;;3082:25:32;;;32105:36:24;;-1:-1:-1;;;;;32144:6:24;;:55;;3055:18:32;;32144:63:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;32144:63:24;;;;;;;;;;;;:::i;:::-;32105:102;;32258:1;32225:23;:30;:34;32217:67;;;;-1:-1:-1;;;32217:67:24;;63109:2:32;32217:67:24;;;63091:21:32;63148:2;63128:18;;;63121:30;-1:-1:-1;;;63167:18:32;;;63160:50;63227:18;;32217:67:24;62907:344:32;32217:67:24;32332:76;;-1:-1:-1;;;32332:76:24;;32295:34;;32332:8;;:29;;:76;;32375:23;;32332:76;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;32295:113;;32548:14;32592:5;:20;;;32565:5;:24;;;:47;;;;:::i;:::-;32548:64;;;;32655:9;32626:26;:38;32622:81;;;32687:5;32680:12;;;;;;;32622:81;32758:13;32775:1;32758:18;32754:60;;32799:4;32792:11;;;;;;;32754:60;32860:6;;32938:26;;;;32824:33;;-1:-1:-1;;;;;32860:6:24;;:55;;:6;;32929:35;;;;:6;:35;:::i;:::-;:39;;;;:::i;:::-;32860:118;;;;;;;;;;;;;3082:25:32;;3070:2;3055:18;;2936:177;32860:118:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;32860:118:24;;;;;;;;;;;;:::i;:::-;32824:154;;33026:1;32996:20;:27;:31;32988:50;;;;-1:-1:-1;;;32988:50:24;;63647:2:32;32988:50:24;;;63629:21:32;63686:1;63666:18;;;63659:29;-1:-1:-1;;;63704:18:32;;;63697:36;63750:18;;32988:50:24;63445:329:32;32988:50:24;33083:73;;-1:-1:-1;;;33083:73:24;;33049:31;;33083:8;;:29;;:73;;33126:20;;33083:73;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;33049:107;;33266:5;:14;;;33240:40;;:23;:40;;;;:::i;:::-;33224:13;:56;33220:98;;;33303:4;33296:11;;;;;;;;;33220:98;-1:-1:-1;33334:5:24;;31702:1644;-1:-1:-1;;;;;;;;;31702:1644:24:o;29233:94::-;29284:4;29311:1;29307;:5;:13;;29319:1;29307:13;;;29315:1;29307:13;29300:20;29233:94;-1:-1:-1;;;29233:94:24:o;29400:145::-;-1:-1:-1;;;;;29470:14:24;;;;;;:8;:14;;;;;:24;;29488:6;;29470:14;:24;;29488:6;;29470:24;:::i;:::-;;;;-1:-1:-1;;29509:29:24;;;;;;29525:4;;29531:6;;29509:29;:::i;34218:291::-;34299:10;;34295:208;;34354:22;;34346:55;;34326:15;;-1:-1:-1;;;;;34354:22:24;;34390:6;;34326:15;34346:55;34326:15;34346:55;34390:6;34354:22;34346:55;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;34325:76;;;34423:10;34415:29;;;;-1:-1:-1;;;34415:29:24;;63981:2:32;34415:29:24;;;63963:21:32;64020:1;64000:18;;;63993:29;-1:-1:-1;;;64038:18:32;;;64031:36;64084:18;;34415:29:24;63779:329:32;34415:29:24;34474:9;34463:29;34485:6;34463:29;;;;3082:25:32;;3070:2;3055:18;;2936:177;34463:29:24;;;;;;;;34311:192;34295:208;34218:291;;:::o;30062:157::-;-1:-1:-1;;;;;30152:22:24;;30129:4;30152:22;;;:16;:22;;;;;;:26;;;;:60;;-1:-1:-1;;;;;;;30182:25:24;;;;;:19;:25;;;;;;:30;;30062:157::o;29914:142::-;-1:-1:-1;;;;;29995:16:24;;29972:4;29995:16;;;:10;:16;;;;;;:20;;;;:54;;-1:-1:-1;;;;;;;30019:25:24;;;;;:19;:25;;;;;;:30;;29914:142::o;1620:130:0:-;965:10:4;1683:7:0;:5;:7::i;:::-;-1:-1:-1;;;;;1683:23:0;;1675:68;;;;-1:-1:-1;;;1675:68:0;;64315:2:32;1675:68:0;;;64297:21:32;;;64334:18;;;64327:30;64393:34;64373:18;;;64366:62;64445:18;;1675:68:0;64113:356:32;2687:187:0;2779:6;;;-1:-1:-1;;;;;2795:17:0;;;-1:-1:-1;;;;;;2795:17:0;;;;;;;2827:40;;2779:6;;;2795:17;2779:6;;2827:40;;2760:16;;2827:40;2750:124;2687:187;:::o;29551:145:24:-;-1:-1:-1;;;;;29621:14:24;;;;;;:8;:14;;;;;:24;;29639:6;;29621:14;:24;;29639:6;;29621:24;:::i;:::-;;;;-1:-1:-1;;29660:29:24;;;;;;29676:4;;29682:6;;29660:29;:::i;33352:860::-;33564:6;;:51;;-1:-1:-1;;;33564:51:24;;;;;3082:25:32;;;33509:4:24;;;;-1:-1:-1;;;;;33564:6:24;;;;:40;;3055:18:32;;33564:51:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;33564:51:24;;;;;;;;;;;;:::i;:::-;33525:90;;33666:1;33633:23;:30;:34;33625:53;;;;-1:-1:-1;;;33625:53:24;;64676:2:32;33625:53:24;;;64658:21:32;64715:1;64695:18;;;64688:29;-1:-1:-1;;;64733:18:32;;;64726:36;64779:18;;33625:53:24;64474:329:32;33625:53:24;33726:54;;-1:-1:-1;;;33726:54:24;;33689:34;;33726:8;;:29;;:54;;33756:23;;33726:54;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;33955:12;;33934:18;;;;33881:25;;;;:14;:25;;;;;:42;33689:91;;-1:-1:-1;33955:12:24;;33881:71;;;;;;:::i;:::-;:86;;;;:::i;:::-;33852:26;:115;33848:157;;;33990:4;33983:11;;;;;;33848:157;34093:5;:16;;;34075:34;;:15;:34;:70;;;;34128:5;:17;;;34113:32;;:12;:32;34075:70;34071:112;;;34168:4;34161:11;;;;;;34071:112;-1:-1:-1;34200:5:24;;33352:860;-1:-1:-1;;;;;33352:860:24:o;10033:182::-;10144:11;;;;10108:4;;10131:25;;-1:-1:-1;;;;;10144:11:24;10131:12;:25::i;:::-;:63;;;-1:-1:-1;10182:11:24;;;;10160:34;;-1:-1:-1;;;;;10182:11:24;10160:21;:34::i;:::-;10130:78;;;;-1:-1:-1;;10199:9:24;;;;;;10033:182::o;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;:::i;:::-;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;348:127:32:-;409:10;404:3;400:20;397:1;390:31;440:4;437:1;430:15;464:4;461:1;454:15;480:255;552:2;546:9;594:6;582:19;;-1:-1:-1;;;;;616:34:32;;652:22;;;613:62;610:88;;;678:18;;:::i;:::-;714:2;707:22;480:255;:::o;740:::-;812:2;806:9;854:6;842:19;;-1:-1:-1;;;;;876:34:32;;912:22;;;873:62;870:88;;;938:18;;:::i;1000:253::-;1072:2;1066:9;1114:4;1102:17;;-1:-1:-1;;;;;1134:34:32;;1170:22;;;1131:62;1128:88;;;1196:18;;:::i;1258:275::-;1329:2;1323:9;1394:2;1375:13;;-1:-1:-1;;1371:27:32;1359:40;;-1:-1:-1;;;;;1414:34:32;;1450:22;;;1411:62;1408:88;;;1476:18;;:::i;:::-;1512:2;1505:22;1258:275;;-1:-1:-1;1258:275:32:o;1538:187::-;1587:4;-1:-1:-1;;;;;1609:30:32;;1606:56;;;1642:18;;:::i;:::-;-1:-1:-1;1708:2:32;1687:15;-1:-1:-1;;1683:29:32;1714:4;1679:40;;1538:187::o;1730:464::-;1773:5;1826:3;1819:4;1811:6;1807:17;1803:27;1793:55;;1844:1;1841;1834:12;1793:55;1880:6;1867:20;1911:49;1927:32;1956:2;1927:32;:::i;:::-;1911:49;:::i;:::-;1985:2;1976:7;1969:19;2031:3;2024:4;2019:2;2011:6;2007:15;2003:26;2000:35;1997:55;;;2048:1;2045;2038:12;1997:55;2113:2;2106:4;2098:6;2094:17;2087:4;2078:7;2074:18;2061:55;2161:1;2136:16;;;2154:4;2132:27;2125:38;;;;2140:7;1730:464;-1:-1:-1;;;1730:464:32:o;2199:543::-;2287:6;2295;2348:2;2336:9;2327:7;2323:23;2319:32;2316:52;;;2364:1;2361;2354:12;2316:52;2391:23;;-1:-1:-1;;;;;2463:14:32;;;2460:34;;;2490:1;2487;2480:12;2460:34;2513:50;2555:7;2546:6;2535:9;2531:22;2513:50;:::i;:::-;2503:60;;2616:2;2605:9;2601:18;2588:32;2572:48;;2645:2;2635:8;2632:16;2629:36;;;2661:1;2658;2651:12;2629:36;;2684:52;2728:7;2717:8;2706:9;2702:24;2684:52;:::i;:::-;2674:62;;;2199:543;;;;;:::o;3118:131::-;-1:-1:-1;;;;;3193:31:32;;3183:42;;3173:70;;3239:1;3236;3229:12;3254:134;3322:20;;3351:31;3322:20;3351:31;:::i;3393:160::-;3459:20;;3519:1;3508:20;;;3498:31;;3488:59;;3543:1;3540;3533:12;3558:163;3625:20;;3685:10;3674:22;;3664:33;;3654:61;;3711:1;3708;3701:12;3726:159;3793:20;;3853:6;3842:18;;3832:29;;3822:57;;3875:1;3872;3865:12;3890:2094;3948:5;3996:6;3984:9;3979:3;3975:19;3971:32;3968:52;;;4016:1;4013;4006:12;3968:52;4038:22;;:::i;:::-;4029:31;;4083:29;4102:9;4083:29;:::i;:::-;4076:5;4069:44;4145:38;4179:2;4168:9;4164:18;4145:38;:::i;:::-;4140:2;4129:14;;4122:62;4235:2;4220:18;;4207:32;-1:-1:-1;;;;;4288:14:32;;;4285:34;;;4315:1;4312;4305:12;4285:34;4351:46;4393:3;4384:6;4373:9;4369:22;4351:46;:::i;:::-;4346:2;4339:5;4335:14;4328:70;4430:38;4464:2;4453:9;4449:18;4430:38;:::i;:::-;4425:2;4418:5;4414:14;4407:62;4522:3;4511:9;4507:19;4494:33;4478:49;;4552:2;4542:8;4539:16;4536:36;;;4568:1;4565;4558:12;4536:36;4605:48;4649:3;4638:8;4627:9;4623:24;4605:48;:::i;:::-;4599:3;4592:5;4588:15;4581:73;4715:3;4704:9;4700:19;4687:33;4681:3;4674:5;4670:15;4663:58;4782:3;4771:9;4767:19;4754:33;4748:3;4741:5;4737:15;4730:58;4821:37;4853:3;4842:9;4838:19;4821:37;:::i;:::-;4815:3;4808:5;4804:15;4797:62;4878:3;4868:13;;4934:2;4923:9;4919:18;4906:32;4963:2;4953:8;4950:16;4947:36;;;4979:1;4976;4969:12;4947:36;5015:48;5059:3;5048:8;5037:9;5033:24;5015:48;:::i;:::-;5010:2;5003:5;4999:14;4992:72;;;;5083:3;5146:2;5135:9;5131:18;5118:32;5113:2;5106:5;5102:14;5095:56;;5170:3;5205:37;5238:2;5227:9;5223:18;5205:37;:::i;:::-;5189:14;;;5182:61;5262:3;5297:37;5315:18;;;5297:37;:::i;:::-;5281:14;;;5274:61;5354:3;5389:37;5407:18;;;5389:37;:::i;:::-;5373:14;;;5366:61;5446:3;5481:37;5499:18;;;5481:37;:::i;:::-;5465:14;;;5458:61;5538:3;5573:37;5591:18;;;5573:37;:::i;:::-;5557:14;;;5550:61;5630:3;5665:37;5683:18;;;5665:37;:::i;:::-;5649:14;;;5642:61;5723:3;5759:38;5777:19;;;5759:38;:::i;:::-;5742:15;;;5735:63;5818:3;5867:19;;;5854:33;5837:15;;;5830:58;5908:3;5957:19;;;5944:33;5927:15;;;5920:58;;;;5746:5;3890:2094;-1:-1:-1;3890:2094:32:o;5989:354::-;6078:6;6131:2;6119:9;6110:7;6106:23;6102:32;6099:52;;;6147:1;6144;6137:12;6099:52;6174:23;;-1:-1:-1;;;;;6209:30:32;;6206:50;;;6252:1;6249;6242:12;6206:50;6275:62;6329:7;6320:6;6309:9;6305:22;6275:62;:::i;6530:177::-;6598:20;;-1:-1:-1;;;;;;6647:35:32;;6637:46;;6627:74;;6697:1;6694;6687:12;6712:118;6798:5;6791:13;6784:21;6777:5;6774:32;6764:60;;6820:1;6817;6810:12;6835:128;6900:20;;6929:28;6900:20;6929:28;:::i;6968:2188::-;7025:5;7073:6;7061:9;7056:3;7052:19;7048:32;7045:52;;;7093:1;7090;7083:12;7045:52;7115:22;;:::i;:::-;7106:31;;7160:29;7179:9;7160:29;:::i;:::-;7153:5;7146:44;7222:38;7256:2;7245:9;7241:18;7222:38;:::i;:::-;7217:2;7210:5;7206:14;7199:62;7293:38;7327:2;7316:9;7312:18;7293:38;:::i;:::-;7288:2;7277:14;;7270:62;7383:2;7368:18;;7355:32;-1:-1:-1;;;;;7436:14:32;;;7433:34;;;7463:1;7460;7453:12;7433:34;7499:46;7541:3;7532:6;7521:9;7517:22;7499:46;:::i;:::-;7494:2;7487:5;7483:14;7476:70;7579:39;7613:3;7602:9;7598:19;7579:39;:::i;:::-;7573:3;7566:5;7562:15;7555:64;7672:3;7661:9;7657:19;7644:33;7628:49;;7702:2;7692:8;7689:16;7686:36;;;7718:1;7715;7708:12;7686:36;7755:48;7799:3;7788:8;7777:9;7773:24;7755:48;:::i;:::-;7749:3;7742:5;7738:15;7731:73;7865:3;7854:9;7850:19;7837:33;7831:3;7824:5;7820:15;7813:58;7932:3;7921:9;7917:19;7904:33;7898:3;7891:5;7887:15;7880:58;7957:3;7947:13;;7992:38;8026:2;8015:9;8011:18;7992:38;:::i;:::-;7987:2;7980:5;7976:14;7969:62;8050:3;8040:13;;8106:2;8095:9;8091:18;8078:32;8135:2;8125:8;8122:16;8119:36;;;8151:1;8148;8141:12;8119:36;8187:48;8231:3;8220:8;8209:9;8205:24;8187:48;:::i;:::-;8182:2;8175:5;8171:14;8164:72;;;;8255:3;8290:37;8323:2;8312:9;8308:18;8290:37;:::i;:::-;8274:14;;;8267:61;8347:3;8382:36;8399:18;;;8382:36;:::i;:::-;8366:14;;;8359:60;8438:3;8486:18;;;8473:32;8457:14;;;8450:56;8525:3;8560:37;8578:18;;;8560:37;:::i;:::-;8544:14;;;8537:61;8617:3;8652:37;8670:18;;;8652:37;:::i;:::-;8636:14;;;8629:61;8709:3;8744:37;8762:18;;;8744:37;:::i;:::-;8728:14;;;8721:61;8802:3;8838:38;8856:19;;;8838:38;:::i;:::-;8821:15;;;8814:63;8897:3;8933:36;8949:19;;;8933:36;:::i;:::-;8916:15;;;8909:61;8990:3;9039:19;;;9026:33;9009:15;;;9002:58;9080:3;9129:19;;;9116:33;9099:15;;;9092:58;;;;8920:5;6968:2188;-1:-1:-1;6968:2188:32:o;9161:1040::-;9312:6;9320;9328;9336;9344;9397:3;9385:9;9376:7;9372:23;9368:33;9365:53;;;9414:1;9411;9404:12;9365:53;9441:23;;-1:-1:-1;;;;;9513:14:32;;;9510:34;;;9540:1;9537;9530:12;9510:34;9563:61;9616:7;9607:6;9596:9;9592:22;9563:61;:::i;:::-;9553:71;;9677:2;9666:9;9662:18;9649:32;9633:48;;9706:2;9696:8;9693:16;9690:36;;;9722:1;9719;9712:12;9690:36;9745:52;9789:7;9778:8;9767:9;9763:24;9745:52;:::i;:::-;9735:62;;9850:2;9839:9;9835:18;9822:32;9806:48;;9879:2;9869:8;9866:16;9863:36;;;9895:1;9892;9885:12;9863:36;9918:52;9962:7;9951:8;9940:9;9936:24;9918:52;:::i;:::-;9908:62;;10023:2;10012:9;10008:18;9995:32;9979:48;;10052:2;10042:8;10039:16;10036:36;;;10068:1;10065;10058:12;10036:36;;10091:52;10135:7;10124:8;10113:9;10109:24;10091:52;:::i;:::-;9161:1040;;;;-1:-1:-1;9161:1040:32;;10190:3;10175:19;10162:33;;9161:1040;-1:-1:-1;;;9161:1040:32:o;10386:180::-;10445:6;10498:2;10486:9;10477:7;10473:23;10469:32;10466:52;;;10514:1;10511;10504:12;10466:52;-1:-1:-1;10537:23:32;;10386:180;-1:-1:-1;10386:180:32:o;10571:873::-;10684:6;10692;10700;10708;10761:3;10749:9;10740:7;10736:23;10732:33;10729:53;;;10778:1;10775;10768:12;10729:53;10805:23;;-1:-1:-1;;;;;10877:14:32;;;10874:34;;;10904:1;10901;10894:12;10874:34;10927:50;10969:7;10960:6;10949:9;10945:22;10927:50;:::i;:::-;10917:60;;11030:2;11019:9;11015:18;11002:32;10986:48;;11059:2;11049:8;11046:16;11043:36;;;11075:1;11072;11065:12;11043:36;11098:52;11142:7;11131:8;11120:9;11116:24;11098:52;:::i;:::-;11088:62;;11200:2;11189:9;11185:18;11172:32;11159:45;;11213:28;11235:5;11213:28;:::i;:::-;11260:5;;-1:-1:-1;11318:2:32;11303:18;;11290:32;;11334:16;;;11331:36;;;11363:1;11360;11353:12;11331:36;;11386:52;11430:7;11419:8;11408:9;11404:24;11386:52;:::i;:::-;11376:62;;;10571:873;;;;;;;:::o;11642:247::-;11701:6;11754:2;11742:9;11733:7;11729:23;11725:32;11722:52;;;11770:1;11767;11760:12;11722:52;11809:9;11796:23;11828:31;11853:5;11828:31;:::i;12367:250::-;12452:1;12462:113;12476:6;12473:1;12470:13;12462:113;;;12552:11;;;12546:18;12533:11;;;12526:39;12498:2;12491:10;12462:113;;;-1:-1:-1;;12609:1:32;12591:16;;12584:27;12367:250::o;12622:271::-;12664:3;12702:5;12696:12;12729:6;12724:3;12717:19;12745:76;12814:6;12807:4;12802:3;12798:14;12791:4;12784:5;12780:16;12745:76;:::i;:::-;12875:2;12854:15;-1:-1:-1;;12850:29:32;12841:39;;;;12882:4;12837:50;;12622:271;-1:-1:-1;;12622:271:32:o;12898:220::-;13047:2;13036:9;13029:21;13010:4;13067:45;13108:2;13097:9;13093:18;13085:6;13067:45;:::i;13123:104::-;-1:-1:-1;;;;;13189:31:32;13177:44;;13123:104::o;13232:743::-;13328:5;13322:12;13317:3;13310:25;13413:1;13409;13404:3;13400:11;13396:19;13388:4;13381:5;13377:16;13371:23;13367:49;13360:4;13355:3;13351:14;13344:73;13292:3;13463:4;13456:5;13452:16;13446:23;13501:4;13494;13489:3;13485:14;13478:28;13527:47;13568:4;13563:3;13559:14;13545:12;13527:47;:::i;:::-;13515:59;;13622:4;13615:5;13611:16;13605:23;13670:3;13664:4;13660:14;13653:4;13648:3;13644:14;13637:38;13698:39;13732:4;13716:14;13698:39;:::i;:::-;13684:53;;;13800:4;13793:5;13789:16;13783:23;13776:31;13769:39;13762:4;13757:3;13753:14;13746:63;13857:4;13850:5;13846:16;13840:23;13907:3;13899:6;13895:16;13888:4;13883:3;13879:14;13872:40;13928:41;13962:6;13946:14;13928:41;:::i;13980:288::-;14179:2;14168:9;14161:21;14142:4;14199:63;14258:2;14247:9;14243:18;14235:6;14199:63;:::i;14273:203::-;-1:-1:-1;;;;;14437:32:32;;;;14419:51;;14407:2;14392:18;;14273:203::o;14481:309::-;14546:6;14554;14607:2;14595:9;14586:7;14582:23;14578:32;14575:52;;;14623:1;14620;14613:12;14575:52;14659:9;14646:23;14636:33;;14719:2;14708:9;14704:18;14691:32;14732:28;14754:5;14732:28;:::i;:::-;14779:5;14769:15;;;14481:309;;;;;:::o;14795:572::-;14901:6;14909;14962:2;14950:9;14941:7;14937:23;14933:32;14930:52;;;14978:1;14975;14968:12;14930:52;15005:23;;-1:-1:-1;;;;;15077:14:32;;;15074:34;;;15104:1;15101;15094:12;15074:34;15127:61;15180:7;15171:6;15160:9;15156:22;15127:61;:::i;15372:352::-;15460:6;15513:2;15501:9;15492:7;15488:23;15484:32;15481:52;;;15529:1;15526;15519:12;15481:52;15556:23;;-1:-1:-1;;;;;15591:30:32;;15588:50;;;15634:1;15631;15624:12;15588:50;15657:61;15710:7;15701:6;15690:9;15686:22;15657:61;:::i;15729:574::-;15836:6;15844;15897:2;15885:9;15876:7;15872:23;15868:32;15865:52;;;15913:1;15910;15903:12;15865:52;15940:23;;-1:-1:-1;;;;;16012:14:32;;;16009:34;;;16039:1;16036;16029:12;16009:34;16062:62;16116:7;16107:6;16096:9;16092:22;16062:62;:::i;16596:183::-;16656:4;-1:-1:-1;;;;;16678:30:32;;16675:56;;;16711:18;;:::i;:::-;-1:-1:-1;16756:1:32;16752:14;16768:4;16748:25;;16596:183::o;16784:1317::-;16913:6;16921;16929;16937;16945;16998:3;16986:9;16977:7;16973:23;16969:33;16966:53;;;17015:1;17012;17005:12;16966:53;17038:23;;;-1:-1:-1;17080:2:32;17118:18;;;17105:32;-1:-1:-1;;;;;17186:14:32;;;17183:34;;;17213:1;17210;17203:12;17183:34;17236:50;17278:7;17269:6;17258:9;17254:22;17236:50;:::i;:::-;17226:60;;17333:2;17322:9;17318:18;17305:32;17295:42;;17384:2;17373:9;17369:18;17356:32;17346:42;;17441:3;17430:9;17426:19;17413:33;17397:49;;17471:2;17461:8;17458:16;17455:36;;;17487:1;17484;17477:12;17455:36;-1:-1:-1;17510:24:32;;17565:4;17557:13;;17553:27;-1:-1:-1;17543:55:32;;17594:1;17591;17584:12;17543:55;17630:2;17617:16;17653:60;17669:43;17709:2;17669:43;:::i;17653:60::-;17747:15;;;17829:1;17825:10;;;;17817:19;;17813:28;;;17778:12;;;;17853:19;;;17850:39;;;17885:1;17882;17875:12;17850:39;17909:11;;;;17929:142;17945:6;17940:3;17937:15;17929:142;;;18011:17;;17999:30;;17962:12;;;;18049;;;;17929:142;;;18090:5;18080:15;;;;;;;16784:1317;;;;;;;;:::o;18337:871::-;18549:4;18578:2;18618;18607:9;18603:18;18648:2;18637:9;18630:21;18671:6;18706;18700:13;18737:6;18729;18722:22;18775:2;18764:9;18760:18;18753:25;;18837:2;18827:6;18824:1;18820:14;18809:9;18805:30;18801:39;18787:53;;18875:2;18867:6;18863:15;18896:1;18906:273;18920:6;18917:1;18914:13;18906:273;;;19013:2;19009:7;18997:9;18989:6;18985:22;18981:36;18976:3;18969:49;19041:58;19092:6;19083;19077:13;19041:58;:::i;:::-;19031:68;-1:-1:-1;19157:12:32;;;;19122:15;;;;18942:1;18935:9;18906:273;;;-1:-1:-1;19196:6:32;;18337:871;-1:-1:-1;;;;;;;18337:871:32:o;19547:380::-;19626:1;19622:12;;;;19669;;;19690:61;;19744:4;19736:6;19732:17;19722:27;;19690:61;19797:2;19789:6;19786:14;19766:18;19763:38;19760:161;;19843:10;19838:3;19834:20;19831:1;19824:31;19878:4;19875:1;19868:15;19906:4;19903:1;19896:15;19760:161;;19547:380;;;:::o;20058:545::-;20160:2;20155:3;20152:11;20149:448;;;20196:1;20221:5;20217:2;20210:17;20266:4;20262:2;20252:19;20336:2;20324:10;20320:19;20317:1;20313:27;20307:4;20303:38;20372:4;20360:10;20357:20;20354:47;;;-1:-1:-1;20395:4:32;20354:47;20450:2;20445:3;20441:12;20438:1;20434:20;20428:4;20424:31;20414:41;;20505:82;20523:2;20516:5;20513:13;20505:82;;;20568:17;;;20549:1;20538:13;20505:82;;;20509:3;;;20149:448;20058:545;;;:::o;20779:1352::-;20899:10;;-1:-1:-1;;;;;20921:30:32;;20918:56;;;20954:18;;:::i;:::-;20983:97;21073:6;21033:38;21065:4;21059:11;21033:38;:::i;:::-;21027:4;20983:97;:::i;:::-;21135:4;;21199:2;21188:14;;21216:1;21211:663;;;;21918:1;21935:6;21932:89;;;-1:-1:-1;21987:19:32;;;21981:26;21932:89;-1:-1:-1;;20736:1:32;20732:11;;;20728:24;20724:29;20714:40;20760:1;20756:11;;;20711:57;22034:81;;21181:944;;21211:663;20005:1;19998:14;;;20042:4;20029:18;;-1:-1:-1;;21247:20:32;;;21365:236;21379:7;21376:1;21373:14;21365:236;;;21468:19;;;21462:26;21447:42;;21560:27;;;;21528:1;21516:14;;;;21395:19;;21365:236;;;21369:3;21629:6;21620:7;21617:19;21614:201;;;21690:19;;;21684:26;-1:-1:-1;;21773:1:32;21769:14;;;21785:3;21765:24;21761:37;21757:42;21742:58;21727:74;;21614:201;-1:-1:-1;;;;;21861:1:32;21845:14;;;21841:22;21828:36;;-1:-1:-1;20779:1352:32:o;22136:772::-;22186:3;22227:5;22221:12;22256:36;22282:9;22256:36;:::i;:::-;22301:19;;;22339:4;22362:1;22379:18;;;22406:146;;;;22566:1;22561:341;;;;22372:530;;22406:146;-1:-1:-1;;22448:24:32;;22434:12;;;22427:46;22520:14;;22513:22;22510:1;22506:30;22497:40;;22493:49;;;-1:-1:-1;22406:146:32;;22561:341;22592:5;22589:1;22582:16;22639:2;22636:1;22626:16;22664:1;22678:174;22692:6;22689:1;22686:13;22678:174;;;22779:14;;22761:11;;;22757:20;;22750:44;22822:16;;;;22707:10;;22678:174;;;22876:11;;22872:20;;;-1:-1:-1;;22372:530:32;;;;;;22136:772;;;;:::o;22913:393::-;23104:2;23093:9;23086:21;23067:4;23130:53;23179:2;23168:9;23164:18;23156:6;23130:53;:::i;:::-;23231:9;23223:6;23219:22;23214:2;23203:9;23199:18;23192:50;23259:41;23293:6;23285;23259:41;:::i;23311:127::-;23372:10;23367:3;23363:20;23360:1;23353:31;23403:4;23400:1;23393:15;23427:4;23424:1;23417:15;23443:135;23482:3;23503:17;;;23500:43;;23523:18;;:::i;:::-;-1:-1:-1;23570:1:32;23559:13;;23443:135::o;23583:329::-;23785:2;23767:21;;;23824:1;23804:18;;;23797:29;-1:-1:-1;;;23857:2:32;23842:18;;23835:36;23903:2;23888:18;;23583:329::o;23917:::-;24119:2;24101:21;;;24158:1;24138:18;;;24131:29;-1:-1:-1;;;24191:2:32;24176:18;;24169:36;24237:2;24222:18;;23917:329::o;24251:394::-;24491:1;24487;24482:3;24478:11;24474:19;24466:6;24462:32;24451:9;24444:51;24531:6;24526:2;24515:9;24511:18;24504:34;24574:2;24569;24558:9;24554:18;24547:30;24425:4;24594:45;24635:2;24624:9;24620:18;24612:6;24594:45;:::i;24650:245::-;24717:6;24770:2;24758:9;24749:7;24745:23;24741:32;24738:52;;;24786:1;24783;24776:12;24738:52;24818:9;24812:16;24837:28;24859:5;24837:28;:::i;24900:329::-;25102:2;25084:21;;;25141:1;25121:18;;;25114:29;-1:-1:-1;;;25174:2:32;25159:18;;25152:36;25220:2;25205:18;;24900:329::o;27572:128::-;27639:9;;;27660:11;;;27657:37;;;27674:18;;:::i;27705:345::-;-1:-1:-1;;;;;27925:32:32;;;;27907:51;;27989:2;27974:18;;27967:34;;;;28032:2;28017:18;;28010:34;27895:2;27880:18;;27705:345::o;28055:168::-;28128:9;;;28159;;28176:15;;;28170:22;;28156:37;28146:71;;28197:18;;:::i;28228:127::-;28289:10;28284:3;28280:20;28277:1;28270:31;28320:4;28317:1;28310:15;28344:4;28341:1;28334:15;28360:120;28400:1;28426;28416:35;;28431:18;;:::i;:::-;-1:-1:-1;28465:9:32;;28360:120::o;29044:2429::-;29159:12;;-1:-1:-1;;;;;;28802:35:32;28790:48;;29097:3;29125:6;29223:4;29216:5;29212:16;29206:23;29238:48;29280:4;29275:3;29271:14;29257:12;29238:48;:::i;:::-;;29334:4;29327:5;29323:16;29317:23;29349:50;29393:4;29388:3;29384:14;29368;29349:50;:::i;:::-;;29447:4;29440:5;29436:16;29430:23;29485:2;29478:4;29473:3;29469:14;29462:26;29509:47;29552:2;29547:3;29543:12;29527:14;29509:47;:::i;:::-;29497:59;;;29604:4;29597:5;29593:16;29587:23;29619:50;29663:4;29658:3;29654:14;29638;29619:50;:::i;:::-;;29717:4;29710:5;29706:16;29700:23;29765:3;29759:4;29755:14;29748:4;29743:3;29739:14;29732:38;29793:39;29827:4;29811:14;29793:39;:::i;:::-;29779:53;;;29881:4;29874:5;29870:16;29864:23;29857:4;29852:3;29848:14;29841:47;29937:4;29930:5;29926:16;29920:23;29913:4;29908:3;29904:14;29897:47;29963:6;30017:2;30010:5;30006:14;30000:21;30030:48;30074:2;30069:3;30065:12;30049:14;30030:48;:::i;:::-;;;30097:6;30151:2;30144:5;30140:14;30134:21;30197:3;30189:6;30185:16;30180:2;30175:3;30171:12;30164:38;30225:41;30259:6;30243:14;30225:41;:::i;:::-;30211:55;;;;30285:6;30339:2;30332:5;30328:14;30322:21;30352:47;30395:2;30390:3;30386:12;30370:14;28925:10;28914:22;28902:35;;28849:94;30352:47;;;30418:6;30472:2;30465:5;30461:14;30455:21;30485:46;30527:2;30522:3;30518:12;30502:14;29023:1;29012:20;29000:33;;28948:91;30485:46;-1:-1:-1;;30550:6:32;30592:14;;;30586:21;30572:12;;;30565:43;30627:6;30670:14;;;30664:21;28925:10;28914:22;;;30728:12;;;28902:35;;;;30760:6;30804:14;;;30798:21;28914:22;;30863:12;;;28902:35;30895:6;30939:14;;;30933:21;28914:22;;;30998:12;;;28902:35;31031:6;31075:15;;;31069:22;16384:6;16373:18;31135:13;;;16361:31;31169:6;31213:15;;;31207:22;11964:13;11957:21;31271:13;;;11945:34;31305:6;31348:15;;;31342:22;31327:13;;;31320:45;31385:6;31428:15;;;31422:22;31407:13;;;;31400:45;;;;-1:-1:-1;31407:13:32;29044:2429::o;31478:348::-;31701:2;31690:9;31683:21;31664:4;31721:56;31773:2;31762:9;31758:18;31750:6;31721:56;:::i;:::-;31713:64;;31813:6;31808:2;31797:9;31793:18;31786:34;31478:348;;;;;:::o;31831:125::-;31896:9;;;31917:10;;;31914:36;;;31930:18;;:::i;32171:435::-;-1:-1:-1;;;;;32422:32:32;;;;32404:51;;32486:2;32471:18;;32464:34;;;;32541:14;32534:22;32529:2;32514:18;;32507:50;32588:2;32573:18;;32566:34;32391:3;32376:19;;32171:435::o;32611:287::-;32740:3;32778:6;32772:13;32794:66;32853:6;32848:3;32841:4;32833:6;32829:17;32794:66;:::i;:::-;32876:16;;;;;32611:287;-1:-1:-1;;32611:287:32:o;32903:531::-;33167:10;33159:6;33155:23;33144:9;33137:42;33215:6;33210:2;33199:9;33195:18;33188:34;33258:3;33253:2;33242:9;33238:18;33231:31;33118:4;33279:46;33320:3;33309:9;33305:19;33297:6;33279:46;:::i;:::-;33368:14;;33361:22;33356:2;33341:18;;33334:50;-1:-1:-1;33415:3:32;33400:19;33393:35;33271:54;32903:531;-1:-1:-1;;;32903:531:32:o;33439:329::-;33641:2;33623:21;;;33680:1;33660:18;;;33653:29;-1:-1:-1;;;33713:2:32;33698:18;;33691:36;33759:2;33744:18;;33439:329::o;33773:::-;33975:2;33957:21;;;34014:1;33994:18;;;33987:29;-1:-1:-1;;;34047:2:32;34032:18;;34025:36;34093:2;34078:18;;33773:329::o;34107:274::-;-1:-1:-1;;;;;34299:32:32;;;;34281:51;;34363:2;34348:18;;34341:34;34269:2;34254:18;;34107:274::o;35388:255::-;-1:-1:-1;;;35590:20:32;;35635:1;35626:11;;35388:255::o;35942:256::-;-1:-1:-1;;;36144:21:32;;36190:1;36181:11;;35942:256::o;37464:329::-;37666:2;37648:21;;;37705:1;37685:18;;;37678:29;-1:-1:-1;;;37738:2:32;37723:18;;37716:36;37784:2;37769:18;;37464:329::o;37798:112::-;37830:1;37856;37846:35;;37861:18;;:::i;:::-;-1:-1:-1;37895:9:32;;37798:112::o;39504:656::-;39765:6;39760:3;39753:19;39735:3;39801:6;39795:13;39817:73;39883:6;39878:2;39873:3;39869:12;39864:2;39856:6;39852:15;39817:73;:::i;:::-;39918:6;39913:3;39909:16;39899:26;;39986:1;39982;39978:2;39974:10;39970:18;39966:23;39958:6;39954:36;39949:2;39945;39941:11;39934:57;40022:6;40016:13;40038:74;40103:8;40098:2;40094;40090:11;40085:2;40077:6;40073:15;40038:74;:::i;:::-;40132:17;40151:2;40128:26;;39504:656;-1:-1:-1;;;;;;39504:656:32:o;40165:442::-;40218:5;40271:3;40264:4;40256:6;40252:17;40248:27;40238:55;;40289:1;40286;40279:12;40238:55;40318:6;40312:13;40349:49;40365:32;40394:2;40365:32;:::i;40349:49::-;40423:2;40414:7;40407:19;40469:3;40462:4;40457:2;40449:6;40445:15;40441:26;40438:35;40435:55;;;40486:1;40483;40476:12;40435:55;40499:77;40573:2;40566:4;40557:7;40553:18;40546:4;40538:6;40534:17;40499:77;:::i;40612:335::-;40691:6;40744:2;40732:9;40723:7;40719:23;40715:32;40712:52;;;40760:1;40757;40750:12;40712:52;40787:16;;-1:-1:-1;;;;;40815:30:32;;40812:50;;;40858:1;40855;40848:12;40812:50;40881:60;40933:7;40924:6;40913:9;40909:22;40881:60;:::i;40952:608::-;-1:-1:-1;;;41314:3:32;41307:16;41352:6;41348:1;41343:3;41339:11;41332:27;-1:-1:-1;;;41384:2:32;41379:3;41375:12;41368:25;41289:3;41422:6;41416:13;41438:75;41506:6;41501:2;41496:3;41492:12;41485:4;41477:6;41473:17;41438:75;:::i;:::-;41533:16;;;;41551:2;41529:25;;40952:608;-1:-1:-1;;;40952:608:32:o;41565:468::-;41788:2;41777:9;41770:21;41751:4;41814:45;41855:2;41844:9;41840:18;41832:6;41814:45;:::i;:::-;41907:9;41899:6;41895:22;41890:2;41879:9;41875:18;41868:50;41935:33;41961:6;41953;41935:33;:::i;:::-;41927:41;;;42018:6;42011:14;42004:22;41999:2;41988:9;41984:18;41977:50;41565:468;;;;;;:::o;42706:172::-;42773:10;42803;;;42815;;;42799:27;;42838:11;;;42835:37;;;42852:18;;:::i;:::-;42835:37;42706:172;;;;:::o;45221:329::-;45423:2;45405:21;;;45462:1;45442:18;;;45435:29;-1:-1:-1;;;45495:2:32;45480:18;;45473:36;45541:2;45526:18;;45221:329::o;46910:::-;47112:2;47094:21;;;47151:1;47131:18;;;47124:29;-1:-1:-1;;;47184:2:32;47169:18;;47162:36;47230:2;47215:18;;46910:329::o;48422:2007::-;48546:6;48577:2;48620;48608:9;48599:7;48595:23;48591:32;48588:52;;;48636:1;48633;48626:12;48588:52;48663:16;;-1:-1:-1;;;;;48728:14:32;;;48725:34;;;48755:1;48752;48745:12;48725:34;48793:6;48782:9;48778:22;48768:32;;48838:7;48831:4;48827:2;48823:13;48819:27;48809:55;;48860:1;48857;48850:12;48809:55;48889:2;48883:9;48912:60;48928:43;48968:2;48928:43;:::i;48912:60::-;49006:15;;;49088:1;49084:10;;;;49076:19;;49072:28;;;49037:12;;;;49112:19;;;49109:39;;;49144:1;49141;49134:12;49109:39;49176:2;49172;49168:11;49188:1211;49204:6;49199:3;49196:15;49188:1211;;;49283:3;49277:10;49319:2;49306:11;49303:19;49300:109;;;49363:1;49392:2;49388;49381:14;49300:109;49432:20;;49475:4;49503:16;;;-1:-1:-1;;49499:30:32;49495:39;-1:-1:-1;49492:129:32;;;49575:1;49604:2;49600;49593:14;49492:129;49647:22;;:::i;:::-;49711:2;49707;49703:11;49697:18;49763:2;49754:7;49750:16;49741:7;49738:29;49728:127;;49809:1;49838:2;49834;49827:14;49728:127;49868:22;;49914:2;49951:12;;;49945:19;49980:16;;;49977:109;;;50038:1;50068:3;50063;50056:16;49977:109;50122:64;50178:7;50173:2;50162:8;50158:2;50154:17;50150:26;50122:64;:::i;:::-;50106:14;;;50099:88;-1:-1:-1;50211:2:32;50256:12;;;50250:19;50233:15;;;50226:44;;;;50313:11;;;;50307:18;50290:15;;;50283:43;50339:18;;50377:12;;;;49221;;49188:1211;;;-1:-1:-1;50418:5:32;48422:2007;-1:-1:-1;;;;;;;;48422:2007:32:o;50434:127::-;50495:10;50490:3;50486:20;50483:1;50476:31;50526:4;50523:1;50516:15;50550:4;50547:1;50540:15;50900:148;50988:4;50967:12;;;50981;;;50963:31;;51006:13;;51003:39;;;51022:18;;:::i;51053:175::-;51090:3;51134:4;51127:5;51123:16;51163:4;51154:7;51151:17;51148:43;;51171:18;;:::i;:::-;51220:1;51207:15;;51053:175;-1:-1:-1;;51053:175:32:o;51233:184::-;51303:6;51356:2;51344:9;51335:7;51331:23;51327:32;51324:52;;;51372:1;51369;51362:12;51324:52;-1:-1:-1;51395:16:32;;51233:184;-1:-1:-1;51233:184:32:o;52090:848::-;52316:4;52364:3;52353:9;52349:19;52395:6;52384:9;52377:25;52421:2;52459:6;52454:2;52443:9;52439:18;52432:34;52502:6;52497:2;52486:9;52482:18;52475:34;52545:3;52540:2;52529:9;52525:18;52518:31;52569:6;52604;52598:13;52635:6;52627;52620:22;52673:3;52662:9;52658:19;52651:26;;52712:2;52704:6;52700:15;52686:29;;52733:1;52743:169;52757:6;52754:1;52751:13;52743:169;;;52818:13;;52806:26;;52887:15;;;;52852:12;;;;52779:1;52772:9;52743:169;;;-1:-1:-1;52929:3:32;;52090:848;-1:-1:-1;;;;;;;;;52090:848:32:o;53799:307::-;53976:2;53965:9;53958:21;53939:4;53996:45;54037:2;54026:9;54022:18;54014:6;53996:45;:::i;:::-;53988:53;;54091:6;54084:14;54077:22;54072:2;54061:9;54057:18;54050:50;53799:307;;;;;:::o;54111:840::-;54237:3;54266:1;54299:6;54293:13;54329:36;54355:9;54329:36;:::i;:::-;54384:1;54401:18;;;54428:133;;;;54575:1;54570:356;;;;54394:532;;54428:133;-1:-1:-1;;54461:24:32;;54449:37;;54534:14;;54527:22;54515:35;;54506:45;;;-1:-1:-1;54428:133:32;;54570:356;54601:6;54598:1;54591:17;54631:4;54676:2;54673:1;54663:16;54701:1;54715:165;54729:6;54726:1;54723:13;54715:165;;;54807:14;;54794:11;;;54787:35;54850:16;;;;54744:10;;54715:165;;;54719:3;;;54909:6;54904:3;54900:16;54893:23;;54394:532;-1:-1:-1;54942:3:32;;54111:840;-1:-1:-1;;;;;;54111:840:32:o;56365:2638::-;56562:2;56551:9;56544:21;56574:53;56623:2;56612:9;56608:18;56599:6;56593:13;56574:53;:::i;:::-;56525:4;56674:2;56666:6;56662:15;56656:22;56687:52;56735:2;56724:9;56720:18;56706:12;56687:52;:::i;:::-;;56788:2;56780:6;56776:15;56770:22;56811:6;56853:2;56848;56837:9;56833:18;56826:30;56879:54;56928:3;56917:9;56913:19;56897:14;56879:54;:::i;:::-;56865:68;;56982:2;56974:6;56970:15;56964:22;56995:55;57045:3;57034:9;57030:19;57014:14;56995:55;:::i;:::-;;57099:3;57091:6;57087:16;57081:23;57127:2;57123:7;57195:2;57183:9;57175:6;57171:22;57167:31;57161:3;57150:9;57146:19;57139:60;57222:41;57256:6;57240:14;57222:41;:::i;:::-;57208:55;;57318:3;57310:6;57306:16;57300:23;57294:3;57283:9;57279:19;57272:52;57379:3;57371:6;57367:16;57361:23;57355:3;57344:9;57340:19;57333:52;57434:3;57426:6;57422:16;57416:23;57394:45;;57458:3;57470:52;57518:2;57507:9;57503:18;57487:14;29023:1;29012:20;29000:33;;28948:91;57470:52;57571:2;57563:6;57559:15;57553:22;57531:44;;;57594:3;57661:2;57649:9;57641:6;57637:22;57633:31;57628:2;57617:9;57613:18;57606:59;57688:41;57722:6;57706:14;57688:41;:::i;:::-;57754:15;;;57748:22;57789:3;57808:18;;;57801:30;;;;57868:15;;57862:22;57674:55;;-1:-1:-1;57862:22:32;-1:-1:-1;57903:3:32;;-1:-1:-1;57915:53:32;57949:18;;;57862:22;28925:10;28914:22;28902:35;;28849:94;57915:53;58005:15;;57999:22;;-1:-1:-1;58040:3:32;58052:53;58086:18;;;57999:22;28925:10;28914:22;28902:35;;28849:94;58052:53;58142:15;;58136:22;;-1:-1:-1;58177:3:32;58189:53;58223:18;;;58136:22;16384:6;16373:18;16361:31;;16308:90;58189:53;58279:15;;58273:22;;-1:-1:-1;58315:3:32;58327:54;58361:19;;;58273:22;16384:6;16373:18;16361:31;;16308:90;58327:54;58419:16;;58413:23;;-1:-1:-1;58456:3:32;58468:55;58503:19;;;58413:23;28925:10;28914:22;28902:35;;28849:94;58468:55;58561:16;;58555:23;;-1:-1:-1;58598:3:32;58610:55;58645:19;;;58555:23;28925:10;28914:22;28902:35;;28849:94;58610:55;58703:16;;58697:23;;-1:-1:-1;58740:3:32;58752:55;58787:19;;;58697:23;28925:10;28914:22;28902:35;;28849:94;58752:55;58833:16;;58827:23;58870:3;58889:19;;;58882:32;;;;58956:16;;;58950:23;58930:18;;58923:51;;;;-1:-1:-1;58991:6:32;56365:2638;-1:-1:-1;56365:2638:32:o;61038:180::-;-1:-1:-1;;;;;61143:10:32;;;61155;;;61139:27;;61178:11;;;61175:37;;;61192:18;;:::i;61557:277::-;61752:2;61741:9;61734:21;61715:4;61772:56;61824:2;61813:9;61809:18;61801:6;61772:56;:::i;61839:1063::-;62209:4;62238:3;62268:2;62257:9;62250:21;62294:45;62335:2;62324:9;62320:18;62312:6;62294:45;:::i;:::-;62280:59;;62375:6;62370:2;62359:9;62355:18;62348:34;62430:9;62422:6;62418:22;62413:2;62402:9;62398:18;62391:50;62464:33;62490:6;62482;62464:33;:::i;:::-;62450:47;;62533:6;62528:2;62517:9;62513:18;62506:34;62589:9;62581:6;62577:22;62571:3;62560:9;62556:19;62549:51;62623:33;62649:6;62641;62623:33;:::i;:::-;-1:-1:-1;;;;;62693:32:32;;62713:3;62672:19;;62665:61;62763:22;;;62757:3;62742:19;;62735:51;62609:47;-1:-1:-1;62803:33:32;62609:47;62821:6;62803:33;:::i;:::-;62795:41;;;62887:6;62880:14;62873:22;62867:3;62856:9;62852:19;62845:51;61839:1063;;;;;;;;;;;:::o", - "source": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.18;\npragma experimental ABIEncoderV2;\n\nimport \"./Bridge.sol\";\nimport \"./QuotesV2.sol\";\nimport \"./SignatureValidator.sol\";\nimport \"@rsksmart/btc-transaction-solidity-helper/contracts/BtcUtils.sol\";\nimport \"@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol\";\nimport \"@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.sol\";\n\n/**\n @title Contract that assists with the Flyover protocol\n */\n\ncontract LiquidityBridgeContractV2 is Initializable, OwnableUpgradeable, ReentrancyGuardUpgradeable {\n uint16 constant public MAX_CALL_GAS_COST = 35000;\n uint16 constant public MAX_REFUND_GAS_LIMIT = 2300;\n\n uint8 constant public UNPROCESSED_QUOTE_CODE = 0;\n uint8 constant public CALL_DONE_CODE = 1;\n uint8 constant public PROCESSED_QUOTE_CODE = 2;\n\n int16 constant public BRIDGE_REFUNDED_USER_ERROR_CODE = - 100;\n int16 constant public BRIDGE_REFUNDED_LP_ERROR_CODE = - 200;\n int16 constant public BRIDGE_UNPROCESSABLE_TX_NOT_CONTRACT_ERROR_CODE = - 300;\n int16 constant public BRIDGE_UNPROCESSABLE_TX_INVALID_SENDER_ERROR_CODE = - 301;\n int16 constant public BRIDGE_UNPROCESSABLE_TX_ALREADY_PROCESSED_ERROR_CODE = - 302;\n int16 constant public BRIDGE_UNPROCESSABLE_TX_VALIDATIONS_ERROR = - 303;\n int16 constant public BRIDGE_UNPROCESSABLE_TX_VALUE_ZERO_ERROR = - 304;\n int16 constant public BRIDGE_UNPROCESSABLE_TX_UTXO_AMOUNT_SENT_BELOW_MINIMUM_ERROR =\n - 305;\n int16 constant public BRIDGE_GENERIC_ERROR = - 900;\n uint constant public PAY_TO_ADDRESS_OUTPUT = 0;\n uint constant public QUOTE_HASH_OUTPUT = 1;\n uint constant public SAT_TO_WEI_CONVERSION = 10**10;\n\n struct Registry {\n uint32 timestamp;\n bool success;\n }\n\n struct PegoutRecord {\n uint256 depositTimestamp;\n bool completed;\n }\n\n struct LiquidityProvider {\n uint id;\n address provider;\n string name;\n string apiBaseUrl;\n bool status;\n string providerType;\n }\n\n event Register(uint id, address indexed from, uint256 amount);\n event CollateralIncrease(address from, uint256 amount);\n event PegoutCollateralIncrease(address from, uint256 amount);\n event Withdrawal(address from, uint256 amount);\n event WithdrawCollateral(address from, uint256 amount);\n event Resigned(address from);\n event CallForUser(\n address indexed from,\n address indexed dest,\n uint gasLimit,\n uint value,\n bytes data,\n bool success,\n bytes32 quoteHash\n );\n event PegInRegistered(bytes32 indexed quoteHash, int256 transferredAmount);\n event Penalized(address liquidityProvider, uint penalty, bytes32 quoteHash);\n event BridgeCapExceeded(bytes32 quoteHash, int256 errorCode);\n event BalanceIncrease(address dest, uint amount);\n event BalanceDecrease(address dest, uint amount);\n event Refund(address dest, uint amount, bool success, bytes32 quoteHash);\n event PegOutRefunded(bytes32 indexed quoteHash);\n event PegOutDeposit(\n bytes32 indexed quoteHash,\n address indexed sender,\n uint256 amount,\n uint256 timestamp\n );\n event PegOutUserRefunded(\n bytes32 indexed quoteHash,\n uint256 value,\n address userAddress\n );\n event DaoFeeSent(bytes32 indexed quoteHash, uint256 amount);\n event ProviderUpdate(address indexed providerAddress, string name, string url);\n\n Bridge public bridge;\n mapping(address => uint256) private balances;\n mapping(address => uint256) private collateral;\n mapping(address => uint256) private pegoutCollateral;\n mapping(uint => LiquidityProvider) private liquidityProviders;\n mapping(bytes32 => Registry) private callRegistry;\n mapping(address => uint256) private resignationBlockNum;\n\n uint256 private minCollateral;\n uint256 private minPegIn;\n\n uint32 private rewardP;\n uint32 private resignDelayInBlocks;\n uint private dust;\n uint public providerId;\n\n uint private btcBlockTime;\n bool private mainnet;\n\n mapping(bytes32 => uint8) private processedQuotes;\n mapping(bytes32 => QuotesV2.PegOutQuote) private registeredPegoutQuotes;\n mapping(bytes32 => PegoutRecord) private pegoutRegistry;\n\n uint256 public productFeePercentage;\n address public daoFeeCollectorAddress;\n\n modifier onlyRegistered() {\n require(isRegistered(msg.sender), \"LBC001\");\n _;\n }\n\n modifier onlyRegisteredForPegout() {\n require(isRegisteredForPegout(msg.sender), \"LBC001\");\n _;\n }\n\n modifier onlyOwnerAndProvider(uint _providerId) {\n require(\n msg.sender == owner() ||\n msg.sender == liquidityProviders[_providerId].provider,\n \"LBC005\"\n );\n _;\n }\n\n function setProviderStatus(\n uint _providerId,\n bool status\n ) external onlyOwnerAndProvider(_providerId) {\n liquidityProviders[_providerId].status = status;\n }\n\n receive() external payable {\n require(msg.sender == address(bridge), \"LBC007\");\n }\n\n function version() external pure returns (string memory) {\n return \"1.3.0\";\n }\n\n function getProviderIds() external view returns (uint) {\n return providerId;\n }\n\n function getBridgeAddress() external view returns (address) {\n return address(bridge);\n }\n\n function getMinCollateral() public view returns (uint) {\n return minCollateral;\n }\n\n function getMinPegIn() external view returns (uint) {\n return minPegIn;\n }\n\n function getRewardPercentage() external view returns (uint) {\n return rewardP;\n }\n\n function getResignDelayBlocks() external view returns (uint) {\n return resignDelayInBlocks;\n }\n\n function getDustThreshold() external view returns (uint) {\n return dust;\n }\n\n function isPegOutQuoteCompleted(bytes32 quoteHash) external view returns (bool) {\n return pegoutRegistry[quoteHash].completed;\n }\n\n /**\n @dev Checks whether a liquidity provider can deliver a pegin service\n @return Whether the liquidity provider is registered and has enough locked collateral\n */\n function isOperational(address addr) external view returns (bool) {\n return isRegistered(addr) && collateral[addr] >= minCollateral;\n }\n\n /**\n @dev Checks whether a liquidity provider can deliver a pegout service\n @return Whether the liquidity provider is registered and has enough locked collateral\n */\n function isOperationalForPegout(address addr) external view returns (bool) {\n return\n isRegisteredForPegout(addr) &&\n pegoutCollateral[addr] >= minCollateral;\n }\n\n /**\n @dev Registers msg.sender as a liquidity provider with msg.value as collateral\n */\n function register(\n string memory _name,\n string memory _apiBaseUrl,\n bool _status,\n string memory _providerType\n ) external payable returns (uint) {\n require(tx.origin == msg.sender, \"LBC003\");\n //require(collateral[msg.sender] == 0, \"Already registered\");\n require(bytes(_name).length > 0, \"LBC010\");\n require(\n bytes(_apiBaseUrl).length > 0,\n \"LBC017\"\n );\n\n // Check if _providerType is one of the valid strings\n require(\n keccak256(abi.encodePacked(_providerType)) ==\n keccak256(abi.encodePacked(\"pegin\")) ||\n keccak256(abi.encodePacked(_providerType)) ==\n keccak256(abi.encodePacked(\"pegout\")) ||\n keccak256(abi.encodePacked(_providerType)) ==\n keccak256(abi.encodePacked(\"both\")),\n \"LBC018\"\n );\n\n require(collateral[msg.sender] == 0 && pegoutCollateral[msg.sender] == 0, \"LBC070\");\n require(\n resignationBlockNum[msg.sender] == 0,\n \"LBC009\"\n );\n\n if (keccak256(abi.encodePacked(_providerType)) == keccak256(abi.encodePacked(\"pegin\"))) {\n require(msg.value >= minCollateral, \"LBC008\");\n collateral[msg.sender] = msg.value;\n } else if (keccak256(abi.encodePacked(_providerType)) == keccak256(abi.encodePacked(\"pegout\"))) {\n require(msg.value >= minCollateral, \"LBC008\");\n pegoutCollateral[msg.sender] = msg.value;\n } else {\n require(msg.value >= minCollateral * 2, \"LBC008\");\n uint halfMsgValue = msg.value / 2;\n collateral[msg.sender] = msg.value % 2 == 0 ? halfMsgValue : halfMsgValue + 1;\n pegoutCollateral[msg.sender] = halfMsgValue;\n }\n\n providerId++;\n liquidityProviders[providerId] = LiquidityProvider({\n id: providerId,\n provider: msg.sender,\n name: _name,\n apiBaseUrl: _apiBaseUrl,\n status: _status,\n providerType: _providerType\n });\n emit Register(providerId, msg.sender, msg.value);\n return (providerId);\n }\n\n function getProviders() external view returns (LiquidityProvider[] memory) {\n uint count = 0;\n LiquidityProvider storage lp;\n for (uint i = 1; i <= providerId; i++) {\n if (shouldBeListed(liquidityProviders[i])) {\n count++;\n }\n }\n LiquidityProvider[] memory providersToReturn = new LiquidityProvider[](count);\n count = 0;\n for (uint i = 1; i <= providerId; i++) {\n lp = liquidityProviders[i];\n if (shouldBeListed(lp)) {\n providersToReturn[count] = lp;\n count++;\n }\n }\n return providersToReturn;\n }\n\n function getProvider(address providerAddress) public view returns (LiquidityProvider memory) {\n for (uint i = 1; i <= providerId; i++) {\n if (liquidityProviders[i].provider == providerAddress) {\n return liquidityProviders[i];\n }\n }\n revert(\"LBC001\");\n }\n\n function shouldBeListed(LiquidityProvider storage lp) private view returns(bool){\n return (isRegistered(lp.provider) || isRegisteredForPegout(lp.provider)) && lp.status;\n }\n\n /**\n @dev Increases the amount of collateral of the sender\n */\n function addCollateral() external payable onlyRegistered {\n collateral[msg.sender] += msg.value;\n emit CollateralIncrease(msg.sender, msg.value);\n }\n\n function addPegoutCollateral() external payable onlyRegisteredForPegout {\n pegoutCollateral[msg.sender] += msg.value;\n emit PegoutCollateralIncrease(msg.sender, msg.value);\n }\n\n /**\n @dev Increases the balance of the sender\n */\n function deposit() external payable onlyRegistered {\n increaseBalance(msg.sender, msg.value);\n }\n\n /**\n @dev Used to withdraw funds\n @param amount The amount to withdraw\n */\n function withdraw(uint256 amount) external {\n require(balances[msg.sender] >= amount, \"LBC019\");\n balances[msg.sender] -= amount;\n (bool success,) = msg.sender.call{value: amount}(\"\");\n require(success, \"LBC020\");\n emit Withdrawal(msg.sender, amount);\n }\n\n /**\n @dev Used to withdraw the locked collateral\n */\n function withdrawCollateral() external nonReentrant {\n require(resignationBlockNum[msg.sender] > 0, \"LBC021\");\n require(\n block.number - resignationBlockNum[msg.sender] >=\n resignDelayInBlocks,\n \"LBC022\"\n );\n uint amount = collateral[msg.sender] + pegoutCollateral[msg.sender];\n pegoutCollateral[msg.sender] = 0;\n collateral[msg.sender] = 0;\n resignationBlockNum[msg.sender] = 0;\n (bool success,) = msg.sender.call{value: amount}(\"\");\n require(success, \"LBC020\");\n emit WithdrawCollateral(msg.sender, amount);\n }\n\n /**\n @dev Used to resign as a liquidity provider\n */\n function resign() external onlyRegistered {\n require(resignationBlockNum[msg.sender] == 0, \"LBC023\");\n resignationBlockNum[msg.sender] = block.number;\n emit Resigned(msg.sender);\n }\n\n /**\n @dev Returns the amount of collateral of a liquidity provider\n @param addr The address of the liquidity provider\n @return The amount of locked collateral\n */\n function getCollateral(address addr) external view returns (uint256) {\n return collateral[addr];\n }\n\n function getPegoutCollateral(address addr) external view returns (uint256) {\n return pegoutCollateral[addr];\n }\n\n /**\n @dev Returns the amount of funds of a liquidity provider\n @param addr The address of the liquidity provider\n @return The balance of the liquidity provider\n */\n function getBalance(address addr) external view returns (uint256) {\n return balances[addr];\n }\n\n /**\n @dev Performs a call on behalf of a user\n @param quote The quote that identifies the service\n @return Boolean indicating whether the call was successful\n */\n function callForUser(\n QuotesV2.PeginQuote memory quote\n ) external payable onlyRegistered nonReentrant returns (bool) {\n require(\n msg.sender == quote.liquidityProviderRskAddress,\n \"LBC024\"\n );\n require(\n balances[quote.liquidityProviderRskAddress] + msg.value >=\n quote.value,\n \"LBC019\"\n );\n\n bytes32 quoteHash = validateAndHashQuote(quote);\n require(\n processedQuotes[quoteHash] == UNPROCESSED_QUOTE_CODE,\n \"LBC025\"\n );\n\n increaseBalance(quote.liquidityProviderRskAddress, msg.value);\n\n // This check ensures that the call cannot be performed with less gas than the agreed amount\n require(\n gasleft() >= quote.gasLimit + MAX_CALL_GAS_COST,\n \"LBC026\"\n );\n (bool success,) = quote.contractAddress.call{\n gas: quote.gasLimit,\n value: quote.value\n }(quote.data);\n\n require(block.timestamp <= type(uint32).max, \"LBC027\");\n callRegistry[quoteHash].timestamp = uint32(block.timestamp);\n\n if (success) {\n callRegistry[quoteHash].success = true;\n decreaseBalance(quote.liquidityProviderRskAddress, quote.value);\n }\n emit CallForUser(\n msg.sender,\n quote.contractAddress,\n quote.gasLimit,\n quote.value,\n quote.data,\n success,\n quoteHash\n );\n processedQuotes[quoteHash] = CALL_DONE_CODE;\n return success;\n }\n\n /**\n @dev Registers a peg-in transaction with the bridge and pays to the involved parties\n @param quote The quote of the service\n @param signature The signature of the quote\n @param btcRawTransaction The peg-in transaction\n @param partialMerkleTree The merkle tree path that proves transaction inclusion\n @param height The block that contains the peg-in transaction\n @return The total peg-in amount received from the bridge contract or an error code\n */\n function registerPegIn(\n QuotesV2.PeginQuote memory quote,\n bytes memory signature,\n bytes memory btcRawTransaction,\n bytes memory partialMerkleTree,\n uint256 height\n ) external nonReentrant returns (int256) {\n bytes32 quoteHash = validateAndHashQuote(quote);\n\n // TODO: allow multiple registerPegIns for the same quote with different transactions\n require(\n processedQuotes[quoteHash] <= CALL_DONE_CODE,\n \"LBC028\"\n );\n require(\n SignatureValidator.verify(\n quote.liquidityProviderRskAddress,\n quoteHash,\n signature\n ),\n \"LBC029\"\n );\n require(height < uint256(int256(type(int32).max)), \"LBC030\");\n\n int256 transferredAmountOrErrorCode = registerBridge(\n quote,\n btcRawTransaction,\n partialMerkleTree,\n height,\n quoteHash\n );\n\n require(\n transferredAmountOrErrorCode !=\n BRIDGE_UNPROCESSABLE_TX_VALIDATIONS_ERROR,\n \"LBC031\"\n );\n require(\n transferredAmountOrErrorCode !=\n BRIDGE_UNPROCESSABLE_TX_ALREADY_PROCESSED_ERROR_CODE,\n \"LBC032\"\n );\n require(\n transferredAmountOrErrorCode !=\n BRIDGE_UNPROCESSABLE_TX_VALUE_ZERO_ERROR,\n \"LBC033\"\n );\n require(\n transferredAmountOrErrorCode !=\n BRIDGE_UNPROCESSABLE_TX_UTXO_AMOUNT_SENT_BELOW_MINIMUM_ERROR,\n \"LBC034\"\n );\n require(\n transferredAmountOrErrorCode != BRIDGE_GENERIC_ERROR,\n \"LBC035\"\n );\n require(\n transferredAmountOrErrorCode > 0 ||\n transferredAmountOrErrorCode == BRIDGE_REFUNDED_LP_ERROR_CODE ||\n transferredAmountOrErrorCode == BRIDGE_REFUNDED_USER_ERROR_CODE,\n \"LBC036\"\n );\n\n if (\n shouldPenalizeLP(\n quote,\n transferredAmountOrErrorCode,\n callRegistry[quoteHash].timestamp,\n height\n )\n ) {\n uint penalizationAmount = min(\n quote.penaltyFee,\n collateral[quote.liquidityProviderRskAddress]\n ); // prevent underflow when collateral is less than penalty fee.\n collateral[quote.liquidityProviderRskAddress] -= penalizationAmount;\n emit Penalized(\n quote.liquidityProviderRskAddress,\n penalizationAmount,\n quoteHash\n );\n\n // pay reward to sender\n uint256 punisherReward = (penalizationAmount * rewardP) / 100;\n increaseBalance(msg.sender, punisherReward);\n }\n\n if (\n transferredAmountOrErrorCode == BRIDGE_REFUNDED_LP_ERROR_CODE ||\n transferredAmountOrErrorCode == BRIDGE_REFUNDED_USER_ERROR_CODE\n ) {\n // Bridge cap exceeded\n processedQuotes[quoteHash] = PROCESSED_QUOTE_CODE;\n delete callRegistry[quoteHash];\n emit BridgeCapExceeded(quoteHash, transferredAmountOrErrorCode);\n return transferredAmountOrErrorCode;\n }\n\n // the amount is safely assumed positive because it's already been\n // validated in lines 287/298 there's no (negative) error code being returned by the bridge.\n uint transferredAmount = uint(transferredAmountOrErrorCode);\n\n QuotesV2.checkAgreedAmount(quote, transferredAmount);\n\n if (callRegistry[quoteHash].timestamp > 0) {\n uint refundAmount;\n\n if (callRegistry[quoteHash].success) {\n refundAmount = min(\n transferredAmount,\n quote.value + quote.callFee + quote.gasFee\n );\n } else {\n refundAmount = min(transferredAmount, quote.callFee + quote.gasFee);\n }\n increaseBalance(quote.liquidityProviderRskAddress, refundAmount);\n\n uint remainingAmount = transferredAmount - refundAmount;\n payToFeeCollector(quote.productFeeAmount, quoteHash);\n\n if (remainingAmount > dust) {\n // refund rskRefundAddress, if remaining amount greater than dust\n (bool success,) = quote.rskRefundAddress.call{\n gas: MAX_REFUND_GAS_LIMIT,\n value: remainingAmount\n }(\"\");\n emit Refund(\n quote.rskRefundAddress,\n remainingAmount,\n success,\n quoteHash\n );\n\n if (!success) {\n // transfer funds to LP instead, if for some reason transfer to rskRefundAddress was unsuccessful\n increaseBalance(\n quote.liquidityProviderRskAddress,\n remainingAmount\n );\n }\n }\n } else {\n uint refundAmount = transferredAmount;\n\n if (quote.callOnRegister && refundAmount >= quote.value) {\n (bool callSuccess,) = quote.contractAddress.call{\n gas: quote.gasLimit,\n value: quote.value\n }(quote.data);\n emit CallForUser(\n msg.sender,\n quote.contractAddress,\n quote.gasLimit,\n quote.value,\n quote.data,\n callSuccess,\n quoteHash\n );\n\n if (callSuccess) {\n refundAmount -= quote.value;\n }\n }\n if (refundAmount > dust) {\n // refund rskRefundAddress, if refund amount greater than dust\n (bool success,) = quote.rskRefundAddress.call{\n gas: MAX_REFUND_GAS_LIMIT,\n value: refundAmount\n }(\"\");\n emit Refund(\n quote.rskRefundAddress,\n refundAmount,\n success,\n quoteHash\n );\n }\n }\n processedQuotes[quoteHash] = PROCESSED_QUOTE_CODE;\n delete callRegistry[quoteHash];\n emit PegInRegistered(quoteHash, transferredAmountOrErrorCode);\n return transferredAmountOrErrorCode;\n }\n\n function depositPegout( // TODO convert to calldata when contract size issues are fixed\n QuotesV2.PegOutQuote memory quote,\n bytes memory signature\n ) external payable {\n require(isRegisteredForPegout(quote.lpRskAddress), \"LBC037\");\n require(quote.value + quote.callFee + quote.productFeeAmount + quote.gasFee <= msg.value, \"LBC063\");\n require(block.timestamp <= quote.depositDateLimit, \"LBC065\");\n require(block.timestamp <= quote.expireDate, \"LBC046\");\n require(block.number <= quote.expireBlock, \"LBC047\");\n bytes32 quoteHash = hashPegoutQuote(quote);\n require(\n SignatureValidator.verify(quote.lpRskAddress, quoteHash, signature),\n \"LBC029\"\n );\n\n QuotesV2.PegOutQuote storage registeredQuote = registeredPegoutQuotes[quoteHash];\n\n require(pegoutRegistry[quoteHash].completed == false, \"LBC064\");\n require(registeredQuote.lbcAddress == address(0), \"LBC028\");\n registeredPegoutQuotes[quoteHash] = quote;\n pegoutRegistry[quoteHash].depositTimestamp = block.timestamp;\n emit PegOutDeposit(quoteHash, msg.sender, msg.value, block.timestamp);\n }\n\n function refundUserPegOut(\n bytes32 quoteHash\n ) external nonReentrant {\n QuotesV2.PegOutQuote storage quote = registeredPegoutQuotes[quoteHash];\n\n require(quote.lbcAddress != address(0), \"LBC042\");\n require(\n block.timestamp > quote.expireDate &&\n block.number > quote.expireBlock,\n \"LBC041\"\n );\n\n uint valueToTransfer = quote.value + quote.callFee + quote.productFeeAmount + quote.gasFee;\n address addressToTransfer = quote.rskRefundAddress;\n\n uint penalty = min(quote.penaltyFee, pegoutCollateral[quote.lpRskAddress]);\n pegoutCollateral[quote.lpRskAddress] -= penalty;\n\n emit Penalized(quote.lpRskAddress, penalty, quoteHash);\n emit PegOutUserRefunded(\n quoteHash,\n valueToTransfer,\n quote.rskRefundAddress\n );\n\n delete registeredPegoutQuotes[quoteHash];\n pegoutRegistry[quoteHash].completed = true;\n\n (bool sent,) = addressToTransfer.call{value: valueToTransfer}(\"\");\n require(sent, \"LBC044\");\n }\n\n function refundPegOut(\n bytes32 quoteHash,\n bytes memory btcTx,\n bytes32 btcBlockHeaderHash,\n uint256 partialMerkleTree,\n bytes32[] memory merkleBranchHashes\n ) external nonReentrant onlyRegisteredForPegout {\n require(pegoutRegistry[quoteHash].completed == false, \"LBC064\");\n QuotesV2.PegOutQuote storage quote = registeredPegoutQuotes[quoteHash];\n require(quote.lbcAddress != address(0), \"LBC042\");\n BtcUtils.TxRawOutput[] memory outputs = BtcUtils.getOutputs(btcTx);\n bytes memory scriptContent = BtcUtils.parseNullDataScript(outputs[QUOTE_HASH_OUTPUT].pkScript);\n require(scriptContent.length == 33 && scriptContent[0] == 0x20, \"LBC075\");\n // shift the array to remove the first byte (the size)\n for (uint8 i = 0 ; i < scriptContent.length - 1; i++) {\n scriptContent[i] = scriptContent[i + 1];\n }\n bytes32 txQuoteHash = abi.decode(scriptContent, (bytes32));\n require(quoteHash == txQuoteHash, \"LBC069\");\n require(msg.sender == quote.lpRskAddress, \"LBC048\");\n require(\n bridge.getBtcTransactionConfirmations(\n BtcUtils.hashBtcTx(btcTx),\n btcBlockHeaderHash,\n partialMerkleTree,\n merkleBranchHashes\n ) >= int(uint256(quote.transferConfirmations)),\n \"LBC049\"\n );\n uint requiredAmount = quote.value;\n if (quote.value > SAT_TO_WEI_CONVERSION && (quote.value % SAT_TO_WEI_CONVERSION) != 0) {\n requiredAmount = quote.value - (quote.value % SAT_TO_WEI_CONVERSION);\n }\n uint paidAmount = outputs[PAY_TO_ADDRESS_OUTPUT].value * SAT_TO_WEI_CONVERSION;\n require(requiredAmount <= paidAmount, \"LBC067\");\n bytes memory btcTxDestination = BtcUtils.outputScriptToAddress(\n outputs[PAY_TO_ADDRESS_OUTPUT].pkScript,\n mainnet\n );\n require(keccak256(quote.deposityAddress) == keccak256(btcTxDestination), \"LBC068\");\n\n if (\n shouldPenalizePegOutLP(\n quote,\n txQuoteHash,\n btcBlockHeaderHash\n )\n ) {\n uint penalty = min(\n quote.penaltyFee,\n pegoutCollateral[quote.lpRskAddress]\n );\n pegoutCollateral[quote.lpRskAddress] -= penalty;\n emit Penalized(quote.lpRskAddress, penalty, txQuoteHash);\n }\n\n (bool sent,) = quote.lpRskAddress.call{\n value: quote.value + quote.callFee + quote.gasFee\n }(\"\");\n require(sent, \"LBC050\");\n\n payToFeeCollector(quote.productFeeAmount, quoteHash);\n\n delete registeredPegoutQuotes[txQuoteHash];\n pegoutRegistry[txQuoteHash].completed = true;\n emit PegOutRefunded(txQuoteHash);\n }\n\n function validatePeginDepositAddress(\n QuotesV2.PeginQuote memory quote,\n bytes memory depositAddress\n ) external view returns (bool) {\n bytes32 derivationValue = keccak256(\n bytes.concat(\n hashQuote(quote),\n quote.btcRefundAddress,\n bytes20(quote.lbcAddress),\n quote.liquidityProviderBtcAddress\n )\n );\n bytes memory flyoverRedeemScript = bytes.concat(\n hex\"20\",\n derivationValue,\n hex\"75\",\n bridge.getActivePowpegRedeemScript()\n );\n return BtcUtils.validateP2SHAdress(depositAddress, flyoverRedeemScript, mainnet);\n }\n\n /**\n @dev Calculates hash of a quote. Note: besides calculation this function also validates the quote.\n @param quote The quote of the service\n @return The hash of a quote\n */\n function hashQuote(QuotesV2.PeginQuote memory quote) public view returns (bytes32) {\n return validateAndHashQuote(quote);\n }\n\n function hashPegoutQuote(\n QuotesV2.PegOutQuote memory quote\n ) public view returns (bytes32) {\n return validateAndHashPegOutQuote(quote);\n }\n\n function validateAndHashQuote(\n QuotesV2.PeginQuote memory quote\n ) private view returns (bytes32) {\n require(address(this) == quote.lbcAddress, \"LBC051\");\n require(\n address(bridge) != quote.contractAddress,\n \"LBC052\"\n );\n require(\n quote.btcRefundAddress.length == 21 ||\n quote.btcRefundAddress.length == 33,\n \"LBC053\"\n );\n require(\n quote.liquidityProviderBtcAddress.length == 21,\n \"LBC054\"\n );\n require(\n quote.value + quote.callFee + quote.productFeeAmount + quote.gasFee >= minPegIn,\n \"LBC055\"\n );\n require(\n type(uint32).max >= uint64(quote.agreementTimestamp) + uint64(quote.timeForDeposit),\n \"LBC071\"\n );\n\n return keccak256(QuotesV2.encodeQuote(quote));\n }\n\n function validateAndHashPegOutQuote(\n QuotesV2.PegOutQuote memory quote\n ) private view returns (bytes32) {\n require(address(this) == quote.lbcAddress, \"LBC056\");\n\n return keccak256(QuotesV2.encodePegOutQuote(quote));\n }\n\n function min(uint a, uint b) private pure returns (uint) {\n return a < b ? a : b;\n }\n\n // IMPORTANT: These methods should remain private at all costs\n function increaseBalance(address dest, uint amount) private {\n balances[dest] += amount;\n emit BalanceIncrease(dest, amount);\n }\n\n function decreaseBalance(address dest, uint amount) private {\n balances[dest] -= amount;\n emit BalanceDecrease(dest, amount);\n }\n\n /**\n @dev Checks if a liquidity provider is registered\n @param addr The address of the liquidity provider\n @return Boolean indicating whether the liquidity provider is registered\n */\n function isRegistered(address addr) private view returns (bool) {\n return collateral[addr] > 0 && resignationBlockNum[addr] == 0;\n }\n\n function isRegisteredForPegout(address addr) private view returns (bool) {\n return pegoutCollateral[addr] > 0 && resignationBlockNum[addr] == 0;\n }\n\n /**\n @dev Registers a transaction with the bridge contract\n @param quote The quote of the service\n @param btcRawTransaction The peg-in transaction\n @param partialMerkleTree The merkle tree path that proves transaction inclusion\n @param height The block that contains the transaction\n @return The total peg-in amount received from the bridge contract or an error code\n */\n function registerBridge(\n QuotesV2.PeginQuote memory quote,\n bytes memory btcRawTransaction,\n bytes memory partialMerkleTree,\n uint256 height,\n bytes32 derivationHash\n ) private returns (int256) {\n return\n bridge.registerFastBridgeBtcTransaction(\n btcRawTransaction,\n height,\n partialMerkleTree,\n derivationHash,\n quote.btcRefundAddress,\n payable(this),\n quote.liquidityProviderBtcAddress,\n callRegistry[derivationHash].timestamp > 0 && callRegistry[derivationHash].success\n );\n }\n\n /**\n @dev Checks if a liquidity provider should be penalized\n @param quote The quote of the service\n @param amount The transferred amount or an error code\n @param callTimestamp The time that the liquidity provider called callForUser\n @param height The block height where the peg-in transaction is included\n @return Boolean indicating whether the penalty applies\n */\n function shouldPenalizeLP(\n QuotesV2.PeginQuote memory quote,\n int256 amount,\n uint256 callTimestamp,\n uint256 height\n ) private view returns (bool) {\n // do not penalize if deposit amount is insufficient\n if (amount > 0 && uint256(amount) < quote.value + quote.callFee + quote.productFeeAmount + quote.gasFee) {\n return false;\n }\n\n bytes memory firstConfirmationHeader = bridge\n .getBtcBlockchainBlockHeaderByHeight(height);\n require(firstConfirmationHeader.length > 0, \"Invalid block height\");\n\n uint256 firstConfirmationTimestamp = BtcUtils.getBtcBlockTimestamp(\n firstConfirmationHeader\n );\n\n // do not penalize if deposit was not made on time\n // prevent overflow when collateral is less than penalty fee.\n uint timeLimit = quote.agreementTimestamp + quote.timeForDeposit;\n if (firstConfirmationTimestamp > timeLimit) {\n return false;\n }\n\n // penalize if call was not made\n if (callTimestamp == 0) {\n return true;\n }\n\n bytes memory nConfirmationsHeader = bridge\n .getBtcBlockchainBlockHeaderByHeight(\n height + quote.depositConfirmations - 1\n );\n require(nConfirmationsHeader.length > 0, \"LBC058\");\n\n uint256 nConfirmationsTimestamp = BtcUtils.getBtcBlockTimestamp(\n nConfirmationsHeader\n );\n\n // penalize if the call was not made on time\n if (callTimestamp > nConfirmationsTimestamp + quote.callTime) {\n return true;\n }\n return false;\n }\n\n function shouldPenalizePegOutLP(\n QuotesV2.PegOutQuote memory quote,\n bytes32 quoteHash,\n bytes32 blockHash\n ) private view returns (bool) {\n bytes memory firstConfirmationHeader = bridge.getBtcBlockchainBlockHeaderByHash(blockHash);\n require(firstConfirmationHeader.length > 0, \"LBC059\");\n\n uint256 firstConfirmationTimestamp = BtcUtils.getBtcBlockTimestamp(firstConfirmationHeader);\n\n // penalize if the transfer was not made on time\n if (firstConfirmationTimestamp > pegoutRegistry[quoteHash].depositTimestamp +\n quote.transferTime + btcBlockTime) {\n return true;\n }\n\n // penalize if LP is refunding after expiration\n if (block.timestamp > quote.expireDate || block.number > quote.expireBlock) {\n return true;\n }\n\n return false;\n }\n\n function payToFeeCollector(uint amount, bytes32 quoteHash) private {\n if (amount > 0) {\n (bool daoSuccess,) = payable(daoFeeCollectorAddress).call{value: amount}(\"\");\n require(daoSuccess, \"LBC074\");\n emit DaoFeeSent(quoteHash, amount);\n }\n }\n\n function updateProvider(string memory _name, string memory _url) external {\n require(bytes(_name).length > 0 && bytes(_url).length > 0, \"LBC076\");\n LiquidityProvider storage lp;\n for (uint i = 1; i <= providerId; i++) {\n lp = liquidityProviders[i];\n if (msg.sender == lp.provider) {\n lp.name = _name;\n lp.apiBaseUrl = _url;\n emit ProviderUpdate(msg.sender, lp.name, lp.apiBaseUrl);\n return;\n }\n }\n revert(\"LBC001\");\n }\n}\n", - "sourcePath": "/Users/luischavez/iov/liquidity-bridge-contract/contracts/LiquidityBridgeContractV2.sol", - "ast": { - "absolutePath": "project:/contracts/LiquidityBridgeContractV2.sol", - "exportedSymbols": { - "Bridge": [ - 4173 - ], - "BtcUtils": [ - 3743 - ], - "ContextUpgradeable": [ - 767 - ], - "Initializable": [ - 301 - ], - "LiquidityBridgeContractV2": [ - 10830 - ], - "OpCodes": [ - 3770 - ], - "OwnableUpgradeable": [ - 132 - ], - "QuotesV2": [ - 11483 - ], - "ReentrancyGuardUpgradeable": [ - 386 - ], - "SignatureValidator": [ - 11532 - ] - }, - "id": 10831, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 7927, - "literals": [ - "solidity", - "^", - "0.8", - ".18" - ], - "nodeType": "PragmaDirective", - "src": "32:24:24" - }, - { - "id": 7928, - "literals": [ - "experimental", - "ABIEncoderV2" - ], - "nodeType": "PragmaDirective", - "src": "57:33:24" - }, - { - "absolutePath": "project:/contracts/Bridge.sol", - "file": "./Bridge.sol", - "id": 7929, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 10831, - "sourceUnit": 4174, - "src": "92:22:24", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "project:/contracts/QuotesV2.sol", - "file": "./QuotesV2.sol", - "id": 7930, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 10831, - "sourceUnit": 11484, - "src": "115:24:24", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "project:/contracts/SignatureValidator.sol", - "file": "./SignatureValidator.sol", - "id": 7931, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 10831, - "sourceUnit": 11533, - "src": "140:34:24", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "@rsksmart/btc-transaction-solidity-helper/contracts/BtcUtils.sol", - "file": "@rsksmart/btc-transaction-solidity-helper/contracts/BtcUtils.sol", - "id": 7932, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 10831, - "sourceUnit": 3744, - "src": "175:74:24", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol", - "file": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol", - "id": 7933, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 10831, - "sourceUnit": 133, - "src": "250:75:24", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.sol", - "file": "@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.sol", - "id": 7934, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 10831, - "sourceUnit": 387, - "src": "326:85:24", - "symbolAliases": [], - "unitAlias": "" - }, - { - "abstract": false, - "baseContracts": [ - { - "baseName": { - "id": 7936, - "name": "Initializable", - "nameLocations": [ - "519:13:24" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 301, - "src": "519:13:24" - }, - "id": 7937, - "nodeType": "InheritanceSpecifier", - "src": "519:13:24" - }, - { - "baseName": { - "id": 7938, - "name": "OwnableUpgradeable", - "nameLocations": [ - "534:18:24" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 132, - "src": "534:18:24" - }, - "id": 7939, - "nodeType": "InheritanceSpecifier", - "src": "534:18:24" - }, - { - "baseName": { - "id": 7940, - "name": "ReentrancyGuardUpgradeable", - "nameLocations": [ - "554:26:24" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 386, - "src": "554:26:24" - }, - "id": 7941, - "nodeType": "InheritanceSpecifier", - "src": "554:26:24" - } - ], - "canonicalName": "LiquidityBridgeContractV2", - "contractDependencies": [], - "contractKind": "contract", - "documentation": { - "id": 7935, - "nodeType": "StructuredDocumentation", - "src": "413:66:24", - "text": "@title Contract that assists with the Flyover protocol" - }, - "fullyImplemented": true, - "id": 10830, - "linearizedBaseContracts": [ - 10830, - 386, - 132, - 767, - 301 - ], - "name": "LiquidityBridgeContractV2", - "nameLocation": "490:25:24", - "nodeType": "ContractDefinition", - "nodes": [ - { - "constant": true, - "functionSelector": "9d79b59b", - "id": 7944, - "mutability": "constant", - "name": "MAX_CALL_GAS_COST", - "nameLocation": "610:17:24", - "nodeType": "VariableDeclaration", - "scope": 10830, - "src": "587:48:24", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - }, - "typeName": { - "id": 7942, - "name": "uint16", - "nodeType": "ElementaryTypeName", - "src": "587:6:24", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - "value": { - "hexValue": "3335303030", - "id": 7943, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "630:5:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_35000_by_1", - "typeString": "int_const 35000" - }, - "value": "35000" - }, - "visibility": "public" - }, - { - "constant": true, - "functionSelector": "e1de16c6", - "id": 7947, - "mutability": "constant", - "name": "MAX_REFUND_GAS_LIMIT", - "nameLocation": "664:20:24", - "nodeType": "VariableDeclaration", - "scope": 10830, - "src": "641:50:24", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - }, - "typeName": { - "id": 7945, - "name": "uint16", - "nodeType": "ElementaryTypeName", - "src": "641:6:24", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - "value": { - "hexValue": "32333030", - "id": 7946, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "687:4:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_2300_by_1", - "typeString": "int_const 2300" - }, - "value": "2300" - }, - "visibility": "public" - }, - { - "constant": true, - "functionSelector": "9cd6557f", - "id": 7950, - "mutability": "constant", - "name": "UNPROCESSED_QUOTE_CODE", - "nameLocation": "720:22:24", - "nodeType": "VariableDeclaration", - "scope": 10830, - "src": "698:48:24", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "typeName": { - "id": 7948, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "698:5:24", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "value": { - "hexValue": "30", - "id": 7949, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "745:1:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "visibility": "public" - }, - { - "constant": true, - "functionSelector": "04ade855", - "id": 7953, - "mutability": "constant", - "name": "CALL_DONE_CODE", - "nameLocation": "774:14:24", - "nodeType": "VariableDeclaration", - "scope": 10830, - "src": "752:40:24", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "typeName": { - "id": 7951, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "752:5:24", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "value": { - "hexValue": "31", - "id": 7952, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "791:1:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "visibility": "public" - }, - { - "constant": true, - "functionSelector": "0a7bf57a", - "id": 7956, - "mutability": "constant", - "name": "PROCESSED_QUOTE_CODE", - "nameLocation": "820:20:24", - "nodeType": "VariableDeclaration", - "scope": 10830, - "src": "798:46:24", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "typeName": { - "id": 7954, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "798:5:24", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "value": { - "hexValue": "32", - "id": 7955, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "843:1:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_2_by_1", - "typeString": "int_const 2" - }, - "value": "2" - }, - "visibility": "public" - }, - { - "constant": true, - "functionSelector": "e8fcce71", - "id": 7960, - "mutability": "constant", - "name": "BRIDGE_REFUNDED_USER_ERROR_CODE", - "nameLocation": "873:31:24", - "nodeType": "VariableDeclaration", - "scope": 10830, - "src": "851:61:24", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int16", - "typeString": "int16" - }, - "typeName": { - "id": 7957, - "name": "int16", - "nodeType": "ElementaryTypeName", - "src": "851:5:24", - "typeDescriptions": { - "typeIdentifier": "t_int16", - "typeString": "int16" - } - }, - "value": { - "id": 7959, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "-", - "prefix": true, - "src": "907:5:24", - "subExpression": { - "hexValue": "313030", - "id": 7958, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "909:3:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_100_by_1", - "typeString": "int_const 100" - }, - "value": "100" - }, - "typeDescriptions": { - "typeIdentifier": "t_rational_minus_100_by_1", - "typeString": "int_const -100" - } - }, - "visibility": "public" - }, - { - "constant": true, - "functionSelector": "e30e6ea3", - "id": 7964, - "mutability": "constant", - "name": "BRIDGE_REFUNDED_LP_ERROR_CODE", - "nameLocation": "940:29:24", - "nodeType": "VariableDeclaration", - "scope": 10830, - "src": "918:59:24", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int16", - "typeString": "int16" - }, - "typeName": { - "id": 7961, - "name": "int16", - "nodeType": "ElementaryTypeName", - "src": "918:5:24", - "typeDescriptions": { - "typeIdentifier": "t_int16", - "typeString": "int16" - } - }, - "value": { - "id": 7963, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "-", - "prefix": true, - "src": "972:5:24", - "subExpression": { - "hexValue": "323030", - "id": 7962, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "974:3:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_200_by_1", - "typeString": "int_const 200" - }, - "value": "200" - }, - "typeDescriptions": { - "typeIdentifier": "t_rational_minus_200_by_1", - "typeString": "int_const -200" - } - }, - "visibility": "public" - }, - { - "constant": true, - "functionSelector": "ae76ce86", - "id": 7968, - "mutability": "constant", - "name": "BRIDGE_UNPROCESSABLE_TX_NOT_CONTRACT_ERROR_CODE", - "nameLocation": "1005:47:24", - "nodeType": "VariableDeclaration", - "scope": 10830, - "src": "983:77:24", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int16", - "typeString": "int16" - }, - "typeName": { - "id": 7965, - "name": "int16", - "nodeType": "ElementaryTypeName", - "src": "983:5:24", - "typeDescriptions": { - "typeIdentifier": "t_int16", - "typeString": "int16" - } - }, - "value": { - "id": 7967, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "-", - "prefix": true, - "src": "1055:5:24", - "subExpression": { - "hexValue": "333030", - "id": 7966, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1057:3:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_300_by_1", - "typeString": "int_const 300" - }, - "value": "300" - }, - "typeDescriptions": { - "typeIdentifier": "t_rational_minus_300_by_1", - "typeString": "int_const -300" - } - }, - "visibility": "public" - }, - { - "constant": true, - "functionSelector": "8d597939", - "id": 7972, - "mutability": "constant", - "name": "BRIDGE_UNPROCESSABLE_TX_INVALID_SENDER_ERROR_CODE", - "nameLocation": "1088:49:24", - "nodeType": "VariableDeclaration", - "scope": 10830, - "src": "1066:79:24", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int16", - "typeString": "int16" - }, - "typeName": { - "id": 7969, - "name": "int16", - "nodeType": "ElementaryTypeName", - "src": "1066:5:24", - "typeDescriptions": { - "typeIdentifier": "t_int16", - "typeString": "int16" - } - }, - "value": { - "id": 7971, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "-", - "prefix": true, - "src": "1140:5:24", - "subExpression": { - "hexValue": "333031", - "id": 7970, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1142:3:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_301_by_1", - "typeString": "int_const 301" - }, - "value": "301" - }, - "typeDescriptions": { - "typeIdentifier": "t_rational_minus_301_by_1", - "typeString": "int_const -301" - } - }, - "visibility": "public" - }, - { - "constant": true, - "functionSelector": "a93bb247", - "id": 7976, - "mutability": "constant", - "name": "BRIDGE_UNPROCESSABLE_TX_ALREADY_PROCESSED_ERROR_CODE", - "nameLocation": "1173:52:24", - "nodeType": "VariableDeclaration", - "scope": 10830, - "src": "1151:82:24", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int16", - "typeString": "int16" - }, - "typeName": { - "id": 7973, - "name": "int16", - "nodeType": "ElementaryTypeName", - "src": "1151:5:24", - "typeDescriptions": { - "typeIdentifier": "t_int16", - "typeString": "int16" - } - }, - "value": { - "id": 7975, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "-", - "prefix": true, - "src": "1228:5:24", - "subExpression": { - "hexValue": "333032", - "id": 7974, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1230:3:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_302_by_1", - "typeString": "int_const 302" - }, - "value": "302" - }, - "typeDescriptions": { - "typeIdentifier": "t_rational_minus_302_by_1", - "typeString": "int_const -302" - } - }, - "visibility": "public" - }, - { - "constant": true, - "functionSelector": "c525cdd8", - "id": 7980, - "mutability": "constant", - "name": "BRIDGE_UNPROCESSABLE_TX_VALIDATIONS_ERROR", - "nameLocation": "1261:41:24", - "nodeType": "VariableDeclaration", - "scope": 10830, - "src": "1239:71:24", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int16", - "typeString": "int16" - }, - "typeName": { - "id": 7977, - "name": "int16", - "nodeType": "ElementaryTypeName", - "src": "1239:5:24", - "typeDescriptions": { - "typeIdentifier": "t_int16", - "typeString": "int16" - } - }, - "value": { - "id": 7979, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "-", - "prefix": true, - "src": "1305:5:24", - "subExpression": { - "hexValue": "333033", - "id": 7978, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1307:3:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_303_by_1", - "typeString": "int_const 303" - }, - "value": "303" - }, - "typeDescriptions": { - "typeIdentifier": "t_rational_minus_303_by_1", - "typeString": "int_const -303" - } - }, - "visibility": "public" - }, - { - "constant": true, - "functionSelector": "cfb92f0a", - "id": 7984, - "mutability": "constant", - "name": "BRIDGE_UNPROCESSABLE_TX_VALUE_ZERO_ERROR", - "nameLocation": "1338:40:24", - "nodeType": "VariableDeclaration", - "scope": 10830, - "src": "1316:70:24", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int16", - "typeString": "int16" - }, - "typeName": { - "id": 7981, - "name": "int16", - "nodeType": "ElementaryTypeName", - "src": "1316:5:24", - "typeDescriptions": { - "typeIdentifier": "t_int16", - "typeString": "int16" - } - }, - "value": { - "id": 7983, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "-", - "prefix": true, - "src": "1381:5:24", - "subExpression": { - "hexValue": "333034", - "id": 7982, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1383:3:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_304_by_1", - "typeString": "int_const 304" - }, - "value": "304" - }, - "typeDescriptions": { - "typeIdentifier": "t_rational_minus_304_by_1", - "typeString": "int_const -304" - } - }, - "visibility": "public" - }, - { - "constant": true, - "functionSelector": "418663a2", - "id": 7988, - "mutability": "constant", - "name": "BRIDGE_UNPROCESSABLE_TX_UTXO_AMOUNT_SENT_BELOW_MINIMUM_ERROR", - "nameLocation": "1414:60:24", - "nodeType": "VariableDeclaration", - "scope": 10830, - "src": "1392:94:24", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int16", - "typeString": "int16" - }, - "typeName": { - "id": 7985, - "name": "int16", - "nodeType": "ElementaryTypeName", - "src": "1392:5:24", - "typeDescriptions": { - "typeIdentifier": "t_int16", - "typeString": "int16" - } - }, - "value": { - "id": 7987, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "-", - "prefix": true, - "src": "1481:5:24", - "subExpression": { - "hexValue": "333035", - "id": 7986, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1483:3:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_305_by_1", - "typeString": "int_const 305" - }, - "value": "305" - }, - "typeDescriptions": { - "typeIdentifier": "t_rational_minus_305_by_1", - "typeString": "int_const -305" - } - }, - "visibility": "public" - }, - { - "constant": true, - "functionSelector": "ae93b67b", - "id": 7992, - "mutability": "constant", - "name": "BRIDGE_GENERIC_ERROR", - "nameLocation": "1514:20:24", - "nodeType": "VariableDeclaration", - "scope": 10830, - "src": "1492:50:24", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int16", - "typeString": "int16" - }, - "typeName": { - "id": 7989, - "name": "int16", - "nodeType": "ElementaryTypeName", - "src": "1492:5:24", - "typeDescriptions": { - "typeIdentifier": "t_int16", - "typeString": "int16" - } - }, - "value": { - "id": 7991, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "-", - "prefix": true, - "src": "1537:5:24", - "subExpression": { - "hexValue": "393030", - "id": 7990, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1539:3:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_900_by_1", - "typeString": "int_const 900" - }, - "value": "900" - }, - "typeDescriptions": { - "typeIdentifier": "t_rational_minus_900_by_1", - "typeString": "int_const -900" - } - }, - "visibility": "public" - }, - { - "constant": true, - "functionSelector": "be6de4eb", - "id": 7995, - "mutability": "constant", - "name": "PAY_TO_ADDRESS_OUTPUT", - "nameLocation": "1569:21:24", - "nodeType": "VariableDeclaration", - "scope": 10830, - "src": "1548:46:24", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 7993, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "1548:4:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": { - "hexValue": "30", - "id": 7994, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1593:1:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "visibility": "public" - }, - { - "constant": true, - "functionSelector": "a4a5ba50", - "id": 7998, - "mutability": "constant", - "name": "QUOTE_HASH_OUTPUT", - "nameLocation": "1621:17:24", - "nodeType": "VariableDeclaration", - "scope": 10830, - "src": "1600:42:24", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 7996, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "1600:4:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": { - "hexValue": "31", - "id": 7997, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1641:1:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "visibility": "public" - }, - { - "constant": true, - "functionSelector": "b5ecfc06", - "id": 8003, - "mutability": "constant", - "name": "SAT_TO_WEI_CONVERSION", - "nameLocation": "1669:21:24", - "nodeType": "VariableDeclaration", - "scope": 10830, - "src": "1648:51:24", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 7999, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "1648:4:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": { - "commonType": { - "typeIdentifier": "t_rational_10000000000_by_1", - "typeString": "int_const 10000000000" - }, - "id": 8002, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "leftExpression": { - "hexValue": "3130", - "id": 8000, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1693:2:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_10_by_1", - "typeString": "int_const 10" - }, - "value": "10" - }, - "nodeType": "BinaryOperation", - "operator": "**", - "rightExpression": { - "hexValue": "3130", - "id": 8001, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1697:2:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_10_by_1", - "typeString": "int_const 10" - }, - "value": "10" - }, - "src": "1693:6:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_10000000000_by_1", - "typeString": "int_const 10000000000" - } - }, - "visibility": "public" - }, - { - "canonicalName": "LiquidityBridgeContractV2.Registry", - "id": 8008, - "members": [ - { - "constant": false, - "id": 8005, - "mutability": "mutable", - "name": "timestamp", - "nameLocation": "1739:9:24", - "nodeType": "VariableDeclaration", - "scope": 8008, - "src": "1732:16:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "typeName": { - "id": 8004, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "1732:6:24", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 8007, - "mutability": "mutable", - "name": "success", - "nameLocation": "1763:7:24", - "nodeType": "VariableDeclaration", - "scope": 8008, - "src": "1758:12:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 8006, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1758:4:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "name": "Registry", - "nameLocation": "1713:8:24", - "nodeType": "StructDefinition", - "scope": 10830, - "src": "1706:71:24", - "visibility": "public" - }, - { - "canonicalName": "LiquidityBridgeContractV2.PegoutRecord", - "id": 8013, - "members": [ - { - "constant": false, - "id": 8010, - "mutability": "mutable", - "name": "depositTimestamp", - "nameLocation": "1821:16:24", - "nodeType": "VariableDeclaration", - "scope": 8013, - "src": "1813:24:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 8009, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1813:7:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 8012, - "mutability": "mutable", - "name": "completed", - "nameLocation": "1852:9:24", - "nodeType": "VariableDeclaration", - "scope": 8013, - "src": "1847:14:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 8011, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1847:4:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "name": "PegoutRecord", - "nameLocation": "1790:12:24", - "nodeType": "StructDefinition", - "scope": 10830, - "src": "1783:85:24", - "visibility": "public" - }, - { - "canonicalName": "LiquidityBridgeContractV2.LiquidityProvider", - "id": 8026, - "members": [ - { - "constant": false, - "id": 8015, - "mutability": "mutable", - "name": "id", - "nameLocation": "1914:2:24", - "nodeType": "VariableDeclaration", - "scope": 8026, - "src": "1909:7:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 8014, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "1909:4:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 8017, - "mutability": "mutable", - "name": "provider", - "nameLocation": "1934:8:24", - "nodeType": "VariableDeclaration", - "scope": 8026, - "src": "1926:16:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 8016, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1926:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 8019, - "mutability": "mutable", - "name": "name", - "nameLocation": "1959:4:24", - "nodeType": "VariableDeclaration", - "scope": 8026, - "src": "1952:11:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - }, - "typeName": { - "id": 8018, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1952:6:24", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 8021, - "mutability": "mutable", - "name": "apiBaseUrl", - "nameLocation": "1980:10:24", - "nodeType": "VariableDeclaration", - "scope": 8026, - "src": "1973:17:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - }, - "typeName": { - "id": 8020, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1973:6:24", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 8023, - "mutability": "mutable", - "name": "status", - "nameLocation": "2005:6:24", - "nodeType": "VariableDeclaration", - "scope": 8026, - "src": "2000:11:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 8022, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "2000:4:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 8025, - "mutability": "mutable", - "name": "providerType", - "nameLocation": "2028:12:24", - "nodeType": "VariableDeclaration", - "scope": 8026, - "src": "2021:19:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - }, - "typeName": { - "id": 8024, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2021:6:24", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "name": "LiquidityProvider", - "nameLocation": "1881:17:24", - "nodeType": "StructDefinition", - "scope": 10830, - "src": "1874:173:24", - "visibility": "public" - }, - { - "anonymous": false, - "eventSelector": "a9d44d6e13bb3fee938c3f66d1103e91f8dc6b12d4405a55eea558e8f275aa6e", - "id": 8034, - "name": "Register", - "nameLocation": "2059:8:24", - "nodeType": "EventDefinition", - "parameters": { - "id": 8033, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 8028, - "indexed": false, - "mutability": "mutable", - "name": "id", - "nameLocation": "2073:2:24", - "nodeType": "VariableDeclaration", - "scope": 8034, - "src": "2068:7:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 8027, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "2068:4:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 8030, - "indexed": true, - "mutability": "mutable", - "name": "from", - "nameLocation": "2093:4:24", - "nodeType": "VariableDeclaration", - "scope": 8034, - "src": "2077:20:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 8029, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2077:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 8032, - "indexed": false, - "mutability": "mutable", - "name": "amount", - "nameLocation": "2107:6:24", - "nodeType": "VariableDeclaration", - "scope": 8034, - "src": "2099:14:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 8031, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2099:7:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "2067:47:24" - }, - "src": "2053:62:24" - }, - { - "anonymous": false, - "eventSelector": "456e0f4ea86ac283092c750200e8c877f6ad8901ae575f90e02081acd455af84", - "id": 8040, - "name": "CollateralIncrease", - "nameLocation": "2126:18:24", - "nodeType": "EventDefinition", - "parameters": { - "id": 8039, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 8036, - "indexed": false, - "mutability": "mutable", - "name": "from", - "nameLocation": "2153:4:24", - "nodeType": "VariableDeclaration", - "scope": 8040, - "src": "2145:12:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 8035, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2145:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 8038, - "indexed": false, - "mutability": "mutable", - "name": "amount", - "nameLocation": "2167:6:24", - "nodeType": "VariableDeclaration", - "scope": 8040, - "src": "2159:14:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 8037, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2159:7:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "2144:30:24" - }, - "src": "2120:55:24" - }, - { - "anonymous": false, - "eventSelector": "873d5a2949567203ad4f0cceef41c2813c87b9a397ee777d87a8acdaec2c6fa9", - "id": 8046, - "name": "PegoutCollateralIncrease", - "nameLocation": "2186:24:24", - "nodeType": "EventDefinition", - "parameters": { - "id": 8045, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 8042, - "indexed": false, - "mutability": "mutable", - "name": "from", - "nameLocation": "2219:4:24", - "nodeType": "VariableDeclaration", - "scope": 8046, - "src": "2211:12:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 8041, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2211:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 8044, - "indexed": false, - "mutability": "mutable", - "name": "amount", - "nameLocation": "2233:6:24", - "nodeType": "VariableDeclaration", - "scope": 8046, - "src": "2225:14:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 8043, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2225:7:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "2210:30:24" - }, - "src": "2180:61:24" - }, - { - "anonymous": false, - "eventSelector": "7fcf532c15f0a6db0bd6d0e038bea71d30d808c7d98cb3bf7268a95bf5081b65", - "id": 8052, - "name": "Withdrawal", - "nameLocation": "2252:10:24", - "nodeType": "EventDefinition", - "parameters": { - "id": 8051, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 8048, - "indexed": false, - "mutability": "mutable", - "name": "from", - "nameLocation": "2271:4:24", - "nodeType": "VariableDeclaration", - "scope": 8052, - "src": "2263:12:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 8047, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2263:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 8050, - "indexed": false, - "mutability": "mutable", - "name": "amount", - "nameLocation": "2285:6:24", - "nodeType": "VariableDeclaration", - "scope": 8052, - "src": "2277:14:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 8049, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2277:7:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "2262:30:24" - }, - "src": "2246:47:24" - }, - { - "anonymous": false, - "eventSelector": "a8e76b822fc682be77f3b1c822ea81f6bda5aed92ba82e6873bfd889f328d1d2", - "id": 8058, - "name": "WithdrawCollateral", - "nameLocation": "2304:18:24", - "nodeType": "EventDefinition", - "parameters": { - "id": 8057, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 8054, - "indexed": false, - "mutability": "mutable", - "name": "from", - "nameLocation": "2331:4:24", - "nodeType": "VariableDeclaration", - "scope": 8058, - "src": "2323:12:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 8053, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2323:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 8056, - "indexed": false, - "mutability": "mutable", - "name": "amount", - "nameLocation": "2345:6:24", - "nodeType": "VariableDeclaration", - "scope": 8058, - "src": "2337:14:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 8055, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2337:7:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "2322:30:24" - }, - "src": "2298:55:24" - }, - { - "anonymous": false, - "eventSelector": "a6674aa33cd1b7435474751667707bf05fde99e537d67043ec5f907782577d86", - "id": 8062, - "name": "Resigned", - "nameLocation": "2364:8:24", - "nodeType": "EventDefinition", - "parameters": { - "id": 8061, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 8060, - "indexed": false, - "mutability": "mutable", - "name": "from", - "nameLocation": "2381:4:24", - "nodeType": "VariableDeclaration", - "scope": 8062, - "src": "2373:12:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 8059, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2373:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "2372:14:24" - }, - "src": "2358:29:24" - }, - { - "anonymous": false, - "eventSelector": "bfc7404e6fe464f0646fe2c6ab942b92d56be722bb39f8c6bc4830d2d32fb80d", - "id": 8078, - "name": "CallForUser", - "nameLocation": "2398:11:24", - "nodeType": "EventDefinition", - "parameters": { - "id": 8077, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 8064, - "indexed": true, - "mutability": "mutable", - "name": "from", - "nameLocation": "2435:4:24", - "nodeType": "VariableDeclaration", - "scope": 8078, - "src": "2419:20:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 8063, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2419:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 8066, - "indexed": true, - "mutability": "mutable", - "name": "dest", - "nameLocation": "2465:4:24", - "nodeType": "VariableDeclaration", - "scope": 8078, - "src": "2449:20:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 8065, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2449:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 8068, - "indexed": false, - "mutability": "mutable", - "name": "gasLimit", - "nameLocation": "2484:8:24", - "nodeType": "VariableDeclaration", - "scope": 8078, - "src": "2479:13:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 8067, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "2479:4:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 8070, - "indexed": false, - "mutability": "mutable", - "name": "value", - "nameLocation": "2507:5:24", - "nodeType": "VariableDeclaration", - "scope": 8078, - "src": "2502:10:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 8069, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "2502:4:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 8072, - "indexed": false, - "mutability": "mutable", - "name": "data", - "nameLocation": "2528:4:24", - "nodeType": "VariableDeclaration", - "scope": 8078, - "src": "2522:10:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 8071, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "2522:5:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 8074, - "indexed": false, - "mutability": "mutable", - "name": "success", - "nameLocation": "2547:7:24", - "nodeType": "VariableDeclaration", - "scope": 8078, - "src": "2542:12:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 8073, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "2542:4:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 8076, - "indexed": false, - "mutability": "mutable", - "name": "quoteHash", - "nameLocation": "2572:9:24", - "nodeType": "VariableDeclaration", - "scope": 8078, - "src": "2564:17:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 8075, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "2564:7:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "2409:178:24" - }, - "src": "2392:196:24" - }, - { - "anonymous": false, - "eventSelector": "0629ae9d1dc61501b0ca90670a9a9b88daaf7504b54537b53e1219de794c63d2", - "id": 8084, - "name": "PegInRegistered", - "nameLocation": "2599:15:24", - "nodeType": "EventDefinition", - "parameters": { - "id": 8083, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 8080, - "indexed": true, - "mutability": "mutable", - "name": "quoteHash", - "nameLocation": "2631:9:24", - "nodeType": "VariableDeclaration", - "scope": 8084, - "src": "2615:25:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 8079, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "2615:7:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 8082, - "indexed": false, - "mutability": "mutable", - "name": "transferredAmount", - "nameLocation": "2649:17:24", - "nodeType": "VariableDeclaration", - "scope": 8084, - "src": "2642:24:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 8081, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "2642:6:24", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "2614:53:24" - }, - "src": "2593:75:24" - }, - { - "anonymous": false, - "eventSelector": "9685484093cc596fdaeab51abf645b1753dbb7d869bfd2eb21e2c646e47a36f4", - "id": 8092, - "name": "Penalized", - "nameLocation": "2679:9:24", - "nodeType": "EventDefinition", - "parameters": { - "id": 8091, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 8086, - "indexed": false, - "mutability": "mutable", - "name": "liquidityProvider", - "nameLocation": "2697:17:24", - "nodeType": "VariableDeclaration", - "scope": 8092, - "src": "2689:25:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 8085, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2689:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 8088, - "indexed": false, - "mutability": "mutable", - "name": "penalty", - "nameLocation": "2721:7:24", - "nodeType": "VariableDeclaration", - "scope": 8092, - "src": "2716:12:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 8087, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "2716:4:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 8090, - "indexed": false, - "mutability": "mutable", - "name": "quoteHash", - "nameLocation": "2738:9:24", - "nodeType": "VariableDeclaration", - "scope": 8092, - "src": "2730:17:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 8089, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "2730:7:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "2688:60:24" - }, - "src": "2673:76:24" - }, - { - "anonymous": false, - "eventSelector": "fb209329d5ab5b7bcb2e92f45f4534814b6e68fa5ad1f171dabc1d17d26f0ebe", - "id": 8098, - "name": "BridgeCapExceeded", - "nameLocation": "2760:17:24", - "nodeType": "EventDefinition", - "parameters": { - "id": 8097, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 8094, - "indexed": false, - "mutability": "mutable", - "name": "quoteHash", - "nameLocation": "2786:9:24", - "nodeType": "VariableDeclaration", - "scope": 8098, - "src": "2778:17:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 8093, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "2778:7:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 8096, - "indexed": false, - "mutability": "mutable", - "name": "errorCode", - "nameLocation": "2804:9:24", - "nodeType": "VariableDeclaration", - "scope": 8098, - "src": "2797:16:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 8095, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "2797:6:24", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "2777:37:24" - }, - "src": "2754:61:24" - }, - { - "anonymous": false, - "eventSelector": "42cfb81a915ac5a674852db250bf722637bee705a267633b68cab3a2dde06f53", - "id": 8104, - "name": "BalanceIncrease", - "nameLocation": "2826:15:24", - "nodeType": "EventDefinition", - "parameters": { - "id": 8103, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 8100, - "indexed": false, - "mutability": "mutable", - "name": "dest", - "nameLocation": "2850:4:24", - "nodeType": "VariableDeclaration", - "scope": 8104, - "src": "2842:12:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 8099, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2842:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 8102, - "indexed": false, - "mutability": "mutable", - "name": "amount", - "nameLocation": "2861:6:24", - "nodeType": "VariableDeclaration", - "scope": 8104, - "src": "2856:11:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 8101, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "2856:4:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "2841:27:24" - }, - "src": "2820:49:24" - }, - { - "anonymous": false, - "eventSelector": "8e51a4493a6f66c76e13fd9e3b754eafbfe21343c04508deb61be8ccc0064587", - "id": 8110, - "name": "BalanceDecrease", - "nameLocation": "2880:15:24", - "nodeType": "EventDefinition", - "parameters": { - "id": 8109, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 8106, - "indexed": false, - "mutability": "mutable", - "name": "dest", - "nameLocation": "2904:4:24", - "nodeType": "VariableDeclaration", - "scope": 8110, - "src": "2896:12:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 8105, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2896:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 8108, - "indexed": false, - "mutability": "mutable", - "name": "amount", - "nameLocation": "2915:6:24", - "nodeType": "VariableDeclaration", - "scope": 8110, - "src": "2910:11:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 8107, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "2910:4:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "2895:27:24" - }, - "src": "2874:49:24" - }, - { - "anonymous": false, - "eventSelector": "3052ea2f7e0d74fdc1c1e1f858ff1ae3d91ab1609717c3efedb95db603b255f6", - "id": 8120, - "name": "Refund", - "nameLocation": "2934:6:24", - "nodeType": "EventDefinition", - "parameters": { - "id": 8119, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 8112, - "indexed": false, - "mutability": "mutable", - "name": "dest", - "nameLocation": "2949:4:24", - "nodeType": "VariableDeclaration", - "scope": 8120, - "src": "2941:12:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 8111, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2941:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 8114, - "indexed": false, - "mutability": "mutable", - "name": "amount", - "nameLocation": "2960:6:24", - "nodeType": "VariableDeclaration", - "scope": 8120, - "src": "2955:11:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 8113, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "2955:4:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 8116, - "indexed": false, - "mutability": "mutable", - "name": "success", - "nameLocation": "2973:7:24", - "nodeType": "VariableDeclaration", - "scope": 8120, - "src": "2968:12:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 8115, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "2968:4:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 8118, - "indexed": false, - "mutability": "mutable", - "name": "quoteHash", - "nameLocation": "2990:9:24", - "nodeType": "VariableDeclaration", - "scope": 8120, - "src": "2982:17:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 8117, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "2982:7:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "2940:60:24" - }, - "src": "2928:73:24" - }, - { - "anonymous": false, - "eventSelector": "b781856ec73fd0dc39351043d1634ea22cd3277b0866ab93e7ec1801766bb384", - "id": 8124, - "name": "PegOutRefunded", - "nameLocation": "3012:14:24", - "nodeType": "EventDefinition", - "parameters": { - "id": 8123, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 8122, - "indexed": true, - "mutability": "mutable", - "name": "quoteHash", - "nameLocation": "3043:9:24", - "nodeType": "VariableDeclaration", - "scope": 8124, - "src": "3027:25:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 8121, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "3027:7:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "3026:27:24" - }, - "src": "3006:48:24" - }, - { - "anonymous": false, - "eventSelector": "b1bc7bfc0dab19777eb03aa0a5643378fc9f186c8fc5a36620d21136fbea570f", - "id": 8134, - "name": "PegOutDeposit", - "nameLocation": "3065:13:24", - "nodeType": "EventDefinition", - "parameters": { - "id": 8133, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 8126, - "indexed": true, - "mutability": "mutable", - "name": "quoteHash", - "nameLocation": "3104:9:24", - "nodeType": "VariableDeclaration", - "scope": 8134, - "src": "3088:25:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 8125, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "3088:7:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 8128, - "indexed": true, - "mutability": "mutable", - "name": "sender", - "nameLocation": "3139:6:24", - "nodeType": "VariableDeclaration", - "scope": 8134, - "src": "3123:22:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 8127, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3123:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 8130, - "indexed": false, - "mutability": "mutable", - "name": "amount", - "nameLocation": "3163:6:24", - "nodeType": "VariableDeclaration", - "scope": 8134, - "src": "3155:14:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 8129, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3155:7:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 8132, - "indexed": false, - "mutability": "mutable", - "name": "timestamp", - "nameLocation": "3187:9:24", - "nodeType": "VariableDeclaration", - "scope": 8134, - "src": "3179:17:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 8131, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3179:7:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "3078:124:24" - }, - "src": "3059:144:24" - }, - { - "anonymous": false, - "eventSelector": "9ccbeffc442024e2a6ade18ff0978af9a4c4d6562ae38adb51ccf8256cf42b41", - "id": 8142, - "name": "PegOutUserRefunded", - "nameLocation": "3214:18:24", - "nodeType": "EventDefinition", - "parameters": { - "id": 8141, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 8136, - "indexed": true, - "mutability": "mutable", - "name": "quoteHash", - "nameLocation": "3258:9:24", - "nodeType": "VariableDeclaration", - "scope": 8142, - "src": "3242:25:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 8135, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "3242:7:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 8138, - "indexed": false, - "mutability": "mutable", - "name": "value", - "nameLocation": "3285:5:24", - "nodeType": "VariableDeclaration", - "scope": 8142, - "src": "3277:13:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 8137, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3277:7:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 8140, - "indexed": false, - "mutability": "mutable", - "name": "userAddress", - "nameLocation": "3308:11:24", - "nodeType": "VariableDeclaration", - "scope": 8142, - "src": "3300:19:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 8139, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3300:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "3232:93:24" - }, - "src": "3208:118:24" - }, - { - "anonymous": false, - "eventSelector": "58e13ac0d5c8d27d14009841e72ac8b1858e2709c2c99af2075d9bb5f340ecfc", - "id": 8148, - "name": "DaoFeeSent", - "nameLocation": "3337:10:24", - "nodeType": "EventDefinition", - "parameters": { - "id": 8147, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 8144, - "indexed": true, - "mutability": "mutable", - "name": "quoteHash", - "nameLocation": "3364:9:24", - "nodeType": "VariableDeclaration", - "scope": 8148, - "src": "3348:25:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 8143, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "3348:7:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 8146, - "indexed": false, - "mutability": "mutable", - "name": "amount", - "nameLocation": "3383:6:24", - "nodeType": "VariableDeclaration", - "scope": 8148, - "src": "3375:14:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 8145, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3375:7:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "3347:43:24" - }, - "src": "3331:60:24" - }, - { - "anonymous": false, - "eventSelector": "c15f90eb34a098bb02f2641dff62935246fb005d8f06e13d5cc6be0bddcce8e3", - "id": 8156, - "name": "ProviderUpdate", - "nameLocation": "3402:14:24", - "nodeType": "EventDefinition", - "parameters": { - "id": 8155, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 8150, - "indexed": true, - "mutability": "mutable", - "name": "providerAddress", - "nameLocation": "3433:15:24", - "nodeType": "VariableDeclaration", - "scope": 8156, - "src": "3417:31:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 8149, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3417:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 8152, - "indexed": false, - "mutability": "mutable", - "name": "name", - "nameLocation": "3457:4:24", - "nodeType": "VariableDeclaration", - "scope": 8156, - "src": "3450:11:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 8151, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3450:6:24", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 8154, - "indexed": false, - "mutability": "mutable", - "name": "url", - "nameLocation": "3470:3:24", - "nodeType": "VariableDeclaration", - "scope": 8156, - "src": "3463:10:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 8153, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3463:6:24", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "3416:58:24" - }, - "src": "3396:79:24" - }, - { - "constant": false, - "functionSelector": "e78cea92", - "id": 8159, - "mutability": "mutable", - "name": "bridge", - "nameLocation": "3495:6:24", - "nodeType": "VariableDeclaration", - "scope": 10830, - "src": "3481:20:24", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Bridge_$4173", - "typeString": "contract Bridge" - }, - "typeName": { - "id": 8158, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 8157, - "name": "Bridge", - "nameLocations": [ - "3481:6:24" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 4173, - "src": "3481:6:24" - }, - "referencedDeclaration": 4173, - "src": "3481:6:24", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Bridge_$4173", - "typeString": "contract Bridge" - } - }, - "visibility": "public" - }, - { - "constant": false, - "id": 8163, - "mutability": "mutable", - "name": "balances", - "nameLocation": "3543:8:24", - "nodeType": "VariableDeclaration", - "scope": 10830, - "src": "3507:44:24", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - }, - "typeName": { - "id": 8162, - "keyName": "", - "keyNameLocation": "-1:-1:-1", - "keyType": { - "id": 8160, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3515:7:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Mapping", - "src": "3507:27:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - }, - "valueName": "", - "valueNameLocation": "-1:-1:-1", - "valueType": { - "id": 8161, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3526:7:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - }, - "visibility": "private" - }, - { - "constant": false, - "id": 8167, - "mutability": "mutable", - "name": "collateral", - "nameLocation": "3593:10:24", - "nodeType": "VariableDeclaration", - "scope": 10830, - "src": "3557:46:24", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - }, - "typeName": { - "id": 8166, - "keyName": "", - "keyNameLocation": "-1:-1:-1", - "keyType": { - "id": 8164, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3565:7:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Mapping", - "src": "3557:27:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - }, - "valueName": "", - "valueNameLocation": "-1:-1:-1", - "valueType": { - "id": 8165, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3576:7:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - }, - "visibility": "private" - }, - { - "constant": false, - "id": 8171, - "mutability": "mutable", - "name": "pegoutCollateral", - "nameLocation": "3645:16:24", - "nodeType": "VariableDeclaration", - "scope": 10830, - "src": "3609:52:24", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - }, - "typeName": { - "id": 8170, - "keyName": "", - "keyNameLocation": "-1:-1:-1", - "keyType": { - "id": 8168, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3617:7:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Mapping", - "src": "3609:27:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - }, - "valueName": "", - "valueNameLocation": "-1:-1:-1", - "valueType": { - "id": 8169, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3628:7:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - }, - "visibility": "private" - }, - { - "constant": false, - "id": 8176, - "mutability": "mutable", - "name": "liquidityProviders", - "nameLocation": "3710:18:24", - "nodeType": "VariableDeclaration", - "scope": 10830, - "src": "3667:61:24", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_LiquidityProvider_$8026_storage_$", - "typeString": "mapping(uint256 => struct LiquidityBridgeContractV2.LiquidityProvider)" - }, - "typeName": { - "id": 8175, - "keyName": "", - "keyNameLocation": "-1:-1:-1", - "keyType": { - "id": 8172, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "3675:4:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Mapping", - "src": "3667:34:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_LiquidityProvider_$8026_storage_$", - "typeString": "mapping(uint256 => struct LiquidityBridgeContractV2.LiquidityProvider)" - }, - "valueName": "", - "valueNameLocation": "-1:-1:-1", - "valueType": { - "id": 8174, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 8173, - "name": "LiquidityProvider", - "nameLocations": [ - "3683:17:24" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 8026, - "src": "3683:17:24" - }, - "referencedDeclaration": 8026, - "src": "3683:17:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$8026_storage_ptr", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider" - } - } - }, - "visibility": "private" - }, - { - "constant": false, - "id": 8181, - "mutability": "mutable", - "name": "callRegistry", - "nameLocation": "3771:12:24", - "nodeType": "VariableDeclaration", - "scope": 10830, - "src": "3734:49:24", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$8008_storage_$", - "typeString": "mapping(bytes32 => struct LiquidityBridgeContractV2.Registry)" - }, - "typeName": { - "id": 8180, - "keyName": "", - "keyNameLocation": "-1:-1:-1", - "keyType": { - "id": 8177, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "3742:7:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "Mapping", - "src": "3734:28:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$8008_storage_$", - "typeString": "mapping(bytes32 => struct LiquidityBridgeContractV2.Registry)" - }, - "valueName": "", - "valueNameLocation": "-1:-1:-1", - "valueType": { - "id": 8179, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 8178, - "name": "Registry", - "nameLocations": [ - "3753:8:24" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 8008, - "src": "3753:8:24" - }, - "referencedDeclaration": 8008, - "src": "3753:8:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Registry_$8008_storage_ptr", - "typeString": "struct LiquidityBridgeContractV2.Registry" - } - } - }, - "visibility": "private" - }, - { - "constant": false, - "id": 8185, - "mutability": "mutable", - "name": "resignationBlockNum", - "nameLocation": "3825:19:24", - "nodeType": "VariableDeclaration", - "scope": 10830, - "src": "3789:55:24", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - }, - "typeName": { - "id": 8184, - "keyName": "", - "keyNameLocation": "-1:-1:-1", - "keyType": { - "id": 8182, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3797:7:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Mapping", - "src": "3789:27:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - }, - "valueName": "", - "valueNameLocation": "-1:-1:-1", - "valueType": { - "id": 8183, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3808:7:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - }, - "visibility": "private" - }, - { - "constant": false, - "id": 8187, - "mutability": "mutable", - "name": "minCollateral", - "nameLocation": "3867:13:24", - "nodeType": "VariableDeclaration", - "scope": 10830, - "src": "3851:29:24", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 8186, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3851:7:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "private" - }, - { - "constant": false, - "id": 8189, - "mutability": "mutable", - "name": "minPegIn", - "nameLocation": "3902:8:24", - "nodeType": "VariableDeclaration", - "scope": 10830, - "src": "3886:24:24", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 8188, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3886:7:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "private" - }, - { - "constant": false, - "id": 8191, - "mutability": "mutable", - "name": "rewardP", - "nameLocation": "3932:7:24", - "nodeType": "VariableDeclaration", - "scope": 10830, - "src": "3917:22:24", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "typeName": { - "id": 8190, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "3917:6:24", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "visibility": "private" - }, - { - "constant": false, - "id": 8193, - "mutability": "mutable", - "name": "resignDelayInBlocks", - "nameLocation": "3960:19:24", - "nodeType": "VariableDeclaration", - "scope": 10830, - "src": "3945:34:24", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "typeName": { - "id": 8192, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "3945:6:24", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "visibility": "private" - }, - { - "constant": false, - "id": 8195, - "mutability": "mutable", - "name": "dust", - "nameLocation": "3998:4:24", - "nodeType": "VariableDeclaration", - "scope": 10830, - "src": "3985:17:24", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 8194, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "3985:4:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "private" - }, - { - "constant": false, - "functionSelector": "8490a8df", - "id": 8197, - "mutability": "mutable", - "name": "providerId", - "nameLocation": "4020:10:24", - "nodeType": "VariableDeclaration", - "scope": 10830, - "src": "4008:22:24", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 8196, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "4008:4:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "public" - }, - { - "constant": false, - "id": 8199, - "mutability": "mutable", - "name": "btcBlockTime", - "nameLocation": "4050:12:24", - "nodeType": "VariableDeclaration", - "scope": 10830, - "src": "4037:25:24", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 8198, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "4037:4:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "private" - }, - { - "constant": false, - "id": 8201, - "mutability": "mutable", - "name": "mainnet", - "nameLocation": "4081:7:24", - "nodeType": "VariableDeclaration", - "scope": 10830, - "src": "4068:20:24", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 8200, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "4068:4:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "private" - }, - { - "constant": false, - "id": 8205, - "mutability": "mutable", - "name": "processedQuotes", - "nameLocation": "4129:15:24", - "nodeType": "VariableDeclaration", - "scope": 10830, - "src": "4095:49:24", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint8_$", - "typeString": "mapping(bytes32 => uint8)" - }, - "typeName": { - "id": 8204, - "keyName": "", - "keyNameLocation": "-1:-1:-1", - "keyType": { - "id": 8202, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "4103:7:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "Mapping", - "src": "4095:25:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint8_$", - "typeString": "mapping(bytes32 => uint8)" - }, - "valueName": "", - "valueNameLocation": "-1:-1:-1", - "valueType": { - "id": 8203, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "4114:5:24", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - } - }, - "visibility": "private" - }, - { - "constant": false, - "id": 8210, - "mutability": "mutable", - "name": "registeredPegoutQuotes", - "nameLocation": "4199:22:24", - "nodeType": "VariableDeclaration", - "scope": 10830, - "src": "4150:71:24", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegOutQuote_$11272_storage_$", - "typeString": "mapping(bytes32 => struct QuotesV2.PegOutQuote)" - }, - "typeName": { - "id": 8209, - "keyName": "", - "keyNameLocation": "-1:-1:-1", - "keyType": { - "id": 8206, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "4158:7:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "Mapping", - "src": "4150:40:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegOutQuote_$11272_storage_$", - "typeString": "mapping(bytes32 => struct QuotesV2.PegOutQuote)" - }, - "valueName": "", - "valueNameLocation": "-1:-1:-1", - "valueType": { - "id": 8208, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 8207, - "name": "QuotesV2.PegOutQuote", - "nameLocations": [ - "4169:8:24", - "4178:11:24" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 11272, - "src": "4169:20:24" - }, - "referencedDeclaration": 11272, - "src": "4169:20:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_storage_ptr", - "typeString": "struct QuotesV2.PegOutQuote" - } - } - }, - "visibility": "private" - }, - { - "constant": false, - "id": 8215, - "mutability": "mutable", - "name": "pegoutRegistry", - "nameLocation": "4268:14:24", - "nodeType": "VariableDeclaration", - "scope": 10830, - "src": "4227:55:24", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegoutRecord_$8013_storage_$", - "typeString": "mapping(bytes32 => struct LiquidityBridgeContractV2.PegoutRecord)" - }, - "typeName": { - "id": 8214, - "keyName": "", - "keyNameLocation": "-1:-1:-1", - "keyType": { - "id": 8211, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "4235:7:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "Mapping", - "src": "4227:32:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegoutRecord_$8013_storage_$", - "typeString": "mapping(bytes32 => struct LiquidityBridgeContractV2.PegoutRecord)" - }, - "valueName": "", - "valueNameLocation": "-1:-1:-1", - "valueType": { - "id": 8213, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 8212, - "name": "PegoutRecord", - "nameLocations": [ - "4246:12:24" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 8013, - "src": "4246:12:24" - }, - "referencedDeclaration": 8013, - "src": "4246:12:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegoutRecord_$8013_storage_ptr", - "typeString": "struct LiquidityBridgeContractV2.PegoutRecord" - } - } - }, - "visibility": "private" - }, - { - "constant": false, - "functionSelector": "63c67135", - "id": 8217, - "mutability": "mutable", - "name": "productFeePercentage", - "nameLocation": "4304:20:24", - "nodeType": "VariableDeclaration", - "scope": 10830, - "src": "4289:35:24", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 8216, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "4289:7:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "public" - }, - { - "constant": false, - "functionSelector": "710738b1", - "id": 8219, - "mutability": "mutable", - "name": "daoFeeCollectorAddress", - "nameLocation": "4345:22:24", - "nodeType": "VariableDeclaration", - "scope": 10830, - "src": "4330:37:24", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 8218, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "4330:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "public" - }, - { - "body": { - "id": 8230, - "nodeType": "Block", - "src": "4400:71:24", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "expression": { - "id": 8223, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "4431:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 8224, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "4435:6:24", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "4431:10:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 8222, - "name": "isRegistered", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10457, - "src": "4418:12:24", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", - "typeString": "function (address) view returns (bool)" - } - }, - "id": 8225, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4418:24:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303031", - "id": 8226, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4444:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_a509ede2323476f3f5be48987391c5516e4ea8116b376287322ed2188be0e53c", - "typeString": "literal_string \"LBC001\"" - }, - "value": "LBC001" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_a509ede2323476f3f5be48987391c5516e4ea8116b376287322ed2188be0e53c", - "typeString": "literal_string \"LBC001\"" - } - ], - "id": 8221, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "4410:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 8227, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4410:43:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 8228, - "nodeType": "ExpressionStatement", - "src": "4410:43:24" - }, - { - "id": 8229, - "nodeType": "PlaceholderStatement", - "src": "4463:1:24" - } - ] - }, - "id": 8231, - "name": "onlyRegistered", - "nameLocation": "4383:14:24", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 8220, - "nodeType": "ParameterList", - "parameters": [], - "src": "4397:2:24" - }, - "src": "4374:97:24", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 8242, - "nodeType": "Block", - "src": "4512:80:24", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "expression": { - "id": 8235, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "4552:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 8236, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "4556:6:24", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "4552:10:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 8234, - "name": "isRegisteredForPegout", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10477, - "src": "4530:21:24", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", - "typeString": "function (address) view returns (bool)" - } - }, - "id": 8237, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4530:33:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303031", - "id": 8238, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4565:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_a509ede2323476f3f5be48987391c5516e4ea8116b376287322ed2188be0e53c", - "typeString": "literal_string \"LBC001\"" - }, - "value": "LBC001" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_a509ede2323476f3f5be48987391c5516e4ea8116b376287322ed2188be0e53c", - "typeString": "literal_string \"LBC001\"" - } - ], - "id": 8233, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "4522:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 8239, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4522:52:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 8240, - "nodeType": "ExpressionStatement", - "src": "4522:52:24" - }, - { - "id": 8241, - "nodeType": "PlaceholderStatement", - "src": "4584:1:24" - } - ] - }, - "id": 8243, - "name": "onlyRegisteredForPegout", - "nameLocation": "4486:23:24", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 8232, - "nodeType": "ParameterList", - "parameters": [], - "src": "4509:2:24" - }, - "src": "4477:115:24", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 8265, - "nodeType": "Block", - "src": "4646:172:24", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 8260, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 8252, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 8248, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "4677:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 8249, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "4681:6:24", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "4677:10:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 8250, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 55, - "src": "4691:5:24", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", - "typeString": "function () view returns (address)" - } - }, - "id": 8251, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4691:7:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "4677:21:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 8259, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 8253, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "4714:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 8254, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "4718:6:24", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "4714:10:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "baseExpression": { - "id": 8255, - "name": "liquidityProviders", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8176, - "src": "4728:18:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_LiquidityProvider_$8026_storage_$", - "typeString": "mapping(uint256 => struct LiquidityBridgeContractV2.LiquidityProvider storage ref)" - } - }, - "id": 8257, - "indexExpression": { - "id": 8256, - "name": "_providerId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8245, - "src": "4747:11:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "4728:31:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$8026_storage", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider storage ref" - } - }, - "id": 8258, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "4760:8:24", - "memberName": "provider", - "nodeType": "MemberAccess", - "referencedDeclaration": 8017, - "src": "4728:40:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "4714:54:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "4677:91:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303035", - "id": 8261, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4782:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_0a36b25bf1b768acf545d4a7d22e9fceeba3414a7a19dc34973fc2e1be01a831", - "typeString": "literal_string \"LBC005\"" - }, - "value": "LBC005" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_0a36b25bf1b768acf545d4a7d22e9fceeba3414a7a19dc34973fc2e1be01a831", - "typeString": "literal_string \"LBC005\"" - } - ], - "id": 8247, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "4656:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 8262, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4656:144:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 8263, - "nodeType": "ExpressionStatement", - "src": "4656:144:24" - }, - { - "id": 8264, - "nodeType": "PlaceholderStatement", - "src": "4810:1:24" - } - ] - }, - "id": 8266, - "name": "onlyOwnerAndProvider", - "nameLocation": "4607:20:24", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 8246, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 8245, - "mutability": "mutable", - "name": "_providerId", - "nameLocation": "4633:11:24", - "nodeType": "VariableDeclaration", - "scope": 8266, - "src": "4628:16:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 8244, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "4628:4:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "4627:18:24" - }, - "src": "4598:220:24", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 8283, - "nodeType": "Block", - "src": "4947:64:24", - "statements": [ - { - "expression": { - "id": 8281, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "baseExpression": { - "id": 8276, - "name": "liquidityProviders", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8176, - "src": "4957:18:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_LiquidityProvider_$8026_storage_$", - "typeString": "mapping(uint256 => struct LiquidityBridgeContractV2.LiquidityProvider storage ref)" - } - }, - "id": 8278, - "indexExpression": { - "id": 8277, - "name": "_providerId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8268, - "src": "4976:11:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "4957:31:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$8026_storage", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider storage ref" - } - }, - "id": 8279, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberLocation": "4989:6:24", - "memberName": "status", - "nodeType": "MemberAccess", - "referencedDeclaration": 8023, - "src": "4957:38:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 8280, - "name": "status", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8270, - "src": "4998:6:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "4957:47:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 8282, - "nodeType": "ExpressionStatement", - "src": "4957:47:24" - } - ] - }, - "functionSelector": "72cbf4e8", - "id": 8284, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "arguments": [ - { - "id": 8273, - "name": "_providerId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8268, - "src": "4934:11:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "id": 8274, - "kind": "modifierInvocation", - "modifierName": { - "id": 8272, - "name": "onlyOwnerAndProvider", - "nameLocations": [ - "4913:20:24" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 8266, - "src": "4913:20:24" - }, - "nodeType": "ModifierInvocation", - "src": "4913:33:24" - } - ], - "name": "setProviderStatus", - "nameLocation": "4833:17:24", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 8271, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 8268, - "mutability": "mutable", - "name": "_providerId", - "nameLocation": "4865:11:24", - "nodeType": "VariableDeclaration", - "scope": 8284, - "src": "4860:16:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 8267, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "4860:4:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 8270, - "mutability": "mutable", - "name": "status", - "nameLocation": "4891:6:24", - "nodeType": "VariableDeclaration", - "scope": 8284, - "src": "4886:11:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 8269, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "4886:4:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "4850:53:24" - }, - "returnParameters": { - "id": 8275, - "nodeType": "ParameterList", - "parameters": [], - "src": "4947:0:24" - }, - "scope": 10830, - "src": "4824:187:24", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 8298, - "nodeType": "Block", - "src": "5044:65:24", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 8294, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 8288, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "5062:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 8289, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "5066:6:24", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "5062:10:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "arguments": [ - { - "id": 8292, - "name": "bridge", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8159, - "src": "5084:6:24", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Bridge_$4173", - "typeString": "contract Bridge" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_Bridge_$4173", - "typeString": "contract Bridge" - } - ], - "id": 8291, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "5076:7:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 8290, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "5076:7:24", - "typeDescriptions": {} - } - }, - "id": 8293, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5076:15:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "5062:29:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303037", - "id": 8295, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5093:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_a23daf30bd1e42cc69e3bea751166702f08d640860ab6f4c84d6bacb970360da", - "typeString": "literal_string \"LBC007\"" - }, - "value": "LBC007" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_a23daf30bd1e42cc69e3bea751166702f08d640860ab6f4c84d6bacb970360da", - "typeString": "literal_string \"LBC007\"" - } - ], - "id": 8287, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "5054:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 8296, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5054:48:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 8297, - "nodeType": "ExpressionStatement", - "src": "5054:48:24" - } - ] - }, - "id": 8299, - "implemented": true, - "kind": "receive", - "modifiers": [], - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 8285, - "nodeType": "ParameterList", - "parameters": [], - "src": "5024:2:24" - }, - "returnParameters": { - "id": 8286, - "nodeType": "ParameterList", - "parameters": [], - "src": "5044:0:24" - }, - "scope": 10830, - "src": "5017:92:24", - "stateMutability": "payable", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 8306, - "nodeType": "Block", - "src": "5172:31:24", - "statements": [ - { - "expression": { - "hexValue": "312e332e30", - "id": 8304, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5189:7:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_6a08c3e203132c561752255a4d52ffae85bb9c5d33cb3291520dea1b84356389", - "typeString": "literal_string \"1.3.0\"" - }, - "value": "1.3.0" - }, - "functionReturnParameters": 8303, - "id": 8305, - "nodeType": "Return", - "src": "5182:14:24" - } - ] - }, - "functionSelector": "54fd4d50", - "id": 8307, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "version", - "nameLocation": "5124:7:24", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 8300, - "nodeType": "ParameterList", - "parameters": [], - "src": "5131:2:24" - }, - "returnParameters": { - "id": 8303, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 8302, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 8307, - "src": "5157:13:24", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 8301, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "5157:6:24", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "5156:15:24" - }, - "scope": 10830, - "src": "5115:88:24", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 8314, - "nodeType": "Block", - "src": "5264:34:24", - "statements": [ - { - "expression": { - "id": 8312, - "name": "providerId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8197, - "src": "5281:10:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 8311, - "id": 8313, - "nodeType": "Return", - "src": "5274:17:24" - } - ] - }, - "functionSelector": "0a9cb4a7", - "id": 8315, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getProviderIds", - "nameLocation": "5218:14:24", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 8308, - "nodeType": "ParameterList", - "parameters": [], - "src": "5232:2:24" - }, - "returnParameters": { - "id": 8311, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 8310, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 8315, - "src": "5258:4:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 8309, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "5258:4:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "5257:6:24" - }, - "scope": 10830, - "src": "5209:89:24", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 8325, - "nodeType": "Block", - "src": "5364:39:24", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 8322, - "name": "bridge", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8159, - "src": "5389:6:24", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Bridge_$4173", - "typeString": "contract Bridge" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_Bridge_$4173", - "typeString": "contract Bridge" - } - ], - "id": 8321, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "5381:7:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 8320, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "5381:7:24", - "typeDescriptions": {} - } - }, - "id": 8323, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5381:15:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "functionReturnParameters": 8319, - "id": 8324, - "nodeType": "Return", - "src": "5374:22:24" - } - ] - }, - "functionSelector": "fb32c508", - "id": 8326, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getBridgeAddress", - "nameLocation": "5313:16:24", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 8316, - "nodeType": "ParameterList", - "parameters": [], - "src": "5329:2:24" - }, - "returnParameters": { - "id": 8319, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 8318, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 8326, - "src": "5355:7:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 8317, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "5355:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "5354:9:24" - }, - "scope": 10830, - "src": "5304:99:24", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 8333, - "nodeType": "Block", - "src": "5464:37:24", - "statements": [ - { - "expression": { - "id": 8331, - "name": "minCollateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8187, - "src": "5481:13:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 8330, - "id": 8332, - "nodeType": "Return", - "src": "5474:20:24" - } - ] - }, - "functionSelector": "e830b690", - "id": 8334, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getMinCollateral", - "nameLocation": "5418:16:24", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 8327, - "nodeType": "ParameterList", - "parameters": [], - "src": "5434:2:24" - }, - "returnParameters": { - "id": 8330, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 8329, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 8334, - "src": "5458:4:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 8328, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "5458:4:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "5457:6:24" - }, - "scope": 10830, - "src": "5409:92:24", - "stateMutability": "view", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 8341, - "nodeType": "Block", - "src": "5559:32:24", - "statements": [ - { - "expression": { - "id": 8339, - "name": "minPegIn", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8189, - "src": "5576:8:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 8338, - "id": 8340, - "nodeType": "Return", - "src": "5569:15:24" - } - ] - }, - "functionSelector": "fa88dcde", - "id": 8342, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getMinPegIn", - "nameLocation": "5516:11:24", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 8335, - "nodeType": "ParameterList", - "parameters": [], - "src": "5527:2:24" - }, - "returnParameters": { - "id": 8338, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 8337, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 8342, - "src": "5553:4:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 8336, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "5553:4:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "5552:6:24" - }, - "scope": 10830, - "src": "5507:84:24", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 8349, - "nodeType": "Block", - "src": "5657:31:24", - "statements": [ - { - "expression": { - "id": 8347, - "name": "rewardP", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8191, - "src": "5674:7:24", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "functionReturnParameters": 8346, - "id": 8348, - "nodeType": "Return", - "src": "5667:14:24" - } - ] - }, - "functionSelector": "c7213163", - "id": 8350, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getRewardPercentage", - "nameLocation": "5606:19:24", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 8343, - "nodeType": "ParameterList", - "parameters": [], - "src": "5625:2:24" - }, - "returnParameters": { - "id": 8346, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 8345, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 8350, - "src": "5651:4:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 8344, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "5651:4:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "5650:6:24" - }, - "scope": 10830, - "src": "5597:91:24", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 8357, - "nodeType": "Block", - "src": "5755:43:24", - "statements": [ - { - "expression": { - "id": 8355, - "name": "resignDelayInBlocks", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8193, - "src": "5772:19:24", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "functionReturnParameters": 8354, - "id": 8356, - "nodeType": "Return", - "src": "5765:26:24" - } - ] - }, - "functionSelector": "bd5798c3", - "id": 8358, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getResignDelayBlocks", - "nameLocation": "5703:20:24", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 8351, - "nodeType": "ParameterList", - "parameters": [], - "src": "5723:2:24" - }, - "returnParameters": { - "id": 8354, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 8353, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 8358, - "src": "5749:4:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 8352, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "5749:4:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "5748:6:24" - }, - "scope": 10830, - "src": "5694:104:24", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 8365, - "nodeType": "Block", - "src": "5861:28:24", - "statements": [ - { - "expression": { - "id": 8363, - "name": "dust", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8195, - "src": "5878:4:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 8362, - "id": 8364, - "nodeType": "Return", - "src": "5871:11:24" - } - ] - }, - "functionSelector": "33f07ad3", - "id": 8366, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getDustThreshold", - "nameLocation": "5813:16:24", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 8359, - "nodeType": "ParameterList", - "parameters": [], - "src": "5829:2:24" - }, - "returnParameters": { - "id": 8362, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 8361, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 8366, - "src": "5855:4:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 8360, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "5855:4:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "5854:6:24" - }, - "scope": 10830, - "src": "5804:85:24", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 8378, - "nodeType": "Block", - "src": "5975:59:24", - "statements": [ - { - "expression": { - "expression": { - "baseExpression": { - "id": 8373, - "name": "pegoutRegistry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8215, - "src": "5992:14:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegoutRecord_$8013_storage_$", - "typeString": "mapping(bytes32 => struct LiquidityBridgeContractV2.PegoutRecord storage ref)" - } - }, - "id": 8375, - "indexExpression": { - "id": 8374, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8368, - "src": "6007:9:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "5992:25:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegoutRecord_$8013_storage", - "typeString": "struct LiquidityBridgeContractV2.PegoutRecord storage ref" - } - }, - "id": 8376, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "6018:9:24", - "memberName": "completed", - "nodeType": "MemberAccess", - "referencedDeclaration": 8012, - "src": "5992:35:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 8372, - "id": 8377, - "nodeType": "Return", - "src": "5985:42:24" - } - ] - }, - "functionSelector": "54015ee0", - "id": 8379, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "isPegOutQuoteCompleted", - "nameLocation": "5904:22:24", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 8369, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 8368, - "mutability": "mutable", - "name": "quoteHash", - "nameLocation": "5935:9:24", - "nodeType": "VariableDeclaration", - "scope": 8379, - "src": "5927:17:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 8367, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "5927:7:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "5926:19:24" - }, - "returnParameters": { - "id": 8372, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 8371, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 8379, - "src": "5969:4:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 8370, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "5969:4:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "5968:6:24" - }, - "scope": 10830, - "src": "5895:139:24", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 8397, - "nodeType": "Block", - "src": "6293:79:24", - "statements": [ - { - "expression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 8395, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "id": 8388, - "name": "addr", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8382, - "src": "6323:4:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 8387, - "name": "isRegistered", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10457, - "src": "6310:12:24", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", - "typeString": "function (address) view returns (bool)" - } - }, - "id": 8389, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "6310:18:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 8394, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "id": 8390, - "name": "collateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8167, - "src": "6332:10:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 8392, - "indexExpression": { - "id": 8391, - "name": "addr", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8382, - "src": "6343:4:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "6332:16:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "id": 8393, - "name": "minCollateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8187, - "src": "6352:13:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "6332:33:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "6310:55:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 8386, - "id": 8396, - "nodeType": "Return", - "src": "6303:62:24" - } - ] - }, - "documentation": { - "id": 8380, - "nodeType": "StructuredDocumentation", - "src": "6040:182:24", - "text": "@dev Checks whether a liquidity provider can deliver a pegin service\n@return Whether the liquidity provider is registered and has enough locked collateral" - }, - "functionSelector": "457385f2", - "id": 8398, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "isOperational", - "nameLocation": "6236:13:24", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 8383, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 8382, - "mutability": "mutable", - "name": "addr", - "nameLocation": "6258:4:24", - "nodeType": "VariableDeclaration", - "scope": 8398, - "src": "6250:12:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 8381, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "6250:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "6249:14:24" - }, - "returnParameters": { - "id": 8386, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 8385, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 8398, - "src": "6287:4:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 8384, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "6287:4:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "6286:6:24" - }, - "scope": 10830, - "src": "6227:145:24", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 8416, - "nodeType": "Block", - "src": "6641:118:24", - "statements": [ - { - "expression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 8414, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "id": 8407, - "name": "addr", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8401, - "src": "6692:4:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 8406, - "name": "isRegisteredForPegout", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10477, - "src": "6670:21:24", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", - "typeString": "function (address) view returns (bool)" - } - }, - "id": 8408, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "6670:27:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 8413, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "id": 8409, - "name": "pegoutCollateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8171, - "src": "6713:16:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 8411, - "indexExpression": { - "id": 8410, - "name": "addr", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8401, - "src": "6730:4:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "6713:22:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "id": 8412, - "name": "minCollateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8187, - "src": "6739:13:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "6713:39:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "6670:82:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 8405, - "id": 8415, - "nodeType": "Return", - "src": "6651:101:24" - } - ] - }, - "documentation": { - "id": 8399, - "nodeType": "StructuredDocumentation", - "src": "6378:183:24", - "text": "@dev Checks whether a liquidity provider can deliver a pegout service\n@return Whether the liquidity provider is registered and has enough locked collateral" - }, - "functionSelector": "4d0ec971", - "id": 8417, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "isOperationalForPegout", - "nameLocation": "6575:22:24", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 8402, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 8401, - "mutability": "mutable", - "name": "addr", - "nameLocation": "6606:4:24", - "nodeType": "VariableDeclaration", - "scope": 8417, - "src": "6598:12:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 8400, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "6598:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "6597:14:24" - }, - "returnParameters": { - "id": 8405, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 8404, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 8417, - "src": "6635:4:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 8403, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "6635:4:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "6634:6:24" - }, - "scope": 10830, - "src": "6566:193:24", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 8666, - "nodeType": "Block", - "src": "7047:1992:24", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 8436, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 8432, - "name": "tx", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967270, - "src": "7065:2:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_transaction", - "typeString": "tx" - } - }, - "id": 8433, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "7068:6:24", - "memberName": "origin", - "nodeType": "MemberAccess", - "src": "7065:9:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 8434, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "7078:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 8435, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "7082:6:24", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "7078:10:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "7065:23:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303033", - "id": 8437, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7090:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_7e21a7b13292bf184f2fc166cca229506aa89a730258f15cdce6a2f8dc225415", - "typeString": "literal_string \"LBC003\"" - }, - "value": "LBC003" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_7e21a7b13292bf184f2fc166cca229506aa89a730258f15cdce6a2f8dc225415", - "typeString": "literal_string \"LBC003\"" - } - ], - "id": 8431, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "7057:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 8438, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "7057:42:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 8439, - "nodeType": "ExpressionStatement", - "src": "7057:42:24" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 8447, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "arguments": [ - { - "id": 8443, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8420, - "src": "7193:5:24", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 8442, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "7187:5:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": { - "id": 8441, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "7187:5:24", - "typeDescriptions": {} - } - }, - "id": 8444, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "7187:12:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 8445, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "7200:6:24", - "memberName": "length", - "nodeType": "MemberAccess", - "src": "7187:19:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 8446, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7209:1:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "7187:23:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303130", - "id": 8448, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7212:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_b91014d5c812b217b1f7abf06d04044851a14f3d4efa9b6795d3964c23897cc9", - "typeString": "literal_string \"LBC010\"" - }, - "value": "LBC010" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_b91014d5c812b217b1f7abf06d04044851a14f3d4efa9b6795d3964c23897cc9", - "typeString": "literal_string \"LBC010\"" - } - ], - "id": 8440, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "7179:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 8449, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "7179:42:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 8450, - "nodeType": "ExpressionStatement", - "src": "7179:42:24" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 8458, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "arguments": [ - { - "id": 8454, - "name": "_apiBaseUrl", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8422, - "src": "7258:11:24", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 8453, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "7252:5:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": { - "id": 8452, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "7252:5:24", - "typeDescriptions": {} - } - }, - "id": 8455, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "7252:18:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 8456, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "7271:6:24", - "memberName": "length", - "nodeType": "MemberAccess", - "src": "7252:25:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 8457, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7280:1:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "7252:29:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303137", - "id": 8459, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7295:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_849663c0a27b21987cfc03f3233af0a7a46b23f0af09d39a18720d9610bcba81", - "typeString": "literal_string \"LBC017\"" - }, - "value": "LBC017" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_849663c0a27b21987cfc03f3233af0a7a46b23f0af09d39a18720d9610bcba81", - "typeString": "literal_string \"LBC017\"" - } - ], - "id": 8451, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "7231:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 8460, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "7231:82:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 8461, - "nodeType": "ExpressionStatement", - "src": "7231:82:24" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 8503, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 8489, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "id": 8475, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "arguments": [ - { - "id": 8466, - "name": "_providerType", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8426, - "src": "7434:13:24", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "expression": { - "id": 8464, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "7417:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 8465, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "7421:12:24", - "memberName": "encodePacked", - "nodeType": "MemberAccess", - "src": "7417:16:24", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 8467, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "7417:31:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 8463, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967288, - "src": "7407:9:24", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 8468, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "7407:42:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "arguments": [ - { - "arguments": [ - { - "hexValue": "706567696e", - "id": 8472, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7492:7:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_4dc7b383aaca8b1076677685b160d1864e4801cbbaf42c8044d4665ea1c41120", - "typeString": "literal_string \"pegin\"" - }, - "value": "pegin" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_4dc7b383aaca8b1076677685b160d1864e4801cbbaf42c8044d4665ea1c41120", - "typeString": "literal_string \"pegin\"" - } - ], - "expression": { - "id": 8470, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "7475:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 8471, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "7479:12:24", - "memberName": "encodePacked", - "nodeType": "MemberAccess", - "src": "7475:16:24", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 8473, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "7475:25:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 8469, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967288, - "src": "7465:9:24", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 8474, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "7465:36:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "src": "7407:94:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "id": 8488, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "arguments": [ - { - "id": 8479, - "name": "_providerType", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8426, - "src": "7544:13:24", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "expression": { - "id": 8477, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "7527:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 8478, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "7531:12:24", - "memberName": "encodePacked", - "nodeType": "MemberAccess", - "src": "7527:16:24", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 8480, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "7527:31:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 8476, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967288, - "src": "7517:9:24", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 8481, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "7517:42:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "arguments": [ - { - "arguments": [ - { - "hexValue": "7065676f7574", - "id": 8485, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7602:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_ac320a165668abf6cbe2f0b8e46bf2426fe38861df98fc1861161bf05a853587", - "typeString": "literal_string \"pegout\"" - }, - "value": "pegout" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_ac320a165668abf6cbe2f0b8e46bf2426fe38861df98fc1861161bf05a853587", - "typeString": "literal_string \"pegout\"" - } - ], - "expression": { - "id": 8483, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "7585:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 8484, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "7589:12:24", - "memberName": "encodePacked", - "nodeType": "MemberAccess", - "src": "7585:16:24", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 8486, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "7585:26:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 8482, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967288, - "src": "7575:9:24", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 8487, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "7575:37:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "src": "7517:95:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "7407:205:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "id": 8502, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "arguments": [ - { - "id": 8493, - "name": "_providerType", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8426, - "src": "7655:13:24", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "expression": { - "id": 8491, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "7638:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 8492, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "7642:12:24", - "memberName": "encodePacked", - "nodeType": "MemberAccess", - "src": "7638:16:24", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 8494, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "7638:31:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 8490, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967288, - "src": "7628:9:24", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 8495, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "7628:42:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "arguments": [ - { - "arguments": [ - { - "hexValue": "626f7468", - "id": 8499, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7713:6:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_36ad643d447cde9387780ae6f5b371120b595aaff5d56b8440952d5f7116fa16", - "typeString": "literal_string \"both\"" - }, - "value": "both" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_36ad643d447cde9387780ae6f5b371120b595aaff5d56b8440952d5f7116fa16", - "typeString": "literal_string \"both\"" - } - ], - "expression": { - "id": 8497, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "7696:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 8498, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "7700:12:24", - "memberName": "encodePacked", - "nodeType": "MemberAccess", - "src": "7696:16:24", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 8500, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "7696:24:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 8496, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967288, - "src": "7686:9:24", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 8501, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "7686:35:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "src": "7628:93:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "7407:314:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303138", - "id": 8504, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7735:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c8a2f96b1c149a2cda2dda6db9bbdafbecddac69bce104e31ad4dd14842e4820", - "typeString": "literal_string \"LBC018\"" - }, - "value": "LBC018" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_c8a2f96b1c149a2cda2dda6db9bbdafbecddac69bce104e31ad4dd14842e4820", - "typeString": "literal_string \"LBC018\"" - } - ], - "id": 8462, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "7386:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 8505, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "7386:367:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 8506, - "nodeType": "ExpressionStatement", - "src": "7386:367:24" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 8520, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 8513, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "id": 8508, - "name": "collateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8167, - "src": "7772:10:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 8511, - "indexExpression": { - "expression": { - "id": 8509, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "7783:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 8510, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "7787:6:24", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "7783:10:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "7772:22:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 8512, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7798:1:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "7772:27:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 8519, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "id": 8514, - "name": "pegoutCollateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8171, - "src": "7803:16:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 8517, - "indexExpression": { - "expression": { - "id": 8515, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "7820:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 8516, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "7824:6:24", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "7820:10:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "7803:28:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 8518, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7835:1:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "7803:33:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "7772:64:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303730", - "id": 8521, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7838:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_a80fe4c2764b7c4b52829ebb2b1bb3117b2b8ffa6a6401dbe00248ec851a73a8", - "typeString": "literal_string \"LBC070\"" - }, - "value": "LBC070" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_a80fe4c2764b7c4b52829ebb2b1bb3117b2b8ffa6a6401dbe00248ec851a73a8", - "typeString": "literal_string \"LBC070\"" - } - ], - "id": 8507, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "7764:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 8522, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "7764:83:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 8523, - "nodeType": "ExpressionStatement", - "src": "7764:83:24" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 8530, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "id": 8525, - "name": "resignationBlockNum", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8185, - "src": "7878:19:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 8528, - "indexExpression": { - "expression": { - "id": 8526, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "7898:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 8527, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "7902:6:24", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "7898:10:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "7878:31:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 8529, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7913:1:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "7878:36:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303039", - "id": 8531, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7928:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_f838e22b544c153329abcc9856d1b1f7e7f6c83118dc13d7a0606e65edb3cdd8", - "typeString": "literal_string \"LBC009\"" - }, - "value": "LBC009" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_f838e22b544c153329abcc9856d1b1f7e7f6c83118dc13d7a0606e65edb3cdd8", - "typeString": "literal_string \"LBC009\"" - } - ], - "id": 8524, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "7857:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 8532, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "7857:89:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 8533, - "nodeType": "ExpressionStatement", - "src": "7857:89:24" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "id": 8546, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "arguments": [ - { - "id": 8537, - "name": "_providerType", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8426, - "src": "7988:13:24", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "expression": { - "id": 8535, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "7971:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 8536, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "7975:12:24", - "memberName": "encodePacked", - "nodeType": "MemberAccess", - "src": "7971:16:24", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 8538, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "7971:31:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 8534, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967288, - "src": "7961:9:24", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 8539, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "7961:42:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "arguments": [ - { - "arguments": [ - { - "hexValue": "706567696e", - "id": 8543, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "8034:7:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_4dc7b383aaca8b1076677685b160d1864e4801cbbaf42c8044d4665ea1c41120", - "typeString": "literal_string \"pegin\"" - }, - "value": "pegin" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_4dc7b383aaca8b1076677685b160d1864e4801cbbaf42c8044d4665ea1c41120", - "typeString": "literal_string \"pegin\"" - } - ], - "expression": { - "id": 8541, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "8017:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 8542, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "8021:12:24", - "memberName": "encodePacked", - "nodeType": "MemberAccess", - "src": "8017:16:24", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 8544, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "8017:25:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 8540, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967288, - "src": "8007:9:24", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 8545, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "8007:36:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "src": "7961:82:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "condition": { - "commonType": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "id": 8576, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "arguments": [ - { - "id": 8567, - "name": "_providerType", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8426, - "src": "8200:13:24", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "expression": { - "id": 8565, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "8183:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 8566, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "8187:12:24", - "memberName": "encodePacked", - "nodeType": "MemberAccess", - "src": "8183:16:24", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 8568, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "8183:31:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 8564, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967288, - "src": "8173:9:24", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 8569, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "8173:42:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "arguments": [ - { - "arguments": [ - { - "hexValue": "7065676f7574", - "id": 8573, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "8246:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_ac320a165668abf6cbe2f0b8e46bf2426fe38861df98fc1861161bf05a853587", - "typeString": "literal_string \"pegout\"" - }, - "value": "pegout" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_ac320a165668abf6cbe2f0b8e46bf2426fe38861df98fc1861161bf05a853587", - "typeString": "literal_string \"pegout\"" - } - ], - "expression": { - "id": 8571, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "8229:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 8572, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "8233:12:24", - "memberName": "encodePacked", - "nodeType": "MemberAccess", - "src": "8229:16:24", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 8574, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "8229:26:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 8570, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967288, - "src": "8219:9:24", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 8575, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "8219:37:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "src": "8173:83:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 8635, - "nodeType": "Block", - "src": "8388:269:24", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 8600, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 8595, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "8410:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 8596, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "8414:5:24", - "memberName": "value", - "nodeType": "MemberAccess", - "src": "8410:9:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 8599, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 8597, - "name": "minCollateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8187, - "src": "8423:13:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "*", - "rightExpression": { - "hexValue": "32", - "id": 8598, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "8439:1:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_2_by_1", - "typeString": "int_const 2" - }, - "value": "2" - }, - "src": "8423:17:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "8410:30:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303038", - "id": 8601, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "8442:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_26efcc4d852e81be6f75389e4f50496331355ea059764b90ab1412936d29ab69", - "typeString": "literal_string \"LBC008\"" - }, - "value": "LBC008" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_26efcc4d852e81be6f75389e4f50496331355ea059764b90ab1412936d29ab69", - "typeString": "literal_string \"LBC008\"" - } - ], - "id": 8594, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "8402:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 8602, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "8402:49:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 8603, - "nodeType": "ExpressionStatement", - "src": "8402:49:24" - }, - { - "assignments": [ - 8605 - ], - "declarations": [ - { - "constant": false, - "id": 8605, - "mutability": "mutable", - "name": "halfMsgValue", - "nameLocation": "8470:12:24", - "nodeType": "VariableDeclaration", - "scope": 8635, - "src": "8465:17:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 8604, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "8465:4:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 8610, - "initialValue": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 8609, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 8606, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "8485:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 8607, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "8489:5:24", - "memberName": "value", - "nodeType": "MemberAccess", - "src": "8485:9:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "/", - "rightExpression": { - "hexValue": "32", - "id": 8608, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "8497:1:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_2_by_1", - "typeString": "int_const 2" - }, - "value": "2" - }, - "src": "8485:13:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "8465:33:24" - }, - { - "expression": { - "id": 8626, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 8611, - "name": "collateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8167, - "src": "8512:10:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 8614, - "indexExpression": { - "expression": { - "id": 8612, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "8523:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 8613, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "8527:6:24", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "8523:10:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "8512:22:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 8620, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 8618, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 8615, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "8537:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 8616, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "8541:5:24", - "memberName": "value", - "nodeType": "MemberAccess", - "src": "8537:9:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "%", - "rightExpression": { - "hexValue": "32", - "id": 8617, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "8549:1:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_2_by_1", - "typeString": "int_const 2" - }, - "value": "2" - }, - "src": "8537:13:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 8619, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "8554:1:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "8537:18:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 8624, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 8622, - "name": "halfMsgValue", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8605, - "src": "8573:12:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "hexValue": "31", - "id": 8623, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "8588:1:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "8573:16:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 8625, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "Conditional", - "src": "8537:52:24", - "trueExpression": { - "id": 8621, - "name": "halfMsgValue", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8605, - "src": "8558:12:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "8512:77:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 8627, - "nodeType": "ExpressionStatement", - "src": "8512:77:24" - }, - { - "expression": { - "id": 8633, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 8628, - "name": "pegoutCollateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8171, - "src": "8603:16:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 8631, - "indexExpression": { - "expression": { - "id": 8629, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "8620:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 8630, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "8624:6:24", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "8620:10:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "8603:28:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 8632, - "name": "halfMsgValue", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8605, - "src": "8634:12:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "8603:43:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 8634, - "nodeType": "ExpressionStatement", - "src": "8603:43:24" - } - ] - }, - "id": 8636, - "nodeType": "IfStatement", - "src": "8169:488:24", - "trueBody": { - "id": 8593, - "nodeType": "Block", - "src": "8258:124:24", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 8581, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 8578, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "8280:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 8579, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "8284:5:24", - "memberName": "value", - "nodeType": "MemberAccess", - "src": "8280:9:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "id": 8580, - "name": "minCollateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8187, - "src": "8293:13:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "8280:26:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303038", - "id": 8582, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "8308:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_26efcc4d852e81be6f75389e4f50496331355ea059764b90ab1412936d29ab69", - "typeString": "literal_string \"LBC008\"" - }, - "value": "LBC008" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_26efcc4d852e81be6f75389e4f50496331355ea059764b90ab1412936d29ab69", - "typeString": "literal_string \"LBC008\"" - } - ], - "id": 8577, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "8272:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 8583, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "8272:45:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 8584, - "nodeType": "ExpressionStatement", - "src": "8272:45:24" - }, - { - "expression": { - "id": 8591, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 8585, - "name": "pegoutCollateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8171, - "src": "8331:16:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 8588, - "indexExpression": { - "expression": { - "id": 8586, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "8348:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 8587, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "8352:6:24", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "8348:10:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "8331:28:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "expression": { - "id": 8589, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "8362:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 8590, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "8366:5:24", - "memberName": "value", - "nodeType": "MemberAccess", - "src": "8362:9:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "8331:40:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 8592, - "nodeType": "ExpressionStatement", - "src": "8331:40:24" - } - ] - } - }, - "id": 8637, - "nodeType": "IfStatement", - "src": "7957:700:24", - "trueBody": { - "id": 8563, - "nodeType": "Block", - "src": "8045:118:24", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 8551, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 8548, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "8067:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 8549, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "8071:5:24", - "memberName": "value", - "nodeType": "MemberAccess", - "src": "8067:9:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "id": 8550, - "name": "minCollateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8187, - "src": "8080:13:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "8067:26:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303038", - "id": 8552, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "8095:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_26efcc4d852e81be6f75389e4f50496331355ea059764b90ab1412936d29ab69", - "typeString": "literal_string \"LBC008\"" - }, - "value": "LBC008" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_26efcc4d852e81be6f75389e4f50496331355ea059764b90ab1412936d29ab69", - "typeString": "literal_string \"LBC008\"" - } - ], - "id": 8547, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "8059:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 8553, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "8059:45:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 8554, - "nodeType": "ExpressionStatement", - "src": "8059:45:24" - }, - { - "expression": { - "id": 8561, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 8555, - "name": "collateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8167, - "src": "8118:10:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 8558, - "indexExpression": { - "expression": { - "id": 8556, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "8129:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 8557, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "8133:6:24", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "8129:10:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "8118:22:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "expression": { - "id": 8559, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "8143:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 8560, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "8147:5:24", - "memberName": "value", - "nodeType": "MemberAccess", - "src": "8143:9:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "8118:34:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 8562, - "nodeType": "ExpressionStatement", - "src": "8118:34:24" - } - ] - } - }, - { - "expression": { - "id": 8639, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "8667:12:24", - "subExpression": { - "id": 8638, - "name": "providerId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8197, - "src": "8667:10:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 8640, - "nodeType": "ExpressionStatement", - "src": "8667:12:24" - }, - { - "expression": { - "id": 8653, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 8641, - "name": "liquidityProviders", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8176, - "src": "8689:18:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_LiquidityProvider_$8026_storage_$", - "typeString": "mapping(uint256 => struct LiquidityBridgeContractV2.LiquidityProvider storage ref)" - } - }, - "id": 8643, - "indexExpression": { - "id": 8642, - "name": "providerId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8197, - "src": "8708:10:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "8689:30:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$8026_storage", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 8645, - "name": "providerId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8197, - "src": "8758:10:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "expression": { - "id": 8646, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "8792:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 8647, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "8796:6:24", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "8792:10:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 8648, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8420, - "src": "8822:5:24", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "id": 8649, - "name": "_apiBaseUrl", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8422, - "src": "8853:11:24", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "id": 8650, - "name": "_status", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8424, - "src": "8886:7:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "id": 8651, - "name": "_providerType", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8426, - "src": "8921:13:24", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 8644, - "name": "LiquidityProvider", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8026, - "src": "8722:17:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_struct$_LiquidityProvider_$8026_storage_ptr_$", - "typeString": "type(struct LiquidityBridgeContractV2.LiquidityProvider storage pointer)" - } - }, - "id": 8652, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "structConstructorCall", - "lValueRequested": false, - "nameLocations": [ - "8754:2:24", - "8782:8:24", - "8816:4:24", - "8841:10:24", - "8878:6:24", - "8907:12:24" - ], - "names": [ - "id", - "provider", - "name", - "apiBaseUrl", - "status", - "providerType" - ], - "nodeType": "FunctionCall", - "src": "8722:223:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$8026_memory_ptr", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider memory" - } - }, - "src": "8689:256:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$8026_storage", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider storage ref" - } - }, - "id": 8654, - "nodeType": "ExpressionStatement", - "src": "8689:256:24" - }, - { - "eventCall": { - "arguments": [ - { - "id": 8656, - "name": "providerId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8197, - "src": "8969:10:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "expression": { - "id": 8657, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "8981:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 8658, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "8985:6:24", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "8981:10:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 8659, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "8993:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 8660, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "8997:5:24", - "memberName": "value", - "nodeType": "MemberAccess", - "src": "8993:9:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 8655, - "name": "Register", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8034, - "src": "8960:8:24", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (uint256,address,uint256)" - } - }, - "id": 8661, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "8960:43:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 8662, - "nodeType": "EmitStatement", - "src": "8955:48:24" - }, - { - "expression": { - "components": [ - { - "id": 8663, - "name": "providerId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8197, - "src": "9021:10:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "id": 8664, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "9020:12:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 8430, - "id": 8665, - "nodeType": "Return", - "src": "9013:19:24" - } - ] - }, - "documentation": { - "id": 8418, - "nodeType": "StructuredDocumentation", - "src": "6765:98:24", - "text": "@dev Registers msg.sender as a liquidity provider with msg.value as collateral" - }, - "functionSelector": "41705518", - "id": 8667, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "register", - "nameLocation": "6877:8:24", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 8427, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 8420, - "mutability": "mutable", - "name": "_name", - "nameLocation": "6909:5:24", - "nodeType": "VariableDeclaration", - "scope": 8667, - "src": "6895:19:24", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 8419, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "6895:6:24", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 8422, - "mutability": "mutable", - "name": "_apiBaseUrl", - "nameLocation": "6938:11:24", - "nodeType": "VariableDeclaration", - "scope": 8667, - "src": "6924:25:24", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 8421, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "6924:6:24", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 8424, - "mutability": "mutable", - "name": "_status", - "nameLocation": "6964:7:24", - "nodeType": "VariableDeclaration", - "scope": 8667, - "src": "6959:12:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 8423, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "6959:4:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 8426, - "mutability": "mutable", - "name": "_providerType", - "nameLocation": "6995:13:24", - "nodeType": "VariableDeclaration", - "scope": 8667, - "src": "6981:27:24", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 8425, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "6981:6:24", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "6885:129:24" - }, - "returnParameters": { - "id": 8430, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 8429, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 8667, - "src": "7041:4:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 8428, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "7041:4:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "7040:6:24" - }, - "scope": 10830, - "src": "6868:2171:24", - "stateMutability": "payable", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 8754, - "nodeType": "Block", - "src": "9120:587:24", - "statements": [ - { - "assignments": [ - 8675 - ], - "declarations": [ - { - "constant": false, - "id": 8675, - "mutability": "mutable", - "name": "count", - "nameLocation": "9135:5:24", - "nodeType": "VariableDeclaration", - "scope": 8754, - "src": "9130:10:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 8674, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "9130:4:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 8677, - "initialValue": { - "hexValue": "30", - "id": 8676, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9143:1:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "9130:14:24" - }, - { - "assignments": [ - 8680 - ], - "declarations": [ - { - "constant": false, - "id": 8680, - "mutability": "mutable", - "name": "lp", - "nameLocation": "9180:2:24", - "nodeType": "VariableDeclaration", - "scope": 8754, - "src": "9154:28:24", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$8026_storage_ptr", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider" - }, - "typeName": { - "id": 8679, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 8678, - "name": "LiquidityProvider", - "nameLocations": [ - "9154:17:24" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 8026, - "src": "9154:17:24" - }, - "referencedDeclaration": 8026, - "src": "9154:17:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$8026_storage_ptr", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider" - } - }, - "visibility": "internal" - } - ], - "id": 8681, - "nodeType": "VariableDeclarationStatement", - "src": "9154:28:24" - }, - { - "body": { - "id": 8702, - "nodeType": "Block", - "src": "9231:107:24", - "statements": [ - { - "condition": { - "arguments": [ - { - "baseExpression": { - "id": 8693, - "name": "liquidityProviders", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8176, - "src": "9264:18:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_LiquidityProvider_$8026_storage_$", - "typeString": "mapping(uint256 => struct LiquidityBridgeContractV2.LiquidityProvider storage ref)" - } - }, - "id": 8695, - "indexExpression": { - "id": 8694, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8683, - "src": "9283:1:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "9264:21:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$8026_storage", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider storage ref" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_struct$_LiquidityProvider_$8026_storage", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider storage ref" - } - ], - "id": 8692, - "name": "shouldBeListed", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8815, - "src": "9249:14:24", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_LiquidityProvider_$8026_storage_ptr_$returns$_t_bool_$", - "typeString": "function (struct LiquidityBridgeContractV2.LiquidityProvider storage pointer) view returns (bool)" - } - }, - "id": 8696, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "9249:37:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 8701, - "nodeType": "IfStatement", - "src": "9245:83:24", - "trueBody": { - "id": 8700, - "nodeType": "Block", - "src": "9288:40:24", - "statements": [ - { - "expression": { - "id": 8698, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "9306:7:24", - "subExpression": { - "id": 8697, - "name": "count", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8675, - "src": "9306:5:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 8699, - "nodeType": "ExpressionStatement", - "src": "9306:7:24" - } - ] - } - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 8688, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 8686, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8683, - "src": "9209:1:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<=", - "rightExpression": { - "id": 8687, - "name": "providerId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8197, - "src": "9214:10:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "9209:15:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 8703, - "initializationExpression": { - "assignments": [ - 8683 - ], - "declarations": [ - { - "constant": false, - "id": 8683, - "mutability": "mutable", - "name": "i", - "nameLocation": "9202:1:24", - "nodeType": "VariableDeclaration", - "scope": 8703, - "src": "9197:6:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 8682, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "9197:4:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 8685, - "initialValue": { - "hexValue": "31", - "id": 8684, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9206:1:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "nodeType": "VariableDeclarationStatement", - "src": "9197:10:24" - }, - "loopExpression": { - "expression": { - "id": 8690, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "9226:3:24", - "subExpression": { - "id": 8689, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8683, - "src": "9226:1:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 8691, - "nodeType": "ExpressionStatement", - "src": "9226:3:24" - }, - "nodeType": "ForStatement", - "src": "9192:146:24" - }, - { - "assignments": [ - 8708 - ], - "declarations": [ - { - "constant": false, - "id": 8708, - "mutability": "mutable", - "name": "providersToReturn", - "nameLocation": "9374:17:24", - "nodeType": "VariableDeclaration", - "scope": 8754, - "src": "9347:44:24", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_LiquidityProvider_$8026_memory_ptr_$dyn_memory_ptr", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider[]" - }, - "typeName": { - "baseType": { - "id": 8706, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 8705, - "name": "LiquidityProvider", - "nameLocations": [ - "9347:17:24" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 8026, - "src": "9347:17:24" - }, - "referencedDeclaration": 8026, - "src": "9347:17:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$8026_storage_ptr", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider" - } - }, - "id": 8707, - "nodeType": "ArrayTypeName", - "src": "9347:19:24", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_LiquidityProvider_$8026_storage_$dyn_storage_ptr", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider[]" - } - }, - "visibility": "internal" - } - ], - "id": 8715, - "initialValue": { - "arguments": [ - { - "id": 8713, - "name": "count", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8675, - "src": "9418:5:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 8712, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "NewExpression", - "src": "9394:23:24", - "typeDescriptions": { - "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_struct$_LiquidityProvider_$8026_memory_ptr_$dyn_memory_ptr_$", - "typeString": "function (uint256) pure returns (struct LiquidityBridgeContractV2.LiquidityProvider memory[] memory)" - }, - "typeName": { - "baseType": { - "id": 8710, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 8709, - "name": "LiquidityProvider", - "nameLocations": [ - "9398:17:24" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 8026, - "src": "9398:17:24" - }, - "referencedDeclaration": 8026, - "src": "9398:17:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$8026_storage_ptr", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider" - } - }, - "id": 8711, - "nodeType": "ArrayTypeName", - "src": "9398:19:24", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_LiquidityProvider_$8026_storage_$dyn_storage_ptr", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider[]" - } - } - }, - "id": 8714, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "9394:30:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_LiquidityProvider_$8026_memory_ptr_$dyn_memory_ptr", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider memory[] memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "9347:77:24" - }, - { - "expression": { - "id": 8718, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 8716, - "name": "count", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8675, - "src": "9434:5:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "hexValue": "30", - "id": 8717, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9442:1:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "9434:9:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 8719, - "nodeType": "ExpressionStatement", - "src": "9434:9:24" - }, - { - "body": { - "id": 8750, - "nodeType": "Block", - "src": "9492:175:24", - "statements": [ - { - "expression": { - "id": 8734, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 8730, - "name": "lp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8680, - "src": "9506:2:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$8026_storage_ptr", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider storage pointer" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "baseExpression": { - "id": 8731, - "name": "liquidityProviders", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8176, - "src": "9511:18:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_LiquidityProvider_$8026_storage_$", - "typeString": "mapping(uint256 => struct LiquidityBridgeContractV2.LiquidityProvider storage ref)" - } - }, - "id": 8733, - "indexExpression": { - "id": 8732, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8721, - "src": "9530:1:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "9511:21:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$8026_storage", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider storage ref" - } - }, - "src": "9506:26:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$8026_storage_ptr", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider storage pointer" - } - }, - "id": 8735, - "nodeType": "ExpressionStatement", - "src": "9506:26:24" - }, - { - "condition": { - "arguments": [ - { - "id": 8737, - "name": "lp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8680, - "src": "9565:2:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$8026_storage_ptr", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider storage pointer" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_struct$_LiquidityProvider_$8026_storage_ptr", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider storage pointer" - } - ], - "id": 8736, - "name": "shouldBeListed", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8815, - "src": "9550:14:24", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_LiquidityProvider_$8026_storage_ptr_$returns$_t_bool_$", - "typeString": "function (struct LiquidityBridgeContractV2.LiquidityProvider storage pointer) view returns (bool)" - } - }, - "id": 8738, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "9550:18:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 8749, - "nodeType": "IfStatement", - "src": "9546:111:24", - "trueBody": { - "id": 8748, - "nodeType": "Block", - "src": "9570:87:24", - "statements": [ - { - "expression": { - "id": 8743, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 8739, - "name": "providersToReturn", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8708, - "src": "9588:17:24", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_LiquidityProvider_$8026_memory_ptr_$dyn_memory_ptr", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider memory[] memory" - } - }, - "id": 8741, - "indexExpression": { - "id": 8740, - "name": "count", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8675, - "src": "9606:5:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "9588:24:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$8026_memory_ptr", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider memory" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 8742, - "name": "lp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8680, - "src": "9615:2:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$8026_storage_ptr", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider storage pointer" - } - }, - "src": "9588:29:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$8026_memory_ptr", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider memory" - } - }, - "id": 8744, - "nodeType": "ExpressionStatement", - "src": "9588:29:24" - }, - { - "expression": { - "id": 8746, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "9635:7:24", - "subExpression": { - "id": 8745, - "name": "count", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8675, - "src": "9635:5:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 8747, - "nodeType": "ExpressionStatement", - "src": "9635:7:24" - } - ] - } - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 8726, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 8724, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8721, - "src": "9470:1:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<=", - "rightExpression": { - "id": 8725, - "name": "providerId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8197, - "src": "9475:10:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "9470:15:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 8751, - "initializationExpression": { - "assignments": [ - 8721 - ], - "declarations": [ - { - "constant": false, - "id": 8721, - "mutability": "mutable", - "name": "i", - "nameLocation": "9463:1:24", - "nodeType": "VariableDeclaration", - "scope": 8751, - "src": "9458:6:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 8720, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "9458:4:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 8723, - "initialValue": { - "hexValue": "31", - "id": 8722, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9467:1:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "nodeType": "VariableDeclarationStatement", - "src": "9458:10:24" - }, - "loopExpression": { - "expression": { - "id": 8728, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "9487:3:24", - "subExpression": { - "id": 8727, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8721, - "src": "9487:1:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 8729, - "nodeType": "ExpressionStatement", - "src": "9487:3:24" - }, - "nodeType": "ForStatement", - "src": "9453:214:24" - }, - { - "expression": { - "id": 8752, - "name": "providersToReturn", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8708, - "src": "9683:17:24", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_LiquidityProvider_$8026_memory_ptr_$dyn_memory_ptr", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider memory[] memory" - } - }, - "functionReturnParameters": 8673, - "id": 8753, - "nodeType": "Return", - "src": "9676:24:24" - } - ] - }, - "functionSelector": "edc922a9", - "id": 8755, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getProviders", - "nameLocation": "9054:12:24", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 8668, - "nodeType": "ParameterList", - "parameters": [], - "src": "9066:2:24" - }, - "returnParameters": { - "id": 8673, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 8672, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 8755, - "src": "9092:26:24", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_LiquidityProvider_$8026_memory_ptr_$dyn_memory_ptr", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider[]" - }, - "typeName": { - "baseType": { - "id": 8670, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 8669, - "name": "LiquidityProvider", - "nameLocations": [ - "9092:17:24" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 8026, - "src": "9092:17:24" - }, - "referencedDeclaration": 8026, - "src": "9092:17:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$8026_storage_ptr", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider" - } - }, - "id": 8671, - "nodeType": "ArrayTypeName", - "src": "9092:19:24", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_LiquidityProvider_$8026_storage_$dyn_storage_ptr", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider[]" - } - }, - "visibility": "internal" - } - ], - "src": "9091:28:24" - }, - "scope": 10830, - "src": "9045:662:24", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 8791, - "nodeType": "Block", - "src": "9806:221:24", - "statements": [ - { - "body": { - "id": 8785, - "nodeType": "Block", - "src": "9855:140:24", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 8778, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "baseExpression": { - "id": 8773, - "name": "liquidityProviders", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8176, - "src": "9873:18:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_LiquidityProvider_$8026_storage_$", - "typeString": "mapping(uint256 => struct LiquidityBridgeContractV2.LiquidityProvider storage ref)" - } - }, - "id": 8775, - "indexExpression": { - "id": 8774, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8764, - "src": "9892:1:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "9873:21:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$8026_storage", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider storage ref" - } - }, - "id": 8776, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "9895:8:24", - "memberName": "provider", - "nodeType": "MemberAccess", - "referencedDeclaration": 8017, - "src": "9873:30:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "id": 8777, - "name": "providerAddress", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8757, - "src": "9907:15:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "9873:49:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 8784, - "nodeType": "IfStatement", - "src": "9869:116:24", - "trueBody": { - "id": 8783, - "nodeType": "Block", - "src": "9924:61:24", - "statements": [ - { - "expression": { - "baseExpression": { - "id": 8779, - "name": "liquidityProviders", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8176, - "src": "9949:18:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_LiquidityProvider_$8026_storage_$", - "typeString": "mapping(uint256 => struct LiquidityBridgeContractV2.LiquidityProvider storage ref)" - } - }, - "id": 8781, - "indexExpression": { - "id": 8780, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8764, - "src": "9968:1:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "9949:21:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$8026_storage", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider storage ref" - } - }, - "functionReturnParameters": 8762, - "id": 8782, - "nodeType": "Return", - "src": "9942:28:24" - } - ] - } - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 8769, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 8767, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8764, - "src": "9833:1:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<=", - "rightExpression": { - "id": 8768, - "name": "providerId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8197, - "src": "9838:10:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "9833:15:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 8786, - "initializationExpression": { - "assignments": [ - 8764 - ], - "declarations": [ - { - "constant": false, - "id": 8764, - "mutability": "mutable", - "name": "i", - "nameLocation": "9826:1:24", - "nodeType": "VariableDeclaration", - "scope": 8786, - "src": "9821:6:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 8763, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "9821:4:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 8766, - "initialValue": { - "hexValue": "31", - "id": 8765, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9830:1:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "nodeType": "VariableDeclarationStatement", - "src": "9821:10:24" - }, - "loopExpression": { - "expression": { - "id": 8771, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "9850:3:24", - "subExpression": { - "id": 8770, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8764, - "src": "9850:1:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 8772, - "nodeType": "ExpressionStatement", - "src": "9850:3:24" - }, - "nodeType": "ForStatement", - "src": "9816:179:24" - }, - { - "expression": { - "arguments": [ - { - "hexValue": "4c4243303031", - "id": 8788, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "10011:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_a509ede2323476f3f5be48987391c5516e4ea8116b376287322ed2188be0e53c", - "typeString": "literal_string \"LBC001\"" - }, - "value": "LBC001" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_a509ede2323476f3f5be48987391c5516e4ea8116b376287322ed2188be0e53c", - "typeString": "literal_string \"LBC001\"" - } - ], - "id": 8787, - "name": "revert", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967277, - 4294967277 - ], - "referencedDeclaration": 4294967277, - "src": "10004:6:24", - "typeDescriptions": { - "typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory) pure" - } - }, - "id": 8789, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "10004:16:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 8790, - "nodeType": "ExpressionStatement", - "src": "10004:16:24" - } - ] - }, - "functionSelector": "55f21eb7", - "id": 8792, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getProvider", - "nameLocation": "9722:11:24", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 8758, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 8757, - "mutability": "mutable", - "name": "providerAddress", - "nameLocation": "9742:15:24", - "nodeType": "VariableDeclaration", - "scope": 8792, - "src": "9734:23:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 8756, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "9734:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "9733:25:24" - }, - "returnParameters": { - "id": 8762, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 8761, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 8792, - "src": "9780:24:24", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$8026_memory_ptr", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider" - }, - "typeName": { - "id": 8760, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 8759, - "name": "LiquidityProvider", - "nameLocations": [ - "9780:17:24" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 8026, - "src": "9780:17:24" - }, - "referencedDeclaration": 8026, - "src": "9780:17:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$8026_storage_ptr", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider" - } - }, - "visibility": "internal" - } - ], - "src": "9779:26:24" - }, - "scope": 10830, - "src": "9713:314:24", - "stateMutability": "view", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 8814, - "nodeType": "Block", - "src": "10113:102:24", - "statements": [ - { - "expression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 8812, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "components": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 8808, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "expression": { - "id": 8801, - "name": "lp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8795, - "src": "10144:2:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$8026_storage_ptr", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider storage pointer" - } - }, - "id": 8802, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "10147:8:24", - "memberName": "provider", - "nodeType": "MemberAccess", - "referencedDeclaration": 8017, - "src": "10144:11:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 8800, - "name": "isRegistered", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10457, - "src": "10131:12:24", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", - "typeString": "function (address) view returns (bool)" - } - }, - "id": 8803, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "10131:25:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "arguments": [ - { - "expression": { - "id": 8805, - "name": "lp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8795, - "src": "10182:2:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$8026_storage_ptr", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider storage pointer" - } - }, - "id": 8806, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "10185:8:24", - "memberName": "provider", - "nodeType": "MemberAccess", - "referencedDeclaration": 8017, - "src": "10182:11:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 8804, - "name": "isRegisteredForPegout", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10477, - "src": "10160:21:24", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", - "typeString": "function (address) view returns (bool)" - } - }, - "id": 8807, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "10160:34:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "10131:63:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "id": 8809, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "10130:65:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "expression": { - "id": 8810, - "name": "lp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8795, - "src": "10199:2:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$8026_storage_ptr", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider storage pointer" - } - }, - "id": 8811, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "10202:6:24", - "memberName": "status", - "nodeType": "MemberAccess", - "referencedDeclaration": 8023, - "src": "10199:9:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "10130:78:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 8799, - "id": 8813, - "nodeType": "Return", - "src": "10123:85:24" - } - ] - }, - "id": 8815, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "shouldBeListed", - "nameLocation": "10042:14:24", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 8796, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 8795, - "mutability": "mutable", - "name": "lp", - "nameLocation": "10083:2:24", - "nodeType": "VariableDeclaration", - "scope": 8815, - "src": "10057:28:24", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$8026_storage_ptr", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider" - }, - "typeName": { - "id": 8794, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 8793, - "name": "LiquidityProvider", - "nameLocations": [ - "10057:17:24" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 8026, - "src": "10057:17:24" - }, - "referencedDeclaration": 8026, - "src": "10057:17:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$8026_storage_ptr", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider" - } - }, - "visibility": "internal" - } - ], - "src": "10056:30:24" - }, - "returnParameters": { - "id": 8799, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 8798, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 8815, - "src": "10108:4:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 8797, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "10108:4:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "10107:6:24" - }, - "scope": 10830, - "src": "10033:182:24", - "stateMutability": "view", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 8836, - "nodeType": "Block", - "src": "10356:108:24", - "statements": [ - { - "expression": { - "id": 8827, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 8821, - "name": "collateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8167, - "src": "10366:10:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 8824, - "indexExpression": { - "expression": { - "id": 8822, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "10377:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 8823, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "10381:6:24", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "10377:10:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "10366:22:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "+=", - "rightHandSide": { - "expression": { - "id": 8825, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "10392:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 8826, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "10396:5:24", - "memberName": "value", - "nodeType": "MemberAccess", - "src": "10392:9:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "10366:35:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 8828, - "nodeType": "ExpressionStatement", - "src": "10366:35:24" - }, - { - "eventCall": { - "arguments": [ - { - "expression": { - "id": 8830, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "10435:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 8831, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "10439:6:24", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "10435:10:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 8832, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "10447:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 8833, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "10451:5:24", - "memberName": "value", - "nodeType": "MemberAccess", - "src": "10447:9:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 8829, - "name": "CollateralIncrease", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8040, - "src": "10416:18:24", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,uint256)" - } - }, - "id": 8834, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "10416:41:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 8835, - "nodeType": "EmitStatement", - "src": "10411:46:24" - } - ] - }, - "documentation": { - "id": 8816, - "nodeType": "StructuredDocumentation", - "src": "10221:73:24", - "text": "@dev Increases the amount of collateral of the sender" - }, - "functionSelector": "9e816999", - "id": 8837, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "id": 8819, - "kind": "modifierInvocation", - "modifierName": { - "id": 8818, - "name": "onlyRegistered", - "nameLocations": [ - "10341:14:24" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 8231, - "src": "10341:14:24" - }, - "nodeType": "ModifierInvocation", - "src": "10341:14:24" - } - ], - "name": "addCollateral", - "nameLocation": "10308:13:24", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 8817, - "nodeType": "ParameterList", - "parameters": [], - "src": "10321:2:24" - }, - "returnParameters": { - "id": 8820, - "nodeType": "ParameterList", - "parameters": [], - "src": "10356:0:24" - }, - "scope": 10830, - "src": "10299:165:24", - "stateMutability": "payable", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 8857, - "nodeType": "Block", - "src": "10542:120:24", - "statements": [ - { - "expression": { - "id": 8848, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 8842, - "name": "pegoutCollateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8171, - "src": "10552:16:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 8845, - "indexExpression": { - "expression": { - "id": 8843, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "10569:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 8844, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "10573:6:24", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "10569:10:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "10552:28:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "+=", - "rightHandSide": { - "expression": { - "id": 8846, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "10584:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 8847, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "10588:5:24", - "memberName": "value", - "nodeType": "MemberAccess", - "src": "10584:9:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "10552:41:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 8849, - "nodeType": "ExpressionStatement", - "src": "10552:41:24" - }, - { - "eventCall": { - "arguments": [ - { - "expression": { - "id": 8851, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "10633:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 8852, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "10637:6:24", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "10633:10:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 8853, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "10645:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 8854, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "10649:5:24", - "memberName": "value", - "nodeType": "MemberAccess", - "src": "10645:9:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 8850, - "name": "PegoutCollateralIncrease", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8046, - "src": "10608:24:24", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,uint256)" - } - }, - "id": 8855, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "10608:47:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 8856, - "nodeType": "EmitStatement", - "src": "10603:52:24" - } - ] - }, - "functionSelector": "4198687e", - "id": 8858, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "id": 8840, - "kind": "modifierInvocation", - "modifierName": { - "id": 8839, - "name": "onlyRegisteredForPegout", - "nameLocations": [ - "10518:23:24" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 8243, - "src": "10518:23:24" - }, - "nodeType": "ModifierInvocation", - "src": "10518:23:24" - } - ], - "name": "addPegoutCollateral", - "nameLocation": "10479:19:24", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 8838, - "nodeType": "ParameterList", - "parameters": [], - "src": "10498:2:24" - }, - "returnParameters": { - "id": 8841, - "nodeType": "ParameterList", - "parameters": [], - "src": "10542:0:24" - }, - "scope": 10830, - "src": "10470:192:24", - "stateMutability": "payable", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 8871, - "nodeType": "Block", - "src": "10784:55:24", - "statements": [ - { - "expression": { - "arguments": [ - { - "expression": { - "id": 8865, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "10810:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 8866, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "10814:6:24", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "10810:10:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 8867, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "10822:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 8868, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "10826:5:24", - "memberName": "value", - "nodeType": "MemberAccess", - "src": "10822:9:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 8864, - "name": "increaseBalance", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10417, - "src": "10794:15:24", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,uint256)" - } - }, - "id": 8869, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "10794:38:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 8870, - "nodeType": "ExpressionStatement", - "src": "10794:38:24" - } - ] - }, - "documentation": { - "id": 8859, - "nodeType": "StructuredDocumentation", - "src": "10668:60:24", - "text": "@dev Increases the balance of the sender" - }, - "functionSelector": "d0e30db0", - "id": 8872, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "id": 8862, - "kind": "modifierInvocation", - "modifierName": { - "id": 8861, - "name": "onlyRegistered", - "nameLocations": [ - "10769:14:24" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 8231, - "src": "10769:14:24" - }, - "nodeType": "ModifierInvocation", - "src": "10769:14:24" - } - ], - "name": "deposit", - "nameLocation": "10742:7:24", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 8860, - "nodeType": "ParameterList", - "parameters": [], - "src": "10749:2:24" - }, - "returnParameters": { - "id": 8863, - "nodeType": "ParameterList", - "parameters": [], - "src": "10784:0:24" - }, - "scope": 10830, - "src": "10733:106:24", - "stateMutability": "payable", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 8916, - "nodeType": "Block", - "src": "10985:249:24", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 8884, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "id": 8879, - "name": "balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8163, - "src": "11003:8:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 8882, - "indexExpression": { - "expression": { - "id": 8880, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "11012:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 8881, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "11016:6:24", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "11012:10:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "11003:20:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "id": 8883, - "name": "amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8875, - "src": "11027:6:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "11003:30:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303139", - "id": 8885, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "11035:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_41f42e8d0f67be0e87abf05a33ed728b4868df2f2b92840d9519a852352eb909", - "typeString": "literal_string \"LBC019\"" - }, - "value": "LBC019" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_41f42e8d0f67be0e87abf05a33ed728b4868df2f2b92840d9519a852352eb909", - "typeString": "literal_string \"LBC019\"" - } - ], - "id": 8878, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "10995:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 8886, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "10995:49:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 8887, - "nodeType": "ExpressionStatement", - "src": "10995:49:24" - }, - { - "expression": { - "id": 8893, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 8888, - "name": "balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8163, - "src": "11054:8:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 8891, - "indexExpression": { - "expression": { - "id": 8889, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "11063:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 8890, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "11067:6:24", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "11063:10:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "11054:20:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "-=", - "rightHandSide": { - "id": 8892, - "name": "amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8875, - "src": "11078:6:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "11054:30:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 8894, - "nodeType": "ExpressionStatement", - "src": "11054:30:24" - }, - { - "assignments": [ - 8896, - null - ], - "declarations": [ - { - "constant": false, - "id": 8896, - "mutability": "mutable", - "name": "success", - "nameLocation": "11100:7:24", - "nodeType": "VariableDeclaration", - "scope": 8916, - "src": "11095:12:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 8895, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "11095:4:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - null - ], - "id": 8904, - "initialValue": { - "arguments": [ - { - "hexValue": "", - "id": 8902, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "11143:2:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - }, - "value": "" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - } - ], - "expression": { - "expression": { - "id": 8897, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "11112:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 8898, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "11116:6:24", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "11112:10:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 8899, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "11123:4:24", - "memberName": "call", - "nodeType": "MemberAccess", - "src": "11112:15:24", - "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": 8901, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "names": [ - "value" - ], - "nodeType": "FunctionCallOptions", - "options": [ - { - "id": 8900, - "name": "amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8875, - "src": "11135:6:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "src": "11112:30:24", - "typeDescriptions": { - "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$value", - "typeString": "function (bytes memory) payable returns (bool,bytes memory)" - } - }, - "id": 8903, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "11112:34:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "tuple(bool,bytes memory)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "11094:52:24" - }, - { - "expression": { - "arguments": [ - { - "id": 8906, - "name": "success", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8896, - "src": "11164:7:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303230", - "id": 8907, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "11173:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_5c242c0534fa00b11577be4ea886875d641e4a1ad40749685bb740e7c1a67fc9", - "typeString": "literal_string \"LBC020\"" - }, - "value": "LBC020" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_5c242c0534fa00b11577be4ea886875d641e4a1ad40749685bb740e7c1a67fc9", - "typeString": "literal_string \"LBC020\"" - } - ], - "id": 8905, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "11156:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 8908, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "11156:26:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 8909, - "nodeType": "ExpressionStatement", - "src": "11156:26:24" - }, - { - "eventCall": { - "arguments": [ - { - "expression": { - "id": 8911, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "11208:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 8912, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "11212:6:24", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "11208:10:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 8913, - "name": "amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8875, - "src": "11220:6:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 8910, - "name": "Withdrawal", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8052, - "src": "11197:10:24", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,uint256)" - } - }, - "id": 8914, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "11197:30:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 8915, - "nodeType": "EmitStatement", - "src": "11192:35:24" - } - ] - }, - "documentation": { - "id": 8873, - "nodeType": "StructuredDocumentation", - "src": "10845:92:24", - "text": "@dev Used to withdraw funds\n@param amount The amount to withdraw" - }, - "functionSelector": "2e1a7d4d", - "id": 8917, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "withdraw", - "nameLocation": "10951:8:24", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 8876, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 8875, - "mutability": "mutable", - "name": "amount", - "nameLocation": "10968:6:24", - "nodeType": "VariableDeclaration", - "scope": 8917, - "src": "10960:14:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 8874, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "10960:7:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "10959:16:24" - }, - "returnParameters": { - "id": 8877, - "nodeType": "ParameterList", - "parameters": [], - "src": "10985:0:24" - }, - "scope": 10830, - "src": "10942:292:24", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 9000, - "nodeType": "Block", - "src": "11360:566:24", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 8929, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "id": 8924, - "name": "resignationBlockNum", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8185, - "src": "11378:19:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 8927, - "indexExpression": { - "expression": { - "id": 8925, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "11398:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 8926, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "11402:6:24", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "11398:10:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "11378:31:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 8928, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "11412:1:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "11378:35:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303231", - "id": 8930, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "11415:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_ccfdeeda37cff52b8b53c7f459ead001a00858d8cd279133dc1e599c6257c485", - "typeString": "literal_string \"LBC021\"" - }, - "value": "LBC021" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_ccfdeeda37cff52b8b53c7f459ead001a00858d8cd279133dc1e599c6257c485", - "typeString": "literal_string \"LBC021\"" - } - ], - "id": 8923, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "11370:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 8931, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "11370:54:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 8932, - "nodeType": "ExpressionStatement", - "src": "11370:54:24" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 8942, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 8940, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 8934, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967292, - "src": "11455:5:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 8935, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "11461:6:24", - "memberName": "number", - "nodeType": "MemberAccess", - "src": "11455:12:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "baseExpression": { - "id": 8936, - "name": "resignationBlockNum", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8185, - "src": "11470:19:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 8939, - "indexExpression": { - "expression": { - "id": 8937, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "11490:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 8938, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "11494:6:24", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "11490:10:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "11470:31:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "11455:46:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "id": 8941, - "name": "resignDelayInBlocks", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8193, - "src": "11517:19:24", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "src": "11455:81:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303232", - "id": 8943, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "11550:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_ae5a5bd2536c79a56736074670f517df1b8a17deb822b59dfa1648888074b4cc", - "typeString": "literal_string \"LBC022\"" - }, - "value": "LBC022" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_ae5a5bd2536c79a56736074670f517df1b8a17deb822b59dfa1648888074b4cc", - "typeString": "literal_string \"LBC022\"" - } - ], - "id": 8933, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "11434:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 8944, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "11434:134:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 8945, - "nodeType": "ExpressionStatement", - "src": "11434:134:24" - }, - { - "assignments": [ - 8947 - ], - "declarations": [ - { - "constant": false, - "id": 8947, - "mutability": "mutable", - "name": "amount", - "nameLocation": "11583:6:24", - "nodeType": "VariableDeclaration", - "scope": 9000, - "src": "11578:11:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 8946, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "11578:4:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 8957, - "initialValue": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 8956, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "id": 8948, - "name": "collateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8167, - "src": "11592:10:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 8951, - "indexExpression": { - "expression": { - "id": 8949, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "11603:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 8950, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "11607:6:24", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "11603:10:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "11592:22:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "baseExpression": { - "id": 8952, - "name": "pegoutCollateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8171, - "src": "11617:16:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 8955, - "indexExpression": { - "expression": { - "id": 8953, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "11634:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 8954, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "11638:6:24", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "11634:10:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "11617:28:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "11592:53:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "11578:67:24" - }, - { - "expression": { - "id": 8963, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 8958, - "name": "pegoutCollateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8171, - "src": "11655:16:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 8961, - "indexExpression": { - "expression": { - "id": 8959, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "11672:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 8960, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "11676:6:24", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "11672:10:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "11655:28:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "hexValue": "30", - "id": 8962, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "11686:1:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "11655:32:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 8964, - "nodeType": "ExpressionStatement", - "src": "11655:32:24" - }, - { - "expression": { - "id": 8970, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 8965, - "name": "collateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8167, - "src": "11697:10:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 8968, - "indexExpression": { - "expression": { - "id": 8966, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "11708:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 8967, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "11712:6:24", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "11708:10:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "11697:22:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "hexValue": "30", - "id": 8969, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "11722:1:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "11697:26:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 8971, - "nodeType": "ExpressionStatement", - "src": "11697:26:24" - }, - { - "expression": { - "id": 8977, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 8972, - "name": "resignationBlockNum", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8185, - "src": "11733:19:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 8975, - "indexExpression": { - "expression": { - "id": 8973, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "11753:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 8974, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "11757:6:24", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "11753:10:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "11733:31:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "hexValue": "30", - "id": 8976, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "11767:1:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "11733:35:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 8978, - "nodeType": "ExpressionStatement", - "src": "11733:35:24" - }, - { - "assignments": [ - 8980, - null - ], - "declarations": [ - { - "constant": false, - "id": 8980, - "mutability": "mutable", - "name": "success", - "nameLocation": "11784:7:24", - "nodeType": "VariableDeclaration", - "scope": 9000, - "src": "11779:12:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 8979, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "11779:4:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - null - ], - "id": 8988, - "initialValue": { - "arguments": [ - { - "hexValue": "", - "id": 8986, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "11827:2:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - }, - "value": "" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - } - ], - "expression": { - "expression": { - "id": 8981, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "11796:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 8982, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "11800:6:24", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "11796:10:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 8983, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "11807:4:24", - "memberName": "call", - "nodeType": "MemberAccess", - "src": "11796:15:24", - "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": 8985, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "names": [ - "value" - ], - "nodeType": "FunctionCallOptions", - "options": [ - { - "id": 8984, - "name": "amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8947, - "src": "11819:6:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "src": "11796:30:24", - "typeDescriptions": { - "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$value", - "typeString": "function (bytes memory) payable returns (bool,bytes memory)" - } - }, - "id": 8987, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "11796:34:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "tuple(bool,bytes memory)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "11778:52:24" - }, - { - "expression": { - "arguments": [ - { - "id": 8990, - "name": "success", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8980, - "src": "11848:7:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303230", - "id": 8991, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "11857:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_5c242c0534fa00b11577be4ea886875d641e4a1ad40749685bb740e7c1a67fc9", - "typeString": "literal_string \"LBC020\"" - }, - "value": "LBC020" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_5c242c0534fa00b11577be4ea886875d641e4a1ad40749685bb740e7c1a67fc9", - "typeString": "literal_string \"LBC020\"" - } - ], - "id": 8989, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "11840:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 8992, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "11840:26:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 8993, - "nodeType": "ExpressionStatement", - "src": "11840:26:24" - }, - { - "eventCall": { - "arguments": [ - { - "expression": { - "id": 8995, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "11900:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 8996, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "11904:6:24", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "11900:10:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 8997, - "name": "amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8947, - "src": "11912:6:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 8994, - "name": "WithdrawCollateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8058, - "src": "11881:18:24", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,uint256)" - } - }, - "id": 8998, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "11881:38:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 8999, - "nodeType": "EmitStatement", - "src": "11876:43:24" - } - ] - }, - "documentation": { - "id": 8918, - "nodeType": "StructuredDocumentation", - "src": "11240:63:24", - "text": "@dev Used to withdraw the locked collateral" - }, - "functionSelector": "59c153be", - "id": 9001, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "id": 8921, - "kind": "modifierInvocation", - "modifierName": { - "id": 8920, - "name": "nonReentrant", - "nameLocations": [ - "11347:12:24" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 346, - "src": "11347:12:24" - }, - "nodeType": "ModifierInvocation", - "src": "11347:12:24" - } - ], - "name": "withdrawCollateral", - "nameLocation": "11317:18:24", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 8919, - "nodeType": "ParameterList", - "parameters": [], - "src": "11335:2:24" - }, - "returnParameters": { - "id": 8922, - "nodeType": "ParameterList", - "parameters": [], - "src": "11360:0:24" - }, - "scope": 10830, - "src": "11308:618:24", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 9030, - "nodeType": "Block", - "src": "12042:163:24", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 9013, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "id": 9008, - "name": "resignationBlockNum", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8185, - "src": "12060:19:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 9011, - "indexExpression": { - "expression": { - "id": 9009, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "12080:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 9010, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "12084:6:24", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "12080:10:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "12060:31:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 9012, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "12095:1:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "12060:36:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303233", - "id": 9014, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "12098:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_1e153c8413fa71b1dc88c42214ae3211e20bbd7d323adc3a7cb82fb90c05d672", - "typeString": "literal_string \"LBC023\"" - }, - "value": "LBC023" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_1e153c8413fa71b1dc88c42214ae3211e20bbd7d323adc3a7cb82fb90c05d672", - "typeString": "literal_string \"LBC023\"" - } - ], - "id": 9007, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "12052:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 9015, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "12052:55:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 9016, - "nodeType": "ExpressionStatement", - "src": "12052:55:24" - }, - { - "expression": { - "id": 9023, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 9017, - "name": "resignationBlockNum", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8185, - "src": "12117:19:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 9020, - "indexExpression": { - "expression": { - "id": 9018, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "12137:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 9019, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "12141:6:24", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "12137:10:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "12117:31:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "expression": { - "id": 9021, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967292, - "src": "12151:5:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 9022, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "12157:6:24", - "memberName": "number", - "nodeType": "MemberAccess", - "src": "12151:12:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "12117:46:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 9024, - "nodeType": "ExpressionStatement", - "src": "12117:46:24" - }, - { - "eventCall": { - "arguments": [ - { - "expression": { - "id": 9026, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "12187:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 9027, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "12191:6:24", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "12187:10:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 9025, - "name": "Resigned", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8062, - "src": "12178:8:24", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$returns$__$", - "typeString": "function (address)" - } - }, - "id": 9028, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "12178:20:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 9029, - "nodeType": "EmitStatement", - "src": "12173:25:24" - } - ] - }, - "documentation": { - "id": 9002, - "nodeType": "StructuredDocumentation", - "src": "11932:63:24", - "text": "@dev Used to resign as a liquidity provider" - }, - "functionSelector": "69652fcf", - "id": 9031, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "id": 9005, - "kind": "modifierInvocation", - "modifierName": { - "id": 9004, - "name": "onlyRegistered", - "nameLocations": [ - "12027:14:24" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 8231, - "src": "12027:14:24" - }, - "nodeType": "ModifierInvocation", - "src": "12027:14:24" - } - ], - "name": "resign", - "nameLocation": "12009:6:24", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 9003, - "nodeType": "ParameterList", - "parameters": [], - "src": "12015:2:24" - }, - "returnParameters": { - "id": 9006, - "nodeType": "ParameterList", - "parameters": [], - "src": "12042:0:24" - }, - "scope": 10830, - "src": "12000:205:24", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 9043, - "nodeType": "Block", - "src": "12472:40:24", - "statements": [ - { - "expression": { - "baseExpression": { - "id": 9039, - "name": "collateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8167, - "src": "12489:10:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 9041, - "indexExpression": { - "id": 9040, - "name": "addr", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9034, - "src": "12500:4:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "12489:16:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 9038, - "id": 9042, - "nodeType": "Return", - "src": "12482:23:24" - } - ] - }, - "documentation": { - "id": 9032, - "nodeType": "StructuredDocumentation", - "src": "12211:187:24", - "text": "@dev Returns the amount of collateral of a liquidity provider\n@param addr The address of the liquidity provider\n@return The amount of locked collateral" - }, - "functionSelector": "9b56d6c9", - "id": 9044, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getCollateral", - "nameLocation": "12412:13:24", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 9035, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 9034, - "mutability": "mutable", - "name": "addr", - "nameLocation": "12434:4:24", - "nodeType": "VariableDeclaration", - "scope": 9044, - "src": "12426:12:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 9033, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "12426:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "12425:14:24" - }, - "returnParameters": { - "id": 9038, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 9037, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 9044, - "src": "12463:7:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 9036, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "12463:7:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "12462:9:24" - }, - "scope": 10830, - "src": "12403:109:24", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 9055, - "nodeType": "Block", - "src": "12593:46:24", - "statements": [ - { - "expression": { - "baseExpression": { - "id": 9051, - "name": "pegoutCollateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8171, - "src": "12610:16:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 9053, - "indexExpression": { - "id": 9052, - "name": "addr", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9046, - "src": "12627:4:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "12610:22:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 9050, - "id": 9054, - "nodeType": "Return", - "src": "12603:29:24" - } - ] - }, - "functionSelector": "bd519eff", - "id": 9056, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getPegoutCollateral", - "nameLocation": "12527:19:24", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 9047, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 9046, - "mutability": "mutable", - "name": "addr", - "nameLocation": "12555:4:24", - "nodeType": "VariableDeclaration", - "scope": 9056, - "src": "12547:12:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 9045, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "12547:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "12546:14:24" - }, - "returnParameters": { - "id": 9050, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 9049, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 9056, - "src": "12584:7:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 9048, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "12584:7:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "12583:9:24" - }, - "scope": 10830, - "src": "12518:121:24", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 9068, - "nodeType": "Block", - "src": "12904:38:24", - "statements": [ - { - "expression": { - "baseExpression": { - "id": 9064, - "name": "balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8163, - "src": "12921:8:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 9066, - "indexExpression": { - "id": 9065, - "name": "addr", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9059, - "src": "12930:4:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "12921:14:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 9063, - "id": 9067, - "nodeType": "Return", - "src": "12914:21:24" - } - ] - }, - "documentation": { - "id": 9057, - "nodeType": "StructuredDocumentation", - "src": "12645:188:24", - "text": "@dev Returns the amount of funds of a liquidity provider\n@param addr The address of the liquidity provider\n@return The balance of the liquidity provider" - }, - "functionSelector": "f8b2cb4f", - "id": 9069, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getBalance", - "nameLocation": "12847:10:24", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 9060, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 9059, - "mutability": "mutable", - "name": "addr", - "nameLocation": "12866:4:24", - "nodeType": "VariableDeclaration", - "scope": 9069, - "src": "12858:12:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 9058, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "12858:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "12857:14:24" - }, - "returnParameters": { - "id": 9063, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 9062, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 9069, - "src": "12895:7:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 9061, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "12895:7:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "12894:9:24" - }, - "scope": 10830, - "src": "12838:104:24", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 9215, - "nodeType": "Block", - "src": "13268:1462:24", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 9087, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 9083, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "13299:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 9084, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "13303:6:24", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "13299:10:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 9085, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9073, - "src": "13313:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 9086, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "13319:27:24", - "memberName": "liquidityProviderRskAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 11198, - "src": "13313:33:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "13299:47:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303234", - "id": 9088, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "13360:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_9c6c58d5603e5b2aab0d13c183f0136466f0ce13826630d90e079bf910078715", - "typeString": "literal_string \"LBC024\"" - }, - "value": "LBC024" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_9c6c58d5603e5b2aab0d13c183f0136466f0ce13826630d90e079bf910078715", - "typeString": "literal_string \"LBC024\"" - } - ], - "id": 9082, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "13278:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 9089, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "13278:100:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 9090, - "nodeType": "ExpressionStatement", - "src": "13278:100:24" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 9101, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 9098, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "id": 9092, - "name": "balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8163, - "src": "13409:8:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 9095, - "indexExpression": { - "expression": { - "id": 9093, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9073, - "src": "13418:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 9094, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "13424:27:24", - "memberName": "liquidityProviderRskAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 11198, - "src": "13418:33:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "13409:43:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "expression": { - "id": 9096, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "13455:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 9097, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "13459:5:24", - "memberName": "value", - "nodeType": "MemberAccess", - "src": "13455:9:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "13409:55:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "expression": { - "id": 9099, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9073, - "src": "13480:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 9100, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "13486:5:24", - "memberName": "value", - "nodeType": "MemberAccess", - "referencedDeclaration": 11218, - "src": "13480:11:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "13409:82:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303139", - "id": 9102, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "13505:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_41f42e8d0f67be0e87abf05a33ed728b4868df2f2b92840d9519a852352eb909", - "typeString": "literal_string \"LBC019\"" - }, - "value": "LBC019" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_41f42e8d0f67be0e87abf05a33ed728b4868df2f2b92840d9519a852352eb909", - "typeString": "literal_string \"LBC019\"" - } - ], - "id": 9091, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "13388:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 9103, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "13388:135:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 9104, - "nodeType": "ExpressionStatement", - "src": "13388:135:24" - }, - { - "assignments": [ - 9106 - ], - "declarations": [ - { - "constant": false, - "id": 9106, - "mutability": "mutable", - "name": "quoteHash", - "nameLocation": "13542:9:24", - "nodeType": "VariableDeclaration", - "scope": 9215, - "src": "13534:17:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 9105, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "13534:7:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "id": 9110, - "initialValue": { - "arguments": [ - { - "id": 9108, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9073, - "src": "13575:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - ], - "id": 9107, - "name": "validateAndHashQuote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10354, - "src": "13554:20:24", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_PeginQuote_$11233_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (struct QuotesV2.PeginQuote memory) view returns (bytes32)" - } - }, - "id": 9109, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "13554:27:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "13534:47:24" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "id": 9116, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "id": 9112, - "name": "processedQuotes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8205, - "src": "13612:15:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint8_$", - "typeString": "mapping(bytes32 => uint8)" - } - }, - "id": 9114, - "indexExpression": { - "id": 9113, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9106, - "src": "13628:9:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "13612:26:24", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "id": 9115, - "name": "UNPROCESSED_QUOTE_CODE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7950, - "src": "13642:22:24", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "src": "13612:52:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303235", - "id": 9117, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "13678:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_ceda09d74f8a59745bfad5393e75482469dc6db77c24fde6f52df4409a3f744c", - "typeString": "literal_string \"LBC025\"" - }, - "value": "LBC025" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_ceda09d74f8a59745bfad5393e75482469dc6db77c24fde6f52df4409a3f744c", - "typeString": "literal_string \"LBC025\"" - } - ], - "id": 9111, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "13591:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 9118, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "13591:105:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 9119, - "nodeType": "ExpressionStatement", - "src": "13591:105:24" - }, - { - "expression": { - "arguments": [ - { - "expression": { - "id": 9121, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9073, - "src": "13723:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 9122, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "13729:27:24", - "memberName": "liquidityProviderRskAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 11198, - "src": "13723:33:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 9123, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "13758:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 9124, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "13762:5:24", - "memberName": "value", - "nodeType": "MemberAccess", - "src": "13758:9:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 9120, - "name": "increaseBalance", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10417, - "src": "13707:15:24", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,uint256)" - } - }, - "id": 9125, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "13707:61:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 9126, - "nodeType": "ExpressionStatement", - "src": "13707:61:24" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 9134, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 9128, - "name": "gasleft", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967289, - "src": "13901:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_gasleft_view$__$returns$_t_uint256_$", - "typeString": "function () view returns (uint256)" - } - }, - "id": 9129, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "13901:9:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "id": 9133, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 9130, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9073, - "src": "13914:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 9131, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "13920:8:24", - "memberName": "gasLimit", - "nodeType": "MemberAccess", - "referencedDeclaration": 11214, - "src": "13914:14:24", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "id": 9132, - "name": "MAX_CALL_GAS_COST", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7944, - "src": "13931:17:24", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - "src": "13914:34:24", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "src": "13901:47:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303236", - "id": 9135, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "13962:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_2d63cc93f65e3c34ca5cba24271c3d6869155fb2ffc83f083d82378f26d56cb0", - "typeString": "literal_string \"LBC026\"" - }, - "value": "LBC026" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_2d63cc93f65e3c34ca5cba24271c3d6869155fb2ffc83f083d82378f26d56cb0", - "typeString": "literal_string \"LBC026\"" - } - ], - "id": 9127, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "13880:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 9136, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "13880:100:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 9137, - "nodeType": "ExpressionStatement", - "src": "13880:100:24" - }, - { - "assignments": [ - 9139, - null - ], - "declarations": [ - { - "constant": false, - "id": 9139, - "mutability": "mutable", - "name": "success", - "nameLocation": "13996:7:24", - "nodeType": "VariableDeclaration", - "scope": 9215, - "src": "13991:12:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 9138, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "13991:4:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - null - ], - "id": 9151, - "initialValue": { - "arguments": [ - { - "expression": { - "id": 9148, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9073, - "src": "14122:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 9149, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "14128:4:24", - "memberName": "data", - "nodeType": "MemberAccess", - "referencedDeclaration": 11212, - "src": "14122:10:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "expression": { - "id": 9140, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9073, - "src": "14008:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 9141, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "14014:15:24", - "memberName": "contractAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 11210, - "src": "14008:21:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 9142, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "14030:4:24", - "memberName": "call", - "nodeType": "MemberAccess", - "src": "14008:26:24", - "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": 9147, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "names": [ - "gas", - "value" - ], - "nodeType": "FunctionCallOptions", - "options": [ - { - "expression": { - "id": 9143, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9073, - "src": "14057:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 9144, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "14063:8:24", - "memberName": "gasLimit", - "nodeType": "MemberAccess", - "referencedDeclaration": 11214, - "src": "14057:14:24", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - { - "expression": { - "id": 9145, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9073, - "src": "14096:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 9146, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "14102:5:24", - "memberName": "value", - "nodeType": "MemberAccess", - "referencedDeclaration": 11218, - "src": "14096:11:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "src": "14008:113:24", - "typeDescriptions": { - "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$gasvalue", - "typeString": "function (bytes memory) payable returns (bool,bytes memory)" - } - }, - "id": 9150, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "14008:125:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "tuple(bool,bytes memory)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "13990:143:24" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 9160, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 9153, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967292, - "src": "14152:5:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 9154, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "14158:9:24", - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "14152:15:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<=", - "rightExpression": { - "expression": { - "arguments": [ - { - "id": 9157, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "14176:6:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint32_$", - "typeString": "type(uint32)" - }, - "typeName": { - "id": 9156, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "14176:6:24", - "typeDescriptions": {} - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_type$_t_uint32_$", - "typeString": "type(uint32)" - } - ], - "id": 9155, - "name": "type", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967269, - "src": "14171:4:24", - "typeDescriptions": { - "typeIdentifier": "t_function_metatype_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 9158, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "14171:12:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_magic_meta_type_t_uint32", - "typeString": "type(uint32)" - } - }, - "id": 9159, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "14184:3:24", - "memberName": "max", - "nodeType": "MemberAccess", - "src": "14171:16:24", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "src": "14152:35:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303237", - "id": 9161, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "14189:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_5a937cad92792f08abdaf15eed65a070909c29d924f856ec65923c138fd39a48", - "typeString": "literal_string \"LBC027\"" - }, - "value": "LBC027" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_5a937cad92792f08abdaf15eed65a070909c29d924f856ec65923c138fd39a48", - "typeString": "literal_string \"LBC027\"" - } - ], - "id": 9152, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "14144:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 9162, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "14144:54:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 9163, - "nodeType": "ExpressionStatement", - "src": "14144:54:24" - }, - { - "expression": { - "id": 9173, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "baseExpression": { - "id": 9164, - "name": "callRegistry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8181, - "src": "14208:12:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$8008_storage_$", - "typeString": "mapping(bytes32 => struct LiquidityBridgeContractV2.Registry storage ref)" - } - }, - "id": 9166, - "indexExpression": { - "id": 9165, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9106, - "src": "14221:9:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "14208:23:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Registry_$8008_storage", - "typeString": "struct LiquidityBridgeContractV2.Registry storage ref" - } - }, - "id": 9167, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberLocation": "14232:9:24", - "memberName": "timestamp", - "nodeType": "MemberAccess", - "referencedDeclaration": 8005, - "src": "14208:33:24", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "expression": { - "id": 9170, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967292, - "src": "14251:5:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 9171, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "14257:9:24", - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "14251:15:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 9169, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "14244:6:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint32_$", - "typeString": "type(uint32)" - }, - "typeName": { - "id": 9168, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "14244:6:24", - "typeDescriptions": {} - } - }, - "id": 9172, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "14244:23:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "src": "14208:59:24", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "id": 9174, - "nodeType": "ExpressionStatement", - "src": "14208:59:24" - }, - { - "condition": { - "id": 9175, - "name": "success", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9139, - "src": "14282:7:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 9191, - "nodeType": "IfStatement", - "src": "14278:153:24", - "trueBody": { - "id": 9190, - "nodeType": "Block", - "src": "14291:140:24", - "statements": [ - { - "expression": { - "id": 9181, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "baseExpression": { - "id": 9176, - "name": "callRegistry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8181, - "src": "14305:12:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$8008_storage_$", - "typeString": "mapping(bytes32 => struct LiquidityBridgeContractV2.Registry storage ref)" - } - }, - "id": 9178, - "indexExpression": { - "id": 9177, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9106, - "src": "14318:9:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "14305:23:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Registry_$8008_storage", - "typeString": "struct LiquidityBridgeContractV2.Registry storage ref" - } - }, - "id": 9179, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberLocation": "14329:7:24", - "memberName": "success", - "nodeType": "MemberAccess", - "referencedDeclaration": 8007, - "src": "14305:31:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "hexValue": "74727565", - "id": 9180, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "14339:4:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "src": "14305:38:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 9182, - "nodeType": "ExpressionStatement", - "src": "14305:38:24" - }, - { - "expression": { - "arguments": [ - { - "expression": { - "id": 9184, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9073, - "src": "14373:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 9185, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "14379:27:24", - "memberName": "liquidityProviderRskAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 11198, - "src": "14373:33:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 9186, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9073, - "src": "14408:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 9187, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "14414:5:24", - "memberName": "value", - "nodeType": "MemberAccess", - "referencedDeclaration": 11218, - "src": "14408:11:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 9183, - "name": "decreaseBalance", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10436, - "src": "14357:15:24", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,uint256)" - } - }, - "id": 9188, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "14357:63:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 9189, - "nodeType": "ExpressionStatement", - "src": "14357:63:24" - } - ] - } - }, - { - "eventCall": { - "arguments": [ - { - "expression": { - "id": 9193, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "14470:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 9194, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "14474:6:24", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "14470:10:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 9195, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9073, - "src": "14494:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 9196, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "14500:15:24", - "memberName": "contractAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 11210, - "src": "14494:21:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 9197, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9073, - "src": "14529:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 9198, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "14535:8:24", - "memberName": "gasLimit", - "nodeType": "MemberAccess", - "referencedDeclaration": 11214, - "src": "14529:14:24", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - { - "expression": { - "id": 9199, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9073, - "src": "14557:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 9200, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "14563:5:24", - "memberName": "value", - "nodeType": "MemberAccess", - "referencedDeclaration": 11218, - "src": "14557:11:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "expression": { - "id": 9201, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9073, - "src": "14582:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 9202, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "14588:4:24", - "memberName": "data", - "nodeType": "MemberAccess", - "referencedDeclaration": 11212, - "src": "14582:10:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "id": 9203, - "name": "success", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9139, - "src": "14606:7:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "id": 9204, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9106, - "src": "14627:9:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "id": 9192, - "name": "CallForUser", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8078, - "src": "14445:11:24", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_uint256_$_t_bytes_memory_ptr_$_t_bool_$_t_bytes32_$returns$__$", - "typeString": "function (address,address,uint256,uint256,bytes memory,bool,bytes32)" - } - }, - "id": 9205, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "14445:201:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 9206, - "nodeType": "EmitStatement", - "src": "14440:206:24" - }, - { - "expression": { - "id": 9211, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 9207, - "name": "processedQuotes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8205, - "src": "14656:15:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint8_$", - "typeString": "mapping(bytes32 => uint8)" - } - }, - "id": 9209, - "indexExpression": { - "id": 9208, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9106, - "src": "14672:9:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "14656:26:24", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 9210, - "name": "CALL_DONE_CODE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7953, - "src": "14685:14:24", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "src": "14656:43:24", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "id": 9212, - "nodeType": "ExpressionStatement", - "src": "14656:43:24" - }, - { - "expression": { - "id": 9213, - "name": "success", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9139, - "src": "14716:7:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 9081, - "id": 9214, - "nodeType": "Return", - "src": "14709:14:24" - } - ] - }, - "documentation": { - "id": 9070, - "nodeType": "StructuredDocumentation", - "src": "12948:186:24", - "text": "@dev Performs a call on behalf of a user\n@param quote The quote that identifies the service\n@return Boolean indicating whether the call was successful" - }, - "functionSelector": "7aefa8c2", - "id": 9216, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "id": 9076, - "kind": "modifierInvocation", - "modifierName": { - "id": 9075, - "name": "onlyRegistered", - "nameLocations": [ - "13225:14:24" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 8231, - "src": "13225:14:24" - }, - "nodeType": "ModifierInvocation", - "src": "13225:14:24" - }, - { - "id": 9078, - "kind": "modifierInvocation", - "modifierName": { - "id": 9077, - "name": "nonReentrant", - "nameLocations": [ - "13240:12:24" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 346, - "src": "13240:12:24" - }, - "nodeType": "ModifierInvocation", - "src": "13240:12:24" - } - ], - "name": "callForUser", - "nameLocation": "13148:11:24", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 9074, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 9073, - "mutability": "mutable", - "name": "quote", - "nameLocation": "13196:5:24", - "nodeType": "VariableDeclaration", - "scope": 9216, - "src": "13169:32:24", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote" - }, - "typeName": { - "id": 9072, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 9071, - "name": "QuotesV2.PeginQuote", - "nameLocations": [ - "13169:8:24", - "13178:10:24" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 11233, - "src": "13169:19:24" - }, - "referencedDeclaration": 11233, - "src": "13169:19:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_storage_ptr", - "typeString": "struct QuotesV2.PeginQuote" - } - }, - "visibility": "internal" - } - ], - "src": "13159:48:24" - }, - "returnParameters": { - "id": 9081, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 9080, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 9216, - "src": "13262:4:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 9079, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "13262:4:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "13261:6:24" - }, - "scope": 10830, - "src": "13139:1591:24", - "stateMutability": "payable", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 9618, - "nodeType": "Block", - "src": "15493:6256:24", - "statements": [ - { - "assignments": [ - 9236 - ], - "declarations": [ - { - "constant": false, - "id": 9236, - "mutability": "mutable", - "name": "quoteHash", - "nameLocation": "15511:9:24", - "nodeType": "VariableDeclaration", - "scope": 9618, - "src": "15503:17:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 9235, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "15503:7:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "id": 9240, - "initialValue": { - "arguments": [ - { - "id": 9238, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9220, - "src": "15544:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - ], - "id": 9237, - "name": "validateAndHashQuote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10354, - "src": "15523:20:24", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_PeginQuote_$11233_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (struct QuotesV2.PeginQuote memory) view returns (bytes32)" - } - }, - "id": 9239, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "15523:27:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "15503:47:24" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "id": 9246, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "id": 9242, - "name": "processedQuotes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8205, - "src": "15676:15:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint8_$", - "typeString": "mapping(bytes32 => uint8)" - } - }, - "id": 9244, - "indexExpression": { - "id": 9243, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9236, - "src": "15692:9:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "15676:26:24", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "BinaryOperation", - "operator": "<=", - "rightExpression": { - "id": 9245, - "name": "CALL_DONE_CODE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7953, - "src": "15706:14:24", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "src": "15676:44:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303238", - "id": 9247, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "15734:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_4c4b8fd0ae53a3caa85e74f53bba210cefdcb0e1d1c519eb8385d2cd3741f7fb", - "typeString": "literal_string \"LBC028\"" - }, - "value": "LBC028" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_4c4b8fd0ae53a3caa85e74f53bba210cefdcb0e1d1c519eb8385d2cd3741f7fb", - "typeString": "literal_string \"LBC028\"" - } - ], - "id": 9241, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "15655:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 9248, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "15655:97:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 9249, - "nodeType": "ExpressionStatement", - "src": "15655:97:24" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "expression": { - "id": 9253, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9220, - "src": "15826:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 9254, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "15832:27:24", - "memberName": "liquidityProviderRskAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 11198, - "src": "15826:33:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 9255, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9236, - "src": "15877:9:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 9256, - "name": "signature", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9222, - "src": "15904:9:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "id": 9251, - "name": "SignatureValidator", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11532, - "src": "15783:18:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_SignatureValidator_$11532_$", - "typeString": "type(library SignatureValidator)" - } - }, - "id": 9252, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "15802:6:24", - "memberName": "verify", - "nodeType": "MemberAccess", - "referencedDeclaration": 11531, - "src": "15783:25:24", - "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_pure$_t_address_$_t_bytes32_$_t_bytes_memory_ptr_$returns$_t_bool_$", - "typeString": "function (address,bytes32,bytes memory) pure returns (bool)" - } - }, - "id": 9257, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "15783:144:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303239", - "id": 9258, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "15941:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_ebb41fd1c3d95b8eaff1e56d491f7a983f7f3039fac57e6fad7993de139e2216", - "typeString": "literal_string \"LBC029\"" - }, - "value": "LBC029" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_ebb41fd1c3d95b8eaff1e56d491f7a983f7f3039fac57e6fad7993de139e2216", - "typeString": "literal_string \"LBC029\"" - } - ], - "id": 9250, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "15762:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 9259, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "15762:197:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 9260, - "nodeType": "ExpressionStatement", - "src": "15762:197:24" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 9274, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 9262, - "name": "height", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9228, - "src": "15977:6:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "arguments": [ - { - "arguments": [ - { - "expression": { - "arguments": [ - { - "id": 9269, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "16006:5:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_int32_$", - "typeString": "type(int32)" - }, - "typeName": { - "id": 9268, - "name": "int32", - "nodeType": "ElementaryTypeName", - "src": "16006:5:24", - "typeDescriptions": {} - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_type$_t_int32_$", - "typeString": "type(int32)" - } - ], - "id": 9267, - "name": "type", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967269, - "src": "16001:4:24", - "typeDescriptions": { - "typeIdentifier": "t_function_metatype_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 9270, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "16001:11:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_magic_meta_type_t_int32", - "typeString": "type(int32)" - } - }, - "id": 9271, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "16013:3:24", - "memberName": "max", - "nodeType": "MemberAccess", - "src": "16001:15:24", - "typeDescriptions": { - "typeIdentifier": "t_int32", - "typeString": "int32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_int32", - "typeString": "int32" - } - ], - "id": 9266, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "15994:6:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_int256_$", - "typeString": "type(int256)" - }, - "typeName": { - "id": 9265, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "15994:6:24", - "typeDescriptions": {} - } - }, - "id": 9272, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "15994:23:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - ], - "id": 9264, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "15986:7:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint256_$", - "typeString": "type(uint256)" - }, - "typeName": { - "id": 9263, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "15986:7:24", - "typeDescriptions": {} - } - }, - "id": 9273, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "15986:32:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "15977:41:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303330", - "id": 9275, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "16020:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_6b987c2142a6ed89e76021f4d9a60f3cbfc2f7110bd81bc33ff58ad7cf27befa", - "typeString": "literal_string \"LBC030\"" - }, - "value": "LBC030" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_6b987c2142a6ed89e76021f4d9a60f3cbfc2f7110bd81bc33ff58ad7cf27befa", - "typeString": "literal_string \"LBC030\"" - } - ], - "id": 9261, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "15969:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 9276, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "15969:60:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 9277, - "nodeType": "ExpressionStatement", - "src": "15969:60:24" - }, - { - "assignments": [ - 9279 - ], - "declarations": [ - { - "constant": false, - "id": 9279, - "mutability": "mutable", - "name": "transferredAmountOrErrorCode", - "nameLocation": "16047:28:24", - "nodeType": "VariableDeclaration", - "scope": 9618, - "src": "16040:35:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 9278, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "16040:6:24", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "id": 9287, - "initialValue": { - "arguments": [ - { - "id": 9281, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9220, - "src": "16106:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - { - "id": 9282, - "name": "btcRawTransaction", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9224, - "src": "16125:17:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "id": 9283, - "name": "partialMerkleTree", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9226, - "src": "16156:17:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "id": 9284, - "name": "height", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9228, - "src": "16187:6:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 9285, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9236, - "src": "16207:9:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "id": 9280, - "name": "registerBridge", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10522, - "src": "16078:14:24", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_PeginQuote_$11233_memory_ptr_$_t_bytes_memory_ptr_$_t_bytes_memory_ptr_$_t_uint256_$_t_bytes32_$returns$_t_int256_$", - "typeString": "function (struct QuotesV2.PeginQuote memory,bytes memory,bytes memory,uint256,bytes32) returns (int256)" - } - }, - "id": 9286, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "16078:148:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "16040:186:24" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "id": 9291, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 9289, - "name": "transferredAmountOrErrorCode", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9279, - "src": "16258:28:24", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "id": 9290, - "name": "BRIDGE_UNPROCESSABLE_TX_VALIDATIONS_ERROR", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7980, - "src": "16302:41:24", - "typeDescriptions": { - "typeIdentifier": "t_int16", - "typeString": "int16" - } - }, - "src": "16258:85:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303331", - "id": 9292, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "16357:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_b9f5a33cea5e5738277827f2f81faa92d1d3c73cf030e2542a7b80c6f7bdc8a7", - "typeString": "literal_string \"LBC031\"" - }, - "value": "LBC031" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_b9f5a33cea5e5738277827f2f81faa92d1d3c73cf030e2542a7b80c6f7bdc8a7", - "typeString": "literal_string \"LBC031\"" - } - ], - "id": 9288, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "16237:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 9293, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "16237:138:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 9294, - "nodeType": "ExpressionStatement", - "src": "16237:138:24" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "id": 9298, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 9296, - "name": "transferredAmountOrErrorCode", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9279, - "src": "16406:28:24", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "id": 9297, - "name": "BRIDGE_UNPROCESSABLE_TX_ALREADY_PROCESSED_ERROR_CODE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7976, - "src": "16450:52:24", - "typeDescriptions": { - "typeIdentifier": "t_int16", - "typeString": "int16" - } - }, - "src": "16406:96:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303332", - "id": 9299, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "16516:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_5d8d108d93a53583cf1949d2287cc7f0af5603bd102faf9db90e7e6bbc90ade8", - "typeString": "literal_string \"LBC032\"" - }, - "value": "LBC032" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_5d8d108d93a53583cf1949d2287cc7f0af5603bd102faf9db90e7e6bbc90ade8", - "typeString": "literal_string \"LBC032\"" - } - ], - "id": 9295, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "16385:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 9300, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "16385:149:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 9301, - "nodeType": "ExpressionStatement", - "src": "16385:149:24" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "id": 9305, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 9303, - "name": "transferredAmountOrErrorCode", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9279, - "src": "16565:28:24", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "id": 9304, - "name": "BRIDGE_UNPROCESSABLE_TX_VALUE_ZERO_ERROR", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7984, - "src": "16609:40:24", - "typeDescriptions": { - "typeIdentifier": "t_int16", - "typeString": "int16" - } - }, - "src": "16565:84:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303333", - "id": 9306, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "16663:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_e976d8a3febca36c67dcd5b38ae845ffd2f248a24eaf2d7a97f208ffd80ff125", - "typeString": "literal_string \"LBC033\"" - }, - "value": "LBC033" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_e976d8a3febca36c67dcd5b38ae845ffd2f248a24eaf2d7a97f208ffd80ff125", - "typeString": "literal_string \"LBC033\"" - } - ], - "id": 9302, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "16544:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 9307, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "16544:137:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 9308, - "nodeType": "ExpressionStatement", - "src": "16544:137:24" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "id": 9312, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 9310, - "name": "transferredAmountOrErrorCode", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9279, - "src": "16712:28:24", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "id": 9311, - "name": "BRIDGE_UNPROCESSABLE_TX_UTXO_AMOUNT_SENT_BELOW_MINIMUM_ERROR", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7988, - "src": "16756:60:24", - "typeDescriptions": { - "typeIdentifier": "t_int16", - "typeString": "int16" - } - }, - "src": "16712:104:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303334", - "id": 9313, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "16830:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_745436b16371784f7b451bf4bed6f0978e2f007f74e71dfa0c49414b3a522759", - "typeString": "literal_string \"LBC034\"" - }, - "value": "LBC034" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_745436b16371784f7b451bf4bed6f0978e2f007f74e71dfa0c49414b3a522759", - "typeString": "literal_string \"LBC034\"" - } - ], - "id": 9309, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "16691:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 9314, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "16691:157:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 9315, - "nodeType": "ExpressionStatement", - "src": "16691:157:24" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "id": 9319, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 9317, - "name": "transferredAmountOrErrorCode", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9279, - "src": "16879:28:24", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "id": 9318, - "name": "BRIDGE_GENERIC_ERROR", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7992, - "src": "16911:20:24", - "typeDescriptions": { - "typeIdentifier": "t_int16", - "typeString": "int16" - } - }, - "src": "16879:52:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303335", - "id": 9320, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "16945:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_37570ea73114ff69cb8aab9e09d6f5beb11b36ce1a2ae19ee6f5de28dc42d754", - "typeString": "literal_string \"LBC035\"" - }, - "value": "LBC035" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_37570ea73114ff69cb8aab9e09d6f5beb11b36ce1a2ae19ee6f5de28dc42d754", - "typeString": "literal_string \"LBC035\"" - } - ], - "id": 9316, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "16858:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 9321, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "16858:105:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 9322, - "nodeType": "ExpressionStatement", - "src": "16858:105:24" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 9334, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 9330, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "id": 9326, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 9324, - "name": "transferredAmountOrErrorCode", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9279, - "src": "16994:28:24", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 9325, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "17025:1:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "16994:32:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "id": 9329, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 9327, - "name": "transferredAmountOrErrorCode", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9279, - "src": "17042:28:24", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "id": 9328, - "name": "BRIDGE_REFUNDED_LP_ERROR_CODE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7964, - "src": "17074:29:24", - "typeDescriptions": { - "typeIdentifier": "t_int16", - "typeString": "int16" - } - }, - "src": "17042:61:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "16994:109:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "id": 9333, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 9331, - "name": "transferredAmountOrErrorCode", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9279, - "src": "17119:28:24", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "id": 9332, - "name": "BRIDGE_REFUNDED_USER_ERROR_CODE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7960, - "src": "17151:31:24", - "typeDescriptions": { - "typeIdentifier": "t_int16", - "typeString": "int16" - } - }, - "src": "17119:63:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "16994:188:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303336", - "id": 9335, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "17196:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_5ccb4449252c316623411606962515c0966208bcce5fe352c2e850b058d1077c", - "typeString": "literal_string \"LBC036\"" - }, - "value": "LBC036" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_5ccb4449252c316623411606962515c0966208bcce5fe352c2e850b058d1077c", - "typeString": "literal_string \"LBC036\"" - } - ], - "id": 9323, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "16973:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 9336, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "16973:241:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 9337, - "nodeType": "ExpressionStatement", - "src": "16973:241:24" - }, - { - "condition": { - "arguments": [ - { - "id": 9339, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9220, - "src": "17272:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - { - "id": 9340, - "name": "transferredAmountOrErrorCode", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9279, - "src": "17291:28:24", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - { - "expression": { - "baseExpression": { - "id": 9341, - "name": "callRegistry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8181, - "src": "17333:12:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$8008_storage_$", - "typeString": "mapping(bytes32 => struct LiquidityBridgeContractV2.Registry storage ref)" - } - }, - "id": 9343, - "indexExpression": { - "id": 9342, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9236, - "src": "17346:9:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "17333:23:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Registry_$8008_storage", - "typeString": "struct LiquidityBridgeContractV2.Registry storage ref" - } - }, - "id": 9344, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "17357:9:24", - "memberName": "timestamp", - "nodeType": "MemberAccess", - "referencedDeclaration": 8005, - "src": "17333:33:24", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - { - "id": 9345, - "name": "height", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9228, - "src": "17380:6:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - }, - { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 9338, - "name": "shouldPenalizeLP", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10645, - "src": "17242:16:24", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_PeginQuote_$11233_memory_ptr_$_t_int256_$_t_uint256_$_t_uint256_$returns$_t_bool_$", - "typeString": "function (struct QuotesV2.PeginQuote memory,int256,uint256,uint256) view returns (bool)" - } - }, - "id": 9346, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "17242:154:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 9388, - "nodeType": "IfStatement", - "src": "17225:816:24", - "trueBody": { - "id": 9387, - "nodeType": "Block", - "src": "17407:634:24", - "statements": [ - { - "assignments": [ - 9348 - ], - "declarations": [ - { - "constant": false, - "id": 9348, - "mutability": "mutable", - "name": "penalizationAmount", - "nameLocation": "17426:18:24", - "nodeType": "VariableDeclaration", - "scope": 9387, - "src": "17421:23:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 9347, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "17421:4:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 9357, - "initialValue": { - "arguments": [ - { - "expression": { - "id": 9350, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9220, - "src": "17468:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 9351, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "17474:10:24", - "memberName": "penaltyFee", - "nodeType": "MemberAccess", - "referencedDeclaration": 11208, - "src": "17468:16:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "baseExpression": { - "id": 9352, - "name": "collateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8167, - "src": "17502:10:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 9355, - "indexExpression": { - "expression": { - "id": 9353, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9220, - "src": "17513:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 9354, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "17519:27:24", - "memberName": "liquidityProviderRskAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 11198, - "src": "17513:33:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "17502:45:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 9349, - "name": "min", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10398, - "src": "17447:3:24", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$", - "typeString": "function (uint256,uint256) pure returns (uint256)" - } - }, - "id": 9356, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "17447:114:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "17421:140:24" - }, - { - "expression": { - "id": 9363, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 9358, - "name": "collateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8167, - "src": "17638:10:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 9361, - "indexExpression": { - "expression": { - "id": 9359, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9220, - "src": "17649:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 9360, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "17655:27:24", - "memberName": "liquidityProviderRskAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 11198, - "src": "17649:33:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "17638:45:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "-=", - "rightHandSide": { - "id": 9362, - "name": "penalizationAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9348, - "src": "17687:18:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "17638:67:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 9364, - "nodeType": "ExpressionStatement", - "src": "17638:67:24" - }, - { - "eventCall": { - "arguments": [ - { - "expression": { - "id": 9366, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9220, - "src": "17751:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 9367, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "17757:27:24", - "memberName": "liquidityProviderRskAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 11198, - "src": "17751:33:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 9368, - "name": "penalizationAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9348, - "src": "17802:18:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 9369, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9236, - "src": "17838:9:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "id": 9365, - "name": "Penalized", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8092, - "src": "17724:9:24", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_bytes32_$returns$__$", - "typeString": "function (address,uint256,bytes32)" - } - }, - "id": 9370, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "17724:137:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 9371, - "nodeType": "EmitStatement", - "src": "17719:142:24" - }, - { - "assignments": [ - 9373 - ], - "declarations": [ - { - "constant": false, - "id": 9373, - "mutability": "mutable", - "name": "punisherReward", - "nameLocation": "17920:14:24", - "nodeType": "VariableDeclaration", - "scope": 9387, - "src": "17912:22:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 9372, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "17912:7:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 9380, - "initialValue": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 9379, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "components": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 9376, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 9374, - "name": "penalizationAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9348, - "src": "17938:18:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "*", - "rightExpression": { - "id": 9375, - "name": "rewardP", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8191, - "src": "17959:7:24", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "src": "17938:28:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "id": 9377, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "17937:30:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "/", - "rightExpression": { - "hexValue": "313030", - "id": 9378, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "17970:3:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_100_by_1", - "typeString": "int_const 100" - }, - "value": "100" - }, - "src": "17937:36:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "17912:61:24" - }, - { - "expression": { - "arguments": [ - { - "expression": { - "id": 9382, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "18003:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 9383, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "18007:6:24", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "18003:10:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 9384, - "name": "punisherReward", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9373, - "src": "18015:14:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 9381, - "name": "increaseBalance", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10417, - "src": "17987:15:24", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,uint256)" - } - }, - "id": 9385, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "17987:43:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 9386, - "nodeType": "ExpressionStatement", - "src": "17987:43:24" - } - ] - } - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 9395, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "id": 9391, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 9389, - "name": "transferredAmountOrErrorCode", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9279, - "src": "18068:28:24", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "id": 9390, - "name": "BRIDGE_REFUNDED_LP_ERROR_CODE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7964, - "src": "18100:29:24", - "typeDescriptions": { - "typeIdentifier": "t_int16", - "typeString": "int16" - } - }, - "src": "18068:61:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "id": 9394, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 9392, - "name": "transferredAmountOrErrorCode", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9279, - "src": "18145:28:24", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "id": 9393, - "name": "BRIDGE_REFUNDED_USER_ERROR_CODE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7960, - "src": "18177:31:24", - "typeDescriptions": { - "typeIdentifier": "t_int16", - "typeString": "int16" - } - }, - "src": "18145:63:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "18068:140:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 9415, - "nodeType": "IfStatement", - "src": "18051:447:24", - "trueBody": { - "id": 9414, - "nodeType": "Block", - "src": "18219:279:24", - "statements": [ - { - "expression": { - "id": 9400, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 9396, - "name": "processedQuotes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8205, - "src": "18268:15:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint8_$", - "typeString": "mapping(bytes32 => uint8)" - } - }, - "id": 9398, - "indexExpression": { - "id": 9397, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9236, - "src": "18284:9:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "18268:26:24", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 9399, - "name": "PROCESSED_QUOTE_CODE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7956, - "src": "18297:20:24", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "src": "18268:49:24", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "id": 9401, - "nodeType": "ExpressionStatement", - "src": "18268:49:24" - }, - { - "expression": { - "id": 9405, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "delete", - "prefix": true, - "src": "18331:30:24", - "subExpression": { - "baseExpression": { - "id": 9402, - "name": "callRegistry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8181, - "src": "18338:12:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$8008_storage_$", - "typeString": "mapping(bytes32 => struct LiquidityBridgeContractV2.Registry storage ref)" - } - }, - "id": 9404, - "indexExpression": { - "id": 9403, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9236, - "src": "18351:9:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "18338:23:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Registry_$8008_storage", - "typeString": "struct LiquidityBridgeContractV2.Registry storage ref" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 9406, - "nodeType": "ExpressionStatement", - "src": "18331:30:24" - }, - { - "eventCall": { - "arguments": [ - { - "id": 9408, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9236, - "src": "18398:9:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 9409, - "name": "transferredAmountOrErrorCode", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9279, - "src": "18409:28:24", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - ], - "id": 9407, - "name": "BridgeCapExceeded", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8098, - "src": "18380:17:24", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_int256_$returns$__$", - "typeString": "function (bytes32,int256)" - } - }, - "id": 9410, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "18380:58:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 9411, - "nodeType": "EmitStatement", - "src": "18375:63:24" - }, - { - "expression": { - "id": 9412, - "name": "transferredAmountOrErrorCode", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9279, - "src": "18459:28:24", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "functionReturnParameters": 9234, - "id": 9413, - "nodeType": "Return", - "src": "18452:35:24" - } - ] - } - }, - { - "assignments": [ - 9417 - ], - "declarations": [ - { - "constant": false, - "id": 9417, - "mutability": "mutable", - "name": "transferredAmount", - "nameLocation": "18689:17:24", - "nodeType": "VariableDeclaration", - "scope": 9618, - "src": "18684:22:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 9416, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "18684:4:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 9422, - "initialValue": { - "arguments": [ - { - "id": 9420, - "name": "transferredAmountOrErrorCode", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9279, - "src": "18714:28:24", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - ], - "id": 9419, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "18709:4:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint256_$", - "typeString": "type(uint256)" - }, - "typeName": { - "id": 9418, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "18709:4:24", - "typeDescriptions": {} - } - }, - "id": 9421, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "18709:34:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "18684:59:24" - }, - { - "expression": { - "arguments": [ - { - "id": 9426, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9220, - "src": "18781:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - { - "id": 9427, - "name": "transferredAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9417, - "src": "18788:17:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 9423, - "name": "QuotesV2", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11483, - "src": "18754:8:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_QuotesV2_$11483_$", - "typeString": "type(library QuotesV2)" - } - }, - "id": 9425, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "18763:17:24", - "memberName": "checkAgreedAmount", - "nodeType": "MemberAccess", - "referencedDeclaration": 11482, - "src": "18754:26:24", - "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_pure$_t_struct$_PeginQuote_$11233_memory_ptr_$_t_uint256_$returns$__$", - "typeString": "function (struct QuotesV2.PeginQuote memory,uint256) pure" - } - }, - "id": 9428, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "18754:52:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 9429, - "nodeType": "ExpressionStatement", - "src": "18754:52:24" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "id": 9435, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "baseExpression": { - "id": 9430, - "name": "callRegistry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8181, - "src": "18821:12:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$8008_storage_$", - "typeString": "mapping(bytes32 => struct LiquidityBridgeContractV2.Registry storage ref)" - } - }, - "id": 9432, - "indexExpression": { - "id": 9431, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9236, - "src": "18834:9:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "18821:23:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Registry_$8008_storage", - "typeString": "struct LiquidityBridgeContractV2.Registry storage ref" - } - }, - "id": 9433, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "18845:9:24", - "memberName": "timestamp", - "nodeType": "MemberAccess", - "referencedDeclaration": 8005, - "src": "18821:33:24", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 9434, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "18857:1:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "18821:37:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 9598, - "nodeType": "Block", - "src": "20294:1234:24", - "statements": [ - { - "assignments": [ - 9525 - ], - "declarations": [ - { - "constant": false, - "id": 9525, - "mutability": "mutable", - "name": "refundAmount", - "nameLocation": "20313:12:24", - "nodeType": "VariableDeclaration", - "scope": 9598, - "src": "20308:17:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 9524, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "20308:4:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 9527, - "initialValue": { - "id": 9526, - "name": "transferredAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9417, - "src": "20328:17:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "20308:37:24" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 9534, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 9528, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9220, - "src": "20364:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 9529, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "20370:14:24", - "memberName": "callOnRegister", - "nodeType": "MemberAccess", - "referencedDeclaration": 11228, - "src": "20364:20:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 9533, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 9530, - "name": "refundAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9525, - "src": "20388:12:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "expression": { - "id": 9531, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9220, - "src": "20404:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 9532, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "20410:5:24", - "memberName": "value", - "nodeType": "MemberAccess", - "referencedDeclaration": 11218, - "src": "20404:11:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "20388:27:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "20364:51:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 9573, - "nodeType": "IfStatement", - "src": "20360:656:24", - "trueBody": { - "id": 9572, - "nodeType": "Block", - "src": "20417:599:24", - "statements": [ - { - "assignments": [ - 9536, - null - ], - "declarations": [ - { - "constant": false, - "id": 9536, - "mutability": "mutable", - "name": "callSuccess", - "nameLocation": "20441:11:24", - "nodeType": "VariableDeclaration", - "scope": 9572, - "src": "20436:16:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 9535, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "20436:4:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - null - ], - "id": 9548, - "initialValue": { - "arguments": [ - { - "expression": { - "id": 9545, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9220, - "src": "20595:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 9546, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "20601:4:24", - "memberName": "data", - "nodeType": "MemberAccess", - "referencedDeclaration": 11212, - "src": "20595:10:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "expression": { - "id": 9537, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9220, - "src": "20457:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 9538, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "20463:15:24", - "memberName": "contractAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 11210, - "src": "20457:21:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 9539, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "20479:4:24", - "memberName": "call", - "nodeType": "MemberAccess", - "src": "20457:26:24", - "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": 9544, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "names": [ - "gas", - "value" - ], - "nodeType": "FunctionCallOptions", - "options": [ - { - "expression": { - "id": 9540, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9220, - "src": "20514:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 9541, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "20520:8:24", - "memberName": "gasLimit", - "nodeType": "MemberAccess", - "referencedDeclaration": 11214, - "src": "20514:14:24", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - { - "expression": { - "id": 9542, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9220, - "src": "20561:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 9543, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "20567:5:24", - "memberName": "value", - "nodeType": "MemberAccess", - "referencedDeclaration": 11218, - "src": "20561:11:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "src": "20457:137:24", - "typeDescriptions": { - "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$gasvalue", - "typeString": "function (bytes memory) payable returns (bool,bytes memory)" - } - }, - "id": 9547, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "20457:149:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "tuple(bool,bytes memory)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "20435:171:24" - }, - { - "eventCall": { - "arguments": [ - { - "expression": { - "id": 9550, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "20662:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 9551, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "20666:6:24", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "20662:10:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 9552, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9220, - "src": "20694:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 9553, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "20700:15:24", - "memberName": "contractAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 11210, - "src": "20694:21:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 9554, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9220, - "src": "20737:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 9555, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "20743:8:24", - "memberName": "gasLimit", - "nodeType": "MemberAccess", - "referencedDeclaration": 11214, - "src": "20737:14:24", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - { - "expression": { - "id": 9556, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9220, - "src": "20773:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 9557, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "20779:5:24", - "memberName": "value", - "nodeType": "MemberAccess", - "referencedDeclaration": 11218, - "src": "20773:11:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "expression": { - "id": 9558, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9220, - "src": "20806:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 9559, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "20812:4:24", - "memberName": "data", - "nodeType": "MemberAccess", - "referencedDeclaration": 11212, - "src": "20806:10:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "id": 9560, - "name": "callSuccess", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9536, - "src": "20838:11:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "id": 9561, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9236, - "src": "20871:9:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "id": 9549, - "name": "CallForUser", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8078, - "src": "20629:11:24", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_uint256_$_t_bytes_memory_ptr_$_t_bool_$_t_bytes32_$returns$__$", - "typeString": "function (address,address,uint256,uint256,bytes memory,bool,bytes32)" - } - }, - "id": 9562, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "20629:269:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 9563, - "nodeType": "EmitStatement", - "src": "20624:274:24" - }, - { - "condition": { - "id": 9564, - "name": "callSuccess", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9536, - "src": "20921:11:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 9571, - "nodeType": "IfStatement", - "src": "20917:85:24", - "trueBody": { - "id": 9570, - "nodeType": "Block", - "src": "20934:68:24", - "statements": [ - { - "expression": { - "id": 9568, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 9565, - "name": "refundAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9525, - "src": "20956:12:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "-=", - "rightHandSide": { - "expression": { - "id": 9566, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9220, - "src": "20972:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 9567, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "20978:5:24", - "memberName": "value", - "nodeType": "MemberAccess", - "referencedDeclaration": 11218, - "src": "20972:11:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "20956:27:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 9569, - "nodeType": "ExpressionStatement", - "src": "20956:27:24" - } - ] - } - } - ] - } - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 9576, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 9574, - "name": "refundAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9525, - "src": "21033:12:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "id": 9575, - "name": "dust", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8195, - "src": "21048:4:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "21033:19:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 9597, - "nodeType": "IfStatement", - "src": "21029:489:24", - "trueBody": { - "id": 9596, - "nodeType": "Block", - "src": "21054:464:24", - "statements": [ - { - "assignments": [ - 9578, - null - ], - "declarations": [ - { - "constant": false, - "id": 9578, - "mutability": "mutable", - "name": "success", - "nameLocation": "21157:7:24", - "nodeType": "VariableDeclaration", - "scope": 9596, - "src": "21152:12:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 9577, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "21152:4:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - null - ], - "id": 9587, - "initialValue": { - "arguments": [ - { - "hexValue": "", - "id": 9585, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "21315:2:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - }, - "value": "" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - } - ], - "expression": { - "expression": { - "id": 9579, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9220, - "src": "21169:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 9580, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "21175:16:24", - "memberName": "rskRefundAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 11202, - "src": "21169:22:24", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "id": 9581, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "21192:4:24", - "memberName": "call", - "nodeType": "MemberAccess", - "src": "21169:27:24", - "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": 9584, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "names": [ - "gas", - "value" - ], - "nodeType": "FunctionCallOptions", - "options": [ - { - "id": 9582, - "name": "MAX_REFUND_GAS_LIMIT", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7947, - "src": "21227:20:24", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - { - "id": 9583, - "name": "refundAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9525, - "src": "21280:12:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "src": "21169:145:24", - "typeDescriptions": { - "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$gasvalue", - "typeString": "function (bytes memory) payable returns (bool,bytes memory)" - } - }, - "id": 9586, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "21169:149:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "tuple(bool,bytes memory)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "21151:167:24" - }, - { - "eventCall": { - "arguments": [ - { - "expression": { - "id": 9589, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9220, - "src": "21369:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 9590, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "21375:16:24", - "memberName": "rskRefundAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 11202, - "src": "21369:22:24", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - { - "id": 9591, - "name": "refundAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9525, - "src": "21413:12:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 9592, - "name": "success", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9578, - "src": "21447:7:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "id": 9593, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9236, - "src": "21476:9:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "id": 9588, - "name": "Refund", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8120, - "src": "21341:6:24", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_bool_$_t_bytes32_$returns$__$", - "typeString": "function (address,uint256,bool,bytes32)" - } - }, - "id": 9594, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "21341:162:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 9595, - "nodeType": "EmitStatement", - "src": "21336:167:24" - } - ] - } - } - ] - }, - "id": 9599, - "nodeType": "IfStatement", - "src": "18817:2711:24", - "trueBody": { - "id": 9523, - "nodeType": "Block", - "src": "18860:1428:24", - "statements": [ - { - "assignments": [ - 9437 - ], - "declarations": [ - { - "constant": false, - "id": 9437, - "mutability": "mutable", - "name": "refundAmount", - "nameLocation": "18879:12:24", - "nodeType": "VariableDeclaration", - "scope": 9523, - "src": "18874:17:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 9436, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "18874:4:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 9438, - "nodeType": "VariableDeclarationStatement", - "src": "18874:17:24" - }, - { - "condition": { - "expression": { - "baseExpression": { - "id": 9439, - "name": "callRegistry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8181, - "src": "18910:12:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$8008_storage_$", - "typeString": "mapping(bytes32 => struct LiquidityBridgeContractV2.Registry storage ref)" - } - }, - "id": 9441, - "indexExpression": { - "id": 9440, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9236, - "src": "18923:9:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "18910:23:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Registry_$8008_storage", - "typeString": "struct LiquidityBridgeContractV2.Registry storage ref" - } - }, - "id": 9442, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "18934:7:24", - "memberName": "success", - "nodeType": "MemberAccess", - "referencedDeclaration": 8007, - "src": "18910:31:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 9469, - "nodeType": "Block", - "src": "19121:100:24", - "statements": [ - { - "expression": { - "id": 9467, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 9458, - "name": "refundAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9437, - "src": "19139:12:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 9460, - "name": "transferredAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9417, - "src": "19158:17:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 9465, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 9461, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9220, - "src": "19177:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 9462, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "19183:7:24", - "memberName": "callFee", - "nodeType": "MemberAccess", - "referencedDeclaration": 11206, - "src": "19177:13:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "expression": { - "id": 9463, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9220, - "src": "19193:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 9464, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "19199:6:24", - "memberName": "gasFee", - "nodeType": "MemberAccess", - "referencedDeclaration": 11232, - "src": "19193:12:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "19177:28:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 9459, - "name": "min", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10398, - "src": "19154:3:24", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$", - "typeString": "function (uint256,uint256) pure returns (uint256)" - } - }, - "id": 9466, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "19154:52:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "19139:67:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 9468, - "nodeType": "ExpressionStatement", - "src": "19139:67:24" - } - ] - }, - "id": 9470, - "nodeType": "IfStatement", - "src": "18906:315:24", - "trueBody": { - "id": 9457, - "nodeType": "Block", - "src": "18943:172:24", - "statements": [ - { - "expression": { - "id": 9455, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 9443, - "name": "refundAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9437, - "src": "18961:12:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "id": 9445, - "name": "transferredAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9417, - "src": "19001:17:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 9453, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 9450, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 9446, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9220, - "src": "19040:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 9447, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "19046:5:24", - "memberName": "value", - "nodeType": "MemberAccess", - "referencedDeclaration": 11218, - "src": "19040:11:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "expression": { - "id": 9448, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9220, - "src": "19054:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 9449, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "19060:7:24", - "memberName": "callFee", - "nodeType": "MemberAccess", - "referencedDeclaration": 11206, - "src": "19054:13:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "19040:27:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "expression": { - "id": 9451, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9220, - "src": "19070:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 9452, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "19076:6:24", - "memberName": "gasFee", - "nodeType": "MemberAccess", - "referencedDeclaration": 11232, - "src": "19070:12:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "19040:42:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 9444, - "name": "min", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10398, - "src": "18976:3:24", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$", - "typeString": "function (uint256,uint256) pure returns (uint256)" - } - }, - "id": 9454, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "18976:124:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "18961:139:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 9456, - "nodeType": "ExpressionStatement", - "src": "18961:139:24" - } - ] - } - }, - { - "expression": { - "arguments": [ - { - "expression": { - "id": 9472, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9220, - "src": "19250:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 9473, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "19256:27:24", - "memberName": "liquidityProviderRskAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 11198, - "src": "19250:33:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 9474, - "name": "refundAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9437, - "src": "19285:12:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 9471, - "name": "increaseBalance", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10417, - "src": "19234:15:24", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,uint256)" - } - }, - "id": 9475, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "19234:64:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 9476, - "nodeType": "ExpressionStatement", - "src": "19234:64:24" - }, - { - "assignments": [ - 9478 - ], - "declarations": [ - { - "constant": false, - "id": 9478, - "mutability": "mutable", - "name": "remainingAmount", - "nameLocation": "19318:15:24", - "nodeType": "VariableDeclaration", - "scope": 9523, - "src": "19313:20:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 9477, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "19313:4:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 9482, - "initialValue": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 9481, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 9479, - "name": "transferredAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9417, - "src": "19336:17:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "id": 9480, - "name": "refundAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9437, - "src": "19356:12:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "19336:32:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "19313:55:24" - }, - { - "expression": { - "arguments": [ - { - "expression": { - "id": 9484, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9220, - "src": "19400:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 9485, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "19406:16:24", - "memberName": "productFeeAmount", - "nodeType": "MemberAccess", - "referencedDeclaration": 11230, - "src": "19400:22:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 9486, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9236, - "src": "19424:9:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "id": 9483, - "name": "payToFeeCollector", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10747, - "src": "19382:17:24", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_bytes32_$returns$__$", - "typeString": "function (uint256,bytes32)" - } - }, - "id": 9487, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "19382:52:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 9488, - "nodeType": "ExpressionStatement", - "src": "19382:52:24" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 9491, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 9489, - "name": "remainingAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9478, - "src": "19453:15:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "id": 9490, - "name": "dust", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8195, - "src": "19471:4:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "19453:22:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 9522, - "nodeType": "IfStatement", - "src": "19449:829:24", - "trueBody": { - "id": 9521, - "nodeType": "Block", - "src": "19477:801:24", - "statements": [ - { - "assignments": [ - 9493, - null - ], - "declarations": [ - { - "constant": false, - "id": 9493, - "mutability": "mutable", - "name": "success", - "nameLocation": "19583:7:24", - "nodeType": "VariableDeclaration", - "scope": 9521, - "src": "19578:12:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 9492, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "19578:4:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - null - ], - "id": 9502, - "initialValue": { - "arguments": [ - { - "hexValue": "", - "id": 9500, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "19744:2:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - }, - "value": "" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - } - ], - "expression": { - "expression": { - "id": 9494, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9220, - "src": "19595:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 9495, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "19601:16:24", - "memberName": "rskRefundAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 11202, - "src": "19595:22:24", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "id": 9496, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "19618:4:24", - "memberName": "call", - "nodeType": "MemberAccess", - "src": "19595:27:24", - "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": 9499, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "names": [ - "gas", - "value" - ], - "nodeType": "FunctionCallOptions", - "options": [ - { - "id": 9497, - "name": "MAX_REFUND_GAS_LIMIT", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7947, - "src": "19653:20:24", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - { - "id": 9498, - "name": "remainingAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9478, - "src": "19706:15:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "src": "19595:148:24", - "typeDescriptions": { - "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$gasvalue", - "typeString": "function (bytes memory) payable returns (bool,bytes memory)" - } - }, - "id": 9501, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "19595:152:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "tuple(bool,bytes memory)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "19577:170:24" - }, - { - "eventCall": { - "arguments": [ - { - "expression": { - "id": 9504, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9220, - "src": "19798:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 9505, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "19804:16:24", - "memberName": "rskRefundAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 11202, - "src": "19798:22:24", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - { - "id": 9506, - "name": "remainingAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9478, - "src": "19842:15:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 9507, - "name": "success", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9493, - "src": "19879:7:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "id": 9508, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9236, - "src": "19908:9:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "id": 9503, - "name": "Refund", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8120, - "src": "19770:6:24", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_bool_$_t_bytes32_$returns$__$", - "typeString": "function (address,uint256,bool,bytes32)" - } - }, - "id": 9509, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "19770:165:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 9510, - "nodeType": "EmitStatement", - "src": "19765:170:24" - }, - { - "condition": { - "id": 9512, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "!", - "prefix": true, - "src": "19958:8:24", - "subExpression": { - "id": 9511, - "name": "success", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9493, - "src": "19959:7:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 9520, - "nodeType": "IfStatement", - "src": "19954:310:24", - "trueBody": { - "id": 9519, - "nodeType": "Block", - "src": "19968:296:24", - "statements": [ - { - "expression": { - "arguments": [ - { - "expression": { - "id": 9514, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9220, - "src": "20149:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 9515, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "20155:27:24", - "memberName": "liquidityProviderRskAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 11198, - "src": "20149:33:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 9516, - "name": "remainingAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9478, - "src": "20208:15:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 9513, - "name": "increaseBalance", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10417, - "src": "20108:15:24", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,uint256)" - } - }, - "id": 9517, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "20108:137:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 9518, - "nodeType": "ExpressionStatement", - "src": "20108:137:24" - } - ] - } - } - ] - } - } - ] - } - }, - { - "expression": { - "id": 9604, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 9600, - "name": "processedQuotes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8205, - "src": "21537:15:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint8_$", - "typeString": "mapping(bytes32 => uint8)" - } - }, - "id": 9602, - "indexExpression": { - "id": 9601, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9236, - "src": "21553:9:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "21537:26:24", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 9603, - "name": "PROCESSED_QUOTE_CODE", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7956, - "src": "21566:20:24", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "src": "21537:49:24", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "id": 9605, - "nodeType": "ExpressionStatement", - "src": "21537:49:24" - }, - { - "expression": { - "id": 9609, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "delete", - "prefix": true, - "src": "21596:30:24", - "subExpression": { - "baseExpression": { - "id": 9606, - "name": "callRegistry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8181, - "src": "21603:12:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$8008_storage_$", - "typeString": "mapping(bytes32 => struct LiquidityBridgeContractV2.Registry storage ref)" - } - }, - "id": 9608, - "indexExpression": { - "id": 9607, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9236, - "src": "21616:9:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "21603:23:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Registry_$8008_storage", - "typeString": "struct LiquidityBridgeContractV2.Registry storage ref" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 9610, - "nodeType": "ExpressionStatement", - "src": "21596:30:24" - }, - { - "eventCall": { - "arguments": [ - { - "id": 9612, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9236, - "src": "21657:9:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 9613, - "name": "transferredAmountOrErrorCode", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9279, - "src": "21668:28:24", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - ], - "id": 9611, - "name": "PegInRegistered", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8084, - "src": "21641:15:24", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_int256_$returns$__$", - "typeString": "function (bytes32,int256)" - } - }, - "id": 9614, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "21641:56:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 9615, - "nodeType": "EmitStatement", - "src": "21636:61:24" - }, - { - "expression": { - "id": 9616, - "name": "transferredAmountOrErrorCode", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9279, - "src": "21714:28:24", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "functionReturnParameters": 9234, - "id": 9617, - "nodeType": "Return", - "src": "21707:35:24" - } - ] - }, - "documentation": { - "id": 9217, - "nodeType": "StructuredDocumentation", - "src": "14736:506:24", - "text": "@dev Registers a peg-in transaction with the bridge and pays to the involved parties\n@param quote The quote of the service\n@param signature The signature of the quote\n@param btcRawTransaction The peg-in transaction\n@param partialMerkleTree The merkle tree path that proves transaction inclusion\n@param height The block that contains the peg-in transaction\n@return The total peg-in amount received from the bridge contract or an error code" - }, - "functionSelector": "2d67952c", - "id": 9619, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "id": 9231, - "kind": "modifierInvocation", - "modifierName": { - "id": 9230, - "name": "nonReentrant", - "nameLocations": [ - "15463:12:24" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 346, - "src": "15463:12:24" - }, - "nodeType": "ModifierInvocation", - "src": "15463:12:24" - } - ], - "name": "registerPegIn", - "nameLocation": "15256:13:24", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 9229, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 9220, - "mutability": "mutable", - "name": "quote", - "nameLocation": "15306:5:24", - "nodeType": "VariableDeclaration", - "scope": 9619, - "src": "15279:32:24", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote" - }, - "typeName": { - "id": 9219, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 9218, - "name": "QuotesV2.PeginQuote", - "nameLocations": [ - "15279:8:24", - "15288:10:24" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 11233, - "src": "15279:19:24" - }, - "referencedDeclaration": 11233, - "src": "15279:19:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_storage_ptr", - "typeString": "struct QuotesV2.PeginQuote" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 9222, - "mutability": "mutable", - "name": "signature", - "nameLocation": "15334:9:24", - "nodeType": "VariableDeclaration", - "scope": 9619, - "src": "15321:22:24", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 9221, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "15321:5:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 9224, - "mutability": "mutable", - "name": "btcRawTransaction", - "nameLocation": "15366:17:24", - "nodeType": "VariableDeclaration", - "scope": 9619, - "src": "15353:30:24", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 9223, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "15353:5:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 9226, - "mutability": "mutable", - "name": "partialMerkleTree", - "nameLocation": "15406:17:24", - "nodeType": "VariableDeclaration", - "scope": 9619, - "src": "15393:30:24", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 9225, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "15393:5:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 9228, - "mutability": "mutable", - "name": "height", - "nameLocation": "15441:6:24", - "nodeType": "VariableDeclaration", - "scope": 9619, - "src": "15433:14:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 9227, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "15433:7:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "15269:184:24" - }, - "returnParameters": { - "id": 9234, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 9233, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 9619, - "src": "15485:6:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 9232, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "15485:6:24", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "15484:8:24" - }, - "scope": 10830, - "src": "15247:6502:24", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 9751, - "nodeType": "Block", - "src": "21940:998:24", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "expression": { - "id": 9629, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9622, - "src": "21980:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_memory_ptr", - "typeString": "struct QuotesV2.PegOutQuote memory" - } - }, - "id": 9630, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "21986:12:24", - "memberName": "lpRskAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 11237, - "src": "21980:18:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 9628, - "name": "isRegisteredForPegout", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10477, - "src": "21958:21:24", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", - "typeString": "function (address) view returns (bool)" - } - }, - "id": 9631, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "21958:41:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303337", - "id": 9632, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "22001:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_ecc75ee801269ba7670799af84ad7f1d968d59315783a708807424c72ec63d04", - "typeString": "literal_string \"LBC037\"" - }, - "value": "LBC037" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_ecc75ee801269ba7670799af84ad7f1d968d59315783a708807424c72ec63d04", - "typeString": "literal_string \"LBC037\"" - } - ], - "id": 9627, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "21950:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 9633, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "21950:60:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 9634, - "nodeType": "ExpressionStatement", - "src": "21950:60:24" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 9649, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 9646, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 9643, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 9640, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 9636, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9622, - "src": "22028:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_memory_ptr", - "typeString": "struct QuotesV2.PegOutQuote memory" - } - }, - "id": 9637, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "22034:5:24", - "memberName": "value", - "nodeType": "MemberAccess", - "referencedDeclaration": 11253, - "src": "22028:11:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "expression": { - "id": 9638, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9622, - "src": "22042:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_memory_ptr", - "typeString": "struct QuotesV2.PegOutQuote memory" - } - }, - "id": 9639, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "22048:7:24", - "memberName": "callFee", - "nodeType": "MemberAccess", - "referencedDeclaration": 11245, - "src": "22042:13:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "22028:27:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "expression": { - "id": 9641, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9622, - "src": "22058:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_memory_ptr", - "typeString": "struct QuotesV2.PegOutQuote memory" - } - }, - "id": 9642, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "22064:16:24", - "memberName": "productFeeAmount", - "nodeType": "MemberAccess", - "referencedDeclaration": 11269, - "src": "22058:22:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "22028:52:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "expression": { - "id": 9644, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9622, - "src": "22083:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_memory_ptr", - "typeString": "struct QuotesV2.PegOutQuote memory" - } - }, - "id": 9645, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "22089:6:24", - "memberName": "gasFee", - "nodeType": "MemberAccess", - "referencedDeclaration": 11271, - "src": "22083:12:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "22028:67:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<=", - "rightExpression": { - "expression": { - "id": 9647, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "22099:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 9648, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "22103:5:24", - "memberName": "value", - "nodeType": "MemberAccess", - "src": "22099:9:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "22028:80:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303633", - "id": 9650, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "22110:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_0267b5bcac1113eea8a4dc81e170e6fe59336df7f2c6a4d2ae7ad240f894a2f9", - "typeString": "literal_string \"LBC063\"" - }, - "value": "LBC063" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_0267b5bcac1113eea8a4dc81e170e6fe59336df7f2c6a4d2ae7ad240f894a2f9", - "typeString": "literal_string \"LBC063\"" - } - ], - "id": 9635, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "22020:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 9651, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "22020:99:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 9652, - "nodeType": "ExpressionStatement", - "src": "22020:99:24" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 9658, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 9654, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967292, - "src": "22137:5:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 9655, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "22143:9:24", - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "22137:15:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<=", - "rightExpression": { - "expression": { - "id": 9656, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9622, - "src": "22156:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_memory_ptr", - "typeString": "struct QuotesV2.PegOutQuote memory" - } - }, - "id": 9657, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "22162:16:24", - "memberName": "depositDateLimit", - "nodeType": "MemberAccess", - "referencedDeclaration": 11257, - "src": "22156:22:24", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "src": "22137:41:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303635", - "id": 9659, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "22180:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_39eacc26aa588693c014f46e6dd86f6cac22eb3287098210ddf746f1a6af8214", - "typeString": "literal_string \"LBC065\"" - }, - "value": "LBC065" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_39eacc26aa588693c014f46e6dd86f6cac22eb3287098210ddf746f1a6af8214", - "typeString": "literal_string \"LBC065\"" - } - ], - "id": 9653, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "22129:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 9660, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "22129:60:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 9661, - "nodeType": "ExpressionStatement", - "src": "22129:60:24" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 9667, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 9663, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967292, - "src": "22207:5:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 9664, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "22213:9:24", - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "22207:15:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<=", - "rightExpression": { - "expression": { - "id": 9665, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9622, - "src": "22226:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_memory_ptr", - "typeString": "struct QuotesV2.PegOutQuote memory" - } - }, - "id": 9666, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "22232:10:24", - "memberName": "expireDate", - "nodeType": "MemberAccess", - "referencedDeclaration": 11265, - "src": "22226:16:24", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "src": "22207:35:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303436", - "id": 9668, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "22244:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c8999eb883ba6531127283b89d3773d87761ac547946da55d1f52c5931d8838f", - "typeString": "literal_string \"LBC046\"" - }, - "value": "LBC046" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_c8999eb883ba6531127283b89d3773d87761ac547946da55d1f52c5931d8838f", - "typeString": "literal_string \"LBC046\"" - } - ], - "id": 9662, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "22199:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 9669, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "22199:54:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 9670, - "nodeType": "ExpressionStatement", - "src": "22199:54:24" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 9676, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 9672, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967292, - "src": "22271:5:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 9673, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "22277:6:24", - "memberName": "number", - "nodeType": "MemberAccess", - "src": "22271:12:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<=", - "rightExpression": { - "expression": { - "id": 9674, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9622, - "src": "22287:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_memory_ptr", - "typeString": "struct QuotesV2.PegOutQuote memory" - } - }, - "id": 9675, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "22293:11:24", - "memberName": "expireBlock", - "nodeType": "MemberAccess", - "referencedDeclaration": 11267, - "src": "22287:17:24", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "src": "22271:33:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303437", - "id": 9677, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "22306:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_b400745c4fd650850c2059b2d13f12980ca63b7ccd87c008204992f11af559c2", - "typeString": "literal_string \"LBC047\"" - }, - "value": "LBC047" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_b400745c4fd650850c2059b2d13f12980ca63b7ccd87c008204992f11af559c2", - "typeString": "literal_string \"LBC047\"" - } - ], - "id": 9671, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "22263:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 9678, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "22263:52:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 9679, - "nodeType": "ExpressionStatement", - "src": "22263:52:24" - }, - { - "assignments": [ - 9681 - ], - "declarations": [ - { - "constant": false, - "id": 9681, - "mutability": "mutable", - "name": "quoteHash", - "nameLocation": "22333:9:24", - "nodeType": "VariableDeclaration", - "scope": 9751, - "src": "22325:17:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 9680, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "22325:7:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "id": 9685, - "initialValue": { - "arguments": [ - { - "id": 9683, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9622, - "src": "22361:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_memory_ptr", - "typeString": "struct QuotesV2.PegOutQuote memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_memory_ptr", - "typeString": "struct QuotesV2.PegOutQuote memory" - } - ], - "id": 9682, - "name": "hashPegoutQuote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10254, - "src": "22345:15:24", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_PegOutQuote_$11272_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (struct QuotesV2.PegOutQuote memory) view returns (bytes32)" - } - }, - "id": 9684, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "22345:22:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "22325:42:24" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "expression": { - "id": 9689, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9622, - "src": "22424:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_memory_ptr", - "typeString": "struct QuotesV2.PegOutQuote memory" - } - }, - "id": 9690, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "22430:12:24", - "memberName": "lpRskAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 11237, - "src": "22424:18:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 9691, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9681, - "src": "22444:9:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 9692, - "name": "signature", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9624, - "src": "22455:9:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "id": 9687, - "name": "SignatureValidator", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11532, - "src": "22398:18:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_SignatureValidator_$11532_$", - "typeString": "type(library SignatureValidator)" - } - }, - "id": 9688, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "22417:6:24", - "memberName": "verify", - "nodeType": "MemberAccess", - "referencedDeclaration": 11531, - "src": "22398:25:24", - "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_pure$_t_address_$_t_bytes32_$_t_bytes_memory_ptr_$returns$_t_bool_$", - "typeString": "function (address,bytes32,bytes memory) pure returns (bool)" - } - }, - "id": 9693, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "22398:67:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303239", - "id": 9694, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "22479:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_ebb41fd1c3d95b8eaff1e56d491f7a983f7f3039fac57e6fad7993de139e2216", - "typeString": "literal_string \"LBC029\"" - }, - "value": "LBC029" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_ebb41fd1c3d95b8eaff1e56d491f7a983f7f3039fac57e6fad7993de139e2216", - "typeString": "literal_string \"LBC029\"" - } - ], - "id": 9686, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "22377:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 9695, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "22377:120:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 9696, - "nodeType": "ExpressionStatement", - "src": "22377:120:24" - }, - { - "assignments": [ - 9701 - ], - "declarations": [ - { - "constant": false, - "id": 9701, - "mutability": "mutable", - "name": "registeredQuote", - "nameLocation": "22537:15:24", - "nodeType": "VariableDeclaration", - "scope": 9751, - "src": "22508:44:24", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_storage_ptr", - "typeString": "struct QuotesV2.PegOutQuote" - }, - "typeName": { - "id": 9700, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 9699, - "name": "QuotesV2.PegOutQuote", - "nameLocations": [ - "22508:8:24", - "22517:11:24" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 11272, - "src": "22508:20:24" - }, - "referencedDeclaration": 11272, - "src": "22508:20:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_storage_ptr", - "typeString": "struct QuotesV2.PegOutQuote" - } - }, - "visibility": "internal" - } - ], - "id": 9705, - "initialValue": { - "baseExpression": { - "id": 9702, - "name": "registeredPegoutQuotes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8210, - "src": "22555:22:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegOutQuote_$11272_storage_$", - "typeString": "mapping(bytes32 => struct QuotesV2.PegOutQuote storage ref)" - } - }, - "id": 9704, - "indexExpression": { - "id": 9703, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9681, - "src": "22578:9:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "22555:33:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_storage", - "typeString": "struct QuotesV2.PegOutQuote storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "22508:80:24" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 9712, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "baseExpression": { - "id": 9707, - "name": "pegoutRegistry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8215, - "src": "22607:14:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegoutRecord_$8013_storage_$", - "typeString": "mapping(bytes32 => struct LiquidityBridgeContractV2.PegoutRecord storage ref)" - } - }, - "id": 9709, - "indexExpression": { - "id": 9708, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9681, - "src": "22622:9:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "22607:25:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegoutRecord_$8013_storage", - "typeString": "struct LiquidityBridgeContractV2.PegoutRecord storage ref" - } - }, - "id": 9710, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "22633:9:24", - "memberName": "completed", - "nodeType": "MemberAccess", - "referencedDeclaration": 8012, - "src": "22607:35:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "66616c7365", - "id": 9711, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "22646:5:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "false" - }, - "src": "22607:44:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303634", - "id": 9713, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "22653:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_35937926b0033772f3bb574f0cbcffec40211211a6070977d47733885bf234eb", - "typeString": "literal_string \"LBC064\"" - }, - "value": "LBC064" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_35937926b0033772f3bb574f0cbcffec40211211a6070977d47733885bf234eb", - "typeString": "literal_string \"LBC064\"" - } - ], - "id": 9706, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "22599:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 9714, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "22599:63:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 9715, - "nodeType": "ExpressionStatement", - "src": "22599:63:24" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 9723, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 9717, - "name": "registeredQuote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9701, - "src": "22680:15:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_storage_ptr", - "typeString": "struct QuotesV2.PegOutQuote storage pointer" - } - }, - "id": 9718, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "22696:10:24", - "memberName": "lbcAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 11235, - "src": "22680:26:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "arguments": [ - { - "hexValue": "30", - "id": 9721, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "22718:1:24", - "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": 9720, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "22710:7:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 9719, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "22710:7:24", - "typeDescriptions": {} - } - }, - "id": 9722, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "22710:10:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "22680:40:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303238", - "id": 9724, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "22722:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_4c4b8fd0ae53a3caa85e74f53bba210cefdcb0e1d1c519eb8385d2cd3741f7fb", - "typeString": "literal_string \"LBC028\"" - }, - "value": "LBC028" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_4c4b8fd0ae53a3caa85e74f53bba210cefdcb0e1d1c519eb8385d2cd3741f7fb", - "typeString": "literal_string \"LBC028\"" - } - ], - "id": 9716, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "22672:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 9725, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "22672:59:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 9726, - "nodeType": "ExpressionStatement", - "src": "22672:59:24" - }, - { - "expression": { - "id": 9731, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 9727, - "name": "registeredPegoutQuotes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8210, - "src": "22741:22:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegOutQuote_$11272_storage_$", - "typeString": "mapping(bytes32 => struct QuotesV2.PegOutQuote storage ref)" - } - }, - "id": 9729, - "indexExpression": { - "id": 9728, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9681, - "src": "22764:9:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "22741:33:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_storage", - "typeString": "struct QuotesV2.PegOutQuote storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 9730, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9622, - "src": "22777:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_memory_ptr", - "typeString": "struct QuotesV2.PegOutQuote memory" - } - }, - "src": "22741:41:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_storage", - "typeString": "struct QuotesV2.PegOutQuote storage ref" - } - }, - "id": 9732, - "nodeType": "ExpressionStatement", - "src": "22741:41:24" - }, - { - "expression": { - "id": 9739, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "baseExpression": { - "id": 9733, - "name": "pegoutRegistry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8215, - "src": "22792:14:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegoutRecord_$8013_storage_$", - "typeString": "mapping(bytes32 => struct LiquidityBridgeContractV2.PegoutRecord storage ref)" - } - }, - "id": 9735, - "indexExpression": { - "id": 9734, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9681, - "src": "22807:9:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "22792:25:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegoutRecord_$8013_storage", - "typeString": "struct LiquidityBridgeContractV2.PegoutRecord storage ref" - } - }, - "id": 9736, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberLocation": "22818:16:24", - "memberName": "depositTimestamp", - "nodeType": "MemberAccess", - "referencedDeclaration": 8010, - "src": "22792:42:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "expression": { - "id": 9737, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967292, - "src": "22837:5:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 9738, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "22843:9:24", - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "22837:15:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "22792:60:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 9740, - "nodeType": "ExpressionStatement", - "src": "22792:60:24" - }, - { - "eventCall": { - "arguments": [ - { - "id": 9742, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9681, - "src": "22881:9:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "expression": { - "id": 9743, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "22892:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 9744, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "22896:6:24", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "22892:10:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 9745, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "22904:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 9746, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "22908:5:24", - "memberName": "value", - "nodeType": "MemberAccess", - "src": "22904:9:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "expression": { - "id": 9747, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967292, - "src": "22915:5:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 9748, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "22921:9:24", - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "22915:15:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 9741, - "name": "PegOutDeposit", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8134, - "src": "22867:13:24", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_address_$_t_uint256_$_t_uint256_$returns$__$", - "typeString": "function (bytes32,address,uint256,uint256)" - } - }, - "id": 9749, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "22867:64:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 9750, - "nodeType": "EmitStatement", - "src": "22862:69:24" - } - ] - }, - "functionSelector": "8beb537a", - "id": 9752, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "depositPegout", - "nameLocation": "21764:13:24", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 9625, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 9622, - "mutability": "mutable", - "name": "quote", - "nameLocation": "21879:5:24", - "nodeType": "VariableDeclaration", - "scope": 9752, - "src": "21851:33:24", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_memory_ptr", - "typeString": "struct QuotesV2.PegOutQuote" - }, - "typeName": { - "id": 9621, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 9620, - "name": "QuotesV2.PegOutQuote", - "nameLocations": [ - "21851:8:24", - "21860:11:24" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 11272, - "src": "21851:20:24" - }, - "referencedDeclaration": 11272, - "src": "21851:20:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_storage_ptr", - "typeString": "struct QuotesV2.PegOutQuote" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 9624, - "mutability": "mutable", - "name": "signature", - "nameLocation": "21907:9:24", - "nodeType": "VariableDeclaration", - "scope": 9752, - "src": "21894:22:24", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 9623, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "21894:5:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "21777:145:24" - }, - "returnParameters": { - "id": 9626, - "nodeType": "ParameterList", - "parameters": [], - "src": "21940:0:24" - }, - "scope": 10830, - "src": "21755:1183:24", - "stateMutability": "payable", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 9871, - "nodeType": "Block", - "src": "23025:1003:24", - "statements": [ - { - "assignments": [ - 9763 - ], - "declarations": [ - { - "constant": false, - "id": 9763, - "mutability": "mutable", - "name": "quote", - "nameLocation": "23064:5:24", - "nodeType": "VariableDeclaration", - "scope": 9871, - "src": "23035:34:24", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_storage_ptr", - "typeString": "struct QuotesV2.PegOutQuote" - }, - "typeName": { - "id": 9762, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 9761, - "name": "QuotesV2.PegOutQuote", - "nameLocations": [ - "23035:8:24", - "23044:11:24" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 11272, - "src": "23035:20:24" - }, - "referencedDeclaration": 11272, - "src": "23035:20:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_storage_ptr", - "typeString": "struct QuotesV2.PegOutQuote" - } - }, - "visibility": "internal" - } - ], - "id": 9767, - "initialValue": { - "baseExpression": { - "id": 9764, - "name": "registeredPegoutQuotes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8210, - "src": "23072:22:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegOutQuote_$11272_storage_$", - "typeString": "mapping(bytes32 => struct QuotesV2.PegOutQuote storage ref)" - } - }, - "id": 9766, - "indexExpression": { - "id": 9765, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9754, - "src": "23095:9:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "23072:33:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_storage", - "typeString": "struct QuotesV2.PegOutQuote storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "23035:70:24" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 9775, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 9769, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9763, - "src": "23124:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_storage_ptr", - "typeString": "struct QuotesV2.PegOutQuote storage pointer" - } - }, - "id": 9770, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "23130:10:24", - "memberName": "lbcAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 11235, - "src": "23124:16:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "arguments": [ - { - "hexValue": "30", - "id": 9773, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "23152:1:24", - "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": 9772, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "23144:7:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 9771, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "23144:7:24", - "typeDescriptions": {} - } - }, - "id": 9774, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "23144:10:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "23124:30:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303432", - "id": 9776, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "23156:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_100fb89310beea959f828c5ca2a95ca4d28be5d0ba0e61e54b1345b68d14b6a1", - "typeString": "literal_string \"LBC042\"" - }, - "value": "LBC042" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_100fb89310beea959f828c5ca2a95ca4d28be5d0ba0e61e54b1345b68d14b6a1", - "typeString": "literal_string \"LBC042\"" - } - ], - "id": 9768, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "23116:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 9777, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "23116:49:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 9778, - "nodeType": "ExpressionStatement", - "src": "23116:49:24" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 9790, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 9784, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 9780, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967292, - "src": "23196:5:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 9781, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "23202:9:24", - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "23196:15:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "expression": { - "id": 9782, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9763, - "src": "23214:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_storage_ptr", - "typeString": "struct QuotesV2.PegOutQuote storage pointer" - } - }, - "id": 9783, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "23220:10:24", - "memberName": "expireDate", - "nodeType": "MemberAccess", - "referencedDeclaration": 11265, - "src": "23214:16:24", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "src": "23196:34:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 9789, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 9785, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967292, - "src": "23246:5:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 9786, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "23252:6:24", - "memberName": "number", - "nodeType": "MemberAccess", - "src": "23246:12:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "expression": { - "id": 9787, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9763, - "src": "23261:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_storage_ptr", - "typeString": "struct QuotesV2.PegOutQuote storage pointer" - } - }, - "id": 9788, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "23267:11:24", - "memberName": "expireBlock", - "nodeType": "MemberAccess", - "referencedDeclaration": 11267, - "src": "23261:17:24", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "src": "23246:32:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "23196:82:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303431", - "id": 9791, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "23292:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_476e33256b298fee7fc3dab0c339427caa3a9a4a44654f7f02b328083d44ca74", - "typeString": "literal_string \"LBC041\"" - }, - "value": "LBC041" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_476e33256b298fee7fc3dab0c339427caa3a9a4a44654f7f02b328083d44ca74", - "typeString": "literal_string \"LBC041\"" - } - ], - "id": 9779, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "23175:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 9792, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "23175:135:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 9793, - "nodeType": "ExpressionStatement", - "src": "23175:135:24" - }, - { - "assignments": [ - 9795 - ], - "declarations": [ - { - "constant": false, - "id": 9795, - "mutability": "mutable", - "name": "valueToTransfer", - "nameLocation": "23326:15:24", - "nodeType": "VariableDeclaration", - "scope": 9871, - "src": "23321:20:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 9794, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "23321:4:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 9807, - "initialValue": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 9806, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 9803, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 9800, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 9796, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9763, - "src": "23344:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_storage_ptr", - "typeString": "struct QuotesV2.PegOutQuote storage pointer" - } - }, - "id": 9797, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "23350:5:24", - "memberName": "value", - "nodeType": "MemberAccess", - "referencedDeclaration": 11253, - "src": "23344:11:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "expression": { - "id": 9798, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9763, - "src": "23358:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_storage_ptr", - "typeString": "struct QuotesV2.PegOutQuote storage pointer" - } - }, - "id": 9799, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "23364:7:24", - "memberName": "callFee", - "nodeType": "MemberAccess", - "referencedDeclaration": 11245, - "src": "23358:13:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "23344:27:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "expression": { - "id": 9801, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9763, - "src": "23374:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_storage_ptr", - "typeString": "struct QuotesV2.PegOutQuote storage pointer" - } - }, - "id": 9802, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "23380:16:24", - "memberName": "productFeeAmount", - "nodeType": "MemberAccess", - "referencedDeclaration": 11269, - "src": "23374:22:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "23344:52:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "expression": { - "id": 9804, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9763, - "src": "23399:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_storage_ptr", - "typeString": "struct QuotesV2.PegOutQuote storage pointer" - } - }, - "id": 9805, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "23405:6:24", - "memberName": "gasFee", - "nodeType": "MemberAccess", - "referencedDeclaration": 11271, - "src": "23399:12:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "23344:67:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "23321:90:24" - }, - { - "assignments": [ - 9809 - ], - "declarations": [ - { - "constant": false, - "id": 9809, - "mutability": "mutable", - "name": "addressToTransfer", - "nameLocation": "23429:17:24", - "nodeType": "VariableDeclaration", - "scope": 9871, - "src": "23421:25:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 9808, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "23421:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "id": 9812, - "initialValue": { - "expression": { - "id": 9810, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9763, - "src": "23449:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_storage_ptr", - "typeString": "struct QuotesV2.PegOutQuote storage pointer" - } - }, - "id": 9811, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "23455:16:24", - "memberName": "rskRefundAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 11241, - "src": "23449:22:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "23421:50:24" - }, - { - "assignments": [ - 9814 - ], - "declarations": [ - { - "constant": false, - "id": 9814, - "mutability": "mutable", - "name": "penalty", - "nameLocation": "23487:7:24", - "nodeType": "VariableDeclaration", - "scope": 9871, - "src": "23482:12:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 9813, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "23482:4:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 9823, - "initialValue": { - "arguments": [ - { - "expression": { - "id": 9816, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9763, - "src": "23501:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_storage_ptr", - "typeString": "struct QuotesV2.PegOutQuote storage pointer" - } - }, - "id": 9817, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "23507:10:24", - "memberName": "penaltyFee", - "nodeType": "MemberAccess", - "referencedDeclaration": 11247, - "src": "23501:16:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "baseExpression": { - "id": 9818, - "name": "pegoutCollateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8171, - "src": "23519:16:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 9821, - "indexExpression": { - "expression": { - "id": 9819, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9763, - "src": "23536:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_storage_ptr", - "typeString": "struct QuotesV2.PegOutQuote storage pointer" - } - }, - "id": 9820, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "23542:12:24", - "memberName": "lpRskAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 11237, - "src": "23536:18:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "23519:36:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 9815, - "name": "min", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10398, - "src": "23497:3:24", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$", - "typeString": "function (uint256,uint256) pure returns (uint256)" - } - }, - "id": 9822, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "23497:59:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "23482:74:24" - }, - { - "expression": { - "id": 9829, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 9824, - "name": "pegoutCollateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8171, - "src": "23566:16:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 9827, - "indexExpression": { - "expression": { - "id": 9825, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9763, - "src": "23583:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_storage_ptr", - "typeString": "struct QuotesV2.PegOutQuote storage pointer" - } - }, - "id": 9826, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "23589:12:24", - "memberName": "lpRskAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 11237, - "src": "23583:18:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "23566:36:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "-=", - "rightHandSide": { - "id": 9828, - "name": "penalty", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9814, - "src": "23606:7:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "23566:47:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 9830, - "nodeType": "ExpressionStatement", - "src": "23566:47:24" - }, - { - "eventCall": { - "arguments": [ - { - "expression": { - "id": 9832, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9763, - "src": "23639:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_storage_ptr", - "typeString": "struct QuotesV2.PegOutQuote storage pointer" - } - }, - "id": 9833, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "23645:12:24", - "memberName": "lpRskAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 11237, - "src": "23639:18:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 9834, - "name": "penalty", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9814, - "src": "23659:7:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 9835, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9754, - "src": "23668:9:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "id": 9831, - "name": "Penalized", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8092, - "src": "23629:9:24", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_bytes32_$returns$__$", - "typeString": "function (address,uint256,bytes32)" - } - }, - "id": 9836, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "23629:49:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 9837, - "nodeType": "EmitStatement", - "src": "23624:54:24" - }, - { - "eventCall": { - "arguments": [ - { - "id": 9839, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9754, - "src": "23725:9:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 9840, - "name": "valueToTransfer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9795, - "src": "23748:15:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "expression": { - "id": 9841, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9763, - "src": "23777:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_storage_ptr", - "typeString": "struct QuotesV2.PegOutQuote storage pointer" - } - }, - "id": 9842, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "23783:16:24", - "memberName": "rskRefundAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 11241, - "src": "23777:22:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 9838, - "name": "PegOutUserRefunded", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8142, - "src": "23693:18:24", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint256_$_t_address_$returns$__$", - "typeString": "function (bytes32,uint256,address)" - } - }, - "id": 9843, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "23693:116:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 9844, - "nodeType": "EmitStatement", - "src": "23688:121:24" - }, - { - "expression": { - "id": 9848, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "delete", - "prefix": true, - "src": "23820:40:24", - "subExpression": { - "baseExpression": { - "id": 9845, - "name": "registeredPegoutQuotes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8210, - "src": "23827:22:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegOutQuote_$11272_storage_$", - "typeString": "mapping(bytes32 => struct QuotesV2.PegOutQuote storage ref)" - } - }, - "id": 9847, - "indexExpression": { - "id": 9846, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9754, - "src": "23850:9:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "23827:33:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_storage", - "typeString": "struct QuotesV2.PegOutQuote storage ref" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 9849, - "nodeType": "ExpressionStatement", - "src": "23820:40:24" - }, - { - "expression": { - "id": 9855, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "baseExpression": { - "id": 9850, - "name": "pegoutRegistry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8215, - "src": "23870:14:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegoutRecord_$8013_storage_$", - "typeString": "mapping(bytes32 => struct LiquidityBridgeContractV2.PegoutRecord storage ref)" - } - }, - "id": 9852, - "indexExpression": { - "id": 9851, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9754, - "src": "23885:9:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "23870:25:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegoutRecord_$8013_storage", - "typeString": "struct LiquidityBridgeContractV2.PegoutRecord storage ref" - } - }, - "id": 9853, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberLocation": "23896:9:24", - "memberName": "completed", - "nodeType": "MemberAccess", - "referencedDeclaration": 8012, - "src": "23870:35:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "hexValue": "74727565", - "id": 9854, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "23908:4:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "src": "23870:42:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 9856, - "nodeType": "ExpressionStatement", - "src": "23870:42:24" - }, - { - "assignments": [ - 9858, - null - ], - "declarations": [ - { - "constant": false, - "id": 9858, - "mutability": "mutable", - "name": "sent", - "nameLocation": "23929:4:24", - "nodeType": "VariableDeclaration", - "scope": 9871, - "src": "23924:9:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 9857, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "23924:4:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - null - ], - "id": 9865, - "initialValue": { - "arguments": [ - { - "hexValue": "", - "id": 9863, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "23985:2:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - }, - "value": "" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - } - ], - "expression": { - "id": 9859, - "name": "addressToTransfer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9809, - "src": "23938:17:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 9860, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "23956:4:24", - "memberName": "call", - "nodeType": "MemberAccess", - "src": "23938:22:24", - "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": 9862, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "names": [ - "value" - ], - "nodeType": "FunctionCallOptions", - "options": [ - { - "id": 9861, - "name": "valueToTransfer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9795, - "src": "23968:15:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "src": "23938:46:24", - "typeDescriptions": { - "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$value", - "typeString": "function (bytes memory) payable returns (bool,bytes memory)" - } - }, - "id": 9864, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "23938:50:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "tuple(bool,bytes memory)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "23923:65:24" - }, - { - "expression": { - "arguments": [ - { - "id": 9867, - "name": "sent", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9858, - "src": "24006:4:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303434", - "id": 9868, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "24012:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_0a7ff570d31f7e351d06bf5b8d0ef26a9275a9d32a7dffd7981a6c6ac58227c6", - "typeString": "literal_string \"LBC044\"" - }, - "value": "LBC044" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_0a7ff570d31f7e351d06bf5b8d0ef26a9275a9d32a7dffd7981a6c6ac58227c6", - "typeString": "literal_string \"LBC044\"" - } - ], - "id": 9866, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "23998:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 9869, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "23998:23:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 9870, - "nodeType": "ExpressionStatement", - "src": "23998:23:24" - } - ] - }, - "functionSelector": "8f91797d", - "id": 9872, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "id": 9757, - "kind": "modifierInvocation", - "modifierName": { - "id": 9756, - "name": "nonReentrant", - "nameLocations": [ - "23012:12:24" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 346, - "src": "23012:12:24" - }, - "nodeType": "ModifierInvocation", - "src": "23012:12:24" - } - ], - "name": "refundUserPegOut", - "nameLocation": "22953:16:24", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 9755, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 9754, - "mutability": "mutable", - "name": "quoteHash", - "nameLocation": "22987:9:24", - "nodeType": "VariableDeclaration", - "scope": 9872, - "src": "22979:17:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 9753, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "22979:7:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "22969:33:24" - }, - "returnParameters": { - "id": 9758, - "nodeType": "ParameterList", - "parameters": [], - "src": "23025:0:24" - }, - "scope": 10830, - "src": "22944:1084:24", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 10174, - "nodeType": "Block", - "src": "24279:2589:24", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 9896, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "baseExpression": { - "id": 9891, - "name": "pegoutRegistry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8215, - "src": "24297:14:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegoutRecord_$8013_storage_$", - "typeString": "mapping(bytes32 => struct LiquidityBridgeContractV2.PegoutRecord storage ref)" - } - }, - "id": 9893, - "indexExpression": { - "id": 9892, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9874, - "src": "24312:9:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "24297:25:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegoutRecord_$8013_storage", - "typeString": "struct LiquidityBridgeContractV2.PegoutRecord storage ref" - } - }, - "id": 9894, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "24323:9:24", - "memberName": "completed", - "nodeType": "MemberAccess", - "referencedDeclaration": 8012, - "src": "24297:35:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "66616c7365", - "id": 9895, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "24336:5:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "false" - }, - "src": "24297:44:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303634", - "id": 9897, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "24343:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_35937926b0033772f3bb574f0cbcffec40211211a6070977d47733885bf234eb", - "typeString": "literal_string \"LBC064\"" - }, - "value": "LBC064" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_35937926b0033772f3bb574f0cbcffec40211211a6070977d47733885bf234eb", - "typeString": "literal_string \"LBC064\"" - } - ], - "id": 9890, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "24289:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 9898, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "24289:63:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 9899, - "nodeType": "ExpressionStatement", - "src": "24289:63:24" - }, - { - "assignments": [ - 9904 - ], - "declarations": [ - { - "constant": false, - "id": 9904, - "mutability": "mutable", - "name": "quote", - "nameLocation": "24391:5:24", - "nodeType": "VariableDeclaration", - "scope": 10174, - "src": "24362:34:24", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_storage_ptr", - "typeString": "struct QuotesV2.PegOutQuote" - }, - "typeName": { - "id": 9903, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 9902, - "name": "QuotesV2.PegOutQuote", - "nameLocations": [ - "24362:8:24", - "24371:11:24" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 11272, - "src": "24362:20:24" - }, - "referencedDeclaration": 11272, - "src": "24362:20:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_storage_ptr", - "typeString": "struct QuotesV2.PegOutQuote" - } - }, - "visibility": "internal" - } - ], - "id": 9908, - "initialValue": { - "baseExpression": { - "id": 9905, - "name": "registeredPegoutQuotes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8210, - "src": "24399:22:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegOutQuote_$11272_storage_$", - "typeString": "mapping(bytes32 => struct QuotesV2.PegOutQuote storage ref)" - } - }, - "id": 9907, - "indexExpression": { - "id": 9906, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9874, - "src": "24422:9:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "24399:33:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_storage", - "typeString": "struct QuotesV2.PegOutQuote storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "24362:70:24" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 9916, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 9910, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9904, - "src": "24450:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_storage_ptr", - "typeString": "struct QuotesV2.PegOutQuote storage pointer" - } - }, - "id": 9911, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "24456:10:24", - "memberName": "lbcAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 11235, - "src": "24450:16:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "arguments": [ - { - "hexValue": "30", - "id": 9914, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "24478:1:24", - "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": 9913, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "24470:7:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 9912, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "24470:7:24", - "typeDescriptions": {} - } - }, - "id": 9915, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "24470:10:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "24450:30:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303432", - "id": 9917, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "24482:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_100fb89310beea959f828c5ca2a95ca4d28be5d0ba0e61e54b1345b68d14b6a1", - "typeString": "literal_string \"LBC042\"" - }, - "value": "LBC042" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_100fb89310beea959f828c5ca2a95ca4d28be5d0ba0e61e54b1345b68d14b6a1", - "typeString": "literal_string \"LBC042\"" - } - ], - "id": 9909, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "24442:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 9918, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "24442:49:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 9919, - "nodeType": "ExpressionStatement", - "src": "24442:49:24" - }, - { - "assignments": [ - 9925 - ], - "declarations": [ - { - "constant": false, - "id": 9925, - "mutability": "mutable", - "name": "outputs", - "nameLocation": "24531:7:24", - "nodeType": "VariableDeclaration", - "scope": 10174, - "src": "24501:37:24", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2307_memory_ptr_$dyn_memory_ptr", - "typeString": "struct BtcUtils.TxRawOutput[]" - }, - "typeName": { - "baseType": { - "id": 9923, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 9922, - "name": "BtcUtils.TxRawOutput", - "nameLocations": [ - "24501:8:24", - "24510:11:24" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 2307, - "src": "24501:20:24" - }, - "referencedDeclaration": 2307, - "src": "24501:20:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TxRawOutput_$2307_storage_ptr", - "typeString": "struct BtcUtils.TxRawOutput" - } - }, - "id": 9924, - "nodeType": "ArrayTypeName", - "src": "24501:22:24", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2307_storage_$dyn_storage_ptr", - "typeString": "struct BtcUtils.TxRawOutput[]" - } - }, - "visibility": "internal" - } - ], - "id": 9930, - "initialValue": { - "arguments": [ - { - "id": 9928, - "name": "btcTx", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9876, - "src": "24561:5:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "id": 9926, - "name": "BtcUtils", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3743, - "src": "24541:8:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_BtcUtils_$3743_$", - "typeString": "type(library BtcUtils)" - } - }, - "id": 9927, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "24550:10:24", - "memberName": "getOutputs", - "nodeType": "MemberAccess", - "referencedDeclaration": 2454, - "src": "24541:19:24", - "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_pure$_t_bytes_memory_ptr_$returns$_t_array$_t_struct$_TxRawOutput_$2307_memory_ptr_$dyn_memory_ptr_$", - "typeString": "function (bytes memory) pure returns (struct BtcUtils.TxRawOutput memory[] memory)" - } - }, - "id": 9929, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "24541:26:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2307_memory_ptr_$dyn_memory_ptr", - "typeString": "struct BtcUtils.TxRawOutput memory[] memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "24501:66:24" - }, - { - "assignments": [ - 9932 - ], - "declarations": [ - { - "constant": false, - "id": 9932, - "mutability": "mutable", - "name": "scriptContent", - "nameLocation": "24590:13:24", - "nodeType": "VariableDeclaration", - "scope": 10174, - "src": "24577:26:24", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 9931, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "24577:5:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 9940, - "initialValue": { - "arguments": [ - { - "expression": { - "baseExpression": { - "id": 9935, - "name": "outputs", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9925, - "src": "24635:7:24", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2307_memory_ptr_$dyn_memory_ptr", - "typeString": "struct BtcUtils.TxRawOutput memory[] memory" - } - }, - "id": 9937, - "indexExpression": { - "id": 9936, - "name": "QUOTE_HASH_OUTPUT", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7998, - "src": "24643:17:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "24635:26:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TxRawOutput_$2307_memory_ptr", - "typeString": "struct BtcUtils.TxRawOutput memory" - } - }, - "id": 9938, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "24662:8:24", - "memberName": "pkScript", - "nodeType": "MemberAccess", - "referencedDeclaration": 2302, - "src": "24635:35:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "id": 9933, - "name": "BtcUtils", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3743, - "src": "24606:8:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_BtcUtils_$3743_$", - "typeString": "type(library BtcUtils)" - } - }, - "id": 9934, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "24615:19:24", - "memberName": "parseNullDataScript", - "nodeType": "MemberAccess", - "referencedDeclaration": 3176, - "src": "24606:28:24", - "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_pure$_t_bytes_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (bytes memory) pure returns (bytes memory)" - } - }, - "id": 9939, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "24606:65:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "24577:94:24" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 9951, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 9945, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 9942, - "name": "scriptContent", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9932, - "src": "24689:13:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 9943, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "24703:6:24", - "memberName": "length", - "nodeType": "MemberAccess", - "src": "24689:20:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "3333", - "id": 9944, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "24713:2:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_33_by_1", - "typeString": "int_const 33" - }, - "value": "33" - }, - "src": "24689:26:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - }, - "id": 9950, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "id": 9946, - "name": "scriptContent", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9932, - "src": "24719:13:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 9948, - "indexExpression": { - "hexValue": "30", - "id": 9947, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "24733:1:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "24719:16:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30783230", - "id": 9949, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "24739:4:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_32_by_1", - "typeString": "int_const 32" - }, - "value": "0x20" - }, - "src": "24719:24:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "24689:54:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303735", - "id": 9952, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "24745:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_d0a12d6767c9352a89748f00976b0ffc4b9ff4b643d9cc1082f2df3b625d402a", - "typeString": "literal_string \"LBC075\"" - }, - "value": "LBC075" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_d0a12d6767c9352a89748f00976b0ffc4b9ff4b643d9cc1082f2df3b625d402a", - "typeString": "literal_string \"LBC075\"" - } - ], - "id": 9941, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "24681:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 9953, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "24681:73:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 9954, - "nodeType": "ExpressionStatement", - "src": "24681:73:24" - }, - { - "body": { - "id": 9978, - "nodeType": "Block", - "src": "24881:64:24", - "statements": [ - { - "expression": { - "id": 9976, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 9968, - "name": "scriptContent", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9932, - "src": "24895:13:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 9970, - "indexExpression": { - "id": 9969, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9956, - "src": "24909:1:24", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "24895:16:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "baseExpression": { - "id": 9971, - "name": "scriptContent", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9932, - "src": "24914:13:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 9975, - "indexExpression": { - "commonType": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "id": 9974, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 9972, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9956, - "src": "24928:1:24", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "hexValue": "31", - "id": 9973, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "24932:1:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "24928:5:24", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "24914:20:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "src": "24895:39:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "id": 9977, - "nodeType": "ExpressionStatement", - "src": "24895:39:24" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 9964, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 9959, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9956, - "src": "24846:1:24", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 9963, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 9960, - "name": "scriptContent", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9932, - "src": "24850:13:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 9961, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "24864:6:24", - "memberName": "length", - "nodeType": "MemberAccess", - "src": "24850:20:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "hexValue": "31", - "id": 9962, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "24873:1:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "24850:24:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "24846:28:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 9979, - "initializationExpression": { - "assignments": [ - 9956 - ], - "declarations": [ - { - "constant": false, - "id": 9956, - "mutability": "mutable", - "name": "i", - "nameLocation": "24838:1:24", - "nodeType": "VariableDeclaration", - "scope": 9979, - "src": "24832:7:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "typeName": { - "id": 9955, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "24832:5:24", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "visibility": "internal" - } - ], - "id": 9958, - "initialValue": { - "hexValue": "30", - "id": 9957, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "24842:1:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "24832:11:24" - }, - "loopExpression": { - "expression": { - "id": 9966, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "24876:3:24", - "subExpression": { - "id": 9965, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9956, - "src": "24876:1:24", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "id": 9967, - "nodeType": "ExpressionStatement", - "src": "24876:3:24" - }, - "nodeType": "ForStatement", - "src": "24827:118:24" - }, - { - "assignments": [ - 9981 - ], - "declarations": [ - { - "constant": false, - "id": 9981, - "mutability": "mutable", - "name": "txQuoteHash", - "nameLocation": "24962:11:24", - "nodeType": "VariableDeclaration", - "scope": 10174, - "src": "24954:19:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 9980, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "24954:7:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "id": 9989, - "initialValue": { - "arguments": [ - { - "id": 9984, - "name": "scriptContent", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9932, - "src": "24987:13:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "components": [ - { - "id": 9986, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "25003:7:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes32_$", - "typeString": "type(bytes32)" - }, - "typeName": { - "id": 9985, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "25003:7:24", - "typeDescriptions": {} - } - } - ], - "id": 9987, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "25002:9:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes32_$", - "typeString": "type(bytes32)" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_type$_t_bytes32_$", - "typeString": "type(bytes32)" - } - ], - "expression": { - "id": 9982, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "24976:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 9983, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "24980:6:24", - "memberName": "decode", - "nodeType": "MemberAccess", - "src": "24976:10:24", - "typeDescriptions": { - "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 9988, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "24976:36:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "24954:58:24" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "id": 9993, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 9991, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9874, - "src": "25030:9:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "id": 9992, - "name": "txQuoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9981, - "src": "25043:11:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "src": "25030:24:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303639", - "id": 9994, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "25056:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_5cf5f7c75a2357c5697933702fe9f20c432f8f5205def7bf18572d390cea5cc1", - "typeString": "literal_string \"LBC069\"" - }, - "value": "LBC069" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_5cf5f7c75a2357c5697933702fe9f20c432f8f5205def7bf18572d390cea5cc1", - "typeString": "literal_string \"LBC069\"" - } - ], - "id": 9990, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "25022:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 9995, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "25022:43:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 9996, - "nodeType": "ExpressionStatement", - "src": "25022:43:24" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 10002, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 9998, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "25083:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 9999, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "25087:6:24", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "25083:10:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 10000, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9904, - "src": "25097:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_storage_ptr", - "typeString": "struct QuotesV2.PegOutQuote storage pointer" - } - }, - "id": 10001, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "25103:12:24", - "memberName": "lpRskAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 11237, - "src": "25097:18:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "25083:32:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303438", - "id": 10003, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "25117:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_3c14ff4570332247d29826742fdf7f014a86ddbee2c49b0252a79ef49351f196", - "typeString": "literal_string \"LBC048\"" - }, - "value": "LBC048" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_3c14ff4570332247d29826742fdf7f014a86ddbee2c49b0252a79ef49351f196", - "typeString": "literal_string \"LBC048\"" - } - ], - "id": 9997, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "25075:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 10004, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "25075:51:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 10005, - "nodeType": "ExpressionStatement", - "src": "25075:51:24" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "id": 10025, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "arguments": [ - { - "id": 10011, - "name": "btcTx", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9876, - "src": "25231:5:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "id": 10009, - "name": "BtcUtils", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3743, - "src": "25212:8:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_BtcUtils_$3743_$", - "typeString": "type(library BtcUtils)" - } - }, - "id": 10010, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "25221:9:24", - "memberName": "hashBtcTx", - "nodeType": "MemberAccess", - "referencedDeclaration": 3244, - "src": "25212:18:24", - "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 10012, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "25212:25:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 10013, - "name": "btcBlockHeaderHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9878, - "src": "25255:18:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 10014, - "name": "partialMerkleTree", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9880, - "src": "25291:17:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 10015, - "name": "merkleBranchHashes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9883, - "src": "25326:18:24", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", - "typeString": "bytes32[] memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", - "typeString": "bytes32[] memory" - } - ], - "expression": { - "id": 10007, - "name": "bridge", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8159, - "src": "25157:6:24", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Bridge_$4173", - "typeString": "contract Bridge" - } - }, - "id": 10008, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "25164:30:24", - "memberName": "getBtcTransactionConfirmations", - "nodeType": "MemberAccess", - "referencedDeclaration": 4083, - "src": "25157:37:24", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_bytes32_$_t_bytes32_$_t_uint256_$_t_array$_t_bytes32_$dyn_memory_ptr_$returns$_t_int256_$", - "typeString": "function (bytes32,bytes32,uint256,bytes32[] memory) view external returns (int256)" - } - }, - "id": 10016, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "25157:201:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "arguments": [ - { - "arguments": [ - { - "expression": { - "id": 10021, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9904, - "src": "25374:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_storage_ptr", - "typeString": "struct QuotesV2.PegOutQuote storage pointer" - } - }, - "id": 10022, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "25380:21:24", - "memberName": "transferConfirmations", - "nodeType": "MemberAccess", - "referencedDeclaration": 11261, - "src": "25374:27:24", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - ], - "id": 10020, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "25366:7:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint256_$", - "typeString": "type(uint256)" - }, - "typeName": { - "id": 10019, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "25366:7:24", - "typeDescriptions": {} - } - }, - "id": 10023, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "25366:36:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 10018, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "25362:3:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_int256_$", - "typeString": "type(int256)" - }, - "typeName": { - "id": 10017, - "name": "int", - "nodeType": "ElementaryTypeName", - "src": "25362:3:24", - "typeDescriptions": {} - } - }, - "id": 10024, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "25362:41:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "src": "25157:246:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303439", - "id": 10026, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "25417:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_41cc9877d5a72c2a0ef0c602e024ddc86a1f279ef7306bab75dd3c5447ffb6e0", - "typeString": "literal_string \"LBC049\"" - }, - "value": "LBC049" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_41cc9877d5a72c2a0ef0c602e024ddc86a1f279ef7306bab75dd3c5447ffb6e0", - "typeString": "literal_string \"LBC049\"" - } - ], - "id": 10006, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "25136:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 10027, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "25136:299:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 10028, - "nodeType": "ExpressionStatement", - "src": "25136:299:24" - }, - { - "assignments": [ - 10030 - ], - "declarations": [ - { - "constant": false, - "id": 10030, - "mutability": "mutable", - "name": "requiredAmount", - "nameLocation": "25450:14:24", - "nodeType": "VariableDeclaration", - "scope": 10174, - "src": "25445:19:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 10029, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "25445:4:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 10033, - "initialValue": { - "expression": { - "id": 10031, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9904, - "src": "25467:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_storage_ptr", - "typeString": "struct QuotesV2.PegOutQuote storage pointer" - } - }, - "id": 10032, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "25473:5:24", - "memberName": "value", - "nodeType": "MemberAccess", - "referencedDeclaration": 11253, - "src": "25467:11:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "25445:33:24" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 10045, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 10037, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 10034, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9904, - "src": "25492:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_storage_ptr", - "typeString": "struct QuotesV2.PegOutQuote storage pointer" - } - }, - "id": 10035, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "25498:5:24", - "memberName": "value", - "nodeType": "MemberAccess", - "referencedDeclaration": 11253, - "src": "25492:11:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "id": 10036, - "name": "SAT_TO_WEI_CONVERSION", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8003, - "src": "25506:21:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "25492:35:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 10044, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "components": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 10041, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 10038, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9904, - "src": "25532:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_storage_ptr", - "typeString": "struct QuotesV2.PegOutQuote storage pointer" - } - }, - "id": 10039, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "25538:5:24", - "memberName": "value", - "nodeType": "MemberAccess", - "referencedDeclaration": 11253, - "src": "25532:11:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "%", - "rightExpression": { - "id": 10040, - "name": "SAT_TO_WEI_CONVERSION", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8003, - "src": "25546:21:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "25532:35:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "id": 10042, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "25531:37:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "hexValue": "30", - "id": 10043, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "25572:1:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "25531:42:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "25492:81:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 10058, - "nodeType": "IfStatement", - "src": "25488:180:24", - "trueBody": { - "id": 10057, - "nodeType": "Block", - "src": "25575:93:24", - "statements": [ - { - "expression": { - "id": 10055, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 10046, - "name": "requiredAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10030, - "src": "25589:14:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 10054, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 10047, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9904, - "src": "25606:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_storage_ptr", - "typeString": "struct QuotesV2.PegOutQuote storage pointer" - } - }, - "id": 10048, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "25612:5:24", - "memberName": "value", - "nodeType": "MemberAccess", - "referencedDeclaration": 11253, - "src": "25606:11:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "components": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 10052, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 10049, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9904, - "src": "25621:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_storage_ptr", - "typeString": "struct QuotesV2.PegOutQuote storage pointer" - } - }, - "id": 10050, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "25627:5:24", - "memberName": "value", - "nodeType": "MemberAccess", - "referencedDeclaration": 11253, - "src": "25621:11:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "%", - "rightExpression": { - "id": 10051, - "name": "SAT_TO_WEI_CONVERSION", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8003, - "src": "25635:21:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "25621:35:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "id": 10053, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "25620:37:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "25606:51:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "25589:68:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 10056, - "nodeType": "ExpressionStatement", - "src": "25589:68:24" - } - ] - } - }, - { - "assignments": [ - 10060 - ], - "declarations": [ - { - "constant": false, - "id": 10060, - "mutability": "mutable", - "name": "paidAmount", - "nameLocation": "25682:10:24", - "nodeType": "VariableDeclaration", - "scope": 10174, - "src": "25677:15:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 10059, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "25677:4:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 10067, - "initialValue": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 10066, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "baseExpression": { - "id": 10061, - "name": "outputs", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9925, - "src": "25695:7:24", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2307_memory_ptr_$dyn_memory_ptr", - "typeString": "struct BtcUtils.TxRawOutput memory[] memory" - } - }, - "id": 10063, - "indexExpression": { - "id": 10062, - "name": "PAY_TO_ADDRESS_OUTPUT", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7995, - "src": "25703:21:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "25695:30:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TxRawOutput_$2307_memory_ptr", - "typeString": "struct BtcUtils.TxRawOutput memory" - } - }, - "id": 10064, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "25726:5:24", - "memberName": "value", - "nodeType": "MemberAccess", - "referencedDeclaration": 2300, - "src": "25695:36:24", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "nodeType": "BinaryOperation", - "operator": "*", - "rightExpression": { - "id": 10065, - "name": "SAT_TO_WEI_CONVERSION", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8003, - "src": "25734:21:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "25695:60:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "25677:78:24" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 10071, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 10069, - "name": "requiredAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10030, - "src": "25773:14:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<=", - "rightExpression": { - "id": 10070, - "name": "paidAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10060, - "src": "25791:10:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "25773:28:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303637", - "id": 10072, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "25803:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_94643b69f05d64f660a022cd48046be494c1ed271b5d9ae602f6fdadc77976be", - "typeString": "literal_string \"LBC067\"" - }, - "value": "LBC067" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_94643b69f05d64f660a022cd48046be494c1ed271b5d9ae602f6fdadc77976be", - "typeString": "literal_string \"LBC067\"" - } - ], - "id": 10068, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "25765:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 10073, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "25765:47:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 10074, - "nodeType": "ExpressionStatement", - "src": "25765:47:24" - }, - { - "assignments": [ - 10076 - ], - "declarations": [ - { - "constant": false, - "id": 10076, - "mutability": "mutable", - "name": "btcTxDestination", - "nameLocation": "25835:16:24", - "nodeType": "VariableDeclaration", - "scope": 10174, - "src": "25822:29:24", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 10075, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "25822:5:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 10085, - "initialValue": { - "arguments": [ - { - "expression": { - "baseExpression": { - "id": 10079, - "name": "outputs", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9925, - "src": "25898:7:24", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_struct$_TxRawOutput_$2307_memory_ptr_$dyn_memory_ptr", - "typeString": "struct BtcUtils.TxRawOutput memory[] memory" - } - }, - "id": 10081, - "indexExpression": { - "id": 10080, - "name": "PAY_TO_ADDRESS_OUTPUT", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7995, - "src": "25906:21:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "25898:30:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_TxRawOutput_$2307_memory_ptr", - "typeString": "struct BtcUtils.TxRawOutput memory" - } - }, - "id": 10082, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "25929:8:24", - "memberName": "pkScript", - "nodeType": "MemberAccess", - "referencedDeclaration": 2302, - "src": "25898:39:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "id": 10083, - "name": "mainnet", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8201, - "src": "25951:7:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "expression": { - "id": 10077, - "name": "BtcUtils", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3743, - "src": "25854:8:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_BtcUtils_$3743_$", - "typeString": "type(library BtcUtils)" - } - }, - "id": 10078, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "25863:21:24", - "memberName": "outputScriptToAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 2622, - "src": "25854:30:24", - "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_pure$_t_bytes_memory_ptr_$_t_bool_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (bytes memory,bool) pure returns (bytes memory)" - } - }, - "id": 10084, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "25854:114:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "25822:146:24" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "id": 10094, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "expression": { - "id": 10088, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9904, - "src": "25996:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_storage_ptr", - "typeString": "struct QuotesV2.PegOutQuote storage pointer" - } - }, - "id": 10089, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "26002:15:24", - "memberName": "deposityAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 11251, - "src": "25996:21:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_storage", - "typeString": "bytes storage ref" - } - ], - "id": 10087, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967288, - "src": "25986:9:24", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 10090, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "25986:32:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "arguments": [ - { - "id": 10092, - "name": "btcTxDestination", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10076, - "src": "26032:16:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 10091, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967288, - "src": "26022:9:24", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 10093, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "26022:27:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "src": "25986:63:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303638", - "id": 10095, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "26051:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_7cd3d68dd2419ceccbacf2f69bda9c4c2f3bdb0c0535db4bbef90be788c8f7de", - "typeString": "literal_string \"LBC068\"" - }, - "value": "LBC068" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_7cd3d68dd2419ceccbacf2f69bda9c4c2f3bdb0c0535db4bbef90be788c8f7de", - "typeString": "literal_string \"LBC068\"" - } - ], - "id": 10086, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "25978:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 10096, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "25978:82:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 10097, - "nodeType": "ExpressionStatement", - "src": "25978:82:24" - }, - { - "condition": { - "arguments": [ - { - "id": 10099, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9904, - "src": "26124:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_storage_ptr", - "typeString": "struct QuotesV2.PegOutQuote storage pointer" - } - }, - { - "id": 10100, - "name": "txQuoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9981, - "src": "26143:11:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 10101, - "name": "btcBlockHeaderHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9878, - "src": "26168:18:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_storage_ptr", - "typeString": "struct QuotesV2.PegOutQuote storage pointer" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "id": 10098, - "name": "shouldPenalizePegOutLP", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10712, - "src": "26088:22:24", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_PegOutQuote_$11272_memory_ptr_$_t_bytes32_$_t_bytes32_$returns$_t_bool_$", - "typeString": "function (struct QuotesV2.PegOutQuote memory,bytes32,bytes32) view returns (bool)" - } - }, - "id": 10102, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "26088:108:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 10129, - "nodeType": "IfStatement", - "src": "26071:412:24", - "trueBody": { - "id": 10128, - "nodeType": "Block", - "src": "26207:276:24", - "statements": [ - { - "assignments": [ - 10104 - ], - "declarations": [ - { - "constant": false, - "id": 10104, - "mutability": "mutable", - "name": "penalty", - "nameLocation": "26226:7:24", - "nodeType": "VariableDeclaration", - "scope": 10128, - "src": "26221:12:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 10103, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "26221:4:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 10113, - "initialValue": { - "arguments": [ - { - "expression": { - "id": 10106, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9904, - "src": "26257:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_storage_ptr", - "typeString": "struct QuotesV2.PegOutQuote storage pointer" - } - }, - "id": 10107, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "26263:10:24", - "memberName": "penaltyFee", - "nodeType": "MemberAccess", - "referencedDeclaration": 11247, - "src": "26257:16:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "baseExpression": { - "id": 10108, - "name": "pegoutCollateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8171, - "src": "26291:16:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 10111, - "indexExpression": { - "expression": { - "id": 10109, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9904, - "src": "26308:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_storage_ptr", - "typeString": "struct QuotesV2.PegOutQuote storage pointer" - } - }, - "id": 10110, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "26314:12:24", - "memberName": "lpRskAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 11237, - "src": "26308:18:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "26291:36:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 10105, - "name": "min", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10398, - "src": "26236:3:24", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$", - "typeString": "function (uint256,uint256) pure returns (uint256)" - } - }, - "id": 10112, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "26236:105:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "26221:120:24" - }, - { - "expression": { - "id": 10119, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 10114, - "name": "pegoutCollateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8171, - "src": "26355:16:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 10117, - "indexExpression": { - "expression": { - "id": 10115, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9904, - "src": "26372:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_storage_ptr", - "typeString": "struct QuotesV2.PegOutQuote storage pointer" - } - }, - "id": 10116, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "26378:12:24", - "memberName": "lpRskAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 11237, - "src": "26372:18:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "26355:36:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "-=", - "rightHandSide": { - "id": 10118, - "name": "penalty", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10104, - "src": "26395:7:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "26355:47:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 10120, - "nodeType": "ExpressionStatement", - "src": "26355:47:24" - }, - { - "eventCall": { - "arguments": [ - { - "expression": { - "id": 10122, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9904, - "src": "26431:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_storage_ptr", - "typeString": "struct QuotesV2.PegOutQuote storage pointer" - } - }, - "id": 10123, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "26437:12:24", - "memberName": "lpRskAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 11237, - "src": "26431:18:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 10124, - "name": "penalty", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10104, - "src": "26451:7:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 10125, - "name": "txQuoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9981, - "src": "26460:11:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "id": 10121, - "name": "Penalized", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8092, - "src": "26421:9:24", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_bytes32_$returns$__$", - "typeString": "function (address,uint256,bytes32)" - } - }, - "id": 10126, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "26421:51:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 10127, - "nodeType": "EmitStatement", - "src": "26416:56:24" - } - ] - } - }, - { - "assignments": [ - 10131, - null - ], - "declarations": [ - { - "constant": false, - "id": 10131, - "mutability": "mutable", - "name": "sent", - "nameLocation": "26499:4:24", - "nodeType": "VariableDeclaration", - "scope": 10174, - "src": "26494:9:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 10130, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "26494:4:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - null - ], - "id": 10146, - "initialValue": { - "arguments": [ - { - "hexValue": "", - "id": 10144, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "26613:2:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - }, - "value": "" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - } - ], - "expression": { - "expression": { - "id": 10132, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9904, - "src": "26508:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_storage_ptr", - "typeString": "struct QuotesV2.PegOutQuote storage pointer" - } - }, - "id": 10133, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "26514:12:24", - "memberName": "lpRskAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 11237, - "src": "26508:18:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 10134, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "26527:4:24", - "memberName": "call", - "nodeType": "MemberAccess", - "src": "26508:23:24", - "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": 10143, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "names": [ - "value" - ], - "nodeType": "FunctionCallOptions", - "options": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 10142, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 10139, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 10135, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9904, - "src": "26556:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_storage_ptr", - "typeString": "struct QuotesV2.PegOutQuote storage pointer" - } - }, - "id": 10136, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "26562:5:24", - "memberName": "value", - "nodeType": "MemberAccess", - "referencedDeclaration": 11253, - "src": "26556:11:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "expression": { - "id": 10137, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9904, - "src": "26570:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_storage_ptr", - "typeString": "struct QuotesV2.PegOutQuote storage pointer" - } - }, - "id": 10138, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "26576:7:24", - "memberName": "callFee", - "nodeType": "MemberAccess", - "referencedDeclaration": 11245, - "src": "26570:13:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "26556:27:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "expression": { - "id": 10140, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9904, - "src": "26586:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_storage_ptr", - "typeString": "struct QuotesV2.PegOutQuote storage pointer" - } - }, - "id": 10141, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "26592:6:24", - "memberName": "gasFee", - "nodeType": "MemberAccess", - "referencedDeclaration": 11271, - "src": "26586:12:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "26556:42:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "src": "26508:104:24", - "typeDescriptions": { - "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$value", - "typeString": "function (bytes memory) payable returns (bool,bytes memory)" - } - }, - "id": 10145, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "26508:108:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "tuple(bool,bytes memory)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "26493:123:24" - }, - { - "expression": { - "arguments": [ - { - "id": 10148, - "name": "sent", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10131, - "src": "26634:4:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303530", - "id": 10149, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "26640:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_3dcf1159943f9eee729b997e5df9acd0f1771321696b1fb47efa6e54bee2f352", - "typeString": "literal_string \"LBC050\"" - }, - "value": "LBC050" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_3dcf1159943f9eee729b997e5df9acd0f1771321696b1fb47efa6e54bee2f352", - "typeString": "literal_string \"LBC050\"" - } - ], - "id": 10147, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "26626:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 10150, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "26626:23:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 10151, - "nodeType": "ExpressionStatement", - "src": "26626:23:24" - }, - { - "expression": { - "arguments": [ - { - "expression": { - "id": 10153, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9904, - "src": "26678:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_storage_ptr", - "typeString": "struct QuotesV2.PegOutQuote storage pointer" - } - }, - "id": 10154, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "26684:16:24", - "memberName": "productFeeAmount", - "nodeType": "MemberAccess", - "referencedDeclaration": 11269, - "src": "26678:22:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 10155, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9874, - "src": "26702:9:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "id": 10152, - "name": "payToFeeCollector", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10747, - "src": "26660:17:24", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_bytes32_$returns$__$", - "typeString": "function (uint256,bytes32)" - } - }, - "id": 10156, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "26660:52:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 10157, - "nodeType": "ExpressionStatement", - "src": "26660:52:24" - }, - { - "expression": { - "id": 10161, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "delete", - "prefix": true, - "src": "26723:42:24", - "subExpression": { - "baseExpression": { - "id": 10158, - "name": "registeredPegoutQuotes", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8210, - "src": "26730:22:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegOutQuote_$11272_storage_$", - "typeString": "mapping(bytes32 => struct QuotesV2.PegOutQuote storage ref)" - } - }, - "id": 10160, - "indexExpression": { - "id": 10159, - "name": "txQuoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9981, - "src": "26753:11:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "26730:35:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_storage", - "typeString": "struct QuotesV2.PegOutQuote storage ref" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 10162, - "nodeType": "ExpressionStatement", - "src": "26723:42:24" - }, - { - "expression": { - "id": 10168, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "baseExpression": { - "id": 10163, - "name": "pegoutRegistry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8215, - "src": "26775:14:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegoutRecord_$8013_storage_$", - "typeString": "mapping(bytes32 => struct LiquidityBridgeContractV2.PegoutRecord storage ref)" - } - }, - "id": 10165, - "indexExpression": { - "id": 10164, - "name": "txQuoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9981, - "src": "26790:11:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "26775:27:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegoutRecord_$8013_storage", - "typeString": "struct LiquidityBridgeContractV2.PegoutRecord storage ref" - } - }, - "id": 10166, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberLocation": "26803:9:24", - "memberName": "completed", - "nodeType": "MemberAccess", - "referencedDeclaration": 8012, - "src": "26775:37:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "hexValue": "74727565", - "id": 10167, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "26815:4:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "src": "26775:44:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 10169, - "nodeType": "ExpressionStatement", - "src": "26775:44:24" - }, - { - "eventCall": { - "arguments": [ - { - "id": 10171, - "name": "txQuoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 9981, - "src": "26849:11:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "id": 10170, - "name": "PegOutRefunded", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8124, - "src": "26834:14:24", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$returns$__$", - "typeString": "function (bytes32)" - } - }, - "id": 10172, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "26834:27:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 10173, - "nodeType": "EmitStatement", - "src": "26829:32:24" - } - ] - }, - "functionSelector": "d6c70de8", - "id": 10175, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "id": 9886, - "kind": "modifierInvocation", - "modifierName": { - "id": 9885, - "name": "nonReentrant", - "nameLocations": [ - "24242:12:24" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 346, - "src": "24242:12:24" - }, - "nodeType": "ModifierInvocation", - "src": "24242:12:24" - }, - { - "id": 9888, - "kind": "modifierInvocation", - "modifierName": { - "id": 9887, - "name": "onlyRegisteredForPegout", - "nameLocations": [ - "24255:23:24" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 8243, - "src": "24255:23:24" - }, - "nodeType": "ModifierInvocation", - "src": "24255:23:24" - } - ], - "name": "refundPegOut", - "nameLocation": "24043:12:24", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 9884, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 9874, - "mutability": "mutable", - "name": "quoteHash", - "nameLocation": "24073:9:24", - "nodeType": "VariableDeclaration", - "scope": 10175, - "src": "24065:17:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 9873, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "24065:7:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 9876, - "mutability": "mutable", - "name": "btcTx", - "nameLocation": "24105:5:24", - "nodeType": "VariableDeclaration", - "scope": 10175, - "src": "24092:18:24", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 9875, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "24092:5:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 9878, - "mutability": "mutable", - "name": "btcBlockHeaderHash", - "nameLocation": "24128:18:24", - "nodeType": "VariableDeclaration", - "scope": 10175, - "src": "24120:26:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 9877, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "24120:7:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 9880, - "mutability": "mutable", - "name": "partialMerkleTree", - "nameLocation": "24164:17:24", - "nodeType": "VariableDeclaration", - "scope": 10175, - "src": "24156:25:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 9879, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "24156:7:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 9883, - "mutability": "mutable", - "name": "merkleBranchHashes", - "nameLocation": "24208:18:24", - "nodeType": "VariableDeclaration", - "scope": 10175, - "src": "24191:35:24", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", - "typeString": "bytes32[]" - }, - "typeName": { - "baseType": { - "id": 9881, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "24191:7:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "id": 9882, - "nodeType": "ArrayTypeName", - "src": "24191:9:24", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr", - "typeString": "bytes32[]" - } - }, - "visibility": "internal" - } - ], - "src": "24055:177:24" - }, - "returnParameters": { - "id": 9889, - "nodeType": "ParameterList", - "parameters": [], - "src": "24279:0:24" - }, - "scope": 10830, - "src": "24034:2834:24", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 10226, - "nodeType": "Block", - "src": "27025:548:24", - "statements": [ - { - "assignments": [ - 10186 - ], - "declarations": [ - { - "constant": false, - "id": 10186, - "mutability": "mutable", - "name": "derivationValue", - "nameLocation": "27043:15:24", - "nodeType": "VariableDeclaration", - "scope": 10226, - "src": "27035:23:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 10185, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "27035:7:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "id": 10205, - "initialValue": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "id": 10192, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10178, - "src": "27124:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - ], - "id": 10191, - "name": "hashQuote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10241, - "src": "27114:9:24", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_PeginQuote_$11233_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (struct QuotesV2.PeginQuote memory) view returns (bytes32)" - } - }, - "id": 10193, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "27114:16:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "expression": { - "id": 10194, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10178, - "src": "27148:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 10195, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "27154:16:24", - "memberName": "btcRefundAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 11200, - "src": "27148:22:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "arguments": [ - { - "expression": { - "id": 10198, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10178, - "src": "27196:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 10199, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "27202:10:24", - "memberName": "lbcAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 11196, - "src": "27196:16:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 10197, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "27188:7:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes20_$", - "typeString": "type(bytes20)" - }, - "typeName": { - "id": 10196, - "name": "bytes20", - "nodeType": "ElementaryTypeName", - "src": "27188:7:24", - "typeDescriptions": {} - } - }, - "id": 10200, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "27188:25:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes20", - "typeString": "bytes20" - } - }, - { - "expression": { - "id": 10201, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10178, - "src": "27231:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 10202, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "27237:27:24", - "memberName": "liquidityProviderBtcAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 11204, - "src": "27231:33:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_bytes20", - "typeString": "bytes20" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "id": 10189, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "27084:5:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": { - "id": 10188, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "27084:5:24", - "typeDescriptions": {} - } - }, - "id": 10190, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "27090:6:24", - "memberName": "concat", - "nodeType": "MemberAccess", - "src": "27084:12:24", - "typeDescriptions": { - "typeIdentifier": "t_function_bytesconcat_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 10203, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "27084:194:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 10187, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967288, - "src": "27061:9:24", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 10204, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "27061:227:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "27035:253:24" - }, - { - "assignments": [ - 10207 - ], - "declarations": [ - { - "constant": false, - "id": 10207, - "mutability": "mutable", - "name": "flyoverRedeemScript", - "nameLocation": "27311:19:24", - "nodeType": "VariableDeclaration", - "scope": 10226, - "src": "27298:32:24", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 10206, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "27298:5:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 10218, - "initialValue": { - "arguments": [ - { - "hexValue": "20", - "id": 10211, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "hexString", - "lValueRequested": false, - "nodeType": "Literal", - "src": "27359:7:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_681afa780d17da29203322b473d3f210a7d621259a4e6ce9e403f5a266ff719a", - "typeString": "literal_string \" \"" - }, - "value": " " - }, - { - "id": 10212, - "name": "derivationValue", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10186, - "src": "27380:15:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "hexValue": "75", - "id": 10213, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "hexString", - "lValueRequested": false, - "nodeType": "Literal", - "src": "27409:7:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_32cefdcd8e794145c9af8dd1f4b1fbd92d6e547ae855553080fc8bd19c4883a0", - "typeString": "literal_string \"u\"" - }, - "value": "u" - }, - { - "arguments": [], - "expression": { - "argumentTypes": [], - "expression": { - "id": 10214, - "name": "bridge", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8159, - "src": "27430:6:24", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Bridge_$4173", - "typeString": "contract Bridge" - } - }, - "id": 10215, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "27437:27:24", - "memberName": "getActivePowpegRedeemScript", - "nodeType": "MemberAccess", - "referencedDeclaration": 4146, - "src": "27430:34:24", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () view external returns (bytes memory)" - } - }, - "id": 10216, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "27430:36:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_681afa780d17da29203322b473d3f210a7d621259a4e6ce9e403f5a266ff719a", - "typeString": "literal_string \" \"" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_stringliteral_32cefdcd8e794145c9af8dd1f4b1fbd92d6e547ae855553080fc8bd19c4883a0", - "typeString": "literal_string \"u\"" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "id": 10209, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "27333:5:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": { - "id": 10208, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "27333:5:24", - "typeDescriptions": {} - } - }, - "id": 10210, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "27339:6:24", - "memberName": "concat", - "nodeType": "MemberAccess", - "src": "27333:12:24", - "typeDescriptions": { - "typeIdentifier": "t_function_bytesconcat_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 10217, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "27333:143:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "27298:178:24" - }, - { - "expression": { - "arguments": [ - { - "id": 10221, - "name": "depositAddress", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10180, - "src": "27521:14:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "id": 10222, - "name": "flyoverRedeemScript", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10207, - "src": "27537:19:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "id": 10223, - "name": "mainnet", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8201, - "src": "27558:7:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "expression": { - "id": 10219, - "name": "BtcUtils", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3743, - "src": "27493:8:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_BtcUtils_$3743_$", - "typeString": "type(library BtcUtils)" - } - }, - "id": 10220, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "27502:18:24", - "memberName": "validateP2SHAdress", - "nodeType": "MemberAccess", - "referencedDeclaration": 3370, - "src": "27493:27:24", - "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_pure$_t_bytes_memory_ptr_$_t_bytes_memory_ptr_$_t_bool_$returns$_t_bool_$", - "typeString": "function (bytes memory,bytes memory,bool) pure returns (bool)" - } - }, - "id": 10224, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "27493:73:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 10184, - "id": 10225, - "nodeType": "Return", - "src": "27486:80:24" - } - ] - }, - "functionSelector": "79b9550b", - "id": 10227, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "validatePeginDepositAddress", - "nameLocation": "26883:27:24", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 10181, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 10178, - "mutability": "mutable", - "name": "quote", - "nameLocation": "26947:5:24", - "nodeType": "VariableDeclaration", - "scope": 10227, - "src": "26920:32:24", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote" - }, - "typeName": { - "id": 10177, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 10176, - "name": "QuotesV2.PeginQuote", - "nameLocations": [ - "26920:8:24", - "26929:10:24" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 11233, - "src": "26920:19:24" - }, - "referencedDeclaration": 11233, - "src": "26920:19:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_storage_ptr", - "typeString": "struct QuotesV2.PeginQuote" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 10180, - "mutability": "mutable", - "name": "depositAddress", - "nameLocation": "26975:14:24", - "nodeType": "VariableDeclaration", - "scope": 10227, - "src": "26962:27:24", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 10179, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "26962:5:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "26910:85:24" - }, - "returnParameters": { - "id": 10184, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 10183, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 10227, - "src": "27019:4:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 10182, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "27019:4:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "27018:6:24" - }, - "scope": 10830, - "src": "26874:699:24", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 10240, - "nodeType": "Block", - "src": "27867:51:24", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 10237, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10231, - "src": "27905:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - ], - "id": 10236, - "name": "validateAndHashQuote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10354, - "src": "27884:20:24", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_PeginQuote_$11233_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (struct QuotesV2.PeginQuote memory) view returns (bytes32)" - } - }, - "id": 10238, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "27884:27:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "functionReturnParameters": 10235, - "id": 10239, - "nodeType": "Return", - "src": "27877:34:24" - } - ] - }, - "documentation": { - "id": 10228, - "nodeType": "StructuredDocumentation", - "src": "27579:200:24", - "text": "@dev Calculates hash of a quote. Note: besides calculation this function also validates the quote.\n@param quote The quote of the service\n@return The hash of a quote" - }, - "functionSelector": "b3a849aa", - "id": 10241, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "hashQuote", - "nameLocation": "27793:9:24", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 10232, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 10231, - "mutability": "mutable", - "name": "quote", - "nameLocation": "27830:5:24", - "nodeType": "VariableDeclaration", - "scope": 10241, - "src": "27803:32:24", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote" - }, - "typeName": { - "id": 10230, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 10229, - "name": "QuotesV2.PeginQuote", - "nameLocations": [ - "27803:8:24", - "27812:10:24" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 11233, - "src": "27803:19:24" - }, - "referencedDeclaration": 11233, - "src": "27803:19:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_storage_ptr", - "typeString": "struct QuotesV2.PeginQuote" - } - }, - "visibility": "internal" - } - ], - "src": "27802:34:24" - }, - "returnParameters": { - "id": 10235, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 10234, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 10241, - "src": "27858:7:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 10233, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "27858:7:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "27857:9:24" - }, - "scope": 10830, - "src": "27784:134:24", - "stateMutability": "view", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 10253, - "nodeType": "Block", - "src": "28028:57:24", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 10250, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10244, - "src": "28072:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_memory_ptr", - "typeString": "struct QuotesV2.PegOutQuote memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_memory_ptr", - "typeString": "struct QuotesV2.PegOutQuote memory" - } - ], - "id": 10249, - "name": "validateAndHashPegOutQuote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10381, - "src": "28045:26:24", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_PegOutQuote_$11272_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (struct QuotesV2.PegOutQuote memory) view returns (bytes32)" - } - }, - "id": 10251, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "28045:33:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "functionReturnParameters": 10248, - "id": 10252, - "nodeType": "Return", - "src": "28038:40:24" - } - ] - }, - "functionSelector": "22140009", - "id": 10254, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "hashPegoutQuote", - "nameLocation": "27933:15:24", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 10245, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 10244, - "mutability": "mutable", - "name": "quote", - "nameLocation": "27986:5:24", - "nodeType": "VariableDeclaration", - "scope": 10254, - "src": "27958:33:24", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_memory_ptr", - "typeString": "struct QuotesV2.PegOutQuote" - }, - "typeName": { - "id": 10243, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 10242, - "name": "QuotesV2.PegOutQuote", - "nameLocations": [ - "27958:8:24", - "27967:11:24" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 11272, - "src": "27958:20:24" - }, - "referencedDeclaration": 11272, - "src": "27958:20:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_storage_ptr", - "typeString": "struct QuotesV2.PegOutQuote" - } - }, - "visibility": "internal" - } - ], - "src": "27948:49:24" - }, - "returnParameters": { - "id": 10248, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 10247, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 10254, - "src": "28019:7:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 10246, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "28019:7:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "28018:9:24" - }, - "scope": 10830, - "src": "27924:161:24", - "stateMutability": "view", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 10353, - "nodeType": "Block", - "src": "28200:774:24", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 10269, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "id": 10265, - "name": "this", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967268, - "src": "28226:4:24", - "typeDescriptions": { - "typeIdentifier": "t_contract$_LiquidityBridgeContractV2_$10830", - "typeString": "contract LiquidityBridgeContractV2" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_LiquidityBridgeContractV2_$10830", - "typeString": "contract LiquidityBridgeContractV2" - } - ], - "id": 10264, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "28218:7:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 10263, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "28218:7:24", - "typeDescriptions": {} - } - }, - "id": 10266, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "28218:13:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 10267, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10257, - "src": "28235:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 10268, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "28241:10:24", - "memberName": "lbcAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 11196, - "src": "28235:16:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "28218:33:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303531", - "id": 10270, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "28253:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_ed7029e52dbf10ed9f0aafb2c33265c713a3f4dfd10cc113f22ba3c1270e1ddb", - "typeString": "literal_string \"LBC051\"" - }, - "value": "LBC051" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_ed7029e52dbf10ed9f0aafb2c33265c713a3f4dfd10cc113f22ba3c1270e1ddb", - "typeString": "literal_string \"LBC051\"" - } - ], - "id": 10262, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "28210:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 10271, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "28210:52:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 10272, - "nodeType": "ExpressionStatement", - "src": "28210:52:24" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 10280, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "id": 10276, - "name": "bridge", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8159, - "src": "28301:6:24", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Bridge_$4173", - "typeString": "contract Bridge" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_Bridge_$4173", - "typeString": "contract Bridge" - } - ], - "id": 10275, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "28293:7:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 10274, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "28293:7:24", - "typeDescriptions": {} - } - }, - "id": 10277, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "28293:15:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "expression": { - "id": 10278, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10257, - "src": "28312:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 10279, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "28318:15:24", - "memberName": "contractAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 11210, - "src": "28312:21:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "28293:40:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303532", - "id": 10281, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "28347:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_a1a398356814e2eac3017ce127db7657cbb8e2f1d90a78bc426eaa92c56969eb", - "typeString": "literal_string \"LBC052\"" - }, - "value": "LBC052" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_a1a398356814e2eac3017ce127db7657cbb8e2f1d90a78bc426eaa92c56969eb", - "typeString": "literal_string \"LBC052\"" - } - ], - "id": 10273, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "28272:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 10282, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "28272:93:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 10283, - "nodeType": "ExpressionStatement", - "src": "28272:93:24" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 10295, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 10289, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "expression": { - "id": 10285, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10257, - "src": "28396:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 10286, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "28402:16:24", - "memberName": "btcRefundAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 11200, - "src": "28396:22:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 10287, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "28419:6:24", - "memberName": "length", - "nodeType": "MemberAccess", - "src": "28396:29:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "3231", - "id": 10288, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "28429:2:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_21_by_1", - "typeString": "int_const 21" - }, - "value": "21" - }, - "src": "28396:35:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 10294, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "expression": { - "id": 10290, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10257, - "src": "28447:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 10291, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "28453:16:24", - "memberName": "btcRefundAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 11200, - "src": "28447:22:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 10292, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "28470:6:24", - "memberName": "length", - "nodeType": "MemberAccess", - "src": "28447:29:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "3333", - "id": 10293, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "28480:2:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_33_by_1", - "typeString": "int_const 33" - }, - "value": "33" - }, - "src": "28447:35:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "28396:86:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303533", - "id": 10296, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "28496:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_923b965409721a83cf4ae76f34fa52de6eb09679d5b7141d2c0fc518a94192db", - "typeString": "literal_string \"LBC053\"" - }, - "value": "LBC053" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_923b965409721a83cf4ae76f34fa52de6eb09679d5b7141d2c0fc518a94192db", - "typeString": "literal_string \"LBC053\"" - } - ], - "id": 10284, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "28375:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 10297, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "28375:139:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 10298, - "nodeType": "ExpressionStatement", - "src": "28375:139:24" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 10304, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "expression": { - "id": 10300, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10257, - "src": "28545:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 10301, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "28551:27:24", - "memberName": "liquidityProviderBtcAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 11204, - "src": "28545:33:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 10302, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "28579:6:24", - "memberName": "length", - "nodeType": "MemberAccess", - "src": "28545:40:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "3231", - "id": 10303, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "28589:2:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_21_by_1", - "typeString": "int_const 21" - }, - "value": "21" - }, - "src": "28545:46:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303534", - "id": 10305, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "28605:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_472231c5f3abacc190b5fd56153fbfc4b6c39c18040d443b29faee14791d54d9", - "typeString": "literal_string \"LBC054\"" - }, - "value": "LBC054" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_472231c5f3abacc190b5fd56153fbfc4b6c39c18040d443b29faee14791d54d9", - "typeString": "literal_string \"LBC054\"" - } - ], - "id": 10299, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "28524:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 10306, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "28524:99:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 10307, - "nodeType": "ExpressionStatement", - "src": "28524:99:24" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 10321, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 10319, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 10316, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 10313, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 10309, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10257, - "src": "28654:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 10310, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "28660:5:24", - "memberName": "value", - "nodeType": "MemberAccess", - "referencedDeclaration": 11218, - "src": "28654:11:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "expression": { - "id": 10311, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10257, - "src": "28668:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 10312, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "28674:7:24", - "memberName": "callFee", - "nodeType": "MemberAccess", - "referencedDeclaration": 11206, - "src": "28668:13:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "28654:27:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "expression": { - "id": 10314, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10257, - "src": "28684:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 10315, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "28690:16:24", - "memberName": "productFeeAmount", - "nodeType": "MemberAccess", - "referencedDeclaration": 11230, - "src": "28684:22:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "28654:52:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "expression": { - "id": 10317, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10257, - "src": "28709:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 10318, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "28715:6:24", - "memberName": "gasFee", - "nodeType": "MemberAccess", - "referencedDeclaration": 11232, - "src": "28709:12:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "28654:67:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "id": 10320, - "name": "minPegIn", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8189, - "src": "28725:8:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "28654:79:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303535", - "id": 10322, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "28747:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_1bdc71792e300c3b19739ad62e7651b4b49de502b7d1b6227970563bffaad71e", - "typeString": "literal_string \"LBC055\"" - }, - "value": "LBC055" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_1bdc71792e300c3b19739ad62e7651b4b49de502b7d1b6227970563bffaad71e", - "typeString": "literal_string \"LBC055\"" - } - ], - "id": 10308, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "28633:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 10323, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "28633:132:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 10324, - "nodeType": "ExpressionStatement", - "src": "28633:132:24" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "id": 10342, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "arguments": [ - { - "id": 10328, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "28801:6:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint32_$", - "typeString": "type(uint32)" - }, - "typeName": { - "id": 10327, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "28801:6:24", - "typeDescriptions": {} - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_type$_t_uint32_$", - "typeString": "type(uint32)" - } - ], - "id": 10326, - "name": "type", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967269, - "src": "28796:4:24", - "typeDescriptions": { - "typeIdentifier": "t_function_metatype_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 10329, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "28796:12:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_magic_meta_type_t_uint32", - "typeString": "type(uint32)" - } - }, - "id": 10330, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "28809:3:24", - "memberName": "max", - "nodeType": "MemberAccess", - "src": "28796:16:24", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - }, - "id": 10341, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "expression": { - "id": 10333, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10257, - "src": "28823:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 10334, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "28829:18:24", - "memberName": "agreementTimestamp", - "nodeType": "MemberAccess", - "referencedDeclaration": 11220, - "src": "28823:24:24", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - ], - "id": 10332, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "28816:6:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint64_$", - "typeString": "type(uint64)" - }, - "typeName": { - "id": 10331, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "28816:6:24", - "typeDescriptions": {} - } - }, - "id": 10335, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "28816:32:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "arguments": [ - { - "expression": { - "id": 10338, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10257, - "src": "28858:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 10339, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "28864:14:24", - "memberName": "timeForDeposit", - "nodeType": "MemberAccess", - "referencedDeclaration": 11222, - "src": "28858:20:24", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - ], - "id": 10337, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "28851:6:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint64_$", - "typeString": "type(uint64)" - }, - "typeName": { - "id": 10336, - "name": "uint64", - "nodeType": "ElementaryTypeName", - "src": "28851:6:24", - "typeDescriptions": {} - } - }, - "id": 10340, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "28851:28:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "28816:63:24", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "28796:83:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303731", - "id": 10343, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "28893:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_79d3c6c4bda42d819072ed97d83e6147bd9ad75bd5415529ecb6a41984271fb2", - "typeString": "literal_string \"LBC071\"" - }, - "value": "LBC071" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_79d3c6c4bda42d819072ed97d83e6147bd9ad75bd5415529ecb6a41984271fb2", - "typeString": "literal_string \"LBC071\"" - } - ], - "id": 10325, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "28775:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 10344, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "28775:136:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 10345, - "nodeType": "ExpressionStatement", - "src": "28775:136:24" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "id": 10349, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10257, - "src": "28960:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - ], - "expression": { - "id": 10347, - "name": "QuotesV2", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11483, - "src": "28939:8:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_QuotesV2_$11483_$", - "typeString": "type(library QuotesV2)" - } - }, - "id": 10348, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "28948:11:24", - "memberName": "encodeQuote", - "nodeType": "MemberAccess", - "referencedDeclaration": 11291, - "src": "28939:20:24", - "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_pure$_t_struct$_PeginQuote_$11233_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (struct QuotesV2.PeginQuote memory) pure returns (bytes memory)" - } - }, - "id": 10350, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "28939:27:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 10346, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967288, - "src": "28929:9:24", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 10351, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "28929:38:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "functionReturnParameters": 10261, - "id": 10352, - "nodeType": "Return", - "src": "28922:45:24" - } - ] - }, - "id": 10354, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "validateAndHashQuote", - "nameLocation": "28100:20:24", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 10258, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 10257, - "mutability": "mutable", - "name": "quote", - "nameLocation": "28157:5:24", - "nodeType": "VariableDeclaration", - "scope": 10354, - "src": "28130:32:24", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote" - }, - "typeName": { - "id": 10256, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 10255, - "name": "QuotesV2.PeginQuote", - "nameLocations": [ - "28130:8:24", - "28139:10:24" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 11233, - "src": "28130:19:24" - }, - "referencedDeclaration": 11233, - "src": "28130:19:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_storage_ptr", - "typeString": "struct QuotesV2.PeginQuote" - } - }, - "visibility": "internal" - } - ], - "src": "28120:48:24" - }, - "returnParameters": { - "id": 10261, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 10260, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 10354, - "src": "28191:7:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 10259, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "28191:7:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "28190:9:24" - }, - "scope": 10830, - "src": "28091:883:24", - "stateMutability": "view", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 10380, - "nodeType": "Block", - "src": "29096:131:24", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 10369, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "id": 10365, - "name": "this", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967268, - "src": "29122:4:24", - "typeDescriptions": { - "typeIdentifier": "t_contract$_LiquidityBridgeContractV2_$10830", - "typeString": "contract LiquidityBridgeContractV2" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_LiquidityBridgeContractV2_$10830", - "typeString": "contract LiquidityBridgeContractV2" - } - ], - "id": 10364, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "29114:7:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 10363, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "29114:7:24", - "typeDescriptions": {} - } - }, - "id": 10366, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "29114:13:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 10367, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10357, - "src": "29131:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_memory_ptr", - "typeString": "struct QuotesV2.PegOutQuote memory" - } - }, - "id": 10368, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "29137:10:24", - "memberName": "lbcAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 11235, - "src": "29131:16:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "29114:33:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303536", - "id": 10370, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "29149:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_5004352c178489e456f74ee0937a3403e68ee3fa72f6afa5bff20fe549075132", - "typeString": "literal_string \"LBC056\"" - }, - "value": "LBC056" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_5004352c178489e456f74ee0937a3403e68ee3fa72f6afa5bff20fe549075132", - "typeString": "literal_string \"LBC056\"" - } - ], - "id": 10362, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "29106:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 10371, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "29106:52:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 10372, - "nodeType": "ExpressionStatement", - "src": "29106:52:24" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "id": 10376, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10357, - "src": "29213:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_memory_ptr", - "typeString": "struct QuotesV2.PegOutQuote memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_memory_ptr", - "typeString": "struct QuotesV2.PegOutQuote memory" - } - ], - "expression": { - "id": 10374, - "name": "QuotesV2", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11483, - "src": "29186:8:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_QuotesV2_$11483_$", - "typeString": "type(library QuotesV2)" - } - }, - "id": 10375, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "29195:17:24", - "memberName": "encodePegOutQuote", - "nodeType": "MemberAccess", - "referencedDeclaration": 11310, - "src": "29186:26:24", - "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_pure$_t_struct$_PegOutQuote_$11272_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (struct QuotesV2.PegOutQuote memory) pure returns (bytes memory)" - } - }, - "id": 10377, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "29186:33:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 10373, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967288, - "src": "29176:9:24", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 10378, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "29176:44:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "functionReturnParameters": 10361, - "id": 10379, - "nodeType": "Return", - "src": "29169:51:24" - } - ] - }, - "id": 10381, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "validateAndHashPegOutQuote", - "nameLocation": "28989:26:24", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 10358, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 10357, - "mutability": "mutable", - "name": "quote", - "nameLocation": "29053:5:24", - "nodeType": "VariableDeclaration", - "scope": 10381, - "src": "29025:33:24", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_memory_ptr", - "typeString": "struct QuotesV2.PegOutQuote" - }, - "typeName": { - "id": 10356, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 10355, - "name": "QuotesV2.PegOutQuote", - "nameLocations": [ - "29025:8:24", - "29034:11:24" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 11272, - "src": "29025:20:24" - }, - "referencedDeclaration": 11272, - "src": "29025:20:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_storage_ptr", - "typeString": "struct QuotesV2.PegOutQuote" - } - }, - "visibility": "internal" - } - ], - "src": "29015:49:24" - }, - "returnParameters": { - "id": 10361, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 10360, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 10381, - "src": "29087:7:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 10359, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "29087:7:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "29086:9:24" - }, - "scope": 10830, - "src": "28980:247:24", - "stateMutability": "view", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 10397, - "nodeType": "Block", - "src": "29290:37:24", - "statements": [ - { - "expression": { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 10392, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 10390, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10383, - "src": "29307:1:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "id": 10391, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10385, - "src": "29311:1:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "29307:5:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseExpression": { - "id": 10394, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10385, - "src": "29319:1:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 10395, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "Conditional", - "src": "29307:13:24", - "trueExpression": { - "id": 10393, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10383, - "src": "29315:1:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 10389, - "id": 10396, - "nodeType": "Return", - "src": "29300:20:24" - } - ] - }, - "id": 10398, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "min", - "nameLocation": "29242:3:24", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 10386, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 10383, - "mutability": "mutable", - "name": "a", - "nameLocation": "29251:1:24", - "nodeType": "VariableDeclaration", - "scope": 10398, - "src": "29246:6:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 10382, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "29246:4:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 10385, - "mutability": "mutable", - "name": "b", - "nameLocation": "29259:1:24", - "nodeType": "VariableDeclaration", - "scope": 10398, - "src": "29254:6:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 10384, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "29254:4:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "29245:16:24" - }, - "returnParameters": { - "id": 10389, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 10388, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 10398, - "src": "29284:4:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 10387, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "29284:4:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "29283:6:24" - }, - "scope": 10830, - "src": "29233:94:24", - "stateMutability": "pure", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 10416, - "nodeType": "Block", - "src": "29460:85:24", - "statements": [ - { - "expression": { - "id": 10409, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 10405, - "name": "balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8163, - "src": "29470:8:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 10407, - "indexExpression": { - "id": 10406, - "name": "dest", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10400, - "src": "29479:4:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "29470:14:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "+=", - "rightHandSide": { - "id": 10408, - "name": "amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10402, - "src": "29488:6:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "29470:24:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 10410, - "nodeType": "ExpressionStatement", - "src": "29470:24:24" - }, - { - "eventCall": { - "arguments": [ - { - "id": 10412, - "name": "dest", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10400, - "src": "29525:4:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 10413, - "name": "amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10402, - "src": "29531:6:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 10411, - "name": "BalanceIncrease", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8104, - "src": "29509:15:24", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,uint256)" - } - }, - "id": 10414, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "29509:29:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 10415, - "nodeType": "EmitStatement", - "src": "29504:34:24" - } - ] - }, - "id": 10417, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "increaseBalance", - "nameLocation": "29409:15:24", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 10403, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 10400, - "mutability": "mutable", - "name": "dest", - "nameLocation": "29433:4:24", - "nodeType": "VariableDeclaration", - "scope": 10417, - "src": "29425:12:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 10399, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "29425:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 10402, - "mutability": "mutable", - "name": "amount", - "nameLocation": "29444:6:24", - "nodeType": "VariableDeclaration", - "scope": 10417, - "src": "29439:11:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 10401, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "29439:4:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "29424:27:24" - }, - "returnParameters": { - "id": 10404, - "nodeType": "ParameterList", - "parameters": [], - "src": "29460:0:24" - }, - "scope": 10830, - "src": "29400:145:24", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 10435, - "nodeType": "Block", - "src": "29611:85:24", - "statements": [ - { - "expression": { - "id": 10428, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 10424, - "name": "balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8163, - "src": "29621:8:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 10426, - "indexExpression": { - "id": 10425, - "name": "dest", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10419, - "src": "29630:4:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "29621:14:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "-=", - "rightHandSide": { - "id": 10427, - "name": "amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10421, - "src": "29639:6:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "29621:24:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 10429, - "nodeType": "ExpressionStatement", - "src": "29621:24:24" - }, - { - "eventCall": { - "arguments": [ - { - "id": 10431, - "name": "dest", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10419, - "src": "29676:4:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 10432, - "name": "amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10421, - "src": "29682:6:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 10430, - "name": "BalanceDecrease", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8110, - "src": "29660:15:24", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,uint256)" - } - }, - "id": 10433, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "29660:29:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 10434, - "nodeType": "EmitStatement", - "src": "29655:34:24" - } - ] - }, - "id": 10436, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "decreaseBalance", - "nameLocation": "29560:15:24", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 10422, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 10419, - "mutability": "mutable", - "name": "dest", - "nameLocation": "29584:4:24", - "nodeType": "VariableDeclaration", - "scope": 10436, - "src": "29576:12:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 10418, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "29576:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 10421, - "mutability": "mutable", - "name": "amount", - "nameLocation": "29595:6:24", - "nodeType": "VariableDeclaration", - "scope": 10436, - "src": "29590:11:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 10420, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "29590:4:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "29575:27:24" - }, - "returnParameters": { - "id": 10423, - "nodeType": "ParameterList", - "parameters": [], - "src": "29611:0:24" - }, - "scope": 10830, - "src": "29551:145:24", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 10456, - "nodeType": "Block", - "src": "29978:78:24", - "statements": [ - { - "expression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 10454, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 10448, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "id": 10444, - "name": "collateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8167, - "src": "29995:10:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 10446, - "indexExpression": { - "id": 10445, - "name": "addr", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10439, - "src": "30006:4:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "29995:16:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 10447, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "30014:1:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "29995:20:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 10453, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "id": 10449, - "name": "resignationBlockNum", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8185, - "src": "30019:19:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 10451, - "indexExpression": { - "id": 10450, - "name": "addr", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10439, - "src": "30039:4:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "30019:25:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 10452, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "30048:1:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "30019:30:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "29995:54:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 10443, - "id": 10455, - "nodeType": "Return", - "src": "29988:61:24" - } - ] - }, - "documentation": { - "id": 10437, - "nodeType": "StructuredDocumentation", - "src": "29702:207:24", - "text": "@dev Checks if a liquidity provider is registered\n@param addr The address of the liquidity provider\n@return Boolean indicating whether the liquidity provider is registered" - }, - "id": 10457, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "isRegistered", - "nameLocation": "29923:12:24", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 10440, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 10439, - "mutability": "mutable", - "name": "addr", - "nameLocation": "29944:4:24", - "nodeType": "VariableDeclaration", - "scope": 10457, - "src": "29936:12:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 10438, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "29936:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "29935:14:24" - }, - "returnParameters": { - "id": 10443, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 10442, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 10457, - "src": "29972:4:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 10441, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "29972:4:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "29971:6:24" - }, - "scope": 10830, - "src": "29914:142:24", - "stateMutability": "view", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 10476, - "nodeType": "Block", - "src": "30135:84:24", - "statements": [ - { - "expression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 10474, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 10468, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "id": 10464, - "name": "pegoutCollateral", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8171, - "src": "30152:16:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 10466, - "indexExpression": { - "id": 10465, - "name": "addr", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10459, - "src": "30169:4:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "30152:22:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 10467, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "30177:1:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "30152:26:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 10473, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "id": 10469, - "name": "resignationBlockNum", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8185, - "src": "30182:19:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 10471, - "indexExpression": { - "id": 10470, - "name": "addr", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10459, - "src": "30202:4:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "30182:25:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 10472, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "30211:1:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "30182:30:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "30152:60:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 10463, - "id": 10475, - "nodeType": "Return", - "src": "30145:67:24" - } - ] - }, - "id": 10477, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "isRegisteredForPegout", - "nameLocation": "30071:21:24", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 10460, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 10459, - "mutability": "mutable", - "name": "addr", - "nameLocation": "30101:4:24", - "nodeType": "VariableDeclaration", - "scope": 10477, - "src": "30093:12:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 10458, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "30093:7:24", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "30092:14:24" - }, - "returnParameters": { - "id": 10463, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 10462, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 10477, - "src": "30129:4:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 10461, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "30129:4:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "30128:6:24" - }, - "scope": 10830, - "src": "30062:157:24", - "stateMutability": "view", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 10521, - "nodeType": "Block", - "src": "30879:401:24", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 10496, - "name": "btcRawTransaction", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10483, - "src": "30961:17:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "id": 10497, - "name": "height", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10487, - "src": "30992:6:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 10498, - "name": "partialMerkleTree", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10485, - "src": "31012:17:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "id": 10499, - "name": "derivationHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10489, - "src": "31043:14:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "expression": { - "id": 10500, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10481, - "src": "31071:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 10501, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "31077:16:24", - "memberName": "btcRefundAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 11200, - "src": "31071:22:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "arguments": [ - { - "id": 10504, - "name": "this", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967268, - "src": "31115:4:24", - "typeDescriptions": { - "typeIdentifier": "t_contract$_LiquidityBridgeContractV2_$10830", - "typeString": "contract LiquidityBridgeContractV2" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_LiquidityBridgeContractV2_$10830", - "typeString": "contract LiquidityBridgeContractV2" - } - ], - "id": 10503, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "31107:8:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_payable_$", - "typeString": "type(address payable)" - }, - "typeName": { - "id": 10502, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "31107:8:24", - "stateMutability": "payable", - "typeDescriptions": {} - } - }, - "id": 10505, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "31107:13:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - { - "expression": { - "id": 10506, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10481, - "src": "31134:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 10507, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "31140:27:24", - "memberName": "liquidityProviderBtcAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 11204, - "src": "31134:33:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 10518, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "id": 10513, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "baseExpression": { - "id": 10508, - "name": "callRegistry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8181, - "src": "31181:12:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$8008_storage_$", - "typeString": "mapping(bytes32 => struct LiquidityBridgeContractV2.Registry storage ref)" - } - }, - "id": 10510, - "indexExpression": { - "id": 10509, - "name": "derivationHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10489, - "src": "31194:14:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "31181:28:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Registry_$8008_storage", - "typeString": "struct LiquidityBridgeContractV2.Registry storage ref" - } - }, - "id": 10511, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "31210:9:24", - "memberName": "timestamp", - "nodeType": "MemberAccess", - "referencedDeclaration": 8005, - "src": "31181:38:24", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 10512, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "31222:1:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "31181:42:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "expression": { - "baseExpression": { - "id": 10514, - "name": "callRegistry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8181, - "src": "31227:12:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Registry_$8008_storage_$", - "typeString": "mapping(bytes32 => struct LiquidityBridgeContractV2.Registry storage ref)" - } - }, - "id": 10516, - "indexExpression": { - "id": 10515, - "name": "derivationHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10489, - "src": "31240:14:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "31227:28:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Registry_$8008_storage", - "typeString": "struct LiquidityBridgeContractV2.Registry storage ref" - } - }, - "id": 10517, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "31256:7:24", - "memberName": "success", - "nodeType": "MemberAccess", - "referencedDeclaration": 8007, - "src": "31227:36:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "31181:82:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "expression": { - "id": 10494, - "name": "bridge", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8159, - "src": "30908:6:24", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Bridge_$4173", - "typeString": "contract Bridge" - } - }, - "id": 10495, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "30915:32:24", - "memberName": "registerFastBridgeBtcTransaction", - "nodeType": "MemberAccess", - "referencedDeclaration": 4136, - "src": "30908:39:24", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$_t_bytes_memory_ptr_$_t_uint256_$_t_bytes_memory_ptr_$_t_bytes32_$_t_bytes_memory_ptr_$_t_address_payable_$_t_bytes_memory_ptr_$_t_bool_$returns$_t_int256_$", - "typeString": "function (bytes memory,uint256,bytes memory,bytes32,bytes memory,address payable,bytes memory,bool) external returns (int256)" - } - }, - "id": 10519, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "30908:365:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "functionReturnParameters": 10493, - "id": 10520, - "nodeType": "Return", - "src": "30889:384:24" - } - ] - }, - "documentation": { - "id": 10478, - "nodeType": "StructuredDocumentation", - "src": "30225:416:24", - "text": "@dev Registers a transaction with the bridge contract\n@param quote The quote of the service\n@param btcRawTransaction The peg-in transaction\n@param partialMerkleTree The merkle tree path that proves transaction inclusion\n@param height The block that contains the transaction\n@return The total peg-in amount received from the bridge contract or an error code" - }, - "id": 10522, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "registerBridge", - "nameLocation": "30655:14:24", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 10490, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 10481, - "mutability": "mutable", - "name": "quote", - "nameLocation": "30706:5:24", - "nodeType": "VariableDeclaration", - "scope": 10522, - "src": "30679:32:24", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote" - }, - "typeName": { - "id": 10480, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 10479, - "name": "QuotesV2.PeginQuote", - "nameLocations": [ - "30679:8:24", - "30688:10:24" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 11233, - "src": "30679:19:24" - }, - "referencedDeclaration": 11233, - "src": "30679:19:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_storage_ptr", - "typeString": "struct QuotesV2.PeginQuote" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 10483, - "mutability": "mutable", - "name": "btcRawTransaction", - "nameLocation": "30734:17:24", - "nodeType": "VariableDeclaration", - "scope": 10522, - "src": "30721:30:24", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 10482, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "30721:5:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 10485, - "mutability": "mutable", - "name": "partialMerkleTree", - "nameLocation": "30774:17:24", - "nodeType": "VariableDeclaration", - "scope": 10522, - "src": "30761:30:24", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 10484, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "30761:5:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 10487, - "mutability": "mutable", - "name": "height", - "nameLocation": "30809:6:24", - "nodeType": "VariableDeclaration", - "scope": 10522, - "src": "30801:14:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 10486, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "30801:7:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 10489, - "mutability": "mutable", - "name": "derivationHash", - "nameLocation": "30833:14:24", - "nodeType": "VariableDeclaration", - "scope": 10522, - "src": "30825:22:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 10488, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "30825:7:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "30669:184:24" - }, - "returnParameters": { - "id": 10493, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 10492, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 10522, - "src": "30871:6:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 10491, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "30871:6:24", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "30870:8:24" - }, - "scope": 10830, - "src": "30646:634:24", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 10644, - "nodeType": "Block", - "src": "31882:1464:24", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 10556, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "id": 10539, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 10537, - "name": "amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10528, - "src": "31957:6:24", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 10538, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "31966:1:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "31957:10:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 10555, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "id": 10542, - "name": "amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10528, - "src": "31979:6:24", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - ], - "id": 10541, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "31971:7:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint256_$", - "typeString": "type(uint256)" - }, - "typeName": { - "id": 10540, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "31971:7:24", - "typeDescriptions": {} - } - }, - "id": 10543, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "31971:15:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 10554, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 10551, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 10548, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 10544, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10526, - "src": "31989:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 10545, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "31995:5:24", - "memberName": "value", - "nodeType": "MemberAccess", - "referencedDeclaration": 11218, - "src": "31989:11:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "expression": { - "id": 10546, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10526, - "src": "32003:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 10547, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "32009:7:24", - "memberName": "callFee", - "nodeType": "MemberAccess", - "referencedDeclaration": 11206, - "src": "32003:13:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "31989:27:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "expression": { - "id": 10549, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10526, - "src": "32019:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 10550, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "32025:16:24", - "memberName": "productFeeAmount", - "nodeType": "MemberAccess", - "referencedDeclaration": 11230, - "src": "32019:22:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "31989:52:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "expression": { - "id": 10552, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10526, - "src": "32044:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 10553, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "32050:6:24", - "memberName": "gasFee", - "nodeType": "MemberAccess", - "referencedDeclaration": 11232, - "src": "32044:12:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "31989:67:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "31971:85:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "31957:99:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 10560, - "nodeType": "IfStatement", - "src": "31953:142:24", - "trueBody": { - "id": 10559, - "nodeType": "Block", - "src": "32058:37:24", - "statements": [ - { - "expression": { - "hexValue": "66616c7365", - "id": 10557, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "32079:5:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "false" - }, - "functionReturnParameters": 10536, - "id": 10558, - "nodeType": "Return", - "src": "32072:12:24" - } - ] - } - }, - { - "assignments": [ - 10562 - ], - "declarations": [ - { - "constant": false, - "id": 10562, - "mutability": "mutable", - "name": "firstConfirmationHeader", - "nameLocation": "32118:23:24", - "nodeType": "VariableDeclaration", - "scope": 10644, - "src": "32105:36:24", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 10561, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "32105:5:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 10567, - "initialValue": { - "arguments": [ - { - "id": 10565, - "name": "height", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10532, - "src": "32200:6:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 10563, - "name": "bridge", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8159, - "src": "32144:6:24", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Bridge_$4173", - "typeString": "contract Bridge" - } - }, - "id": 10564, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "32164:35:24", - "memberName": "getBtcBlockchainBlockHeaderByHeight", - "nodeType": "MemberAccess", - "referencedDeclaration": 4165, - "src": "32144:55:24", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_uint256_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (uint256) view external returns (bytes memory)" - } - }, - "id": 10566, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "32144:63:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "32105:102:24" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 10572, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 10569, - "name": "firstConfirmationHeader", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10562, - "src": "32225:23:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 10570, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "32249:6:24", - "memberName": "length", - "nodeType": "MemberAccess", - "src": "32225:30:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 10571, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "32258:1:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "32225:34:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "496e76616c696420626c6f636b20686569676874", - "id": 10573, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "32261:22:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_b13cbe420d932534b4c4c376e19a45f25e0ca05c6f1a458489ccb0574b26a6d9", - "typeString": "literal_string \"Invalid block height\"" - }, - "value": "Invalid block height" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_b13cbe420d932534b4c4c376e19a45f25e0ca05c6f1a458489ccb0574b26a6d9", - "typeString": "literal_string \"Invalid block height\"" - } - ], - "id": 10568, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "32217:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 10574, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "32217:67:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 10575, - "nodeType": "ExpressionStatement", - "src": "32217:67:24" - }, - { - "assignments": [ - 10577 - ], - "declarations": [ - { - "constant": false, - "id": 10577, - "mutability": "mutable", - "name": "firstConfirmationTimestamp", - "nameLocation": "32303:26:24", - "nodeType": "VariableDeclaration", - "scope": 10644, - "src": "32295:34:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 10576, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "32295:7:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 10582, - "initialValue": { - "arguments": [ - { - "id": 10580, - "name": "firstConfirmationHeader", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10562, - "src": "32375:23:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "id": 10578, - "name": "BtcUtils", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3743, - "src": "32332:8:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_BtcUtils_$3743_$", - "typeString": "type(library BtcUtils)" - } - }, - "id": 10579, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "32341:20:24", - "memberName": "getBtcBlockTimestamp", - "nodeType": "MemberAccess", - "referencedDeclaration": 3266, - "src": "32332:29:24", - "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_pure$_t_bytes_memory_ptr_$returns$_t_uint256_$", - "typeString": "function (bytes memory) pure returns (uint256)" - } - }, - "id": 10581, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "32332:76:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "32295:113:24" - }, - { - "assignments": [ - 10584 - ], - "declarations": [ - { - "constant": false, - "id": 10584, - "mutability": "mutable", - "name": "timeLimit", - "nameLocation": "32553:9:24", - "nodeType": "VariableDeclaration", - "scope": 10644, - "src": "32548:14:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 10583, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "32548:4:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 10590, - "initialValue": { - "commonType": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "id": 10589, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 10585, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10526, - "src": "32565:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 10586, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "32571:18:24", - "memberName": "agreementTimestamp", - "nodeType": "MemberAccess", - "referencedDeclaration": 11220, - "src": "32565:24:24", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "expression": { - "id": 10587, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10526, - "src": "32592:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 10588, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "32598:14:24", - "memberName": "timeForDeposit", - "nodeType": "MemberAccess", - "referencedDeclaration": 11222, - "src": "32592:20:24", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "src": "32565:47:24", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "32548:64:24" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 10593, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 10591, - "name": "firstConfirmationTimestamp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10577, - "src": "32626:26:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "id": 10592, - "name": "timeLimit", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10584, - "src": "32655:9:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "32626:38:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 10597, - "nodeType": "IfStatement", - "src": "32622:81:24", - "trueBody": { - "id": 10596, - "nodeType": "Block", - "src": "32666:37:24", - "statements": [ - { - "expression": { - "hexValue": "66616c7365", - "id": 10594, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "32687:5:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "false" - }, - "functionReturnParameters": 10536, - "id": 10595, - "nodeType": "Return", - "src": "32680:12:24" - } - ] - } - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 10600, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 10598, - "name": "callTimestamp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10530, - "src": "32758:13:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 10599, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "32775:1:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "32758:18:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 10604, - "nodeType": "IfStatement", - "src": "32754:60:24", - "trueBody": { - "id": 10603, - "nodeType": "Block", - "src": "32778:36:24", - "statements": [ - { - "expression": { - "hexValue": "74727565", - "id": 10601, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "32799:4:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "functionReturnParameters": 10536, - "id": 10602, - "nodeType": "Return", - "src": "32792:11:24" - } - ] - } - }, - { - "assignments": [ - 10606 - ], - "declarations": [ - { - "constant": false, - "id": 10606, - "mutability": "mutable", - "name": "nConfirmationsHeader", - "nameLocation": "32837:20:24", - "nodeType": "VariableDeclaration", - "scope": 10644, - "src": "32824:33:24", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 10605, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "32824:5:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 10616, - "initialValue": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 10614, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 10612, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 10609, - "name": "height", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10532, - "src": "32929:6:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "expression": { - "id": 10610, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10526, - "src": "32938:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 10611, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "32944:20:24", - "memberName": "depositConfirmations", - "nodeType": "MemberAccess", - "referencedDeclaration": 11226, - "src": "32938:26:24", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - "src": "32929:35:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "hexValue": "31", - "id": 10613, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "32967:1:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "32929:39:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 10607, - "name": "bridge", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8159, - "src": "32860:6:24", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Bridge_$4173", - "typeString": "contract Bridge" - } - }, - "id": 10608, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "32880:35:24", - "memberName": "getBtcBlockchainBlockHeaderByHeight", - "nodeType": "MemberAccess", - "referencedDeclaration": 4165, - "src": "32860:55:24", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_uint256_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (uint256) view external returns (bytes memory)" - } - }, - "id": 10615, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "32860:118:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "32824:154:24" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 10621, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 10618, - "name": "nConfirmationsHeader", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10606, - "src": "32996:20:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 10619, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "33017:6:24", - "memberName": "length", - "nodeType": "MemberAccess", - "src": "32996:27:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 10620, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "33026:1:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "32996:31:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303538", - "id": 10622, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "33029:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_bac19bb4c4dce4ec87196bdccebfa1c4310f60332f1259cdc0bb93303ee1c2a0", - "typeString": "literal_string \"LBC058\"" - }, - "value": "LBC058" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_bac19bb4c4dce4ec87196bdccebfa1c4310f60332f1259cdc0bb93303ee1c2a0", - "typeString": "literal_string \"LBC058\"" - } - ], - "id": 10617, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "32988:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 10623, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "32988:50:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 10624, - "nodeType": "ExpressionStatement", - "src": "32988:50:24" - }, - { - "assignments": [ - 10626 - ], - "declarations": [ - { - "constant": false, - "id": 10626, - "mutability": "mutable", - "name": "nConfirmationsTimestamp", - "nameLocation": "33057:23:24", - "nodeType": "VariableDeclaration", - "scope": 10644, - "src": "33049:31:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 10625, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "33049:7:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 10631, - "initialValue": { - "arguments": [ - { - "id": 10629, - "name": "nConfirmationsHeader", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10606, - "src": "33126:20:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "id": 10627, - "name": "BtcUtils", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3743, - "src": "33083:8:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_BtcUtils_$3743_$", - "typeString": "type(library BtcUtils)" - } - }, - "id": 10628, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "33092:20:24", - "memberName": "getBtcBlockTimestamp", - "nodeType": "MemberAccess", - "referencedDeclaration": 3266, - "src": "33083:29:24", - "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_pure$_t_bytes_memory_ptr_$returns$_t_uint256_$", - "typeString": "function (bytes memory) pure returns (uint256)" - } - }, - "id": 10630, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "33083:73:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "33049:107:24" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 10637, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 10632, - "name": "callTimestamp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10530, - "src": "33224:13:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 10636, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 10633, - "name": "nConfirmationsTimestamp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10626, - "src": "33240:23:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "expression": { - "id": 10634, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10526, - "src": "33266:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 10635, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "33272:8:24", - "memberName": "callTime", - "nodeType": "MemberAccess", - "referencedDeclaration": 11224, - "src": "33266:14:24", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "src": "33240:40:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "33224:56:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 10641, - "nodeType": "IfStatement", - "src": "33220:98:24", - "trueBody": { - "id": 10640, - "nodeType": "Block", - "src": "33282:36:24", - "statements": [ - { - "expression": { - "hexValue": "74727565", - "id": 10638, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "33303:4:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "functionReturnParameters": 10536, - "id": 10639, - "nodeType": "Return", - "src": "33296:11:24" - } - ] - } - }, - { - "expression": { - "hexValue": "66616c7365", - "id": 10642, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "33334:5:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "false" - }, - "functionReturnParameters": 10536, - "id": 10643, - "nodeType": "Return", - "src": "33327:12:24" - } - ] - }, - "documentation": { - "id": 10523, - "nodeType": "StructuredDocumentation", - "src": "31286:411:24", - "text": "@dev Checks if a liquidity provider should be penalized\n@param quote The quote of the service\n@param amount The transferred amount or an error code\n@param callTimestamp The time that the liquidity provider called callForUser\n@param height The block height where the peg-in transaction is included\n@return Boolean indicating whether the penalty applies" - }, - "id": 10645, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "shouldPenalizeLP", - "nameLocation": "31711:16:24", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 10533, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 10526, - "mutability": "mutable", - "name": "quote", - "nameLocation": "31764:5:24", - "nodeType": "VariableDeclaration", - "scope": 10645, - "src": "31737:32:24", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote" - }, - "typeName": { - "id": 10525, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 10524, - "name": "QuotesV2.PeginQuote", - "nameLocations": [ - "31737:8:24", - "31746:10:24" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 11233, - "src": "31737:19:24" - }, - "referencedDeclaration": 11233, - "src": "31737:19:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_storage_ptr", - "typeString": "struct QuotesV2.PeginQuote" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 10528, - "mutability": "mutable", - "name": "amount", - "nameLocation": "31786:6:24", - "nodeType": "VariableDeclaration", - "scope": 10645, - "src": "31779:13:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 10527, - "name": "int256", - "nodeType": "ElementaryTypeName", - "src": "31779:6:24", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 10530, - "mutability": "mutable", - "name": "callTimestamp", - "nameLocation": "31810:13:24", - "nodeType": "VariableDeclaration", - "scope": 10645, - "src": "31802:21:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 10529, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "31802:7:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 10532, - "mutability": "mutable", - "name": "height", - "nameLocation": "31841:6:24", - "nodeType": "VariableDeclaration", - "scope": 10645, - "src": "31833:14:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 10531, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "31833:7:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "31727:126:24" - }, - "returnParameters": { - "id": 10536, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 10535, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 10645, - "src": "31876:4:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 10534, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "31876:4:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "31875:6:24" - }, - "scope": 10830, - "src": "31702:1644:24", - "stateMutability": "view", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 10711, - "nodeType": "Block", - "src": "33515:697:24", - "statements": [ - { - "assignments": [ - 10658 - ], - "declarations": [ - { - "constant": false, - "id": 10658, - "mutability": "mutable", - "name": "firstConfirmationHeader", - "nameLocation": "33538:23:24", - "nodeType": "VariableDeclaration", - "scope": 10711, - "src": "33525:36:24", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 10657, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "33525:5:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 10663, - "initialValue": { - "arguments": [ - { - "id": 10661, - "name": "blockHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10652, - "src": "33605:9:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "expression": { - "id": 10659, - "name": "bridge", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8159, - "src": "33564:6:24", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Bridge_$4173", - "typeString": "contract Bridge" - } - }, - "id": 10660, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "33571:33:24", - "memberName": "getBtcBlockchainBlockHeaderByHash", - "nodeType": "MemberAccess", - "referencedDeclaration": 4158, - "src": "33564:40:24", - "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_bytes32_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (bytes32) view external returns (bytes memory)" - } - }, - "id": 10662, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "33564:51:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "33525:90:24" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 10668, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 10665, - "name": "firstConfirmationHeader", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10658, - "src": "33633:23:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 10666, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "33657:6:24", - "memberName": "length", - "nodeType": "MemberAccess", - "src": "33633:30:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 10667, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "33666:1:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "33633:34:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303539", - "id": 10669, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "33669:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_319f398ccb7cc8c2c2304e07f301f618437c863aa2ff561ced1eaa40fcd3df63", - "typeString": "literal_string \"LBC059\"" - }, - "value": "LBC059" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_319f398ccb7cc8c2c2304e07f301f618437c863aa2ff561ced1eaa40fcd3df63", - "typeString": "literal_string \"LBC059\"" - } - ], - "id": 10664, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "33625:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 10670, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "33625:53:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 10671, - "nodeType": "ExpressionStatement", - "src": "33625:53:24" - }, - { - "assignments": [ - 10673 - ], - "declarations": [ - { - "constant": false, - "id": 10673, - "mutability": "mutable", - "name": "firstConfirmationTimestamp", - "nameLocation": "33697:26:24", - "nodeType": "VariableDeclaration", - "scope": 10711, - "src": "33689:34:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 10672, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "33689:7:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 10678, - "initialValue": { - "arguments": [ - { - "id": 10676, - "name": "firstConfirmationHeader", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10658, - "src": "33756:23:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "id": 10674, - "name": "BtcUtils", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3743, - "src": "33726:8:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_BtcUtils_$3743_$", - "typeString": "type(library BtcUtils)" - } - }, - "id": 10675, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "33735:20:24", - "memberName": "getBtcBlockTimestamp", - "nodeType": "MemberAccess", - "referencedDeclaration": 3266, - "src": "33726:29:24", - "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_pure$_t_bytes_memory_ptr_$returns$_t_uint256_$", - "typeString": "function (bytes memory) pure returns (uint256)" - } - }, - "id": 10677, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "33726:54:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "33689:91:24" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 10689, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 10679, - "name": "firstConfirmationTimestamp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10673, - "src": "33852:26:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 10688, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 10686, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "baseExpression": { - "id": 10680, - "name": "pegoutRegistry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8215, - "src": "33881:14:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PegoutRecord_$8013_storage_$", - "typeString": "mapping(bytes32 => struct LiquidityBridgeContractV2.PegoutRecord storage ref)" - } - }, - "id": 10682, - "indexExpression": { - "id": 10681, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10650, - "src": "33896:9:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "33881:25:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegoutRecord_$8013_storage", - "typeString": "struct LiquidityBridgeContractV2.PegoutRecord storage ref" - } - }, - "id": 10683, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "33907:16:24", - "memberName": "depositTimestamp", - "nodeType": "MemberAccess", - "referencedDeclaration": 8010, - "src": "33881:42:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "expression": { - "id": 10684, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10648, - "src": "33934:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_memory_ptr", - "typeString": "struct QuotesV2.PegOutQuote memory" - } - }, - "id": 10685, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "33940:12:24", - "memberName": "transferTime", - "nodeType": "MemberAccess", - "referencedDeclaration": 11263, - "src": "33934:18:24", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "src": "33881:71:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "id": 10687, - "name": "btcBlockTime", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8199, - "src": "33955:12:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "33881:86:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "33852:115:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 10693, - "nodeType": "IfStatement", - "src": "33848:157:24", - "trueBody": { - "id": 10692, - "nodeType": "Block", - "src": "33969:36:24", - "statements": [ - { - "expression": { - "hexValue": "74727565", - "id": 10690, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "33990:4:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "functionReturnParameters": 10656, - "id": 10691, - "nodeType": "Return", - "src": "33983:11:24" - } - ] - } - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 10704, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 10698, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 10694, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967292, - "src": "34075:5:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 10695, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "34081:9:24", - "memberName": "timestamp", - "nodeType": "MemberAccess", - "src": "34075:15:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "expression": { - "id": 10696, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10648, - "src": "34093:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_memory_ptr", - "typeString": "struct QuotesV2.PegOutQuote memory" - } - }, - "id": 10697, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "34099:10:24", - "memberName": "expireDate", - "nodeType": "MemberAccess", - "referencedDeclaration": 11265, - "src": "34093:16:24", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "src": "34075:34:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 10703, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 10699, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967292, - "src": "34113:5:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 10700, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "34119:6:24", - "memberName": "number", - "nodeType": "MemberAccess", - "src": "34113:12:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "expression": { - "id": 10701, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10648, - "src": "34128:5:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_memory_ptr", - "typeString": "struct QuotesV2.PegOutQuote memory" - } - }, - "id": 10702, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "34134:11:24", - "memberName": "expireBlock", - "nodeType": "MemberAccess", - "referencedDeclaration": 11267, - "src": "34128:17:24", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "src": "34113:32:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "34075:70:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 10708, - "nodeType": "IfStatement", - "src": "34071:112:24", - "trueBody": { - "id": 10707, - "nodeType": "Block", - "src": "34147:36:24", - "statements": [ - { - "expression": { - "hexValue": "74727565", - "id": 10705, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "34168:4:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "functionReturnParameters": 10656, - "id": 10706, - "nodeType": "Return", - "src": "34161:11:24" - } - ] - } - }, - { - "expression": { - "hexValue": "66616c7365", - "id": 10709, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "34200:5:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "false" - }, - "functionReturnParameters": 10656, - "id": 10710, - "nodeType": "Return", - "src": "34193:12:24" - } - ] - }, - "id": 10712, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "shouldPenalizePegOutLP", - "nameLocation": "33361:22:24", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 10653, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 10648, - "mutability": "mutable", - "name": "quote", - "nameLocation": "33421:5:24", - "nodeType": "VariableDeclaration", - "scope": 10712, - "src": "33393:33:24", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_memory_ptr", - "typeString": "struct QuotesV2.PegOutQuote" - }, - "typeName": { - "id": 10647, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 10646, - "name": "QuotesV2.PegOutQuote", - "nameLocations": [ - "33393:8:24", - "33402:11:24" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 11272, - "src": "33393:20:24" - }, - "referencedDeclaration": 11272, - "src": "33393:20:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_storage_ptr", - "typeString": "struct QuotesV2.PegOutQuote" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 10650, - "mutability": "mutable", - "name": "quoteHash", - "nameLocation": "33444:9:24", - "nodeType": "VariableDeclaration", - "scope": 10712, - "src": "33436:17:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 10649, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "33436:7:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 10652, - "mutability": "mutable", - "name": "blockHash", - "nameLocation": "33471:9:24", - "nodeType": "VariableDeclaration", - "scope": 10712, - "src": "33463:17:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 10651, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "33463:7:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "33383:103:24" - }, - "returnParameters": { - "id": 10656, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 10655, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 10712, - "src": "33509:4:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 10654, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "33509:4:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "33508:6:24" - }, - "scope": 10830, - "src": "33352:860:24", - "stateMutability": "view", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 10746, - "nodeType": "Block", - "src": "34285:224:24", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 10721, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 10719, - "name": "amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10714, - "src": "34299:6:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 10720, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "34308:1:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "34299:10:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 10745, - "nodeType": "IfStatement", - "src": "34295:208:24", - "trueBody": { - "id": 10744, - "nodeType": "Block", - "src": "34311:192:24", - "statements": [ - { - "assignments": [ - 10723, - null - ], - "declarations": [ - { - "constant": false, - "id": 10723, - "mutability": "mutable", - "name": "daoSuccess", - "nameLocation": "34331:10:24", - "nodeType": "VariableDeclaration", - "scope": 10744, - "src": "34326:15:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 10722, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "34326:4:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - null - ], - "id": 10733, - "initialValue": { - "arguments": [ - { - "hexValue": "", - "id": 10731, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "34398:2:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - }, - "value": "" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - } - ], - "expression": { - "arguments": [ - { - "id": 10726, - "name": "daoFeeCollectorAddress", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8219, - "src": "34354:22:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 10725, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "34346:8:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_payable_$", - "typeString": "type(address payable)" - }, - "typeName": { - "id": 10724, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "34346:8:24", - "stateMutability": "payable", - "typeDescriptions": {} - } - }, - "id": 10727, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "34346:31:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "id": 10728, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "34378:4:24", - "memberName": "call", - "nodeType": "MemberAccess", - "src": "34346:36:24", - "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": 10730, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "names": [ - "value" - ], - "nodeType": "FunctionCallOptions", - "options": [ - { - "id": 10729, - "name": "amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10714, - "src": "34390:6:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "src": "34346:51:24", - "typeDescriptions": { - "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$value", - "typeString": "function (bytes memory) payable returns (bool,bytes memory)" - } - }, - "id": 10732, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "34346:55:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "tuple(bool,bytes memory)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "34325:76:24" - }, - { - "expression": { - "arguments": [ - { - "id": 10735, - "name": "daoSuccess", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10723, - "src": "34423:10:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303734", - "id": 10736, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "34435:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_e9fc4e098febe7043f1662405d88fa2495f2ac8d8f35918e247815b713cfd00a", - "typeString": "literal_string \"LBC074\"" - }, - "value": "LBC074" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_e9fc4e098febe7043f1662405d88fa2495f2ac8d8f35918e247815b713cfd00a", - "typeString": "literal_string \"LBC074\"" - } - ], - "id": 10734, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "34415:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 10737, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "34415:29:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 10738, - "nodeType": "ExpressionStatement", - "src": "34415:29:24" - }, - { - "eventCall": { - "arguments": [ - { - "id": 10740, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10716, - "src": "34474:9:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 10741, - "name": "amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10714, - "src": "34485:6:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 10739, - "name": "DaoFeeSent", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8148, - "src": "34463:10:24", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint256_$returns$__$", - "typeString": "function (bytes32,uint256)" - } - }, - "id": 10742, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "34463:29:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 10743, - "nodeType": "EmitStatement", - "src": "34458:34:24" - } - ] - } - } - ] - }, - "id": 10747, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "payToFeeCollector", - "nameLocation": "34227:17:24", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 10717, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 10714, - "mutability": "mutable", - "name": "amount", - "nameLocation": "34250:6:24", - "nodeType": "VariableDeclaration", - "scope": 10747, - "src": "34245:11:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 10713, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "34245:4:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 10716, - "mutability": "mutable", - "name": "quoteHash", - "nameLocation": "34266:9:24", - "nodeType": "VariableDeclaration", - "scope": 10747, - "src": "34258:17:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 10715, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "34258:7:24", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "34244:32:24" - }, - "returnParameters": { - "id": 10718, - "nodeType": "ParameterList", - "parameters": [], - "src": "34285:0:24" - }, - "scope": 10830, - "src": "34218:291:24", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 10828, - "nodeType": "Block", - "src": "34589:475:24", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 10769, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 10761, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "arguments": [ - { - "id": 10757, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10749, - "src": "34613:5:24", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 10756, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "34607:5:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": { - "id": 10755, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "34607:5:24", - "typeDescriptions": {} - } - }, - "id": 10758, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "34607:12:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 10759, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "34620:6:24", - "memberName": "length", - "nodeType": "MemberAccess", - "src": "34607:19:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 10760, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "34629:1:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "34607:23:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 10768, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "arguments": [ - { - "id": 10764, - "name": "_url", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10751, - "src": "34640:4:24", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 10763, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "34634:5:24", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": { - "id": 10762, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "34634:5:24", - "typeDescriptions": {} - } - }, - "id": 10765, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "34634:11:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 10766, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "34646:6:24", - "memberName": "length", - "nodeType": "MemberAccess", - "src": "34634:18:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 10767, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "34655:1:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "34634:22:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "34607:49:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303736", - "id": 10770, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "34658:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_686eb4b4538782c6c5d7601cff771332305044e1e5a85d59133150cea60acf31", - "typeString": "literal_string \"LBC076\"" - }, - "value": "LBC076" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_686eb4b4538782c6c5d7601cff771332305044e1e5a85d59133150cea60acf31", - "typeString": "literal_string \"LBC076\"" - } - ], - "id": 10754, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "34599:7:24", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 10771, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "34599:68:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 10772, - "nodeType": "ExpressionStatement", - "src": "34599:68:24" - }, - { - "assignments": [ - 10775 - ], - "declarations": [ - { - "constant": false, - "id": 10775, - "mutability": "mutable", - "name": "lp", - "nameLocation": "34703:2:24", - "nodeType": "VariableDeclaration", - "scope": 10828, - "src": "34677:28:24", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$8026_storage_ptr", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider" - }, - "typeName": { - "id": 10774, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 10773, - "name": "LiquidityProvider", - "nameLocations": [ - "34677:17:24" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 8026, - "src": "34677:17:24" - }, - "referencedDeclaration": 8026, - "src": "34677:17:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$8026_storage_ptr", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider" - } - }, - "visibility": "internal" - } - ], - "id": 10776, - "nodeType": "VariableDeclarationStatement", - "src": "34677:28:24" - }, - { - "body": { - "id": 10822, - "nodeType": "Block", - "src": "34754:278:24", - "statements": [ - { - "expression": { - "id": 10791, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 10787, - "name": "lp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10775, - "src": "34768:2:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$8026_storage_ptr", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider storage pointer" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "baseExpression": { - "id": 10788, - "name": "liquidityProviders", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8176, - "src": "34773:18:24", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_LiquidityProvider_$8026_storage_$", - "typeString": "mapping(uint256 => struct LiquidityBridgeContractV2.LiquidityProvider storage ref)" - } - }, - "id": 10790, - "indexExpression": { - "id": 10789, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10778, - "src": "34792:1:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "34773:21:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$8026_storage", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider storage ref" - } - }, - "src": "34768:26:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$8026_storage_ptr", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider storage pointer" - } - }, - "id": 10792, - "nodeType": "ExpressionStatement", - "src": "34768:26:24" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 10797, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 10793, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "34812:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 10794, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "34816:6:24", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "34812:10:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "id": 10795, - "name": "lp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10775, - "src": "34826:2:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$8026_storage_ptr", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider storage pointer" - } - }, - "id": 10796, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "34829:8:24", - "memberName": "provider", - "nodeType": "MemberAccess", - "referencedDeclaration": 8017, - "src": "34826:11:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "34812:25:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 10821, - "nodeType": "IfStatement", - "src": "34808:214:24", - "trueBody": { - "id": 10820, - "nodeType": "Block", - "src": "34839:183:24", - "statements": [ - { - "expression": { - "id": 10802, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "id": 10798, - "name": "lp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10775, - "src": "34857:2:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$8026_storage_ptr", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider storage pointer" - } - }, - "id": 10800, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberLocation": "34860:4:24", - "memberName": "name", - "nodeType": "MemberAccess", - "referencedDeclaration": 8019, - "src": "34857:7:24", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 10801, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10749, - "src": "34867:5:24", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "src": "34857:15:24", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "id": 10803, - "nodeType": "ExpressionStatement", - "src": "34857:15:24" - }, - { - "expression": { - "id": 10808, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "id": 10804, - "name": "lp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10775, - "src": "34890:2:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$8026_storage_ptr", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider storage pointer" - } - }, - "id": 10806, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberLocation": "34893:10:24", - "memberName": "apiBaseUrl", - "nodeType": "MemberAccess", - "referencedDeclaration": 8021, - "src": "34890:13:24", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 10807, - "name": "_url", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10751, - "src": "34906:4:24", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "src": "34890:20:24", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "id": 10809, - "nodeType": "ExpressionStatement", - "src": "34890:20:24" - }, - { - "eventCall": { - "arguments": [ - { - "expression": { - "id": 10811, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "34948:3:24", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 10812, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "34952:6:24", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "34948:10:24", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 10813, - "name": "lp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10775, - "src": "34960:2:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$8026_storage_ptr", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider storage pointer" - } - }, - "id": 10814, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "34963:4:24", - "memberName": "name", - "nodeType": "MemberAccess", - "referencedDeclaration": 8019, - "src": "34960:7:24", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - { - "expression": { - "id": 10815, - "name": "lp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10775, - "src": "34969:2:24", - "typeDescriptions": { - "typeIdentifier": "t_struct$_LiquidityProvider_$8026_storage_ptr", - "typeString": "struct LiquidityBridgeContractV2.LiquidityProvider storage pointer" - } - }, - "id": 10816, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "34972:10:24", - "memberName": "apiBaseUrl", - "nodeType": "MemberAccess", - "referencedDeclaration": 8021, - "src": "34969:13:24", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - }, - { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - ], - "id": 10810, - "name": "ProviderUpdate", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8156, - "src": "34933:14:24", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (address,string memory,string memory)" - } - }, - "id": 10817, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "34933:50:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 10818, - "nodeType": "EmitStatement", - "src": "34928:55:24" - }, - { - "functionReturnParameters": 10753, - "id": 10819, - "nodeType": "Return", - "src": "35001:7:24" - } - ] - } - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 10783, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 10781, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10778, - "src": "34732:1:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<=", - "rightExpression": { - "id": 10782, - "name": "providerId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 8197, - "src": "34737:10:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "34732:15:24", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 10823, - "initializationExpression": { - "assignments": [ - 10778 - ], - "declarations": [ - { - "constant": false, - "id": 10778, - "mutability": "mutable", - "name": "i", - "nameLocation": "34725:1:24", - "nodeType": "VariableDeclaration", - "scope": 10823, - "src": "34720:6:24", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 10777, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "34720:4:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 10780, - "initialValue": { - "hexValue": "31", - "id": 10779, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "34729:1:24", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "nodeType": "VariableDeclarationStatement", - "src": "34720:10:24" - }, - "loopExpression": { - "expression": { - "id": 10785, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "34749:3:24", - "subExpression": { - "id": 10784, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10778, - "src": "34749:1:24", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 10786, - "nodeType": "ExpressionStatement", - "src": "34749:3:24" - }, - "nodeType": "ForStatement", - "src": "34715:317:24" - }, - { - "expression": { - "arguments": [ - { - "hexValue": "4c4243303031", - "id": 10825, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "35048:8:24", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_a509ede2323476f3f5be48987391c5516e4ea8116b376287322ed2188be0e53c", - "typeString": "literal_string \"LBC001\"" - }, - "value": "LBC001" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_a509ede2323476f3f5be48987391c5516e4ea8116b376287322ed2188be0e53c", - "typeString": "literal_string \"LBC001\"" - } - ], - "id": 10824, - "name": "revert", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967277, - 4294967277 - ], - "referencedDeclaration": 4294967277, - "src": "35041:6:24", - "typeDescriptions": { - "typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory) pure" - } - }, - "id": 10826, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "35041:16:24", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 10827, - "nodeType": "ExpressionStatement", - "src": "35041:16:24" - } - ] - }, - "functionSelector": "0220f41d", - "id": 10829, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "updateProvider", - "nameLocation": "34524:14:24", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 10752, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 10749, - "mutability": "mutable", - "name": "_name", - "nameLocation": "34553:5:24", - "nodeType": "VariableDeclaration", - "scope": 10829, - "src": "34539:19:24", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 10748, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "34539:6:24", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 10751, - "mutability": "mutable", - "name": "_url", - "nameLocation": "34574:4:24", - "nodeType": "VariableDeclaration", - "scope": 10829, - "src": "34560:18:24", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 10750, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "34560:6:24", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "34538:41:24" - }, - "returnParameters": { - "id": 10753, - "nodeType": "ParameterList", - "parameters": [], - "src": "34589:0:24" - }, - "scope": 10830, - "src": "34515:549:24", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - } - ], - "scope": 10831, - "src": "481:34585:24", - "usedErrors": [] - } - ], - "src": "32:35035:24" - }, - "compiler": { - "name": "solc", - "version": "0.8.18+commit.87f61d96.Emscripten.clang" - }, - "networks": { - "31": { - "events": {}, - "links": { - "SignatureValidator": "0xA66B2938b6cC837821cF4Be27F7016951047E03D", - "QuotesV2": "0xC5173CAE944b9CB527B386A51c7353fEf0d4794c", - "BtcUtils": "0x147F172c8a7434D10FDac6E2c8045116683f277B" - }, - "address": "0xc2A630c053D12D63d32b025082f6Ba268db18300", - "transactionHash": "0xd56aa72d399d6427c35edc2763972feb81d9cc02bdd444a9cd62d5d8f36c288d" - } - }, - "schemaVersion": "3.4.13", - "updatedAt": "2024-12-10T18:55:01.658Z", - "networkType": "ethereum", - "devdoc": { - "events": { - "Initialized(uint8)": { - "details": "Triggered when the contract has been initialized or reinitialized." - } - }, - "kind": "dev", - "methods": { - "addCollateral()": { - "details": "Increases the amount of collateral of the sender" - }, - "callForUser((bytes20,address,address,bytes,address,bytes,uint256,uint256,address,bytes,uint32,int64,uint256,uint32,uint32,uint32,uint16,bool,uint256,uint256))": { - "details": "Performs a call on behalf of a user", - "params": { - "quote": "The quote that identifies the service" - }, - "returns": { - "_0": "Boolean indicating whether the call was successful" - } - }, - "deposit()": { - "details": "Increases the balance of the sender" - }, - "getBalance(address)": { - "details": "Returns the amount of funds of a liquidity provider", - "params": { - "addr": "The address of the liquidity provider" - }, - "returns": { - "_0": "The balance of the liquidity provider" - } - }, - "getCollateral(address)": { - "details": "Returns the amount of collateral of a liquidity provider", - "params": { - "addr": "The address of the liquidity provider" - }, - "returns": { - "_0": "The amount of locked collateral" - } - }, - "hashQuote((bytes20,address,address,bytes,address,bytes,uint256,uint256,address,bytes,uint32,int64,uint256,uint32,uint32,uint32,uint16,bool,uint256,uint256))": { - "details": "Calculates hash of a quote. Note: besides calculation this function also validates the quote.", - "params": { - "quote": "The quote of the service" - }, - "returns": { - "_0": "The hash of a quote" - } - }, - "isOperational(address)": { - "details": "Checks whether a liquidity provider can deliver a pegin service", - "returns": { - "_0": "Whether the liquidity provider is registered and has enough locked collateral" - } - }, - "isOperationalForPegout(address)": { - "details": "Checks whether a liquidity provider can deliver a pegout service", - "returns": { - "_0": "Whether the liquidity provider is registered and has enough locked collateral" - } - }, - "owner()": { - "details": "Returns the address of the current owner." - }, - "register(string,string,bool,string)": { - "details": "Registers msg.sender as a liquidity provider with msg.value as collateral" - }, - "registerPegIn((bytes20,address,address,bytes,address,bytes,uint256,uint256,address,bytes,uint32,int64,uint256,uint32,uint32,uint32,uint16,bool,uint256,uint256),bytes,bytes,bytes,uint256)": { - "details": "Registers a peg-in transaction with the bridge and pays to the involved parties", - "params": { - "btcRawTransaction": "The peg-in transaction", - "height": "The block that contains the peg-in transaction", - "partialMerkleTree": "The merkle tree path that proves transaction inclusion", - "quote": "The quote of the service", - "signature": "The signature of the quote" - }, - "returns": { - "_0": "The total peg-in amount received from the bridge contract or an error code" - } - }, - "renounceOwnership()": { - "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." - }, - "resign()": { - "details": "Used to resign as a liquidity provider" - }, - "transferOwnership(address)": { - "details": "Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner." - }, - "withdraw(uint256)": { - "details": "Used to withdraw funds", - "params": { - "amount": "The amount to withdraw" - } - }, - "withdrawCollateral()": { - "details": "Used to withdraw the locked collateral" - } - }, - "title": "Contract that assists with the Flyover protocol", - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } -} \ No newline at end of file diff --git a/build/contracts/Migrations.json b/build/contracts/Migrations.json deleted file mode 100644 index ad4cbe5..0000000 --- a/build/contracts/Migrations.json +++ /dev/null @@ -1,1091 +0,0 @@ -{ - "contractName": "Migrations", - "abi": [ - { - "inputs": [], - "name": "last_completed_migration", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "owner", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "completed", - "type": "uint256" - } - ], - "name": "setCompleted", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - } - ], - "metadata": "{\"compiler\":{\"version\":\"0.8.18+commit.87f61d96\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"last_completed_migration\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"completed\",\"type\":\"uint256\"}],\"name\":\"setCompleted\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"project:/contracts/Migrations.sol\":\"Migrations\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":1},\"remappings\":[]},\"sources\":{\"project:/contracts/Migrations.sol\":{\"keccak256\":\"0x713e94370c3fd90c4df377d5ab9731ba544ddcf6307e4c43b34bc617f65fd3bb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f9014a2eaac1ce0f1ba1b1812c2ef385b1953ab74860c279d0cdaf3b0805635a\",\"dweb:/ipfs/QmYy5mm5iTv2JE6s4r5VCMtbCD4JSgaurb2cSLQ4CZy82m\"]}},\"version\":1}", - "bytecode": "0x6080604052600080546001600160a01b0319163317905534801561002257600080fd5b50610170806100326000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c8063445df0ac146100465780638da5cb5b14610062578063fdacd5761461008d575b600080fd5b61004f60015481565b6040519081526020015b60405180910390f35b600054610075906001600160a01b031681565b6040516001600160a01b039091168152602001610059565b6100a061009b366004610121565b6100a2565b005b6000546001600160a01b0316331461011c5760405162461bcd60e51b815260206004820152603360248201527f546869732066756e6374696f6e206973207265737472696374656420746f207460448201527234329031b7b73a3930b1ba13b99037bbb732b960691b606482015260840160405180910390fd5b600155565b60006020828403121561013357600080fd5b503591905056fea2646970667358221220f2c209f447050ccdaa2d4a5ee05587554bb549e3c2d0ef55697ca7afa9dc659164736f6c63430008120033", - "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100415760003560e01c8063445df0ac146100465780638da5cb5b14610062578063fdacd5761461008d575b600080fd5b61004f60015481565b6040519081526020015b60405180910390f35b600054610075906001600160a01b031681565b6040516001600160a01b039091168152602001610059565b6100a061009b366004610121565b6100a2565b005b6000546001600160a01b0316331461011c5760405162461bcd60e51b815260206004820152603360248201527f546869732066756e6374696f6e206973207265737472696374656420746f207460448201527234329031b7b73a3930b1ba13b99037bbb732b960691b606482015260840160405180910390fd5b600155565b60006020828403121561013357600080fd5b503591905056fea2646970667358221220f2c209f447050ccdaa2d4a5ee05587554bb549e3c2d0ef55697ca7afa9dc659164736f6c63430008120033", - "immutableReferences": {}, - "generatedSources": [], - "deployedGeneratedSources": [ - { - "ast": { - "nodeType": "YulBlock", - "src": "0:1006:32", - "statements": [ - { - "nodeType": "YulBlock", - "src": "6:3:32", - "statements": [] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "115:76:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "125:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "137:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "148:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "133:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "133:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "125:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "167:9:32" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "178:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "160:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "160:25:32" - }, - "nodeType": "YulExpressionStatement", - "src": "160:25:32" - } - ] - }, - "name": "abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "84:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "95:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "106:4:32", - "type": "" - } - ], - "src": "14:177:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "297:102:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "307:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "319:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "330:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "315:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "315:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "307:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "349:9:32" - }, - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "364:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "380:3:32", - "type": "", - "value": "160" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "385:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "376:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "376:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "389:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "372:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "372:19:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "360:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "360:32:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "342:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "342:51:32" - }, - "nodeType": "YulExpressionStatement", - "src": "342:51:32" - } - ] - }, - "name": "abi_encode_tuple_t_address__to_t_address__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "266:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "277:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "288:4:32", - "type": "" - } - ], - "src": "196:203:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "474:110:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "520:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "529:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "532:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "522:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "522:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "522:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "495:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "504:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "491:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "491:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "516:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "487:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "487:32:32" - }, - "nodeType": "YulIf", - "src": "484:52:32" - }, - { - "nodeType": "YulAssignment", - "src": "545:33:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "568:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "555:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "555:23:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "545:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "440:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "451:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "463:6:32", - "type": "" - } - ], - "src": "404:180:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "763:241:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "780:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "791:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "773:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "773:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "773:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "814:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "825:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "810:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "810:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "830:2:32", - "type": "", - "value": "51" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "803:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "803:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "803:30:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "853:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "864:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "849:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "849:18:32" - }, - { - "hexValue": "546869732066756e6374696f6e206973207265737472696374656420746f2074", - "kind": "string", - "nodeType": "YulLiteral", - "src": "869:34:32", - "type": "", - "value": "This function is restricted to t" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "842:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "842:62:32" - }, - "nodeType": "YulExpressionStatement", - "src": "842:62:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "924:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "935:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "920:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "920:18:32" - }, - { - "hexValue": "686520636f6e74726163742773206f776e6572", - "kind": "string", - "nodeType": "YulLiteral", - "src": "940:21:32", - "type": "", - "value": "he contract's owner" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "913:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "913:49:32" - }, - "nodeType": "YulExpressionStatement", - "src": "913:49:32" - }, - { - "nodeType": "YulAssignment", - "src": "971:27:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "983:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "994:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "979:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "979:19:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "971:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_f60fe2d9d123295bf92ecf95167f1fa709e374da35e4c083bd39dc2d82acd8b1__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "740:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "754:4:32", - "type": "" - } - ], - "src": "589:415:32" - } - ] - }, - "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_address__to_t_address__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, sub(shl(160, 1), 1)))\n }\n function abi_decode_tuple_t_uint256(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := calldataload(headStart)\n }\n function abi_encode_tuple_t_stringliteral_f60fe2d9d123295bf92ecf95167f1fa709e374da35e4c083bd39dc2d82acd8b1__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 51)\n mstore(add(headStart, 64), \"This function is restricted to t\")\n mstore(add(headStart, 96), \"he contract's owner\")\n tail := add(headStart, 128)\n }\n}", - "id": 32, - "language": "Yul", - "name": "#utility.yul" - } - ], - "sourceMap": "58:352:25:-:0;;;82:33;;;-1:-1:-1;;;;;;82:33:25;105:10;82:33;;;58:352;;;;;;;;;;;;;;;;", - "deployedSourceMap": "58:352:25:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;119:36;;;;;;;;;160:25:32;;;148:2;133:18;119:36:25;;;;;;;;82:33;;;;;-1:-1:-1;;;;;82:33:25;;;;;;-1:-1:-1;;;;;360:32:32;;;342:51;;330:2;315:18;82:33:25;196:203:32;305:103:25;;;;;;:::i;:::-;;:::i;:::-;;;217:5;;-1:-1:-1;;;;;217:5:25;203:10;:19;188:101;;;;-1:-1:-1;;;188:101:25;;791:2:32;188:101:25;;;773:21:32;830:2;810:18;;;803:30;869:34;849:18;;;842:62;-1:-1:-1;;;920:18:32;;;913:49;979:19;;188:101:25;;;;;;;;367:24:::1;:36:::0;305:103::o;404:180:32:-;463:6;516:2;504:9;495:7;491:23;487:32;484:52;;;532:1;529;522:12;484:52;-1:-1:-1;555:23:32;;404:180;-1:-1:-1;404:180:32:o", - "source": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.18;\n\ncontract Migrations {\n address public owner = msg.sender;\n uint public last_completed_migration;\n\n modifier restricted() {\n require(\n msg.sender == owner,\n \"This function is restricted to the contract's owner\"\n );\n _;\n }\n\n function setCompleted(uint completed) public restricted {\n last_completed_migration = completed;\n }\n}\n", - "sourcePath": "/Users/luischavez/iov/liquidity-bridge-contract/contracts/Migrations.sol", - "ast": { - "absolutePath": "project:/contracts/Migrations.sol", - "exportedSymbols": { - "Migrations": [ - 10863 - ] - }, - "id": 10864, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 10832, - "literals": [ - "solidity", - "^", - "0.8", - ".18" - ], - "nodeType": "PragmaDirective", - "src": "32:24:25" - }, - { - "abstract": false, - "baseContracts": [], - "canonicalName": "Migrations", - "contractDependencies": [], - "contractKind": "contract", - "fullyImplemented": true, - "id": 10863, - "linearizedBaseContracts": [ - 10863 - ], - "name": "Migrations", - "nameLocation": "67:10:25", - "nodeType": "ContractDefinition", - "nodes": [ - { - "constant": false, - "functionSelector": "8da5cb5b", - "id": 10836, - "mutability": "mutable", - "name": "owner", - "nameLocation": "97:5:25", - "nodeType": "VariableDeclaration", - "scope": 10863, - "src": "82:33:25", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 10833, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "82:7:25", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": { - "expression": { - "id": 10834, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "105:3:25", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 10835, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "109:6:25", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "105:10:25", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "public" - }, - { - "constant": false, - "functionSelector": "445df0ac", - "id": 10838, - "mutability": "mutable", - "name": "last_completed_migration", - "nameLocation": "131:24:25", - "nodeType": "VariableDeclaration", - "scope": 10863, - "src": "119:36:25", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 10837, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "119:4:25", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "public" - }, - { - "body": { - "id": 10849, - "nodeType": "Block", - "src": "182:119:25", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 10844, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 10841, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "203:3:25", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 10842, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "207:6:25", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "203:10:25", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "id": 10843, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10836, - "src": "217:5:25", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "203:19:25", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "546869732066756e6374696f6e206973207265737472696374656420746f2074686520636f6e74726163742773206f776e6572", - "id": 10845, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "230:53:25", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_f60fe2d9d123295bf92ecf95167f1fa709e374da35e4c083bd39dc2d82acd8b1", - "typeString": "literal_string \"This function is restricted to the contract's owner\"" - }, - "value": "This function is restricted to the contract's owner" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_f60fe2d9d123295bf92ecf95167f1fa709e374da35e4c083bd39dc2d82acd8b1", - "typeString": "literal_string \"This function is restricted to the contract's owner\"" - } - ], - "id": 10840, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "188:7:25", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 10846, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "188:101:25", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 10847, - "nodeType": "ExpressionStatement", - "src": "188:101:25" - }, - { - "id": 10848, - "nodeType": "PlaceholderStatement", - "src": "295:1:25" - } - ] - }, - "id": 10850, - "name": "restricted", - "nameLocation": "169:10:25", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 10839, - "nodeType": "ParameterList", - "parameters": [], - "src": "179:2:25" - }, - "src": "160:141:25", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 10861, - "nodeType": "Block", - "src": "361:47:25", - "statements": [ - { - "expression": { - "id": 10859, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 10857, - "name": "last_completed_migration", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10838, - "src": "367:24:25", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 10858, - "name": "completed", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10852, - "src": "394:9:25", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "367:36:25", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 10860, - "nodeType": "ExpressionStatement", - "src": "367:36:25" - } - ] - }, - "functionSelector": "fdacd576", - "id": 10862, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "id": 10855, - "kind": "modifierInvocation", - "modifierName": { - "id": 10854, - "name": "restricted", - "nameLocations": [ - "350:10:25" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 10850, - "src": "350:10:25" - }, - "nodeType": "ModifierInvocation", - "src": "350:10:25" - } - ], - "name": "setCompleted", - "nameLocation": "314:12:25", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 10853, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 10852, - "mutability": "mutable", - "name": "completed", - "nameLocation": "332:9:25", - "nodeType": "VariableDeclaration", - "scope": 10862, - "src": "327:14:25", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 10851, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "327:4:25", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "326:16:25" - }, - "returnParameters": { - "id": 10856, - "nodeType": "ParameterList", - "parameters": [], - "src": "361:0:25" - }, - "scope": 10863, - "src": "305:103:25", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - } - ], - "scope": 10864, - "src": "58:352:25", - "usedErrors": [] - } - ], - "src": "32:379:25" - }, - "compiler": { - "name": "solc", - "version": "0.8.18+commit.87f61d96.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "3.4.13", - "updatedAt": "2024-12-10T18:55:01.696Z", - "networkType": "ethereum", - "devdoc": { - "kind": "dev", - "methods": {}, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } -} \ No newline at end of file diff --git a/build/contracts/Mock.json b/build/contracts/Mock.json deleted file mode 100644 index eed3def..0000000 --- a/build/contracts/Mock.json +++ /dev/null @@ -1,2364 +0,0 @@ -{ - "contractName": "Mock", - "abi": [ - { - "inputs": [], - "name": "balance", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "int256", - "name": "s", - "type": "int256" - } - ], - "name": "set", - "outputs": [], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [], - "name": "check", - "outputs": [ - { - "internalType": "int256", - "name": "", - "type": "int256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "fail", - "outputs": [], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address payable", - "name": "lbcAddress", - "type": "address" - } - ], - "name": "callRegister", - "outputs": [], - "stateMutability": "payable", - "type": "function" - } - ], - "metadata": "{\"compiler\":{\"version\":\"0.8.18+commit.87f61d96\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"balance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address payable\",\"name\":\"lbcAddress\",\"type\":\"address\"}],\"name\":\"callRegister\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"check\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"fail\",\"outputs\":[],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"s\",\"type\":\"int256\"}],\"name\":\"set\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"project:/contracts/Mock.sol\":\"Mock\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":1},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol\":{\"keccak256\":\"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c\",\"dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16\"]},\"@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.sol\":{\"keccak256\":\"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f\",\"dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC\"]},\"@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]},\"@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95\",\"dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx\"]},\"@rsksmart/btc-transaction-solidity-helper/contracts/BtcUtils.sol\":{\"keccak256\":\"0x7237a22e0d518b3499d81ca4918c038a168882e57a35af17d57afd61234c8512\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8df4acd5a0609e279ddad58d0532a77fdc959688144e5bb7ccfc782db9236251\",\"dweb:/ipfs/QmbjJFBRm6JFPx9Jh34hX8N5rkgBxJ5kbdZsoJ3Tb4UyCa\"]},\"@rsksmart/btc-transaction-solidity-helper/contracts/OpCodes.sol\":{\"keccak256\":\"0x5996186b53b109f592341cfe164c6673346eafda66a2a496e6d5fcec5c74de5a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8d3073328ce73163fe8088b14bf39ba03f5f233604a0eb329bb64f2be73ff411\",\"dweb:/ipfs/QmScVLft2AL48D1Z93e3TDQbfZNh7sxJaeS23U4KPGsjTY\"]},\"project:/contracts/Bridge.sol\":{\"keccak256\":\"0x1eb986f1f28ace76b72425a2617eaeb89a54c765dc7b16689cb1105a7e6c0f2f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://255860b4bfb0bed73723349493307106fb54fcaf5839a7b0c012fc1a03d0b8ce\",\"dweb:/ipfs/QmUoWjWVkXpUWjaiWQXQVNKEJmCnPtKXXTgFq7kkcTuGMs\"]},\"project:/contracts/LiquidityBridgeContract.sol\":{\"keccak256\":\"0xffd1e9632f97e8d0a1daac7a5db03b7f5c345e80e08ecc2d2a113d36969fef7a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d95ff6c407622ceab5e821eb0ae0e1984812e5e517180c56f57f2891840d79a3\",\"dweb:/ipfs/QmS9sYi998BahXLHLW74qrf45icdLGmxXuNm7Y2SN9VZnF\"]},\"project:/contracts/Mock.sol\":{\"keccak256\":\"0x2c3e024eaf134bb6b12c48103c9b5e21f1d2b03b4d6ce1106a6ef924adf462cd\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b836e99f6c17937d83f85bd6197e90e3534dba6e8fbfd1b23c0e0c283ddf8a24\",\"dweb:/ipfs/QmYrbtyjY4QTP1D9ap5VZCYMkMDidCWm7dgYHVuyqbKq6t\"]},\"project:/contracts/Quotes.sol\":{\"keccak256\":\"0x28948b37d73f110d9cfc6cc3505fa7f2309b2d8d588d90c4069df45b4acbe399\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f2a824971a2421b56127e048a6b8a2d4ef4945b13e5f40cb266a19462c954e7f\",\"dweb:/ipfs/QmWm8YpQUwvqu4erUbsUZ1xz4PoVtJQiAX1Kh5Gezi32c1\"]},\"project:/contracts/SignatureValidator.sol\":{\"keccak256\":\"0x9d72920dd5ff2891c8dd3b3a814c1b108e82fcc6dfd849c96842e88c01d25b2c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8df1167e9def35ced4a620e3fa1e6d148bc7c1fb995378bf12dabef250b3be65\",\"dweb:/ipfs/QmZJJchWvzUeMb68VPHFGnMXBx7aMhK5GqJy8ECDx2rf58\"]}},\"version\":1}", - "bytecode": "0x608060405234801561001057600080fd5b50610276806100206000396000f3fe60806040526004361061004a5760003560e01c80631192fe621461004f578063919840ad14610064578063a9cc471814610087578063b69ef8a81461009c578063e5c19b2d146100b2575b600080fd5b61006261005d3660046101de565b6100c5565b005b34801561007057600080fd5b506000545b60405190815260200160405180910390f35b34801561009357600080fd5b506100626101aa565b3480156100a857600080fd5b5061007560015481565b6100626100c036600461020e565b600055565b60405163082e0aa360e31b81526080600480830191909152600e60848301526d119a5c9cdd0818dbdb9d1c9858dd60921b60a483015260c06024830152601460c483015273687474703a2f2f6c6f63616c686f73742f61706960601b60e4830152600160448301526101006064830152610104820152630c4dee8d60e31b61012482015281906001600160a01b0382169063417055189034906101440160206040518083038185885af1158015610180573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906101a59190610227565b505050565b60405162461bcd60e51b815260206004820152600560248201526432b93937b960d91b604482015260640160405180910390fd5b6000602082840312156101f057600080fd5b81356001600160a01b038116811461020757600080fd5b9392505050565b60006020828403121561022057600080fd5b5035919050565b60006020828403121561023957600080fd5b505191905056fea2646970667358221220be8c34f32ebff4d9aa590046a228b055d76bbcebeae3962228862082e1994dad64736f6c63430008120033", - "deployedBytecode": "0x60806040526004361061004a5760003560e01c80631192fe621461004f578063919840ad14610064578063a9cc471814610087578063b69ef8a81461009c578063e5c19b2d146100b2575b600080fd5b61006261005d3660046101de565b6100c5565b005b34801561007057600080fd5b506000545b60405190815260200160405180910390f35b34801561009357600080fd5b506100626101aa565b3480156100a857600080fd5b5061007560015481565b6100626100c036600461020e565b600055565b60405163082e0aa360e31b81526080600480830191909152600e60848301526d119a5c9cdd0818dbdb9d1c9858dd60921b60a483015260c06024830152601460c483015273687474703a2f2f6c6f63616c686f73742f61706960601b60e4830152600160448301526101006064830152610104820152630c4dee8d60e31b61012482015281906001600160a01b0382169063417055189034906101440160206040518083038185885af1158015610180573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906101a59190610227565b505050565b60405162461bcd60e51b815260206004820152600560248201526432b93937b960d91b604482015260640160405180910390fd5b6000602082840312156101f057600080fd5b81356001600160a01b038116811461020757600080fd5b9392505050565b60006020828403121561022057600080fd5b5035919050565b60006020828403121561023957600080fd5b505191905056fea2646970667358221220be8c34f32ebff4d9aa590046a228b055d76bbcebeae3962228862082e1994dad64736f6c63430008120033", - "immutableReferences": {}, - "generatedSources": [], - "deployedGeneratedSources": [ - { - "ast": { - "nodeType": "YulBlock", - "src": "0:2293:32", - "statements": [ - { - "nodeType": "YulBlock", - "src": "6:3:32", - "statements": [] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "92:216:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "138:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "147:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "150:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "140:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "140:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "140:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "113:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "122:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "109:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "109:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "134:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "105:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "105:32:32" - }, - "nodeType": "YulIf", - "src": "102:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "163:36:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "189:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "176:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "176:23:32" - }, - "variables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "167:5:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "262:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "271:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "274:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "264:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "264:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "264:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "221:5:32" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "232:5:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "247:3:32", - "type": "", - "value": "160" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "252:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "243:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "243:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "256:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "239:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "239:19:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "228:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "228:31:32" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "218:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "218:42:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "211:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "211:50:32" - }, - "nodeType": "YulIf", - "src": "208:70:32" - }, - { - "nodeType": "YulAssignment", - "src": "287:15:32", - "value": { - "name": "value", - "nodeType": "YulIdentifier", - "src": "297:5:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "287:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_address_payable", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "58:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "69:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "81:6:32", - "type": "" - } - ], - "src": "14:294:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "412:76:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "422:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "434:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "445:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "430:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "430:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "422:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "464:9:32" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "475:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "457:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "457:25:32" - }, - "nodeType": "YulExpressionStatement", - "src": "457:25:32" - } - ] - }, - "name": "abi_encode_tuple_t_int256__to_t_int256__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "381:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "392:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "403:4:32", - "type": "" - } - ], - "src": "313:175:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "594:76:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "604:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "616:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "627:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "612:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "612:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "604:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "646:9:32" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "657:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "639:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "639:25:32" - }, - "nodeType": "YulExpressionStatement", - "src": "639:25:32" - } - ] - }, - "name": "abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "563:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "574:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "585:4:32", - "type": "" - } - ], - "src": "493:177:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "744:110:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "790:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "799:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "802:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "792:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "792:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "792:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "765:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "774:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "761:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "761:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "786:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "757:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "757:32:32" - }, - "nodeType": "YulIf", - "src": "754:52:32" - }, - { - "nodeType": "YulAssignment", - "src": "815:33:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "838:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "825:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "825:23:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "815:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_int256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "710:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "721:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "733:6:32", - "type": "" - } - ], - "src": "675:179:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1257:512:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1274:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1285:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1267:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1267:22:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1267:22:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1309:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1320:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1305:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1305:19:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1326:2:32", - "type": "", - "value": "14" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1298:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1298:31:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1298:31:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1349:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1360:3:32", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1345:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1345:19:32" - }, - { - "hexValue": "466972737420636f6e7472616374", - "kind": "string", - "nodeType": "YulLiteral", - "src": "1366:16:32", - "type": "", - "value": "First contract" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1338:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1338:45:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1338:45:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1403:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1414:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1399:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1399:20:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1421:3:32", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1392:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1392:33:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1392:33:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1445:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1456:3:32", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1441:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1441:19:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1462:2:32", - "type": "", - "value": "20" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1434:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1434:31:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1434:31:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1485:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1496:3:32", - "type": "", - "value": "224" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1481:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1481:19:32" - }, - { - "hexValue": "687474703a2f2f6c6f63616c686f73742f617069", - "kind": "string", - "nodeType": "YulLiteral", - "src": "1502:22:32", - "type": "", - "value": "http://localhost/api" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1474:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1474:51:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1474:51:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1534:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1544:3:32", - "type": "", - "value": "256" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "1538:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1567:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1578:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1563:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1563:18:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "1597:6:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "1590:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1590:14:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "1583:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1583:22:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1556:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1556:50:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1556:50:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1626:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1637:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1622:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1622:18:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1642:2:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1615:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1615:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1615:30:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1665:9:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1676:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1661:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1661:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1681:1:32", - "type": "", - "value": "4" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1654:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1654:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1654:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1703:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1714:3:32", - "type": "", - "value": "288" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1699:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1699:19:32" - }, - { - "hexValue": "626f7468", - "kind": "string", - "nodeType": "YulLiteral", - "src": "1720:6:32", - "type": "", - "value": "both" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1692:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1692:35:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1692:35:32" - }, - { - "nodeType": "YulAssignment", - "src": "1736:27:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1748:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1759:3:32", - "type": "", - "value": "320" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1744:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1744:19:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "1736:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_12ef6b872f6c4958940c5c0afd3e36cc0e19c029aff427a11a2a23931f8a0191_t_stringliteral_25a23078b571f2e3f31ae191c34bb210f450523e06e2fb031f4582c8782e95ec_t_bool_t_stringliteral_36ad643d447cde9387780ae6f5b371120b595aaff5d56b8440952d5f7116fa16__to_t_string_memory_ptr_t_string_memory_ptr_t_bool_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "1226:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "1237:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "1248:4:32", - "type": "" - } - ], - "src": "859:910:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1855:103:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "1901:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1910:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1913:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1903:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1903:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1903:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "1876:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1885:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "1872:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1872:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1897:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "1868:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1868:32:32" - }, - "nodeType": "YulIf", - "src": "1865:52:32" - }, - { - "nodeType": "YulAssignment", - "src": "1926:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1942:9:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "1936:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "1936:16:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "1926:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_uint256_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "1821:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "1832:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "1844:6:32", - "type": "" - } - ], - "src": "1774:184:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2137:154:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2154:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2165:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2147:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2147:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2147:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2188:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2199:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2184:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2184:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2204:1:32", - "type": "", - "value": "5" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2177:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2177:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2177:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2226:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2237:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2222:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2222:18:32" - }, - { - "hexValue": "6572726f72", - "kind": "string", - "nodeType": "YulLiteral", - "src": "2242:7:32", - "type": "", - "value": "error" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2215:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2215:35:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2215:35:32" - }, - { - "nodeType": "YulAssignment", - "src": "2259:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2271:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2282:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2267:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2267:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "2259:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_177f242d20ff7dc4598657e4355abd2b0df8f6351283a95d209db56ce73ef6e9__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "2114:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "2128:4:32", - "type": "" - } - ], - "src": "1963:328:32" - } - ] - }, - "contents": "{\n { }\n function abi_decode_tuple_t_address_payable(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let value := calldataload(headStart)\n if iszero(eq(value, and(value, sub(shl(160, 1), 1)))) { revert(0, 0) }\n value0 := value\n }\n function abi_encode_tuple_t_int256__to_t_int256__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, value0)\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_decode_tuple_t_int256(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := calldataload(headStart)\n }\n function abi_encode_tuple_t_stringliteral_12ef6b872f6c4958940c5c0afd3e36cc0e19c029aff427a11a2a23931f8a0191_t_stringliteral_25a23078b571f2e3f31ae191c34bb210f450523e06e2fb031f4582c8782e95ec_t_bool_t_stringliteral_36ad643d447cde9387780ae6f5b371120b595aaff5d56b8440952d5f7116fa16__to_t_string_memory_ptr_t_string_memory_ptr_t_bool_t_string_memory_ptr__fromStack_reversed(headStart, value0) -> tail\n {\n mstore(headStart, 128)\n mstore(add(headStart, 128), 14)\n mstore(add(headStart, 160), \"First contract\")\n mstore(add(headStart, 0x20), 192)\n mstore(add(headStart, 192), 20)\n mstore(add(headStart, 224), \"http://localhost/api\")\n let _1 := 256\n mstore(add(headStart, 64), iszero(iszero(value0)))\n mstore(add(headStart, 96), _1)\n mstore(add(headStart, _1), 4)\n mstore(add(headStart, 288), \"both\")\n tail := add(headStart, 320)\n }\n function abi_decode_tuple_t_uint256_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := mload(headStart)\n }\n function abi_encode_tuple_t_stringliteral_177f242d20ff7dc4598657e4355abd2b0df8f6351283a95d209db56ce73ef6e9__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 5)\n mstore(add(headStart, 64), \"error\")\n tail := add(headStart, 96)\n }\n}", - "id": 32, - "language": "Yul", - "name": "#utility.yul" - } - ], - "sourceMap": "99:605:26:-:0;;;;;;;;;;;;;;;;;;;", - "deployedSourceMap": "99:605:26:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;399:303;;;;;;:::i;:::-;;:::i;:::-;;242:75;;;;;;;;;;-1:-1:-1;282:3:26;304:6;242:75;;;457:25:32;;;445:2;430:18;242:75:26;;;;;;;323:70;;;;;;;;;;;;;:::i;143:22::-;;;;;;;;;;;;;;;;172:64;;;;;;:::i;:::-;219:6;:10;172:64;399:303;551:144;;-1:-1:-1;;;551:144:26;;1285:3:32;551:144:26;;;;1267:22:32;;;;1326:2;1305:19;;;1298:31;-1:-1:-1;;;1345:19:32;;;1338:45;1421:3;1399:20;;;1392:33;1462:2;1441:19;;;1434:31;-1:-1:-1;;;1481:19:32;;;1474:51;661:4:26;1563:18:32;;;1556:50;1544:3;1622:18;;;1615:30;1661:18;;;1654:29;-1:-1:-1;;;1699:19:32;;;1692:35;530:10:26;;-1:-1:-1;;;;;551:12:26;;;;;571:9;;1744:19:32;;551:144:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;466:236;399:303;:::o;323:70::-;363:23;;-1:-1:-1;;;363:23:26;;2165:2:32;363:23:26;;;2147:21:32;2204:1;2184:18;;;2177:29;-1:-1:-1;;;2222:18:32;;;2215:35;2267:18;;363:23:26;;;;;;;14:294:32;81:6;134:2;122:9;113:7;109:23;105:32;102:52;;;150:1;147;140:12;102:52;176:23;;-1:-1:-1;;;;;228:31:32;;218:42;;208:70;;274:1;271;264:12;208:70;297:5;14:294;-1:-1:-1;;;14:294:32:o;675:179::-;733:6;786:2;774:9;765:7;761:23;757:32;754:52;;;802:1;799;792:12;754:52;-1:-1:-1;825:23:32;;675:179;-1:-1:-1;675:179:32:o;1774:184::-;1844:6;1897:2;1885:9;1876:7;1872:23;1868:32;1865:52;;;1913:1;1910;1903:12;1865:52;-1:-1:-1;1936:16:32;;1774:184;-1:-1:-1;1774:184:32:o", - "source": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.18;\n\nimport \"./LiquidityBridgeContract.sol\";\n\ncontract Mock {\n int private status;\n uint256 public balance;\n\n function set(int s) external payable {\n status = s;\n }\n\n function check() external view returns (int) {\n return status;\n }\n\n function fail() external pure {\n require(false, \"error\");\n }\n\n function callRegister(address payable lbcAddress) external payable {\n LiquidityBridgeContract lbc = LiquidityBridgeContract(lbcAddress);\n lbc.register{value: msg.value}(\n \"First contract\",\n \"http://localhost/api\",\n true,\n \"both\"\n );\n }\n}\n", - "sourcePath": "/Users/luischavez/iov/liquidity-bridge-contract/contracts/Mock.sol", - "ast": { - "absolutePath": "project:/contracts/Mock.sol", - "exportedSymbols": { - "Bridge": [ - 4173 - ], - "BtcUtils": [ - 3743 - ], - "ContextUpgradeable": [ - 767 - ], - "Initializable": [ - 301 - ], - "LiquidityBridgeContract": [ - 7898 - ], - "Mock": [ - 10923 - ], - "OpCodes": [ - 3770 - ], - "OwnableUpgradeable": [ - 132 - ], - "Quotes": [ - 11190 - ], - "ReentrancyGuardUpgradeable": [ - 386 - ], - "SignatureValidator": [ - 11532 - ] - }, - "id": 10924, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 10865, - "literals": [ - "solidity", - "^", - "0.8", - ".18" - ], - "nodeType": "PragmaDirective", - "src": "32:24:26" - }, - { - "absolutePath": "project:/contracts/LiquidityBridgeContract.sol", - "file": "./LiquidityBridgeContract.sol", - "id": 10866, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 10924, - "sourceUnit": 7899, - "src": "58:39:26", - "symbolAliases": [], - "unitAlias": "" - }, - { - "abstract": false, - "baseContracts": [], - "canonicalName": "Mock", - "contractDependencies": [], - "contractKind": "contract", - "fullyImplemented": true, - "id": 10923, - "linearizedBaseContracts": [ - 10923 - ], - "name": "Mock", - "nameLocation": "108:4:26", - "nodeType": "ContractDefinition", - "nodes": [ - { - "constant": false, - "id": 10868, - "mutability": "mutable", - "name": "status", - "nameLocation": "131:6:26", - "nodeType": "VariableDeclaration", - "scope": 10923, - "src": "119:18:26", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 10867, - "name": "int", - "nodeType": "ElementaryTypeName", - "src": "119:3:26", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "private" - }, - { - "constant": false, - "functionSelector": "b69ef8a8", - "id": 10870, - "mutability": "mutable", - "name": "balance", - "nameLocation": "158:7:26", - "nodeType": "VariableDeclaration", - "scope": 10923, - "src": "143:22:26", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 10869, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "143:7:26", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "public" - }, - { - "body": { - "id": 10879, - "nodeType": "Block", - "src": "209:27:26", - "statements": [ - { - "expression": { - "id": 10877, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 10875, - "name": "status", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10868, - "src": "219:6:26", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 10876, - "name": "s", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10872, - "src": "228:1:26", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "src": "219:10:26", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "id": 10878, - "nodeType": "ExpressionStatement", - "src": "219:10:26" - } - ] - }, - "functionSelector": "e5c19b2d", - "id": 10880, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "set", - "nameLocation": "181:3:26", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 10873, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 10872, - "mutability": "mutable", - "name": "s", - "nameLocation": "189:1:26", - "nodeType": "VariableDeclaration", - "scope": 10880, - "src": "185:5:26", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 10871, - "name": "int", - "nodeType": "ElementaryTypeName", - "src": "185:3:26", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "184:7:26" - }, - "returnParameters": { - "id": 10874, - "nodeType": "ParameterList", - "parameters": [], - "src": "209:0:26" - }, - "scope": 10923, - "src": "172:64:26", - "stateMutability": "payable", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 10887, - "nodeType": "Block", - "src": "287:30:26", - "statements": [ - { - "expression": { - "id": 10885, - "name": "status", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10868, - "src": "304:6:26", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "functionReturnParameters": 10884, - "id": 10886, - "nodeType": "Return", - "src": "297:13:26" - } - ] - }, - "functionSelector": "919840ad", - "id": 10888, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "check", - "nameLocation": "251:5:26", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 10881, - "nodeType": "ParameterList", - "parameters": [], - "src": "256:2:26" - }, - "returnParameters": { - "id": 10884, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 10883, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 10888, - "src": "282:3:26", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - }, - "typeName": { - "id": 10882, - "name": "int", - "nodeType": "ElementaryTypeName", - "src": "282:3:26", - "typeDescriptions": { - "typeIdentifier": "t_int256", - "typeString": "int256" - } - }, - "visibility": "internal" - } - ], - "src": "281:5:26" - }, - "scope": 10923, - "src": "242:75:26", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 10896, - "nodeType": "Block", - "src": "353:40:26", - "statements": [ - { - "expression": { - "arguments": [ - { - "hexValue": "66616c7365", - "id": 10892, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "371:5:26", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "false" - }, - { - "hexValue": "6572726f72", - "id": 10893, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "378:7:26", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_177f242d20ff7dc4598657e4355abd2b0df8f6351283a95d209db56ce73ef6e9", - "typeString": "literal_string \"error\"" - }, - "value": "error" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_177f242d20ff7dc4598657e4355abd2b0df8f6351283a95d209db56ce73ef6e9", - "typeString": "literal_string \"error\"" - } - ], - "id": 10891, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "363:7:26", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 10894, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "363:23:26", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 10895, - "nodeType": "ExpressionStatement", - "src": "363:23:26" - } - ] - }, - "functionSelector": "a9cc4718", - "id": 10897, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "fail", - "nameLocation": "332:4:26", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 10889, - "nodeType": "ParameterList", - "parameters": [], - "src": "336:2:26" - }, - "returnParameters": { - "id": 10890, - "nodeType": "ParameterList", - "parameters": [], - "src": "353:0:26" - }, - "scope": 10923, - "src": "323:70:26", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 10921, - "nodeType": "Block", - "src": "466:236:26", - "statements": [ - { - "assignments": [ - 10904 - ], - "declarations": [ - { - "constant": false, - "id": 10904, - "mutability": "mutable", - "name": "lbc", - "nameLocation": "500:3:26", - "nodeType": "VariableDeclaration", - "scope": 10921, - "src": "476:27:26", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_LiquidityBridgeContract_$7898", - "typeString": "contract LiquidityBridgeContract" - }, - "typeName": { - "id": 10903, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 10902, - "name": "LiquidityBridgeContract", - "nameLocations": [ - "476:23:26" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 7898, - "src": "476:23:26" - }, - "referencedDeclaration": 7898, - "src": "476:23:26", - "typeDescriptions": { - "typeIdentifier": "t_contract$_LiquidityBridgeContract_$7898", - "typeString": "contract LiquidityBridgeContract" - } - }, - "visibility": "internal" - } - ], - "id": 10908, - "initialValue": { - "arguments": [ - { - "id": 10906, - "name": "lbcAddress", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10899, - "src": "530:10:26", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - ], - "id": 10905, - "name": "LiquidityBridgeContract", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 7898, - "src": "506:23:26", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_LiquidityBridgeContract_$7898_$", - "typeString": "type(contract LiquidityBridgeContract)" - } - }, - "id": 10907, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "506:35:26", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_contract$_LiquidityBridgeContract_$7898", - "typeString": "contract LiquidityBridgeContract" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "476:65:26" - }, - { - "expression": { - "arguments": [ - { - "hexValue": "466972737420636f6e7472616374", - "id": 10915, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "595:16:26", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_12ef6b872f6c4958940c5c0afd3e36cc0e19c029aff427a11a2a23931f8a0191", - "typeString": "literal_string \"First contract\"" - }, - "value": "First contract" - }, - { - "hexValue": "687474703a2f2f6c6f63616c686f73742f617069", - "id": 10916, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "625:22:26", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_25a23078b571f2e3f31ae191c34bb210f450523e06e2fb031f4582c8782e95ec", - "typeString": "literal_string \"http://localhost/api\"" - }, - "value": "http://localhost/api" - }, - { - "hexValue": "74727565", - "id": 10917, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "661:4:26", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - { - "hexValue": "626f7468", - "id": 10918, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "679:6:26", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_36ad643d447cde9387780ae6f5b371120b595aaff5d56b8440952d5f7116fa16", - "typeString": "literal_string \"both\"" - }, - "value": "both" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_12ef6b872f6c4958940c5c0afd3e36cc0e19c029aff427a11a2a23931f8a0191", - "typeString": "literal_string \"First contract\"" - }, - { - "typeIdentifier": "t_stringliteral_25a23078b571f2e3f31ae191c34bb210f450523e06e2fb031f4582c8782e95ec", - "typeString": "literal_string \"http://localhost/api\"" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_36ad643d447cde9387780ae6f5b371120b595aaff5d56b8440952d5f7116fa16", - "typeString": "literal_string \"both\"" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_12ef6b872f6c4958940c5c0afd3e36cc0e19c029aff427a11a2a23931f8a0191", - "typeString": "literal_string \"First contract\"" - }, - { - "typeIdentifier": "t_stringliteral_25a23078b571f2e3f31ae191c34bb210f450523e06e2fb031f4582c8782e95ec", - "typeString": "literal_string \"http://localhost/api\"" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_36ad643d447cde9387780ae6f5b371120b595aaff5d56b8440952d5f7116fa16", - "typeString": "literal_string \"both\"" - } - ], - "expression": { - "id": 10909, - "name": "lbc", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 10904, - "src": "551:3:26", - "typeDescriptions": { - "typeIdentifier": "t_contract$_LiquidityBridgeContract_$7898", - "typeString": "contract LiquidityBridgeContract" - } - }, - "id": 10911, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "555:8:26", - "memberName": "register", - "nodeType": "MemberAccess", - "referencedDeclaration": 5810, - "src": "551:12:26", - "typeDescriptions": { - "typeIdentifier": "t_function_external_payable$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_bool_$_t_string_memory_ptr_$returns$_t_uint256_$", - "typeString": "function (string memory,string memory,bool,string memory) payable external returns (uint256)" - } - }, - "id": 10914, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "names": [ - "value" - ], - "nodeType": "FunctionCallOptions", - "options": [ - { - "expression": { - "id": 10912, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "571:3:26", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 10913, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "575:5:26", - "memberName": "value", - "nodeType": "MemberAccess", - "src": "571:9:26", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "src": "551:30:26", - "typeDescriptions": { - "typeIdentifier": "t_function_external_payable$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_bool_$_t_string_memory_ptr_$returns$_t_uint256_$value", - "typeString": "function (string memory,string memory,bool,string memory) payable external returns (uint256)" - } - }, - "id": 10919, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "551:144:26", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 10920, - "nodeType": "ExpressionStatement", - "src": "551:144:26" - } - ] - }, - "functionSelector": "1192fe62", - "id": 10922, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "callRegister", - "nameLocation": "408:12:26", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 10900, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 10899, - "mutability": "mutable", - "name": "lbcAddress", - "nameLocation": "437:10:26", - "nodeType": "VariableDeclaration", - "scope": 10922, - "src": "421:26:26", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - }, - "typeName": { - "id": 10898, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "421:15:26", - "stateMutability": "payable", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "visibility": "internal" - } - ], - "src": "420:28:26" - }, - "returnParameters": { - "id": 10901, - "nodeType": "ParameterList", - "parameters": [], - "src": "466:0:26" - }, - "scope": 10923, - "src": "399:303:26", - "stateMutability": "payable", - "virtual": false, - "visibility": "external" - } - ], - "scope": 10924, - "src": "99:605:26", - "usedErrors": [] - } - ], - "src": "32:673:26" - }, - "compiler": { - "name": "solc", - "version": "0.8.18+commit.87f61d96.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "3.4.13", - "updatedAt": "2024-12-10T18:53:54.123Z", - "networkType": "ethereum", - "devdoc": { - "kind": "dev", - "methods": {}, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } -} \ No newline at end of file diff --git a/build/contracts/OpCodes.json b/build/contracts/OpCodes.json deleted file mode 100644 index cfd7389..0000000 --- a/build/contracts/OpCodes.json +++ /dev/null @@ -1,679 +0,0 @@ -{ - "contractName": "OpCodes", - "abi": [ - { - "inputs": [], - "name": "OP_0", - "outputs": [ - { - "internalType": "bytes1", - "name": "", - "type": "bytes1" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "OP_1", - "outputs": [ - { - "internalType": "bytes1", - "name": "", - "type": "bytes1" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "OP_CHECKSIG", - "outputs": [ - { - "internalType": "bytes1", - "name": "", - "type": "bytes1" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "OP_DUP", - "outputs": [ - { - "internalType": "bytes1", - "name": "", - "type": "bytes1" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "OP_EQUAL", - "outputs": [ - { - "internalType": "bytes1", - "name": "", - "type": "bytes1" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "OP_EQUALVERIFY", - "outputs": [ - { - "internalType": "bytes1", - "name": "", - "type": "bytes1" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "OP_HASH160", - "outputs": [ - { - "internalType": "bytes1", - "name": "", - "type": "bytes1" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "OP_RETURN", - "outputs": [ - { - "internalType": "bytes1", - "name": "", - "type": "bytes1" - } - ], - "stateMutability": "view", - "type": "function" - } - ], - "metadata": "{\"compiler\":{\"version\":\"0.8.18+commit.87f61d96\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"OP_0\",\"outputs\":[{\"internalType\":\"bytes1\",\"name\":\"\",\"type\":\"bytes1\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"OP_1\",\"outputs\":[{\"internalType\":\"bytes1\",\"name\":\"\",\"type\":\"bytes1\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"OP_CHECKSIG\",\"outputs\":[{\"internalType\":\"bytes1\",\"name\":\"\",\"type\":\"bytes1\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"OP_DUP\",\"outputs\":[{\"internalType\":\"bytes1\",\"name\":\"\",\"type\":\"bytes1\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"OP_EQUAL\",\"outputs\":[{\"internalType\":\"bytes1\",\"name\":\"\",\"type\":\"bytes1\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"OP_EQUALVERIFY\",\"outputs\":[{\"internalType\":\"bytes1\",\"name\":\"\",\"type\":\"bytes1\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"OP_HASH160\",\"outputs\":[{\"internalType\":\"bytes1\",\"name\":\"\",\"type\":\"bytes1\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"OP_RETURN\",\"outputs\":[{\"internalType\":\"bytes1\",\"name\":\"\",\"type\":\"bytes1\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@rsksmart/btc-transaction-solidity-helper/contracts/OpCodes.sol\":\"OpCodes\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":1},\"remappings\":[]},\"sources\":{\"@rsksmart/btc-transaction-solidity-helper/contracts/OpCodes.sol\":{\"keccak256\":\"0x5996186b53b109f592341cfe164c6673346eafda66a2a496e6d5fcec5c74de5a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8d3073328ce73163fe8088b14bf39ba03f5f233604a0eb329bb64f2be73ff411\",\"dweb:/ipfs/QmScVLft2AL48D1Z93e3TDQbfZNh7sxJaeS23U4KPGsjTY\"]}},\"version\":1}", - "bytecode": "0x61011e61003a600b82828239805160001a60731461002d57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe730000000000000000000000000000000000000000301460806040526004361060795760003560e01c806325468e0614607e5780635b9aeed01460a55780637944baea1460af5780637984beeb1460b9578063ad4039671460c3578063b0354dd91460cd578063f3c9009a1460d7578063fffbdf231460e1575b600080fd5b608860a960f81b81565b6040516001600160f81b0319909116815260200160405180910390f35b6088603560f91b81565b6088602b60fa1b81565b6088603b60f91b81565b6088601160fb1b81565b6088605160f81b81565b6088608760f81b81565b608860008156fea2646970667358221220e220644e75a9f6e22bc18d939db14c631bc2401556ac1b24353c9f22c910c01064736f6c63430008120033", - "deployedBytecode": "0x730000000000000000000000000000000000000000301460806040526004361060795760003560e01c806325468e0614607e5780635b9aeed01460a55780637944baea1460af5780637984beeb1460b9578063ad4039671460c3578063b0354dd91460cd578063f3c9009a1460d7578063fffbdf231460e1575b600080fd5b608860a960f81b81565b6040516001600160f81b0319909116815260200160405180910390f35b6088603560f91b81565b6088602b60fa1b81565b6088603b60f91b81565b6088601160fb1b81565b6088605160f81b81565b6088608760f81b81565b608860008156fea2646970667358221220e220644e75a9f6e22bc18d939db14c631bc2401556ac1b24353c9f22c910c01064736f6c63430008120033", - "immutableReferences": {}, - "generatedSources": [], - "deployedGeneratedSources": [ - { - "ast": { - "nodeType": "YulBlock", - "src": "0:219:32", - "statements": [ - { - "nodeType": "YulBlock", - "src": "6:3:32", - "statements": [] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "121:96:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "131:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "143:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "154:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "139:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "139:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "131:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "173:9:32" - }, - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "188:6:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "200:3:32", - "type": "", - "value": "248" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "205:3:32", - "type": "", - "value": "255" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "196:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "196:13:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "184:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "184:26:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "166:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "166:45:32" - }, - "nodeType": "YulExpressionStatement", - "src": "166:45:32" - } - ] - }, - "name": "abi_encode_tuple_t_bytes1__to_t_bytes1__fromStack_library_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "90:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "101:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "112:4:32", - "type": "" - } - ], - "src": "14:203:32" - } - ] - }, - "contents": "{\n { }\n function abi_encode_tuple_t_bytes1__to_t_bytes1__fromStack_library_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, shl(248, 255)))\n }\n}", - "id": 32, - "language": "Yul", - "name": "#utility.yul" - } - ], - "sourceMap": "59:374:18:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;59:374:18;;;;;;;;;;;;;;;;;", - "deployedSourceMap": "59:374:18:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;123:40;;-1:-1:-1;;;123:40:18;;;;;-1:-1:-1;;;;;;184:26:32;;;166:45;;154:2;139:18;123:40:18;;;;;;;266:39;;-1:-1:-1;;;266:39:18;;219:41;;-1:-1:-1;;;219:41:18;;81:36;;-1:-1:-1;;;81:36:18;;169:44;;-1:-1:-1;;;169:44:18;;396:34;;-1:-1:-1;;;396:34:18;;311:38;;-1:-1:-1;;;311:38:18;;356:34;;386:4;356:34;", - "source": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.18;\n\n\nlibrary OpCodes {\n bytes1 public constant OP_DUP = 0x76;\n bytes1 public constant OP_HASH160 = 0xa9;\n bytes1 public constant OP_EQUALVERIFY = 0x88;\n bytes1 public constant OP_CHECKSIG = 0xac;\n bytes1 public constant OP_RETURN = 0x6a;\n bytes1 public constant OP_EQUAL = 0x87;\n\n bytes1 public constant OP_0 = 0x00;\n bytes1 public constant OP_1 = 0x51;\n}\n", - "sourcePath": "@rsksmart/btc-transaction-solidity-helper/contracts/OpCodes.sol", - "ast": { - "absolutePath": "@rsksmart/btc-transaction-solidity-helper/contracts/OpCodes.sol", - "exportedSymbols": { - "OpCodes": [ - 3770 - ] - }, - "id": 3771, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 3745, - "literals": [ - "solidity", - "^", - "0.8", - ".18" - ], - "nodeType": "PragmaDirective", - "src": "32:24:18" - }, - { - "abstract": false, - "baseContracts": [], - "canonicalName": "OpCodes", - "contractDependencies": [], - "contractKind": "library", - "fullyImplemented": true, - "id": 3770, - "linearizedBaseContracts": [ - 3770 - ], - "name": "OpCodes", - "nameLocation": "67:7:18", - "nodeType": "ContractDefinition", - "nodes": [ - { - "constant": true, - "functionSelector": "7984beeb", - "id": 3748, - "mutability": "constant", - "name": "OP_DUP", - "nameLocation": "104:6:18", - "nodeType": "VariableDeclaration", - "scope": 3770, - "src": "81:36:18", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - }, - "typeName": { - "id": 3746, - "name": "bytes1", - "nodeType": "ElementaryTypeName", - "src": "81:6:18", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "value": { - "hexValue": "30783736", - "id": 3747, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "113:4:18", - "typeDescriptions": { - "typeIdentifier": "t_rational_118_by_1", - "typeString": "int_const 118" - }, - "value": "0x76" - }, - "visibility": "public" - }, - { - "constant": true, - "functionSelector": "25468e06", - "id": 3751, - "mutability": "constant", - "name": "OP_HASH160", - "nameLocation": "146:10:18", - "nodeType": "VariableDeclaration", - "scope": 3770, - "src": "123:40:18", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - }, - "typeName": { - "id": 3749, - "name": "bytes1", - "nodeType": "ElementaryTypeName", - "src": "123:6:18", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "value": { - "hexValue": "30786139", - "id": 3750, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "159:4:18", - "typeDescriptions": { - "typeIdentifier": "t_rational_169_by_1", - "typeString": "int_const 169" - }, - "value": "0xa9" - }, - "visibility": "public" - }, - { - "constant": true, - "functionSelector": "ad403967", - "id": 3754, - "mutability": "constant", - "name": "OP_EQUALVERIFY", - "nameLocation": "192:14:18", - "nodeType": "VariableDeclaration", - "scope": 3770, - "src": "169:44:18", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - }, - "typeName": { - "id": 3752, - "name": "bytes1", - "nodeType": "ElementaryTypeName", - "src": "169:6:18", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "value": { - "hexValue": "30783838", - "id": 3753, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "209:4:18", - "typeDescriptions": { - "typeIdentifier": "t_rational_136_by_1", - "typeString": "int_const 136" - }, - "value": "0x88" - }, - "visibility": "public" - }, - { - "constant": true, - "functionSelector": "7944baea", - "id": 3757, - "mutability": "constant", - "name": "OP_CHECKSIG", - "nameLocation": "242:11:18", - "nodeType": "VariableDeclaration", - "scope": 3770, - "src": "219:41:18", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - }, - "typeName": { - "id": 3755, - "name": "bytes1", - "nodeType": "ElementaryTypeName", - "src": "219:6:18", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "value": { - "hexValue": "30786163", - "id": 3756, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "256:4:18", - "typeDescriptions": { - "typeIdentifier": "t_rational_172_by_1", - "typeString": "int_const 172" - }, - "value": "0xac" - }, - "visibility": "public" - }, - { - "constant": true, - "functionSelector": "5b9aeed0", - "id": 3760, - "mutability": "constant", - "name": "OP_RETURN", - "nameLocation": "289:9:18", - "nodeType": "VariableDeclaration", - "scope": 3770, - "src": "266:39:18", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - }, - "typeName": { - "id": 3758, - "name": "bytes1", - "nodeType": "ElementaryTypeName", - "src": "266:6:18", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "value": { - "hexValue": "30783661", - "id": 3759, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "301:4:18", - "typeDescriptions": { - "typeIdentifier": "t_rational_106_by_1", - "typeString": "int_const 106" - }, - "value": "0x6a" - }, - "visibility": "public" - }, - { - "constant": true, - "functionSelector": "f3c9009a", - "id": 3763, - "mutability": "constant", - "name": "OP_EQUAL", - "nameLocation": "334:8:18", - "nodeType": "VariableDeclaration", - "scope": 3770, - "src": "311:38:18", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - }, - "typeName": { - "id": 3761, - "name": "bytes1", - "nodeType": "ElementaryTypeName", - "src": "311:6:18", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "value": { - "hexValue": "30783837", - "id": 3762, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "345:4:18", - "typeDescriptions": { - "typeIdentifier": "t_rational_135_by_1", - "typeString": "int_const 135" - }, - "value": "0x87" - }, - "visibility": "public" - }, - { - "constant": true, - "functionSelector": "fffbdf23", - "id": 3766, - "mutability": "constant", - "name": "OP_0", - "nameLocation": "379:4:18", - "nodeType": "VariableDeclaration", - "scope": 3770, - "src": "356:34:18", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - }, - "typeName": { - "id": 3764, - "name": "bytes1", - "nodeType": "ElementaryTypeName", - "src": "356:6:18", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "value": { - "hexValue": "30783030", - "id": 3765, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "386:4:18", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0x00" - }, - "visibility": "public" - }, - { - "constant": true, - "functionSelector": "b0354dd9", - "id": 3769, - "mutability": "constant", - "name": "OP_1", - "nameLocation": "419:4:18", - "nodeType": "VariableDeclaration", - "scope": 3770, - "src": "396:34:18", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - }, - "typeName": { - "id": 3767, - "name": "bytes1", - "nodeType": "ElementaryTypeName", - "src": "396:6:18", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "value": { - "hexValue": "30783531", - "id": 3768, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "426:4:18", - "typeDescriptions": { - "typeIdentifier": "t_rational_81_by_1", - "typeString": "int_const 81" - }, - "value": "0x51" - }, - "visibility": "public" - } - ], - "scope": 3771, - "src": "59:374:18", - "usedErrors": [] - } - ], - "src": "32:402:18" - }, - "compiler": { - "name": "solc", - "version": "0.8.18+commit.87f61d96.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "3.4.13", - "updatedAt": "2024-12-10T18:52:58.877Z", - "devdoc": { - "kind": "dev", - "methods": {}, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } -} \ No newline at end of file diff --git a/build/contracts/Ownable.json b/build/contracts/Ownable.json deleted file mode 100644 index 0852cfb..0000000 --- a/build/contracts/Ownable.json +++ /dev/null @@ -1,1422 +0,0 @@ -{ - "contractName": "Ownable", - "abi": [ - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "previousOwner", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "newOwner", - "type": "address" - } - ], - "name": "OwnershipTransferred", - "type": "event" - }, - { - "inputs": [], - "name": "owner", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "renounceOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "newOwner", - "type": "address" - } - ], - "name": "transferOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - } - ], - "metadata": "{\"compiler\":{\"version\":\"0.8.18+commit.87f61d96\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"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. By default, the owner account will be the one that deploys the contract. 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.\",\"kind\":\"dev\",\"methods\":{\"constructor\":{\"details\":\"Initializes the contract setting the deployer as the initial owner.\"},\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"renounceOwnership()\":{\"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(address)\":{\"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\":{\"@openzeppelin/contracts/access/Ownable.sol\":\"Ownable\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":1},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts/access/Ownable.sol\":{\"keccak256\":\"0xba43b97fba0d32eb4254f6a5a297b39a19a247082a02d6e69349e071e2946218\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fc980984badf3984b6303b377711220e067722bbd6a135b24669ff5069ef9f32\",\"dweb:/ipfs/QmPHXMSXj99XjSVM21YsY6aNtLLjLVXDbyN76J5HQYvvrz\"]},\"@openzeppelin/contracts/utils/Context.sol\":{\"keccak256\":\"0xa92e4fa126feb6907daa0513ddd816b2eb91f30a808de54f63c17d0e162c3439\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a367861093b74443b137564d3f3c472f70bcf114739e62059c939f25e315706c\",\"dweb:/ipfs/Qmd7JMpcxD9RuQjK3uM3EzJUgSqdN8vzp8eytEiuwxQJ6h\"]}},\"version\":1}", - "bytecode": "0x", - "deployedBytecode": "0x", - "immutableReferences": {}, - "generatedSources": [], - "deployedGeneratedSources": [], - "sourceMap": "", - "deployedSourceMap": "", - "source": "// SPDX-License-Identifier: MIT\n// OpenZeppelin Contracts (last updated v4.9.0) (access/Ownable.sol)\n\npragma solidity ^0.8.0;\n\nimport \"../utils/Context.sol\";\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 * By default, the owner account will be the one that deploys the contract. This\n * can 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 is Context {\n address private _owner;\n\n event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);\n\n /**\n * @dev Initializes the contract setting the deployer as the initial owner.\n */\n constructor() {\n _transferOwnership(_msgSender());\n }\n\n /**\n * @dev Throws if called by any account other than the owner.\n */\n modifier onlyOwner() {\n _checkOwner();\n _;\n }\n\n /**\n * @dev Returns the address of the current owner.\n */\n function owner() public view virtual returns (address) {\n return _owner;\n }\n\n /**\n * @dev Throws if the sender is not the owner.\n */\n function _checkOwner() internal view virtual {\n require(owner() == _msgSender(), \"Ownable: caller is not the owner\");\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() public virtual onlyOwner {\n _transferOwnership(address(0));\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(address newOwner) public virtual onlyOwner {\n require(newOwner != address(0), \"Ownable: new owner is the zero address\");\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(address newOwner) internal virtual {\n address oldOwner = _owner;\n _owner = newOwner;\n emit OwnershipTransferred(oldOwner, newOwner);\n }\n}\n", - "sourcePath": "@openzeppelin/contracts/access/Ownable.sol", - "ast": { - "absolutePath": "@openzeppelin/contracts/access/Ownable.sol", - "exportedSymbols": { - "Context": [ - 2133 - ], - "Ownable": [ - 880 - ] - }, - "id": 881, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 769, - "literals": [ - "solidity", - "^", - "0.8", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "102:23:5" - }, - { - "absolutePath": "@openzeppelin/contracts/utils/Context.sol", - "file": "../utils/Context.sol", - "id": 770, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 881, - "sourceUnit": 2134, - "src": "127:30:5", - "symbolAliases": [], - "unitAlias": "" - }, - { - "abstract": true, - "baseContracts": [ - { - "baseName": { - "id": 772, - "name": "Context", - "nameLocations": [ - "683:7:5" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 2133, - "src": "683:7:5" - }, - "id": 773, - "nodeType": "InheritanceSpecifier", - "src": "683:7:5" - } - ], - "canonicalName": "Ownable", - "contractDependencies": [], - "contractKind": "contract", - "documentation": { - "id": 771, - "nodeType": "StructuredDocumentation", - "src": "159:494:5", - "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 By default, the owner account will be the one that deploys the contract. This\n can 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": 880, - "linearizedBaseContracts": [ - 880, - 2133 - ], - "name": "Ownable", - "nameLocation": "672:7:5", - "nodeType": "ContractDefinition", - "nodes": [ - { - "constant": false, - "id": 775, - "mutability": "mutable", - "name": "_owner", - "nameLocation": "713:6:5", - "nodeType": "VariableDeclaration", - "scope": 880, - "src": "697:22:5", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 774, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "697:7:5", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "private" - }, - { - "anonymous": false, - "eventSelector": "8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0", - "id": 781, - "name": "OwnershipTransferred", - "nameLocation": "732:20:5", - "nodeType": "EventDefinition", - "parameters": { - "id": 780, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 777, - "indexed": true, - "mutability": "mutable", - "name": "previousOwner", - "nameLocation": "769:13:5", - "nodeType": "VariableDeclaration", - "scope": 781, - "src": "753:29:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 776, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "753:7:5", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 779, - "indexed": true, - "mutability": "mutable", - "name": "newOwner", - "nameLocation": "800:8:5", - "nodeType": "VariableDeclaration", - "scope": 781, - "src": "784:24:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 778, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "784:7:5", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "752:57:5" - }, - "src": "726:84:5" - }, - { - "body": { - "id": 790, - "nodeType": "Block", - "src": "926:49:5", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 786, - "name": "_msgSender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2115, - "src": "955:10:5", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", - "typeString": "function () view returns (address)" - } - }, - "id": 787, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "955:12:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 785, - "name": "_transferOwnership", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 879, - "src": "936:18:5", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$__$", - "typeString": "function (address)" - } - }, - "id": 788, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "936:32:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 789, - "nodeType": "ExpressionStatement", - "src": "936:32:5" - } - ] - }, - "documentation": { - "id": 782, - "nodeType": "StructuredDocumentation", - "src": "816:91:5", - "text": " @dev Initializes the contract setting the deployer as the initial owner." - }, - "id": 791, - "implemented": true, - "kind": "constructor", - "modifiers": [], - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 783, - "nodeType": "ParameterList", - "parameters": [], - "src": "923:2:5" - }, - "returnParameters": { - "id": 784, - "nodeType": "ParameterList", - "parameters": [], - "src": "926:0:5" - }, - "scope": 880, - "src": "912:63:5", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 798, - "nodeType": "Block", - "src": "1084:41:5", - "statements": [ - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 794, - "name": "_checkOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 822, - "src": "1094:11:5", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$__$returns$__$", - "typeString": "function () view" - } - }, - "id": 795, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1094:13:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 796, - "nodeType": "ExpressionStatement", - "src": "1094:13:5" - }, - { - "id": 797, - "nodeType": "PlaceholderStatement", - "src": "1117:1:5" - } - ] - }, - "documentation": { - "id": 792, - "nodeType": "StructuredDocumentation", - "src": "981:77:5", - "text": " @dev Throws if called by any account other than the owner." - }, - "id": 799, - "name": "onlyOwner", - "nameLocation": "1072:9:5", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 793, - "nodeType": "ParameterList", - "parameters": [], - "src": "1081:2:5" - }, - "src": "1063:62:5", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 807, - "nodeType": "Block", - "src": "1256:30:5", - "statements": [ - { - "expression": { - "id": 805, - "name": "_owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 775, - "src": "1273:6:5", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "functionReturnParameters": 804, - "id": 806, - "nodeType": "Return", - "src": "1266:13:5" - } - ] - }, - "documentation": { - "id": 800, - "nodeType": "StructuredDocumentation", - "src": "1131:65:5", - "text": " @dev Returns the address of the current owner." - }, - "functionSelector": "8da5cb5b", - "id": 808, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "owner", - "nameLocation": "1210:5:5", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 801, - "nodeType": "ParameterList", - "parameters": [], - "src": "1215:2:5" - }, - "returnParameters": { - "id": 804, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 803, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 808, - "src": "1247:7:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 802, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1247:7:5", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "1246:9:5" - }, - "scope": 880, - "src": "1201:85:5", - "stateMutability": "view", - "virtual": true, - "visibility": "public" - }, - { - "body": { - "id": 821, - "nodeType": "Block", - "src": "1404:85:5", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 817, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 813, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 808, - "src": "1422:5:5", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", - "typeString": "function () view returns (address)" - } - }, - "id": 814, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1422:7:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 815, - "name": "_msgSender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2115, - "src": "1433:10:5", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", - "typeString": "function () view returns (address)" - } - }, - "id": 816, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1433:12:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "1422:23:5", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572", - "id": 818, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1447:34:5", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe", - "typeString": "literal_string \"Ownable: caller is not the owner\"" - }, - "value": "Ownable: caller is not the owner" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe", - "typeString": "literal_string \"Ownable: caller is not the owner\"" - } - ], - "id": 812, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "1414:7:5", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 819, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1414:68:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 820, - "nodeType": "ExpressionStatement", - "src": "1414:68:5" - } - ] - }, - "documentation": { - "id": 809, - "nodeType": "StructuredDocumentation", - "src": "1292:62:5", - "text": " @dev Throws if the sender is not the owner." - }, - "id": 822, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_checkOwner", - "nameLocation": "1368:11:5", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 810, - "nodeType": "ParameterList", - "parameters": [], - "src": "1379:2:5" - }, - "returnParameters": { - "id": 811, - "nodeType": "ParameterList", - "parameters": [], - "src": "1404:0:5" - }, - "scope": 880, - "src": "1359:130:5", - "stateMutability": "view", - "virtual": true, - "visibility": "internal" - }, - { - "body": { - "id": 835, - "nodeType": "Block", - "src": "1878:47:5", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "hexValue": "30", - "id": 831, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1915:1:5", - "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": 830, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "1907:7:5", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 829, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1907:7:5", - "typeDescriptions": {} - } - }, - "id": 832, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1907:10:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 828, - "name": "_transferOwnership", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 879, - "src": "1888:18:5", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$__$", - "typeString": "function (address)" - } - }, - "id": 833, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1888:30:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 834, - "nodeType": "ExpressionStatement", - "src": "1888:30:5" - } - ] - }, - "documentation": { - "id": 823, - "nodeType": "StructuredDocumentation", - "src": "1495:324:5", - "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": "715018a6", - "id": 836, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "id": 826, - "kind": "modifierInvocation", - "modifierName": { - "id": 825, - "name": "onlyOwner", - "nameLocations": [ - "1868:9:5" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 799, - "src": "1868:9:5" - }, - "nodeType": "ModifierInvocation", - "src": "1868:9:5" - } - ], - "name": "renounceOwnership", - "nameLocation": "1833:17:5", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 824, - "nodeType": "ParameterList", - "parameters": [], - "src": "1850:2:5" - }, - "returnParameters": { - "id": 827, - "nodeType": "ParameterList", - "parameters": [], - "src": "1878:0:5" - }, - "scope": 880, - "src": "1824:101:5", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "public" - }, - { - "body": { - "id": 858, - "nodeType": "Block", - "src": "2144:128:5", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 850, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 845, - "name": "newOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 839, - "src": "2162:8:5", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "arguments": [ - { - "hexValue": "30", - "id": 848, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2182:1:5", - "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": 847, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "2174:7:5", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 846, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2174:7:5", - "typeDescriptions": {} - } - }, - "id": 849, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2174:10:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "2162:22:5", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373", - "id": 851, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2186:40:5", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe", - "typeString": "literal_string \"Ownable: new owner is the zero address\"" - }, - "value": "Ownable: new owner is the zero address" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe", - "typeString": "literal_string \"Ownable: new owner is the zero address\"" - } - ], - "id": 844, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "2154:7:5", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 852, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2154:73:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 853, - "nodeType": "ExpressionStatement", - "src": "2154:73:5" - }, - { - "expression": { - "arguments": [ - { - "id": 855, - "name": "newOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 839, - "src": "2256:8:5", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 854, - "name": "_transferOwnership", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 879, - "src": "2237:18:5", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$__$", - "typeString": "function (address)" - } - }, - "id": 856, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2237:28:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 857, - "nodeType": "ExpressionStatement", - "src": "2237:28:5" - } - ] - }, - "documentation": { - "id": 837, - "nodeType": "StructuredDocumentation", - "src": "1931:138:5", - "text": " @dev Transfers ownership of the contract to a new account (`newOwner`).\n Can only be called by the current owner." - }, - "functionSelector": "f2fde38b", - "id": 859, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "id": 842, - "kind": "modifierInvocation", - "modifierName": { - "id": 841, - "name": "onlyOwner", - "nameLocations": [ - "2134:9:5" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 799, - "src": "2134:9:5" - }, - "nodeType": "ModifierInvocation", - "src": "2134:9:5" - } - ], - "name": "transferOwnership", - "nameLocation": "2083:17:5", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 840, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 839, - "mutability": "mutable", - "name": "newOwner", - "nameLocation": "2109:8:5", - "nodeType": "VariableDeclaration", - "scope": 859, - "src": "2101:16:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 838, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2101:7:5", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "2100:18:5" - }, - "returnParameters": { - "id": 843, - "nodeType": "ParameterList", - "parameters": [], - "src": "2144:0:5" - }, - "scope": 880, - "src": "2074:198:5", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "public" - }, - { - "body": { - "id": 878, - "nodeType": "Block", - "src": "2489:124:5", - "statements": [ - { - "assignments": [ - 866 - ], - "declarations": [ - { - "constant": false, - "id": 866, - "mutability": "mutable", - "name": "oldOwner", - "nameLocation": "2507:8:5", - "nodeType": "VariableDeclaration", - "scope": 878, - "src": "2499:16:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 865, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2499:7:5", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "id": 868, - "initialValue": { - "id": 867, - "name": "_owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 775, - "src": "2518:6:5", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "2499:25:5" - }, - { - "expression": { - "id": 871, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 869, - "name": "_owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 775, - "src": "2534:6:5", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 870, - "name": "newOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 862, - "src": "2543:8:5", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "2534:17:5", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 872, - "nodeType": "ExpressionStatement", - "src": "2534:17:5" - }, - { - "eventCall": { - "arguments": [ - { - "id": 874, - "name": "oldOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 866, - "src": "2587:8:5", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 875, - "name": "newOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 862, - "src": "2597:8:5", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 873, - "name": "OwnershipTransferred", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 781, - "src": "2566:20:5", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$returns$__$", - "typeString": "function (address,address)" - } - }, - "id": 876, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2566:40:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 877, - "nodeType": "EmitStatement", - "src": "2561:45:5" - } - ] - }, - "documentation": { - "id": 860, - "nodeType": "StructuredDocumentation", - "src": "2278:143:5", - "text": " @dev Transfers ownership of the contract to a new account (`newOwner`).\n Internal function without access restriction." - }, - "id": 879, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_transferOwnership", - "nameLocation": "2435:18:5", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 863, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 862, - "mutability": "mutable", - "name": "newOwner", - "nameLocation": "2462:8:5", - "nodeType": "VariableDeclaration", - "scope": 879, - "src": "2454:16:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 861, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2454:7:5", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "2453:18:5" - }, - "returnParameters": { - "id": 864, - "nodeType": "ParameterList", - "parameters": [], - "src": "2489:0:5" - }, - "scope": 880, - "src": "2426:187:5", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "internal" - } - ], - "scope": 881, - "src": "654:1961:5", - "usedErrors": [] - } - ], - "src": "102:2514:5" - }, - "compiler": { - "name": "solc", - "version": "0.8.18+commit.87f61d96.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "3.4.13", - "updatedAt": "2024-12-10T18:52:58.844Z", - "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. By default, the owner account will be the one that deploys the contract. 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.", - "kind": "dev", - "methods": { - "constructor": { - "details": "Initializes the contract setting the deployer as the initial owner." - }, - "owner()": { - "details": "Returns the address of the current owner." - }, - "renounceOwnership()": { - "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(address)": { - "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 - } -} \ No newline at end of file diff --git a/build/contracts/OwnableUpgradeable.json b/build/contracts/OwnableUpgradeable.json deleted file mode 100644 index 4d3cb89..0000000 --- a/build/contracts/OwnableUpgradeable.json +++ /dev/null @@ -1,1647 +0,0 @@ -{ - "contractName": "OwnableUpgradeable", - "abi": [ - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint8", - "name": "version", - "type": "uint8" - } - ], - "name": "Initialized", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "previousOwner", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "newOwner", - "type": "address" - } - ], - "name": "OwnershipTransferred", - "type": "event" - }, - { - "inputs": [], - "name": "owner", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "renounceOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "newOwner", - "type": "address" - } - ], - "name": "transferOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - } - ], - "metadata": "{\"compiler\":{\"version\":\"0.8.18+commit.87f61d96\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"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. By default, the owner account will be the one that deploys the contract. 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.\",\"events\":{\"Initialized(uint8)\":{\"details\":\"Triggered when the contract has been initialized or reinitialized.\"}},\"kind\":\"dev\",\"methods\":{\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"renounceOwnership()\":{\"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(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"}},\"stateVariables\":{\"__gap\":{\"details\":\"This empty reserved space is put in place to allow future versions to add new variables without shifting down storage in the inheritance chain. See https://docs.openzeppelin.com/contracts/4.x/upgradeable#storage_gaps\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol\":\"OwnableUpgradeable\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":1},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol\":{\"keccak256\":\"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c\",\"dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16\"]},\"@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]},\"@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95\",\"dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx\"]}},\"version\":1}", - "bytecode": "0x", - "deployedBytecode": "0x", - "immutableReferences": {}, - "generatedSources": [], - "deployedGeneratedSources": [], - "sourceMap": "", - "deployedSourceMap": "", - "source": "// SPDX-License-Identifier: MIT\n// OpenZeppelin Contracts (last updated v4.9.0) (access/Ownable.sol)\n\npragma solidity ^0.8.0;\n\nimport \"../utils/ContextUpgradeable.sol\";\nimport {Initializable} from \"../proxy/utils/Initializable.sol\";\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 * By default, the owner account will be the one that deploys the contract. This\n * can 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 OwnableUpgradeable is Initializable, ContextUpgradeable {\n address private _owner;\n\n event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);\n\n /**\n * @dev Initializes the contract setting the deployer as the initial owner.\n */\n function __Ownable_init() internal onlyInitializing {\n __Ownable_init_unchained();\n }\n\n function __Ownable_init_unchained() internal onlyInitializing {\n _transferOwnership(_msgSender());\n }\n\n /**\n * @dev Throws if called by any account other than the owner.\n */\n modifier onlyOwner() {\n _checkOwner();\n _;\n }\n\n /**\n * @dev Returns the address of the current owner.\n */\n function owner() public view virtual returns (address) {\n return _owner;\n }\n\n /**\n * @dev Throws if the sender is not the owner.\n */\n function _checkOwner() internal view virtual {\n require(owner() == _msgSender(), \"Ownable: caller is not the owner\");\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() public virtual onlyOwner {\n _transferOwnership(address(0));\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(address newOwner) public virtual onlyOwner {\n require(newOwner != address(0), \"Ownable: new owner is the zero address\");\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(address newOwner) internal virtual {\n address oldOwner = _owner;\n _owner = newOwner;\n emit OwnershipTransferred(oldOwner, newOwner);\n }\n\n /**\n * @dev This empty reserved space is put in place to allow future versions to add new\n * variables without shifting down storage in the inheritance chain.\n * See https://docs.openzeppelin.com/contracts/4.x/upgradeable#storage_gaps\n */\n uint256[49] private __gap;\n}\n", - "sourcePath": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol", - "ast": { - "absolutePath": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol", - "exportedSymbols": { - "ContextUpgradeable": [ - 767 - ], - "Initializable": [ - 301 - ], - "OwnableUpgradeable": [ - 132 - ] - }, - "id": 133, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1, - "literals": [ - "solidity", - "^", - "0.8", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "102:23:0" - }, - { - "absolutePath": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol", - "file": "../utils/ContextUpgradeable.sol", - "id": 2, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 133, - "sourceUnit": 768, - "src": "127:41:0", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol", - "file": "../proxy/utils/Initializable.sol", - "id": 4, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 133, - "sourceUnit": 302, - "src": "169:63:0", - "symbolAliases": [ - { - "foreign": { - "id": 3, - "name": "Initializable", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 301, - "src": "177:13:0", - "typeDescriptions": {} - }, - "nameLocation": "-1:-1:-1" - } - ], - "unitAlias": "" - }, - { - "abstract": true, - "baseContracts": [ - { - "baseName": { - "id": 6, - "name": "Initializable", - "nameLocations": [ - "769:13:0" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 301, - "src": "769:13:0" - }, - "id": 7, - "nodeType": "InheritanceSpecifier", - "src": "769:13:0" - }, - { - "baseName": { - "id": 8, - "name": "ContextUpgradeable", - "nameLocations": [ - "784:18:0" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 767, - "src": "784:18:0" - }, - "id": 9, - "nodeType": "InheritanceSpecifier", - "src": "784:18:0" - } - ], - "canonicalName": "OwnableUpgradeable", - "contractDependencies": [], - "contractKind": "contract", - "documentation": { - "id": 5, - "nodeType": "StructuredDocumentation", - "src": "234:494:0", - "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 By default, the owner account will be the one that deploys the contract. This\n can 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": 132, - "linearizedBaseContracts": [ - 132, - 767, - 301 - ], - "name": "OwnableUpgradeable", - "nameLocation": "747:18:0", - "nodeType": "ContractDefinition", - "nodes": [ - { - "constant": false, - "id": 11, - "mutability": "mutable", - "name": "_owner", - "nameLocation": "825:6:0", - "nodeType": "VariableDeclaration", - "scope": 132, - "src": "809:22:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 10, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "809:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "private" - }, - { - "anonymous": false, - "eventSelector": "8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0", - "id": 17, - "name": "OwnershipTransferred", - "nameLocation": "844:20:0", - "nodeType": "EventDefinition", - "parameters": { - "id": 16, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 13, - "indexed": true, - "mutability": "mutable", - "name": "previousOwner", - "nameLocation": "881:13:0", - "nodeType": "VariableDeclaration", - "scope": 17, - "src": "865:29:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 12, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "865:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 15, - "indexed": true, - "mutability": "mutable", - "name": "newOwner", - "nameLocation": "912:8:0", - "nodeType": "VariableDeclaration", - "scope": 17, - "src": "896:24:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 14, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "896:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "864:57:0" - }, - "src": "838:84:0" - }, - { - "body": { - "id": 26, - "nodeType": "Block", - "src": "1076:43:0", - "statements": [ - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 23, - "name": "__Ownable_init_unchained", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 38, - "src": "1086:24:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", - "typeString": "function ()" - } - }, - "id": 24, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1086:26:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 25, - "nodeType": "ExpressionStatement", - "src": "1086:26:0" - } - ] - }, - "documentation": { - "id": 18, - "nodeType": "StructuredDocumentation", - "src": "928:91:0", - "text": " @dev Initializes the contract setting the deployer as the initial owner." - }, - "id": 27, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "id": 21, - "kind": "modifierInvocation", - "modifierName": { - "id": 20, - "name": "onlyInitializing", - "nameLocations": [ - "1059:16:0" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 246, - "src": "1059:16:0" - }, - "nodeType": "ModifierInvocation", - "src": "1059:16:0" - } - ], - "name": "__Ownable_init", - "nameLocation": "1033:14:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 19, - "nodeType": "ParameterList", - "parameters": [], - "src": "1047:2:0" - }, - "returnParameters": { - "id": 22, - "nodeType": "ParameterList", - "parameters": [], - "src": "1076:0:0" - }, - "scope": 132, - "src": "1024:95:0", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 37, - "nodeType": "Block", - "src": "1187:49:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 33, - "name": "_msgSender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 744, - "src": "1216:10:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", - "typeString": "function () view returns (address)" - } - }, - "id": 34, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1216:12:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 32, - "name": "_transferOwnership", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 126, - "src": "1197:18:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$__$", - "typeString": "function (address)" - } - }, - "id": 35, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1197:32:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 36, - "nodeType": "ExpressionStatement", - "src": "1197:32:0" - } - ] - }, - "id": 38, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "id": 30, - "kind": "modifierInvocation", - "modifierName": { - "id": 29, - "name": "onlyInitializing", - "nameLocations": [ - "1170:16:0" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 246, - "src": "1170:16:0" - }, - "nodeType": "ModifierInvocation", - "src": "1170:16:0" - } - ], - "name": "__Ownable_init_unchained", - "nameLocation": "1134:24:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 28, - "nodeType": "ParameterList", - "parameters": [], - "src": "1158:2:0" - }, - "returnParameters": { - "id": 31, - "nodeType": "ParameterList", - "parameters": [], - "src": "1187:0:0" - }, - "scope": 132, - "src": "1125:111:0", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 45, - "nodeType": "Block", - "src": "1345:41:0", - "statements": [ - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 41, - "name": "_checkOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 69, - "src": "1355:11:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$__$returns$__$", - "typeString": "function () view" - } - }, - "id": 42, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1355:13:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 43, - "nodeType": "ExpressionStatement", - "src": "1355:13:0" - }, - { - "id": 44, - "nodeType": "PlaceholderStatement", - "src": "1378:1:0" - } - ] - }, - "documentation": { - "id": 39, - "nodeType": "StructuredDocumentation", - "src": "1242:77:0", - "text": " @dev Throws if called by any account other than the owner." - }, - "id": 46, - "name": "onlyOwner", - "nameLocation": "1333:9:0", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 40, - "nodeType": "ParameterList", - "parameters": [], - "src": "1342:2:0" - }, - "src": "1324:62:0", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 54, - "nodeType": "Block", - "src": "1517:30:0", - "statements": [ - { - "expression": { - "id": 52, - "name": "_owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11, - "src": "1534:6:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "functionReturnParameters": 51, - "id": 53, - "nodeType": "Return", - "src": "1527:13:0" - } - ] - }, - "documentation": { - "id": 47, - "nodeType": "StructuredDocumentation", - "src": "1392:65:0", - "text": " @dev Returns the address of the current owner." - }, - "functionSelector": "8da5cb5b", - "id": 55, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "owner", - "nameLocation": "1471:5:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 48, - "nodeType": "ParameterList", - "parameters": [], - "src": "1476:2:0" - }, - "returnParameters": { - "id": 51, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 50, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 55, - "src": "1508:7:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 49, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1508:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "1507:9:0" - }, - "scope": 132, - "src": "1462:85:0", - "stateMutability": "view", - "virtual": true, - "visibility": "public" - }, - { - "body": { - "id": 68, - "nodeType": "Block", - "src": "1665:85:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 64, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 60, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 55, - "src": "1683:5:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", - "typeString": "function () view returns (address)" - } - }, - "id": 61, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1683:7:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 62, - "name": "_msgSender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 744, - "src": "1694:10:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", - "typeString": "function () view returns (address)" - } - }, - "id": 63, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1694:12:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "1683:23:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572", - "id": 65, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1708:34:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe", - "typeString": "literal_string \"Ownable: caller is not the owner\"" - }, - "value": "Ownable: caller is not the owner" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe", - "typeString": "literal_string \"Ownable: caller is not the owner\"" - } - ], - "id": 59, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "1675:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 66, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1675:68:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 67, - "nodeType": "ExpressionStatement", - "src": "1675:68:0" - } - ] - }, - "documentation": { - "id": 56, - "nodeType": "StructuredDocumentation", - "src": "1553:62:0", - "text": " @dev Throws if the sender is not the owner." - }, - "id": 69, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_checkOwner", - "nameLocation": "1629:11:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 57, - "nodeType": "ParameterList", - "parameters": [], - "src": "1640:2:0" - }, - "returnParameters": { - "id": 58, - "nodeType": "ParameterList", - "parameters": [], - "src": "1665:0:0" - }, - "scope": 132, - "src": "1620:130:0", - "stateMutability": "view", - "virtual": true, - "visibility": "internal" - }, - { - "body": { - "id": 82, - "nodeType": "Block", - "src": "2139:47:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "hexValue": "30", - "id": 78, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2176: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": 77, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "2168:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 76, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2168:7:0", - "typeDescriptions": {} - } - }, - "id": 79, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2168:10:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 75, - "name": "_transferOwnership", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 126, - "src": "2149:18:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$__$", - "typeString": "function (address)" - } - }, - "id": 80, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2149:30:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 81, - "nodeType": "ExpressionStatement", - "src": "2149:30:0" - } - ] - }, - "documentation": { - "id": 70, - "nodeType": "StructuredDocumentation", - "src": "1756:324:0", - "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": "715018a6", - "id": 83, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "id": 73, - "kind": "modifierInvocation", - "modifierName": { - "id": 72, - "name": "onlyOwner", - "nameLocations": [ - "2129:9:0" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 46, - "src": "2129:9:0" - }, - "nodeType": "ModifierInvocation", - "src": "2129:9:0" - } - ], - "name": "renounceOwnership", - "nameLocation": "2094:17:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 71, - "nodeType": "ParameterList", - "parameters": [], - "src": "2111:2:0" - }, - "returnParameters": { - "id": 74, - "nodeType": "ParameterList", - "parameters": [], - "src": "2139:0:0" - }, - "scope": 132, - "src": "2085:101:0", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "public" - }, - { - "body": { - "id": 105, - "nodeType": "Block", - "src": "2405:128:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 97, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 92, - "name": "newOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 86, - "src": "2423:8:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "arguments": [ - { - "hexValue": "30", - "id": 95, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2443: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": 94, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "2435:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 93, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2435:7:0", - "typeDescriptions": {} - } - }, - "id": 96, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2435:10:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "2423:22:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373", - "id": 98, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2447:40:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe", - "typeString": "literal_string \"Ownable: new owner is the zero address\"" - }, - "value": "Ownable: new owner is the zero address" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe", - "typeString": "literal_string \"Ownable: new owner is the zero address\"" - } - ], - "id": 91, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "2415:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 99, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2415:73:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 100, - "nodeType": "ExpressionStatement", - "src": "2415:73:0" - }, - { - "expression": { - "arguments": [ - { - "id": 102, - "name": "newOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 86, - "src": "2517:8:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 101, - "name": "_transferOwnership", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 126, - "src": "2498:18:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$__$", - "typeString": "function (address)" - } - }, - "id": 103, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2498:28:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 104, - "nodeType": "ExpressionStatement", - "src": "2498:28:0" - } - ] - }, - "documentation": { - "id": 84, - "nodeType": "StructuredDocumentation", - "src": "2192:138:0", - "text": " @dev Transfers ownership of the contract to a new account (`newOwner`).\n Can only be called by the current owner." - }, - "functionSelector": "f2fde38b", - "id": 106, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "id": 89, - "kind": "modifierInvocation", - "modifierName": { - "id": 88, - "name": "onlyOwner", - "nameLocations": [ - "2395:9:0" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 46, - "src": "2395:9:0" - }, - "nodeType": "ModifierInvocation", - "src": "2395:9:0" - } - ], - "name": "transferOwnership", - "nameLocation": "2344:17:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 87, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 86, - "mutability": "mutable", - "name": "newOwner", - "nameLocation": "2370:8:0", - "nodeType": "VariableDeclaration", - "scope": 106, - "src": "2362:16:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 85, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2362:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "2361:18:0" - }, - "returnParameters": { - "id": 90, - "nodeType": "ParameterList", - "parameters": [], - "src": "2405:0:0" - }, - "scope": 132, - "src": "2335:198:0", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "public" - }, - { - "body": { - "id": 125, - "nodeType": "Block", - "src": "2750:124:0", - "statements": [ - { - "assignments": [ - 113 - ], - "declarations": [ - { - "constant": false, - "id": 113, - "mutability": "mutable", - "name": "oldOwner", - "nameLocation": "2768:8:0", - "nodeType": "VariableDeclaration", - "scope": 125, - "src": "2760:16:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 112, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2760:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "id": 115, - "initialValue": { - "id": 114, - "name": "_owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11, - "src": "2779:6:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "2760:25:0" - }, - { - "expression": { - "id": 118, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 116, - "name": "_owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11, - "src": "2795:6:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 117, - "name": "newOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 109, - "src": "2804:8:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "2795:17:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 119, - "nodeType": "ExpressionStatement", - "src": "2795:17:0" - }, - { - "eventCall": { - "arguments": [ - { - "id": 121, - "name": "oldOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 113, - "src": "2848:8:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 122, - "name": "newOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 109, - "src": "2858:8:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 120, - "name": "OwnershipTransferred", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 17, - "src": "2827:20:0", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$returns$__$", - "typeString": "function (address,address)" - } - }, - "id": 123, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2827:40:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 124, - "nodeType": "EmitStatement", - "src": "2822:45:0" - } - ] - }, - "documentation": { - "id": 107, - "nodeType": "StructuredDocumentation", - "src": "2539:143:0", - "text": " @dev Transfers ownership of the contract to a new account (`newOwner`).\n Internal function without access restriction." - }, - "id": 126, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_transferOwnership", - "nameLocation": "2696:18:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 110, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 109, - "mutability": "mutable", - "name": "newOwner", - "nameLocation": "2723:8:0", - "nodeType": "VariableDeclaration", - "scope": 126, - "src": "2715:16:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 108, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2715:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "2714:18:0" - }, - "returnParameters": { - "id": 111, - "nodeType": "ParameterList", - "parameters": [], - "src": "2750:0:0" - }, - "scope": 132, - "src": "2687:187:0", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "internal" - }, - { - "constant": false, - "documentation": { - "id": 127, - "nodeType": "StructuredDocumentation", - "src": "2880:254:0", - "text": " @dev This empty reserved space is put in place to allow future versions to add new\n variables without shifting down storage in the inheritance chain.\n See https://docs.openzeppelin.com/contracts/4.x/upgradeable#storage_gaps" - }, - "id": 131, - "mutability": "mutable", - "name": "__gap", - "nameLocation": "3159:5:0", - "nodeType": "VariableDeclaration", - "scope": 132, - "src": "3139:25:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$49_storage", - "typeString": "uint256[49]" - }, - "typeName": { - "baseType": { - "id": 128, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3139:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 130, - "length": { - "hexValue": "3439", - "id": 129, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3147:2:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_49_by_1", - "typeString": "int_const 49" - }, - "value": "49" - }, - "nodeType": "ArrayTypeName", - "src": "3139:11:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$49_storage_ptr", - "typeString": "uint256[49]" - } - }, - "visibility": "private" - } - ], - "scope": 133, - "src": "729:2438:0", - "usedErrors": [] - } - ], - "src": "102:3066:0" - }, - "compiler": { - "name": "solc", - "version": "0.8.18+commit.87f61d96.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "3.4.13", - "updatedAt": "2024-12-10T18:52:58.833Z", - "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. By default, the owner account will be the one that deploys the contract. 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.", - "events": { - "Initialized(uint8)": { - "details": "Triggered when the contract has been initialized or reinitialized." - } - }, - "kind": "dev", - "methods": { - "owner()": { - "details": "Returns the address of the current owner." - }, - "renounceOwnership()": { - "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(address)": { - "details": "Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner." - } - }, - "stateVariables": { - "__gap": { - "details": "This empty reserved space is put in place to allow future versions to add new variables without shifting down storage in the inheritance chain. See https://docs.openzeppelin.com/contracts/4.x/upgradeable#storage_gaps" - } - }, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } -} \ No newline at end of file diff --git a/build/contracts/Proxy.json b/build/contracts/Proxy.json deleted file mode 100644 index f1f101a..0000000 --- a/build/contracts/Proxy.json +++ /dev/null @@ -1,828 +0,0 @@ -{ - "contractName": "Proxy", - "abi": [ - { - "stateMutability": "payable", - "type": "fallback" - }, - { - "stateMutability": "payable", - "type": "receive" - } - ], - "metadata": "{\"compiler\":{\"version\":\"0.8.18+commit.87f61d96\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"stateMutability\":\"payable\",\"type\":\"fallback\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}],\"devdoc\":{\"details\":\"This abstract contract provides a fallback function that delegates all calls to another contract using the EVM instruction `delegatecall`. We refer to the second contract as the _implementation_ behind the proxy, and it has to be specified by overriding the virtual {_implementation} function. Additionally, delegation to the implementation can be triggered manually through the {_fallback} function, or to a different contract through the {_delegate} function. The success and return data of the delegated call will be returned back to the caller of the proxy.\",\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@openzeppelin/contracts/proxy/Proxy.sol\":\"Proxy\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":1},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts/proxy/Proxy.sol\":{\"keccak256\":\"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472\",\"dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN\"]}},\"version\":1}", - "bytecode": "0x", - "deployedBytecode": "0x", - "immutableReferences": {}, - "generatedSources": [], - "deployedGeneratedSources": [], - "sourceMap": "", - "deployedSourceMap": "", - "source": "// SPDX-License-Identifier: MIT\n// OpenZeppelin Contracts (last updated v4.6.0) (proxy/Proxy.sol)\n\npragma solidity ^0.8.0;\n\n/**\n * @dev This abstract contract provides a fallback function that delegates all calls to another contract using the EVM\n * instruction `delegatecall`. We refer to the second contract as the _implementation_ behind the proxy, and it has to\n * be specified by overriding the virtual {_implementation} function.\n *\n * Additionally, delegation to the implementation can be triggered manually through the {_fallback} function, or to a\n * different contract through the {_delegate} function.\n *\n * The success and return data of the delegated call will be returned back to the caller of the proxy.\n */\nabstract contract Proxy {\n /**\n * @dev Delegates the current call to `implementation`.\n *\n * This function does not return to its internal call site, it will return directly to the external caller.\n */\n function _delegate(address implementation) internal virtual {\n assembly {\n // Copy msg.data. We take full control of memory in this inline assembly\n // block because it will not return to Solidity code. We overwrite the\n // Solidity scratch pad at memory position 0.\n calldatacopy(0, 0, calldatasize())\n\n // Call the implementation.\n // out and outsize are 0 because we don't know the size yet.\n let result := delegatecall(gas(), implementation, 0, calldatasize(), 0, 0)\n\n // Copy the returned data.\n returndatacopy(0, 0, returndatasize())\n\n switch result\n // delegatecall returns 0 on error.\n case 0 {\n revert(0, returndatasize())\n }\n default {\n return(0, returndatasize())\n }\n }\n }\n\n /**\n * @dev This is a virtual function that should be overridden so it returns the address to which the fallback function\n * and {_fallback} should delegate.\n */\n function _implementation() internal view virtual returns (address);\n\n /**\n * @dev Delegates the current call to the address returned by `_implementation()`.\n *\n * This function does not return to its internal call site, it will return directly to the external caller.\n */\n function _fallback() internal virtual {\n _beforeFallback();\n _delegate(_implementation());\n }\n\n /**\n * @dev Fallback function that delegates calls to the address returned by `_implementation()`. Will run if no other\n * function in the contract matches the call data.\n */\n fallback() external payable virtual {\n _fallback();\n }\n\n /**\n * @dev Fallback function that delegates calls to the address returned by `_implementation()`. Will run if call data\n * is empty.\n */\n receive() external payable virtual {\n _fallback();\n }\n\n /**\n * @dev Hook that is called before falling back to the implementation. Can happen as part of a manual `_fallback`\n * call, or as part of the Solidity `fallback` or `receive` functions.\n *\n * If overridden should call `super._beforeFallback()`.\n */\n function _beforeFallback() internal virtual {}\n}\n", - "sourcePath": "@openzeppelin/contracts/proxy/Proxy.sol", - "ast": { - "absolutePath": "@openzeppelin/contracts/proxy/Proxy.sol", - "exportedSymbols": { - "Proxy": [ - 1304 - ] - }, - "id": 1305, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1254, - "literals": [ - "solidity", - "^", - "0.8", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "99:23:10" - }, - { - "abstract": true, - "baseContracts": [], - "canonicalName": "Proxy", - "contractDependencies": [], - "contractKind": "contract", - "documentation": { - "id": 1255, - "nodeType": "StructuredDocumentation", - "src": "124:598:10", - "text": " @dev This abstract contract provides a fallback function that delegates all calls to another contract using the EVM\n instruction `delegatecall`. We refer to the second contract as the _implementation_ behind the proxy, and it has to\n be specified by overriding the virtual {_implementation} function.\n Additionally, delegation to the implementation can be triggered manually through the {_fallback} function, or to a\n different contract through the {_delegate} function.\n The success and return data of the delegated call will be returned back to the caller of the proxy." - }, - "fullyImplemented": false, - "id": 1304, - "linearizedBaseContracts": [ - 1304 - ], - "name": "Proxy", - "nameLocation": "741:5:10", - "nodeType": "ContractDefinition", - "nodes": [ - { - "body": { - "id": 1262, - "nodeType": "Block", - "src": "1008:835:10", - "statements": [ - { - "AST": { - "nodeType": "YulBlock", - "src": "1027:810:10", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1280:1:10", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1283:1:10", - "type": "", - "value": "0" - }, - { - "arguments": [], - "functionName": { - "name": "calldatasize", - "nodeType": "YulIdentifier", - "src": "1286:12:10" - }, - "nodeType": "YulFunctionCall", - "src": "1286:14:10" - } - ], - "functionName": { - "name": "calldatacopy", - "nodeType": "YulIdentifier", - "src": "1267:12:10" - }, - "nodeType": "YulFunctionCall", - "src": "1267:34:10" - }, - "nodeType": "YulExpressionStatement", - "src": "1267:34:10" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1428:74:10", - "value": { - "arguments": [ - { - "arguments": [], - "functionName": { - "name": "gas", - "nodeType": "YulIdentifier", - "src": "1455:3:10" - }, - "nodeType": "YulFunctionCall", - "src": "1455:5:10" - }, - { - "name": "implementation", - "nodeType": "YulIdentifier", - "src": "1462:14:10" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1478:1:10", - "type": "", - "value": "0" - }, - { - "arguments": [], - "functionName": { - "name": "calldatasize", - "nodeType": "YulIdentifier", - "src": "1481:12:10" - }, - "nodeType": "YulFunctionCall", - "src": "1481:14:10" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1497:1:10", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1500:1:10", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "delegatecall", - "nodeType": "YulIdentifier", - "src": "1442:12:10" - }, - "nodeType": "YulFunctionCall", - "src": "1442:60:10" - }, - "variables": [ - { - "name": "result", - "nodeType": "YulTypedName", - "src": "1432:6:10", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1570:1:10", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1573:1:10", - "type": "", - "value": "0" - }, - { - "arguments": [], - "functionName": { - "name": "returndatasize", - "nodeType": "YulIdentifier", - "src": "1576:14:10" - }, - "nodeType": "YulFunctionCall", - "src": "1576:16:10" - } - ], - "functionName": { - "name": "returndatacopy", - "nodeType": "YulIdentifier", - "src": "1555:14:10" - }, - "nodeType": "YulFunctionCall", - "src": "1555:38:10" - }, - "nodeType": "YulExpressionStatement", - "src": "1555:38:10" - }, - { - "cases": [ - { - "body": { - "nodeType": "YulBlock", - "src": "1688:59:10", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1713:1:10", - "type": "", - "value": "0" - }, - { - "arguments": [], - "functionName": { - "name": "returndatasize", - "nodeType": "YulIdentifier", - "src": "1716:14:10" - }, - "nodeType": "YulFunctionCall", - "src": "1716:16:10" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1706:6:10" - }, - "nodeType": "YulFunctionCall", - "src": "1706:27:10" - }, - "nodeType": "YulExpressionStatement", - "src": "1706:27:10" - } - ] - }, - "nodeType": "YulCase", - "src": "1681:66:10", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1686:1:10", - "type": "", - "value": "0" - } - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1768:59:10", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1793:1:10", - "type": "", - "value": "0" - }, - { - "arguments": [], - "functionName": { - "name": "returndatasize", - "nodeType": "YulIdentifier", - "src": "1796:14:10" - }, - "nodeType": "YulFunctionCall", - "src": "1796:16:10" - } - ], - "functionName": { - "name": "return", - "nodeType": "YulIdentifier", - "src": "1786:6:10" - }, - "nodeType": "YulFunctionCall", - "src": "1786:27:10" - }, - "nodeType": "YulExpressionStatement", - "src": "1786:27:10" - } - ] - }, - "nodeType": "YulCase", - "src": "1760:67:10", - "value": "default" - } - ], - "expression": { - "name": "result", - "nodeType": "YulIdentifier", - "src": "1614:6:10" - }, - "nodeType": "YulSwitch", - "src": "1607:220:10" - } - ] - }, - "evmVersion": "paris", - "externalReferences": [ - { - "declaration": 1258, - "isOffset": false, - "isSlot": false, - "src": "1462:14:10", - "valueSize": 1 - } - ], - "id": 1261, - "nodeType": "InlineAssembly", - "src": "1018:819:10" - } - ] - }, - "documentation": { - "id": 1256, - "nodeType": "StructuredDocumentation", - "src": "753:190:10", - "text": " @dev Delegates the current call to `implementation`.\n This function does not return to its internal call site, it will return directly to the external caller." - }, - "id": 1263, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_delegate", - "nameLocation": "957:9:10", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1259, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1258, - "mutability": "mutable", - "name": "implementation", - "nameLocation": "975:14:10", - "nodeType": "VariableDeclaration", - "scope": 1263, - "src": "967:22:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1257, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "967:7:10", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "966:24:10" - }, - "returnParameters": { - "id": 1260, - "nodeType": "ParameterList", - "parameters": [], - "src": "1008:0:10" - }, - "scope": 1304, - "src": "948:895:10", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "internal" - }, - { - "documentation": { - "id": 1264, - "nodeType": "StructuredDocumentation", - "src": "1849:173:10", - "text": " @dev This is a virtual function that should be overridden so it returns the address to which the fallback function\n and {_fallback} should delegate." - }, - "id": 1269, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "_implementation", - "nameLocation": "2036:15:10", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1265, - "nodeType": "ParameterList", - "parameters": [], - "src": "2051:2:10" - }, - "returnParameters": { - "id": 1268, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1267, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1269, - "src": "2085:7:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1266, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2085:7:10", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "2084:9:10" - }, - "scope": 1304, - "src": "2027:67:10", - "stateMutability": "view", - "virtual": true, - "visibility": "internal" - }, - { - "body": { - "id": 1281, - "nodeType": "Block", - "src": "2360:72:10", - "statements": [ - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1273, - "name": "_beforeFallback", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1303, - "src": "2370:15:10", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", - "typeString": "function ()" - } - }, - "id": 1274, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2370:17:10", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1275, - "nodeType": "ExpressionStatement", - "src": "2370:17:10" - }, - { - "expression": { - "arguments": [ - { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1277, - "name": "_implementation", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1269, - "src": "2407:15:10", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", - "typeString": "function () view returns (address)" - } - }, - "id": 1278, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2407:17:10", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 1276, - "name": "_delegate", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1263, - "src": "2397:9:10", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$__$", - "typeString": "function (address)" - } - }, - "id": 1279, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2397:28:10", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1280, - "nodeType": "ExpressionStatement", - "src": "2397:28:10" - } - ] - }, - "documentation": { - "id": 1270, - "nodeType": "StructuredDocumentation", - "src": "2100:217:10", - "text": " @dev Delegates the current call to the address returned by `_implementation()`.\n This function does not return to its internal call site, it will return directly to the external caller." - }, - "id": 1282, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_fallback", - "nameLocation": "2331:9:10", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1271, - "nodeType": "ParameterList", - "parameters": [], - "src": "2340:2:10" - }, - "returnParameters": { - "id": 1272, - "nodeType": "ParameterList", - "parameters": [], - "src": "2360:0:10" - }, - "scope": 1304, - "src": "2322:110:10", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "internal" - }, - { - "body": { - "id": 1289, - "nodeType": "Block", - "src": "2665:28:10", - "statements": [ - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1286, - "name": "_fallback", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1282, - "src": "2675:9:10", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", - "typeString": "function ()" - } - }, - "id": 1287, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2675:11:10", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1288, - "nodeType": "ExpressionStatement", - "src": "2675:11:10" - } - ] - }, - "documentation": { - "id": 1283, - "nodeType": "StructuredDocumentation", - "src": "2438:186:10", - "text": " @dev Fallback function that delegates calls to the address returned by `_implementation()`. Will run if no other\n function in the contract matches the call data." - }, - "id": 1290, - "implemented": true, - "kind": "fallback", - "modifiers": [], - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1284, - "nodeType": "ParameterList", - "parameters": [], - "src": "2637:2:10" - }, - "returnParameters": { - "id": 1285, - "nodeType": "ParameterList", - "parameters": [], - "src": "2665:0:10" - }, - "scope": 1304, - "src": "2629:64:10", - "stateMutability": "payable", - "virtual": true, - "visibility": "external" - }, - { - "body": { - "id": 1297, - "nodeType": "Block", - "src": "2888:28:10", - "statements": [ - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1294, - "name": "_fallback", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1282, - "src": "2898:9:10", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", - "typeString": "function ()" - } - }, - "id": 1295, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2898:11:10", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1296, - "nodeType": "ExpressionStatement", - "src": "2898:11:10" - } - ] - }, - "documentation": { - "id": 1291, - "nodeType": "StructuredDocumentation", - "src": "2699:149:10", - "text": " @dev Fallback function that delegates calls to the address returned by `_implementation()`. Will run if call data\n is empty." - }, - "id": 1298, - "implemented": true, - "kind": "receive", - "modifiers": [], - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1292, - "nodeType": "ParameterList", - "parameters": [], - "src": "2860:2:10" - }, - "returnParameters": { - "id": 1293, - "nodeType": "ParameterList", - "parameters": [], - "src": "2888:0:10" - }, - "scope": 1304, - "src": "2853:63:10", - "stateMutability": "payable", - "virtual": true, - "visibility": "external" - }, - { - "body": { - "id": 1302, - "nodeType": "Block", - "src": "3242:2:10", - "statements": [] - }, - "documentation": { - "id": 1299, - "nodeType": "StructuredDocumentation", - "src": "2922:271:10", - "text": " @dev Hook that is called before falling back to the implementation. Can happen as part of a manual `_fallback`\n call, or as part of the Solidity `fallback` or `receive` functions.\n If overridden should call `super._beforeFallback()`." - }, - "id": 1303, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_beforeFallback", - "nameLocation": "3207:15:10", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1300, - "nodeType": "ParameterList", - "parameters": [], - "src": "3222:2:10" - }, - "returnParameters": { - "id": 1301, - "nodeType": "ParameterList", - "parameters": [], - "src": "3242:0:10" - }, - "scope": 1304, - "src": "3198:46:10", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "internal" - } - ], - "scope": 1305, - "src": "723:2523:10", - "usedErrors": [] - } - ], - "src": "99:3148:10" - }, - "compiler": { - "name": "solc", - "version": "0.8.18+commit.87f61d96.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "3.4.13", - "updatedAt": "2024-12-10T18:52:58.846Z", - "devdoc": { - "details": "This abstract contract provides a fallback function that delegates all calls to another contract using the EVM instruction `delegatecall`. We refer to the second contract as the _implementation_ behind the proxy, and it has to be specified by overriding the virtual {_implementation} function. Additionally, delegation to the implementation can be triggered manually through the {_fallback} function, or to a different contract through the {_delegate} function. The success and return data of the delegated call will be returned back to the caller of the proxy.", - "kind": "dev", - "methods": {}, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } -} \ No newline at end of file diff --git a/build/contracts/ProxyAdmin.json b/build/contracts/ProxyAdmin.json deleted file mode 100644 index 0d089e2..0000000 --- a/build/contracts/ProxyAdmin.json +++ /dev/null @@ -1,5499 +0,0 @@ -{ - "contractName": "ProxyAdmin", - "abi": [ - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "previousOwner", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "newOwner", - "type": "address" - } - ], - "name": "OwnershipTransferred", - "type": "event" - }, - { - "inputs": [], - "name": "owner", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "renounceOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "newOwner", - "type": "address" - } - ], - "name": "transferOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "contract ITransparentUpgradeableProxy", - "name": "proxy", - "type": "address" - } - ], - "name": "getProxyImplementation", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "contract ITransparentUpgradeableProxy", - "name": "proxy", - "type": "address" - } - ], - "name": "getProxyAdmin", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "contract ITransparentUpgradeableProxy", - "name": "proxy", - "type": "address" - }, - { - "internalType": "address", - "name": "newAdmin", - "type": "address" - } - ], - "name": "changeProxyAdmin", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "contract ITransparentUpgradeableProxy", - "name": "proxy", - "type": "address" - }, - { - "internalType": "address", - "name": "implementation", - "type": "address" - } - ], - "name": "upgrade", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "contract ITransparentUpgradeableProxy", - "name": "proxy", - "type": "address" - }, - { - "internalType": "address", - "name": "implementation", - "type": "address" - }, - { - "internalType": "bytes", - "name": "data", - "type": "bytes" - } - ], - "name": "upgradeAndCall", - "outputs": [], - "stateMutability": "payable", - "type": "function" - } - ], - "metadata": "{\"compiler\":{\"version\":\"0.8.18+commit.87f61d96\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"contract ITransparentUpgradeableProxy\",\"name\":\"proxy\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"newAdmin\",\"type\":\"address\"}],\"name\":\"changeProxyAdmin\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ITransparentUpgradeableProxy\",\"name\":\"proxy\",\"type\":\"address\"}],\"name\":\"getProxyAdmin\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ITransparentUpgradeableProxy\",\"name\":\"proxy\",\"type\":\"address\"}],\"name\":\"getProxyImplementation\",\"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\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ITransparentUpgradeableProxy\",\"name\":\"proxy\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"implementation\",\"type\":\"address\"}],\"name\":\"upgrade\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ITransparentUpgradeableProxy\",\"name\":\"proxy\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"implementation\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"upgradeAndCall\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"This is an auxiliary contract meant to be assigned as the admin of a {TransparentUpgradeableProxy}. For an explanation of why you would want to use this see the documentation for {TransparentUpgradeableProxy}.\",\"kind\":\"dev\",\"methods\":{\"changeProxyAdmin(address,address)\":{\"details\":\"Changes the admin of `proxy` to `newAdmin`. Requirements: - This contract must be the current admin of `proxy`.\"},\"getProxyAdmin(address)\":{\"details\":\"Returns the current admin of `proxy`. Requirements: - This contract must be the admin of `proxy`.\"},\"getProxyImplementation(address)\":{\"details\":\"Returns the current implementation of `proxy`. Requirements: - This contract must be the admin of `proxy`.\"},\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"renounceOwnership()\":{\"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(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"},\"upgrade(address,address)\":{\"details\":\"Upgrades `proxy` to `implementation`. See {TransparentUpgradeableProxy-upgradeTo}. Requirements: - This contract must be the admin of `proxy`.\"},\"upgradeAndCall(address,address,bytes)\":{\"details\":\"Upgrades `proxy` to `implementation` and calls a function on the new implementation. See {TransparentUpgradeableProxy-upgradeToAndCall}. Requirements: - This contract must be the admin of `proxy`.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@openzeppelin/contracts/proxy/transparent/ProxyAdmin.sol\":\"ProxyAdmin\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":1},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts/access/Ownable.sol\":{\"keccak256\":\"0xba43b97fba0d32eb4254f6a5a297b39a19a247082a02d6e69349e071e2946218\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fc980984badf3984b6303b377711220e067722bbd6a135b24669ff5069ef9f32\",\"dweb:/ipfs/QmPHXMSXj99XjSVM21YsY6aNtLLjLVXDbyN76J5HQYvvrz\"]},\"@openzeppelin/contracts/interfaces/IERC1967.sol\":{\"keccak256\":\"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263\",\"dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE\"]},\"@openzeppelin/contracts/interfaces/draft-IERC1822.sol\":{\"keccak256\":\"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688\",\"dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr\"]},\"@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol\":{\"keccak256\":\"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5\",\"dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn\"]},\"@openzeppelin/contracts/proxy/ERC1967/ERC1967Upgrade.sol\":{\"keccak256\":\"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2\",\"dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82\"]},\"@openzeppelin/contracts/proxy/Proxy.sol\":{\"keccak256\":\"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472\",\"dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN\"]},\"@openzeppelin/contracts/proxy/beacon/IBeacon.sol\":{\"keccak256\":\"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354\",\"dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce\"]},\"@openzeppelin/contracts/proxy/transparent/ProxyAdmin.sol\":{\"keccak256\":\"0x8e99882a991853dc446278576c8cb9b3a5ded84642e9bcc917b1677807c2f18c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310153c1a4c739002ffbc1351ed1dd7488a0d20f5dd816353332fc2c1d81e0a3\",\"dweb:/ipfs/QmcvwXQVUBRTEAoNcvwSVFmhpHUXQ21s2Hfj79hq2uQNVM\"]},\"@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol\":{\"keccak256\":\"0x168e36d7e616bd41f6abab4a83009da64513ae9e638aa6d5980066e2a92db689\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a45c64b97311fabbcbe8dad7e94fa89e06a7f96060d5565326ef706f5f239017\",\"dweb:/ipfs/QmeU2jiBGbHhz9DqRotjbpAx5s2xExDSRQtSD5ENjuHzDq\"]},\"@openzeppelin/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]},\"@openzeppelin/contracts/utils/Context.sol\":{\"keccak256\":\"0xa92e4fa126feb6907daa0513ddd816b2eb91f30a808de54f63c17d0e162c3439\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a367861093b74443b137564d3f3c472f70bcf114739e62059c939f25e315706c\",\"dweb:/ipfs/Qmd7JMpcxD9RuQjK3uM3EzJUgSqdN8vzp8eytEiuwxQJ6h\"]},\"@openzeppelin/contracts/utils/StorageSlot.sol\":{\"keccak256\":\"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da\",\"dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q\"]}},\"version\":1}", - "bytecode": "0x608060405234801561001057600080fd5b5061001a3361001f565b61006f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b61069b8061007e6000396000f3fe60806040526004361061006b5760003560e01c8063204e1c7a14610070578063715018a6146100a65780637eff275e146100bd5780638da5cb5b146100dd5780639623609d146100f257806399a88ec414610105578063f2fde38b14610125578063f3b7dead14610145575b600080fd5b34801561007c57600080fd5b5061009061008b36600461048e565b610165565b60405161009d91906104b2565b60405180910390f35b3480156100b257600080fd5b506100bb6101f6565b005b3480156100c957600080fd5b506100bb6100d83660046104c6565b61020a565b3480156100e957600080fd5b50610090610274565b6100bb610100366004610515565b610283565b34801561011157600080fd5b506100bb6101203660046104c6565b6102f2565b34801561013157600080fd5b506100bb61014036600461048e565b610326565b34801561015157600080fd5b5061009061016036600461048e565b6103a4565b6000806000836001600160a01b031660405161018b90635c60da1b60e01b815260040190565b600060405180830381855afa9150503d80600081146101c6576040519150601f19603f3d011682016040523d82523d6000602084013e6101cb565b606091505b5091509150816101da57600080fd5b808060200190518101906101ee91906105ea565b949350505050565b6101fe6103ca565b6102086000610429565b565b6102126103ca565b6040516308f2839760e41b81526001600160a01b03831690638f2839709061023e9084906004016104b2565b600060405180830381600087803b15801561025857600080fd5b505af115801561026c573d6000803e3d6000fd5b505050505050565b6000546001600160a01b031690565b61028b6103ca565b60405163278f794360e11b81526001600160a01b03841690634f1ef2869034906102bb9086908690600401610607565b6000604051808303818588803b1580156102d457600080fd5b505af11580156102e8573d6000803e3d6000fd5b5050505050505050565b6102fa6103ca565b604051631b2ce7f360e11b81526001600160a01b03831690633659cfe69061023e9084906004016104b2565b61032e6103ca565b6001600160a01b0381166103985760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b6103a181610429565b50565b6000806000836001600160a01b031660405161018b906303e1469160e61b815260040190565b336103d3610274565b6001600160a01b0316146102085760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161038f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146103a157600080fd5b6000602082840312156104a057600080fd5b81356104ab81610479565b9392505050565b6001600160a01b0391909116815260200190565b600080604083850312156104d957600080fd5b82356104e481610479565b915060208301356104f481610479565b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b60008060006060848603121561052a57600080fd5b833561053581610479565b9250602084013561054581610479565b915060408401356001600160401b038082111561056157600080fd5b818601915086601f83011261057557600080fd5b813581811115610587576105876104ff565b604051601f8201601f19908116603f011681019083821181831017156105af576105af6104ff565b816040528281528960208487010111156105c857600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000602082840312156105fc57600080fd5b81516104ab81610479565b60018060a01b038316815260006020604081840152835180604085015260005b8181101561064357858101830151858201606001528201610627565b506000606082860101526060601f19601f83011685010192505050939250505056fea26469706673582212202680dc83fabfac468fd8561e2b86aa70fadf6d357b0c302a47888f21f8dca0c064736f6c63430008120033", - "deployedBytecode": "0x60806040526004361061006b5760003560e01c8063204e1c7a14610070578063715018a6146100a65780637eff275e146100bd5780638da5cb5b146100dd5780639623609d146100f257806399a88ec414610105578063f2fde38b14610125578063f3b7dead14610145575b600080fd5b34801561007c57600080fd5b5061009061008b36600461048e565b610165565b60405161009d91906104b2565b60405180910390f35b3480156100b257600080fd5b506100bb6101f6565b005b3480156100c957600080fd5b506100bb6100d83660046104c6565b61020a565b3480156100e957600080fd5b50610090610274565b6100bb610100366004610515565b610283565b34801561011157600080fd5b506100bb6101203660046104c6565b6102f2565b34801561013157600080fd5b506100bb61014036600461048e565b610326565b34801561015157600080fd5b5061009061016036600461048e565b6103a4565b6000806000836001600160a01b031660405161018b90635c60da1b60e01b815260040190565b600060405180830381855afa9150503d80600081146101c6576040519150601f19603f3d011682016040523d82523d6000602084013e6101cb565b606091505b5091509150816101da57600080fd5b808060200190518101906101ee91906105ea565b949350505050565b6101fe6103ca565b6102086000610429565b565b6102126103ca565b6040516308f2839760e41b81526001600160a01b03831690638f2839709061023e9084906004016104b2565b600060405180830381600087803b15801561025857600080fd5b505af115801561026c573d6000803e3d6000fd5b505050505050565b6000546001600160a01b031690565b61028b6103ca565b60405163278f794360e11b81526001600160a01b03841690634f1ef2869034906102bb9086908690600401610607565b6000604051808303818588803b1580156102d457600080fd5b505af11580156102e8573d6000803e3d6000fd5b5050505050505050565b6102fa6103ca565b604051631b2ce7f360e11b81526001600160a01b03831690633659cfe69061023e9084906004016104b2565b61032e6103ca565b6001600160a01b0381166103985760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b6103a181610429565b50565b6000806000836001600160a01b031660405161018b906303e1469160e61b815260040190565b336103d3610274565b6001600160a01b0316146102085760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161038f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146103a157600080fd5b6000602082840312156104a057600080fd5b81356104ab81610479565b9392505050565b6001600160a01b0391909116815260200190565b600080604083850312156104d957600080fd5b82356104e481610479565b915060208301356104f481610479565b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b60008060006060848603121561052a57600080fd5b833561053581610479565b9250602084013561054581610479565b915060408401356001600160401b038082111561056157600080fd5b818601915086601f83011261057557600080fd5b813581811115610587576105876104ff565b604051601f8201601f19908116603f011681019083821181831017156105af576105af6104ff565b816040528281528960208487010111156105c857600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000602082840312156105fc57600080fd5b81516104ab81610479565b60018060a01b038316815260006020604081840152835180604085015260005b8181101561064357858101830151858201606001528201610627565b506000606082860101526060601f19601f83011685010192505050939250505056fea26469706673582212202680dc83fabfac468fd8561e2b86aa70fadf6d357b0c302a47888f21f8dca0c064736f6c63430008120033", - "immutableReferences": {}, - "generatedSources": [], - "deployedGeneratedSources": [ - { - "ast": { - "nodeType": "YulBlock", - "src": "0:5161:32", - "statements": [ - { - "nodeType": "YulBlock", - "src": "6:3:32", - "statements": [] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "89:86:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "153:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "162:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "165:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "155:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "155:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "155:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "112:5:32" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "123:5:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "138:3:32", - "type": "", - "value": "160" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "143:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "134:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "134:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "147:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "130:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "130:19:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "119:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "119:31:32" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "109:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "109:42:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "102:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "102:50:32" - }, - "nodeType": "YulIf", - "src": "99:70:32" - } - ] - }, - "name": "validator_revert_contract_ITransparentUpgradeableProxy", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "78:5:32", - "type": "" - } - ], - "src": "14:161:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "287:207:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "333:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "342:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "345:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "335:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "335:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "335:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "308:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "317:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "304:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "304:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "329:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "300:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "300:32:32" - }, - "nodeType": "YulIf", - "src": "297:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "358:36:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "384:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "371:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "371:23:32" - }, - "variables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "362:5:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "458:5:32" - } - ], - "functionName": { - "name": "validator_revert_contract_ITransparentUpgradeableProxy", - "nodeType": "YulIdentifier", - "src": "403:54:32" - }, - "nodeType": "YulFunctionCall", - "src": "403:61:32" - }, - "nodeType": "YulExpressionStatement", - "src": "403:61:32" - }, - { - "nodeType": "YulAssignment", - "src": "473:15:32", - "value": { - "name": "value", - "nodeType": "YulIdentifier", - "src": "483:5:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "473:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_contract$_ITransparentUpgradeableProxy_$1484", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "253:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "264:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "276:6:32", - "type": "" - } - ], - "src": "180:314:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "600:102:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "610:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "622:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "633:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "618:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "618:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "610:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "652:9:32" - }, - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "667:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "683:3:32", - "type": "", - "value": "160" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "688:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "679:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "679:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "692:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "675:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "675:19:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "663:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "663:32:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "645:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "645:51:32" - }, - "nodeType": "YulExpressionStatement", - "src": "645:51:32" - } - ] - }, - "name": "abi_encode_tuple_t_address__to_t_address__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "569:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "580:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "591:4:32", - "type": "" - } - ], - "src": "499:203:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "831:361:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "877:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "886:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "889:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "879:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "879:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "879:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "852:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "861:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "848:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "848:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "873:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "844:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "844:32:32" - }, - "nodeType": "YulIf", - "src": "841:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "902:36:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "928:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "915:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "915:23:32" - }, - "variables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "906:5:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "1002:5:32" - } - ], - "functionName": { - "name": "validator_revert_contract_ITransparentUpgradeableProxy", - "nodeType": "YulIdentifier", - "src": "947:54:32" - }, - "nodeType": "YulFunctionCall", - "src": "947:61:32" - }, - "nodeType": "YulExpressionStatement", - "src": "947:61:32" - }, - { - "nodeType": "YulAssignment", - "src": "1017:15:32", - "value": { - "name": "value", - "nodeType": "YulIdentifier", - "src": "1027:5:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "1017:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1041:47:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1073:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1084:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1069:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1069:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "1056:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "1056:32:32" - }, - "variables": [ - { - "name": "value_1", - "nodeType": "YulTypedName", - "src": "1045:7:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value_1", - "nodeType": "YulIdentifier", - "src": "1152:7:32" - } - ], - "functionName": { - "name": "validator_revert_contract_ITransparentUpgradeableProxy", - "nodeType": "YulIdentifier", - "src": "1097:54:32" - }, - "nodeType": "YulFunctionCall", - "src": "1097:63:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1097:63:32" - }, - { - "nodeType": "YulAssignment", - "src": "1169:17:32", - "value": { - "name": "value_1", - "nodeType": "YulIdentifier", - "src": "1179:7:32" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "1169:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_contract$_ITransparentUpgradeableProxy_$1484t_address", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "789:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "800:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "812:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "820:6:32", - "type": "" - } - ], - "src": "707:485:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1229:95:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1246:1:32", - "type": "", - "value": "0" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1253:3:32", - "type": "", - "value": "224" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1258:10:32", - "type": "", - "value": "0x4e487b71" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "1249:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1249:20:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1239:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1239:31:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1239:31:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1286:1:32", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1289:4:32", - "type": "", - "value": "0x41" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1279:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1279:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1279:15:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1310:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1313:4:32", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1303:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1303:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1303:15:32" - } - ] - }, - "name": "panic_error_0x41", - "nodeType": "YulFunctionDefinition", - "src": "1197:127:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1479:1144:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "1525:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1534:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1537:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1527:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1527:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1527:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "1500:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1509:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "1496:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1496:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1521:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "1492:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1492:32:32" - }, - "nodeType": "YulIf", - "src": "1489:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1550:36:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1576:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "1563:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "1563:23:32" - }, - "variables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "1554:5:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "1650:5:32" - } - ], - "functionName": { - "name": "validator_revert_contract_ITransparentUpgradeableProxy", - "nodeType": "YulIdentifier", - "src": "1595:54:32" - }, - "nodeType": "YulFunctionCall", - "src": "1595:61:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1595:61:32" - }, - { - "nodeType": "YulAssignment", - "src": "1665:15:32", - "value": { - "name": "value", - "nodeType": "YulIdentifier", - "src": "1675:5:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "1665:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1689:47:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1721:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1732:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1717:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1717:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "1704:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "1704:32:32" - }, - "variables": [ - { - "name": "value_1", - "nodeType": "YulTypedName", - "src": "1693:7:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value_1", - "nodeType": "YulIdentifier", - "src": "1800:7:32" - } - ], - "functionName": { - "name": "validator_revert_contract_ITransparentUpgradeableProxy", - "nodeType": "YulIdentifier", - "src": "1745:54:32" - }, - "nodeType": "YulFunctionCall", - "src": "1745:63:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1745:63:32" - }, - { - "nodeType": "YulAssignment", - "src": "1817:17:32", - "value": { - "name": "value_1", - "nodeType": "YulIdentifier", - "src": "1827:7:32" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "1817:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1843:46:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1874:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1885:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1870:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1870:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "1857:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "1857:32:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "1847:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1898:28:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1916:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1920:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "1912:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1912:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1924:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "1908:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1908:18:32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "1902:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1953:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1962:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1965:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1955:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1955:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1955:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1941:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1949:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1938:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "1938:14:32" - }, - "nodeType": "YulIf", - "src": "1935:34:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1978:32:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1992:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "2003:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1988:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1988:22:32" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "1982:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2058:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2067:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2070:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "2060:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2060:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2060:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "2037:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2041:4:32", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2033:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2033:13:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "2048:7:32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "2029:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2029:27:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "2022:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2022:35:32" - }, - "nodeType": "YulIf", - "src": "2019:55:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2083:26:32", - "value": { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "2106:2:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "2093:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "2093:16:32" - }, - "variables": [ - { - "name": "_3", - "nodeType": "YulTypedName", - "src": "2087:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2132:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "2134:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "2134:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2134:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "2124:2:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "2128:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "2121:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "2121:10:32" - }, - "nodeType": "YulIf", - "src": "2118:36:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2163:17:32", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2177:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "2173:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2173:7:32" - }, - "variables": [ - { - "name": "_4", - "nodeType": "YulTypedName", - "src": "2167:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2189:23:32", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2209:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "2203:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "2203:9:32" - }, - "variables": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "2193:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2221:71:32", - "value": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "2243:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "2267:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2271:4:32", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2263:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2263:13:32" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "2278:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "2259:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2259:22:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2283:2:32", - "type": "", - "value": "63" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2255:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2255:31:32" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "2288:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "2251:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2251:40:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2239:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2239:53:32" - }, - "variables": [ - { - "name": "newFreePtr", - "nodeType": "YulTypedName", - "src": "2225:10:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2351:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "2353:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "2353:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2353:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "2310:10:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "2322:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "2307:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "2307:18:32" - }, - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "2330:10:32" - }, - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "2342:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "2327:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "2327:22:32" - } - ], - "functionName": { - "name": "or", - "nodeType": "YulIdentifier", - "src": "2304:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "2304:46:32" - }, - "nodeType": "YulIf", - "src": "2301:72:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2389:2:32", - "type": "", - "value": "64" - }, - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "2393:10:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2382:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2382:22:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2382:22:32" - }, - { - "expression": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "2420:6:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "2428:2:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2413:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2413:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2413:18:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2477:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2486:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2489:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "2479:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2479:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2479:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "2454:2:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "2458:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2450:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2450:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2463:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2446:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2446:20:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "2468:7:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "2443:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "2443:33:32" - }, - "nodeType": "YulIf", - "src": "2440:53:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "2519:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2527:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2515:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2515:15:32" - }, - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "2536:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2540:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2532:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2532:11:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "2545:2:32" - } - ], - "functionName": { - "name": "calldatacopy", - "nodeType": "YulIdentifier", - "src": "2502:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "2502:46:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2502:46:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "2572:6:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "2580:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2568:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2568:15:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2585:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2564:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2564:24:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2590:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2557:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2557:35:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2557:35:32" - }, - { - "nodeType": "YulAssignment", - "src": "2601:16:32", - "value": { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "2611:6:32" - }, - "variableNames": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "2601:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_contract$_ITransparentUpgradeableProxy_$1484t_addresst_bytes_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "1429:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "1440:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "1452:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "1460:6:32", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "1468:6:32", - "type": "" - } - ], - "src": "1329:1294:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2698:207:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "2744:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2753:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2756:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "2746:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2746:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2746:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "2719:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2728:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "2715:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2715:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2740:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "2711:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2711:32:32" - }, - "nodeType": "YulIf", - "src": "2708:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2769:36:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2795:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "2782:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "2782:23:32" - }, - "variables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "2773:5:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2869:5:32" - } - ], - "functionName": { - "name": "validator_revert_contract_ITransparentUpgradeableProxy", - "nodeType": "YulIdentifier", - "src": "2814:54:32" - }, - "nodeType": "YulFunctionCall", - "src": "2814:61:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2814:61:32" - }, - { - "nodeType": "YulAssignment", - "src": "2884:15:32", - "value": { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2894:5:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "2884:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_address", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "2664:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "2675:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "2687:6:32", - "type": "" - } - ], - "src": "2628:277:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3101:76:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "3118:3:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3127:3:32", - "type": "", - "value": "224" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3132:10:32", - "type": "", - "value": "0x5c60da1b" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "3123:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3123:20:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3111:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3111:33:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3111:33:32" - }, - { - "nodeType": "YulAssignment", - "src": "3153:18:32", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "3164:3:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3169:1:32", - "type": "", - "value": "4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3160:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3160:11:32" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "3153:3:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_packed_t_stringliteral_96a4c6be7716f5be15d118c16bd1d464cb27f01187d0b9218993a5d488a47c29__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "3085:3:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "3093:3:32", - "type": "" - } - ], - "src": "2910:267:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3271:200:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "3317:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3326:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3329:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "3319:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3319:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3319:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "3292:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3301:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "3288:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3288:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3313:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "3284:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3284:32:32" - }, - "nodeType": "YulIf", - "src": "3281:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3342:29:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3361:9:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "3355:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "3355:16:32" - }, - "variables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "3346:5:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3435:5:32" - } - ], - "functionName": { - "name": "validator_revert_contract_ITransparentUpgradeableProxy", - "nodeType": "YulIdentifier", - "src": "3380:54:32" - }, - "nodeType": "YulFunctionCall", - "src": "3380:61:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3380:61:32" - }, - { - "nodeType": "YulAssignment", - "src": "3450:15:32", - "value": { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3460:5:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "3450:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_address_payable_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "3237:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "3248:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "3260:6:32", - "type": "" - } - ], - "src": "3182:289:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3623:496:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3640:9:32" - }, - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "3655:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3671:3:32", - "type": "", - "value": "160" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3676:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "3667:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3667:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3680:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "3663:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3663:19:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "3651:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3651:32:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3633:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3633:51:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3633:51:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3693:12:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3703:2:32", - "type": "", - "value": "32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "3697:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3725:9:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "3736:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3721:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3721:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3741:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3714:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3714:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3714:30:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3753:27:32", - "value": { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "3773:6:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "3767:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "3767:13:32" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "3757:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3800:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3811:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3796:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3796:18:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "3816:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3789:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3789:34:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3789:34:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3832:10:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3841:1:32", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "i", - "nodeType": "YulTypedName", - "src": "3836:1:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3901:90:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3930:9:32" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "3941:1:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3926:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3926:17:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3945:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3922:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3922:26:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "3964:6:32" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "3972:1:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3960:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3960:14:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "3976:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3956:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3956:23:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "3950:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "3950:30:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3915:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3915:66:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3915:66:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "3862:1:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "3865:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "3859:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "3859:13:32" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "3873:19:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "3875:15:32", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "3884:1:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "3887:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3880:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3880:10:32" - }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "3875:1:32" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "3855:3:32", - "statements": [] - }, - "src": "3851:140:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4015:9:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "4026:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4011:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4011:22:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4035:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4007:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4007:31:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4040:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4000:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4000:42:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4000:42:32" - }, - { - "nodeType": "YulAssignment", - "src": "4051:62:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4067:9:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "4086:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4094:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4082:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4082:15:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4103:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "4099:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4099:7:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "4078:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4078:29:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4063:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4063:45:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4110:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4059:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4059:54:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "4051:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_address_t_bytes_memory_ptr__to_t_address_t_bytes_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "3584:9:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "3595:6:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "3603:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "3614:4:32", - "type": "" - } - ], - "src": "3476:643:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4298:228:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4315:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4326:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4308:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4308:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4308:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4349:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4360:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4345:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4345:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4365:2:32", - "type": "", - "value": "38" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4338:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4338:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4338:30:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4388:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4399:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4384:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4384:18:32" - }, - { - "hexValue": "4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061", - "kind": "string", - "nodeType": "YulLiteral", - "src": "4404:34:32", - "type": "", - "value": "Ownable: new owner is the zero a" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4377:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4377:62:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4377:62:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4459:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4470:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4455:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4455:18:32" - }, - { - "hexValue": "646472657373", - "kind": "string", - "nodeType": "YulLiteral", - "src": "4475:8:32", - "type": "", - "value": "ddress" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4448:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4448:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4448:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "4493:27:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4505:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4516:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4501:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4501:19:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "4493:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "4275:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "4289:4:32", - "type": "" - } - ], - "src": "4124:402:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4722:76:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "4739:3:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4748:3:32", - "type": "", - "value": "230" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4753:10:32", - "type": "", - "value": "0x03e14691" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "4744:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4744:20:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4732:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4732:33:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4732:33:32" - }, - { - "nodeType": "YulAssignment", - "src": "4774:18:32", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "4785:3:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4790:1:32", - "type": "", - "value": "4" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4781:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4781:11:32" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "4774:3:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_packed_t_stringliteral_cb23cf6c353ccb16f0d92c8e6b5c5b425654e65dd07e2d295b394de4cf15afb7__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "4706:3:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "4714:3:32", - "type": "" - } - ], - "src": "4531:267:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4977:182:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4994:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5005:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4987:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4987:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4987:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5028:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5039:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5024:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5024:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5044:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5017:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "5017:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "5017:30:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5067:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5078:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5063:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5063:18:32" - }, - { - "hexValue": "4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572", - "kind": "string", - "nodeType": "YulLiteral", - "src": "5083:34:32", - "type": "", - "value": "Ownable: caller is not the owner" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5056:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "5056:62:32" - }, - "nodeType": "YulExpressionStatement", - "src": "5056:62:32" - }, - { - "nodeType": "YulAssignment", - "src": "5127:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5139:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5150:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5135:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5135:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "5127:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "4954:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "4968:4:32", - "type": "" - } - ], - "src": "4803:356:32" - } - ] - }, - "contents": "{\n { }\n function validator_revert_contract_ITransparentUpgradeableProxy(value)\n {\n if iszero(eq(value, and(value, sub(shl(160, 1), 1)))) { revert(0, 0) }\n }\n function abi_decode_tuple_t_contract$_ITransparentUpgradeableProxy_$1484(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let value := calldataload(headStart)\n validator_revert_contract_ITransparentUpgradeableProxy(value)\n value0 := value\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, sub(shl(160, 1), 1)))\n }\n function abi_decode_tuple_t_contract$_ITransparentUpgradeableProxy_$1484t_address(headStart, dataEnd) -> value0, value1\n {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n let value := calldataload(headStart)\n validator_revert_contract_ITransparentUpgradeableProxy(value)\n value0 := value\n let value_1 := calldataload(add(headStart, 32))\n validator_revert_contract_ITransparentUpgradeableProxy(value_1)\n value1 := value_1\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_contract$_ITransparentUpgradeableProxy_$1484t_addresst_bytes_memory_ptr(headStart, dataEnd) -> value0, value1, value2\n {\n if slt(sub(dataEnd, headStart), 96) { revert(0, 0) }\n let value := calldataload(headStart)\n validator_revert_contract_ITransparentUpgradeableProxy(value)\n value0 := value\n let value_1 := calldataload(add(headStart, 32))\n validator_revert_contract_ITransparentUpgradeableProxy(value_1)\n value1 := value_1\n let offset := calldataload(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 := calldataload(_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 calldatacopy(add(memPtr, 32), add(_2, 32), _3)\n mstore(add(add(memPtr, _3), 32), 0)\n value2 := memPtr\n }\n function abi_decode_tuple_t_address(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let value := calldataload(headStart)\n validator_revert_contract_ITransparentUpgradeableProxy(value)\n value0 := value\n }\n function abi_encode_tuple_packed_t_stringliteral_96a4c6be7716f5be15d118c16bd1d464cb27f01187d0b9218993a5d488a47c29__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos) -> end\n {\n mstore(pos, shl(224, 0x5c60da1b))\n end := add(pos, 4)\n }\n function abi_decode_tuple_t_address_payable_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let value := mload(headStart)\n validator_revert_contract_ITransparentUpgradeableProxy(value)\n value0 := value\n }\n function abi_encode_tuple_t_address_t_bytes_memory_ptr__to_t_address_t_bytes_memory_ptr__fromStack_reversed(headStart, value1, value0) -> tail\n {\n mstore(headStart, and(value0, sub(shl(160, 1), 1)))\n let _1 := 32\n mstore(add(headStart, _1), 64)\n let length := mload(value1)\n mstore(add(headStart, 64), length)\n let i := 0\n for { } lt(i, length) { i := add(i, _1) }\n {\n mstore(add(add(headStart, i), 96), mload(add(add(value1, i), _1)))\n }\n mstore(add(add(headStart, length), 96), 0)\n tail := add(add(headStart, and(add(length, 31), not(31))), 96)\n }\n function abi_encode_tuple_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 38)\n mstore(add(headStart, 64), \"Ownable: new owner is the zero a\")\n mstore(add(headStart, 96), \"ddress\")\n tail := add(headStart, 128)\n }\n function abi_encode_tuple_packed_t_stringliteral_cb23cf6c353ccb16f0d92c8e6b5c5b425654e65dd07e2d295b394de4cf15afb7__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos) -> end\n {\n mstore(pos, shl(230, 0x03e14691))\n end := add(pos, 4)\n }\n function abi_encode_tuple_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 32)\n mstore(add(headStart, 64), \"Ownable: caller is not the owner\")\n tail := add(headStart, 96)\n }\n}", - "id": 32, - "language": "Yul", - "name": "#utility.yul" - } - ], - "sourceMap": "450:2409:12:-:0;;;;;;;;;;;;-1:-1:-1;936:32:5;734:10:15;936:18:5;:32::i;:::-;450:2409:12;;2426:187:5;2499:16;2518:6;;-1:-1:-1;;;;;2534:17:5;;;-1:-1:-1;;;;;;2534:17:5;;;;;;2566:40;;2518:6;;;;;;;2566:40;;2499:16;2566:40;2489:124;2426:187;:::o;450:2409:12:-;;;;;;;", - "deployedSourceMap": "450:2409:12:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;650:438;;;;;;;;;;-1:-1:-1;650:438:12;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1824:101:5;;;;;;;;;;;;;:::i;:::-;;1842:149:12;;;;;;;;;;-1:-1:-1;1842:149:12;;;;;:::i;:::-;;:::i;1201:85:5:-;;;;;;;;;;;;;:::i;2612:245:12:-;;;;;;:::i;:::-;;:::i;2196:150::-;;;;;;;;;;-1:-1:-1;2196:150:12;;;;;:::i;:::-;;:::i;2074:198:5:-;;;;;;;;;;-1:-1:-1;2074:198:5;;;;;:::i;:::-;;:::i;1248:420:12:-;;;;;;;;;;-1:-1:-1;1248:420:12;;;;;:::i;:::-;;:::i;650:438::-;747:7;924:12;938:23;973:5;-1:-1:-1;;;;;965:25:12;:40;;;;-1:-1:-1;;;3111:33:32;;3169:1;3160:11;;2910:267;965:40:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;923:82;;;;1023:7;1015:16;;;;;;1059:10;1048:33;;;;;;;;;;;;:::i;:::-;1041:40;650:438;-1:-1:-1;;;;650:438:12:o;1824:101:5:-;1094:13;:11;:13::i;:::-;1888:30:::1;1915:1;1888:18;:30::i;:::-;1824:101::o:0;1842:149:12:-;1094:13:5;:11;:13::i;:::-;1957:27:12::1;::::0;-1:-1:-1;;;1957:27:12;;-1:-1:-1;;;;;1957:17:12;::::1;::::0;::::1;::::0;:27:::1;::::0;1975:8;;1957:27:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;1842:149:::0;;:::o;1201:85:5:-;1247:7;1273:6;-1:-1:-1;;;;;1273:6:5;;1201:85::o;2612:245:12:-;1094:13:5;:11;:13::i;:::-;2788:62:12::1;::::0;-1:-1:-1;;;2788:62:12;;-1:-1:-1;;;;;2788:22:12;::::1;::::0;::::1;::::0;2818:9:::1;::::0;2788:62:::1;::::0;2829:14;;2845:4;;2788:62:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;2612:245:::0;;;:::o;2196:150::-;1094:13:5;:11;:13::i;:::-;2308:31:12::1;::::0;-1:-1:-1;;;2308:31:12;;-1:-1:-1;;;;;2308:15:12;::::1;::::0;::::1;::::0;:31:::1;::::0;2324:14;;2308:31:::1;;;:::i;2074:198:5:-:0;1094:13;:11;:13::i;:::-;-1:-1:-1;;;;;2162:22:5;::::1;2154:73;;;::::0;-1:-1:-1;;;2154:73:5;;4326:2:32;2154:73:5::1;::::0;::::1;4308:21:32::0;4365:2;4345:18;;;4338:30;4404:34;4384:18;;;4377:62;-1:-1:-1;;;4455:18:32;;;4448:36;4501:19;;2154:73:5::1;;;;;;;;;2237:28;2256:8;2237:18;:28::i;:::-;2074:198:::0;:::o;1248:420:12:-;1336:7;1504:12;1518:23;1553:5;-1:-1:-1;;;;;1545:25:12;:40;;;;-1:-1:-1;;;4732:33:32;;4790:1;4781:11;;4531:267;1359:130:5;734:10:15;1422:7:5;:5;:7::i;:::-;-1:-1:-1;;;;;1422:23:5;;1414:68;;;;-1:-1:-1;;;1414:68:5;;5005:2:32;1414:68:5;;;4987:21:32;;;5024:18;;;5017:30;5083:34;5063:18;;;5056:62;5135:18;;1414:68:5;4803:356:32;2426:187:5;2499:16;2518:6;;-1:-1:-1;;;;;2534:17:5;;;-1:-1:-1;;;;;;2534:17:5;;;;;;2566:40;;2518:6;;;;;;;2566:40;;2499:16;2566:40;2489:124;2426:187;:::o;14:161:32:-;-1:-1:-1;;;;;119:31:32;;109:42;;99:70;;165:1;162;155:12;180:314;276:6;329:2;317:9;308:7;304:23;300:32;297:52;;;345:1;342;335:12;297:52;384:9;371:23;403:61;458:5;403:61;:::i;:::-;483:5;180:314;-1:-1:-1;;;180:314:32:o;499:203::-;-1:-1:-1;;;;;663:32:32;;;;645:51;;633:2;618:18;;499:203::o;707:485::-;812:6;820;873:2;861:9;852:7;848:23;844:32;841:52;;;889:1;886;879:12;841:52;928:9;915:23;947:61;1002:5;947:61;:::i;:::-;1027:5;-1:-1:-1;1084:2:32;1069:18;;1056:32;1097:63;1056:32;1097:63;:::i;:::-;1179:7;1169:17;;;707:485;;;;;:::o;1197:127::-;1258:10;1253:3;1249:20;1246:1;1239:31;1289:4;1286:1;1279:15;1313:4;1310:1;1303:15;1329:1294;1452:6;1460;1468;1521:2;1509:9;1500:7;1496:23;1492:32;1489:52;;;1537:1;1534;1527:12;1489:52;1576:9;1563:23;1595:61;1650:5;1595:61;:::i;:::-;1675:5;-1:-1:-1;1732:2:32;1717:18;;1704:32;1745:63;1704:32;1745:63;:::i;:::-;1827:7;-1:-1:-1;1885:2:32;1870:18;;1857:32;-1:-1:-1;;;;;1938:14:32;;;1935:34;;;1965:1;1962;1955:12;1935:34;2003:6;1992:9;1988:22;1978:32;;2048:7;2041:4;2037:2;2033:13;2029:27;2019:55;;2070:1;2067;2060:12;2019:55;2106:2;2093:16;2128:2;2124;2121:10;2118:36;;;2134:18;;:::i;:::-;2209:2;2203:9;2177:2;2263:13;;-1:-1:-1;;2259:22:32;;;2283:2;2255:31;2251:40;2239:53;;;2307:18;;;2327:22;;;2304:46;2301:72;;;2353:18;;:::i;:::-;2393:10;2389:2;2382:22;2428:2;2420:6;2413:18;2468:7;2463:2;2458;2454;2450:11;2446:20;2443:33;2440:53;;;2489:1;2486;2479:12;2440:53;2545:2;2540;2536;2532:11;2527:2;2519:6;2515:15;2502:46;2590:1;2585:2;2580;2572:6;2568:15;2564:24;2557:35;2611:6;2601:16;;;;;;;1329:1294;;;;;:::o;3182:289::-;3260:6;3313:2;3301:9;3292:7;3288:23;3284:32;3281:52;;;3329:1;3326;3319:12;3281:52;3361:9;3355:16;3380:61;3435:5;3380:61;:::i;3476:643::-;3680:1;3676;3671:3;3667:11;3663:19;3655:6;3651:32;3640:9;3633:51;3614:4;3703:2;3741;3736;3725:9;3721:18;3714:30;3773:6;3767:13;3816:6;3811:2;3800:9;3796:18;3789:34;3841:1;3851:140;3865:6;3862:1;3859:13;3851:140;;;3960:14;;;3956:23;;3950:30;3926:17;;;3945:2;3922:26;3915:66;3880:10;;3851:140;;;3855:3;4040:1;4035:2;4026:6;4015:9;4011:22;4007:31;4000:42;4110:2;4103;4099:7;4094:2;4086:6;4082:15;4078:29;4067:9;4063:45;4059:54;4051:62;;;;3476:643;;;;;:::o", - "source": "// SPDX-License-Identifier: MIT\n// OpenZeppelin Contracts (last updated v4.8.3) (proxy/transparent/ProxyAdmin.sol)\n\npragma solidity ^0.8.0;\n\nimport \"./TransparentUpgradeableProxy.sol\";\nimport \"../../access/Ownable.sol\";\n\n/**\n * @dev This is an auxiliary contract meant to be assigned as the admin of a {TransparentUpgradeableProxy}. For an\n * explanation of why you would want to use this see the documentation for {TransparentUpgradeableProxy}.\n */\ncontract ProxyAdmin is Ownable {\n /**\n * @dev Returns the current implementation of `proxy`.\n *\n * Requirements:\n *\n * - This contract must be the admin of `proxy`.\n */\n function getProxyImplementation(ITransparentUpgradeableProxy proxy) public view virtual returns (address) {\n // We need to manually run the static call since the getter cannot be flagged as view\n // bytes4(keccak256(\"implementation()\")) == 0x5c60da1b\n (bool success, bytes memory returndata) = address(proxy).staticcall(hex\"5c60da1b\");\n require(success);\n return abi.decode(returndata, (address));\n }\n\n /**\n * @dev Returns the current admin of `proxy`.\n *\n * Requirements:\n *\n * - This contract must be the admin of `proxy`.\n */\n function getProxyAdmin(ITransparentUpgradeableProxy proxy) public view virtual returns (address) {\n // We need to manually run the static call since the getter cannot be flagged as view\n // bytes4(keccak256(\"admin()\")) == 0xf851a440\n (bool success, bytes memory returndata) = address(proxy).staticcall(hex\"f851a440\");\n require(success);\n return abi.decode(returndata, (address));\n }\n\n /**\n * @dev Changes the admin of `proxy` to `newAdmin`.\n *\n * Requirements:\n *\n * - This contract must be the current admin of `proxy`.\n */\n function changeProxyAdmin(ITransparentUpgradeableProxy proxy, address newAdmin) public virtual onlyOwner {\n proxy.changeAdmin(newAdmin);\n }\n\n /**\n * @dev Upgrades `proxy` to `implementation`. See {TransparentUpgradeableProxy-upgradeTo}.\n *\n * Requirements:\n *\n * - This contract must be the admin of `proxy`.\n */\n function upgrade(ITransparentUpgradeableProxy proxy, address implementation) public virtual onlyOwner {\n proxy.upgradeTo(implementation);\n }\n\n /**\n * @dev Upgrades `proxy` to `implementation` and calls a function on the new implementation. See\n * {TransparentUpgradeableProxy-upgradeToAndCall}.\n *\n * Requirements:\n *\n * - This contract must be the admin of `proxy`.\n */\n function upgradeAndCall(\n ITransparentUpgradeableProxy proxy,\n address implementation,\n bytes memory data\n ) public payable virtual onlyOwner {\n proxy.upgradeToAndCall{value: msg.value}(implementation, data);\n }\n}\n", - "sourcePath": "@openzeppelin/contracts/proxy/transparent/ProxyAdmin.sol", - "ast": { - "absolutePath": "@openzeppelin/contracts/proxy/transparent/ProxyAdmin.sol", - "exportedSymbols": { - "Address": [ - 2103 - ], - "Context": [ - 2133 - ], - "ERC1967Proxy": [ - 948 - ], - "ERC1967Upgrade": [ - 1252 - ], - "IBeacon": [ - 1314 - ], - "IERC1822Proxiable": [ - 911 - ], - "IERC1967": [ - 901 - ], - "ITransparentUpgradeableProxy": [ - 1484 - ], - "Ownable": [ - 880 - ], - "Proxy": [ - 1304 - ], - "ProxyAdmin": [ - 1450 - ], - "StorageSlot": [ - 2243 - ], - "TransparentUpgradeableProxy": [ - 1773 - ] - }, - "id": 1451, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1316, - "literals": [ - "solidity", - "^", - "0.8", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "116:23:12" - }, - { - "absolutePath": "@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", - "file": "./TransparentUpgradeableProxy.sol", - "id": 1317, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 1451, - "sourceUnit": 1774, - "src": "141:43:12", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "@openzeppelin/contracts/access/Ownable.sol", - "file": "../../access/Ownable.sol", - "id": 1318, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 1451, - "sourceUnit": 881, - "src": "185:34:12", - "symbolAliases": [], - "unitAlias": "" - }, - { - "abstract": false, - "baseContracts": [ - { - "baseName": { - "id": 1320, - "name": "Ownable", - "nameLocations": [ - "473:7:12" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 880, - "src": "473:7:12" - }, - "id": 1321, - "nodeType": "InheritanceSpecifier", - "src": "473:7:12" - } - ], - "canonicalName": "ProxyAdmin", - "contractDependencies": [], - "contractKind": "contract", - "documentation": { - "id": 1319, - "nodeType": "StructuredDocumentation", - "src": "221:228:12", - "text": " @dev This is an auxiliary contract meant to be assigned as the admin of a {TransparentUpgradeableProxy}. For an\n explanation of why you would want to use this see the documentation for {TransparentUpgradeableProxy}." - }, - "fullyImplemented": true, - "id": 1450, - "linearizedBaseContracts": [ - 1450, - 880, - 2133 - ], - "name": "ProxyAdmin", - "nameLocation": "459:10:12", - "nodeType": "ContractDefinition", - "nodes": [ - { - "body": { - "id": 1354, - "nodeType": "Block", - "src": "756:332:12", - "statements": [ - { - "assignments": [ - 1331, - 1333 - ], - "declarations": [ - { - "constant": false, - "id": 1331, - "mutability": "mutable", - "name": "success", - "nameLocation": "929:7:12", - "nodeType": "VariableDeclaration", - "scope": 1354, - "src": "924:12:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1330, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "924:4:12", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1333, - "mutability": "mutable", - "name": "returndata", - "nameLocation": "951:10:12", - "nodeType": "VariableDeclaration", - "scope": 1354, - "src": "938:23:12", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1332, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "938:5:12", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 1341, - "initialValue": { - "arguments": [ - { - "hexValue": "5c60da1b", - "id": 1339, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "hexString", - "lValueRequested": false, - "nodeType": "Literal", - "src": "991:13:12", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_96a4c6be7716f5be15d118c16bd1d464cb27f01187d0b9218993a5d488a47c29", - "typeString": "literal_string hex\"5c60da1b\"" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_96a4c6be7716f5be15d118c16bd1d464cb27f01187d0b9218993a5d488a47c29", - "typeString": "literal_string hex\"5c60da1b\"" - } - ], - "expression": { - "arguments": [ - { - "id": 1336, - "name": "proxy", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1325, - "src": "973:5:12", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ITransparentUpgradeableProxy_$1484", - "typeString": "contract ITransparentUpgradeableProxy" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_ITransparentUpgradeableProxy_$1484", - "typeString": "contract ITransparentUpgradeableProxy" - } - ], - "id": 1335, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "965:7:12", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 1334, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "965:7:12", - "typeDescriptions": {} - } - }, - "id": 1337, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "965:14:12", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1338, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "980:10:12", - "memberName": "staticcall", - "nodeType": "MemberAccess", - "src": "965:25:12", - "typeDescriptions": { - "typeIdentifier": "t_function_barestaticcall_view$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "function (bytes memory) view returns (bool,bytes memory)" - } - }, - "id": 1340, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "965:40:12", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "tuple(bool,bytes memory)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "923:82:12" - }, - { - "expression": { - "arguments": [ - { - "id": 1343, - "name": "success", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1331, - "src": "1023:7:12", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 1342, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "1015:7:12", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 1344, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1015:16:12", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1345, - "nodeType": "ExpressionStatement", - "src": "1015:16:12" - }, - { - "expression": { - "arguments": [ - { - "id": 1348, - "name": "returndata", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1333, - "src": "1059:10:12", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "components": [ - { - "id": 1350, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "1072:7:12", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 1349, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1072:7:12", - "typeDescriptions": {} - } - } - ], - "id": 1351, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "1071:9:12", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - } - ], - "expression": { - "id": 1346, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "1048:3:12", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 1347, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "1052:6:12", - "memberName": "decode", - "nodeType": "MemberAccess", - "src": "1048:10:12", - "typeDescriptions": { - "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 1352, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1048:33:12", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "functionReturnParameters": 1329, - "id": 1353, - "nodeType": "Return", - "src": "1041:40:12" - } - ] - }, - "documentation": { - "id": 1322, - "nodeType": "StructuredDocumentation", - "src": "487:158:12", - "text": " @dev Returns the current implementation of `proxy`.\n Requirements:\n - This contract must be the admin of `proxy`." - }, - "functionSelector": "204e1c7a", - "id": 1355, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getProxyImplementation", - "nameLocation": "659:22:12", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1326, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1325, - "mutability": "mutable", - "name": "proxy", - "nameLocation": "711:5:12", - "nodeType": "VariableDeclaration", - "scope": 1355, - "src": "682:34:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ITransparentUpgradeableProxy_$1484", - "typeString": "contract ITransparentUpgradeableProxy" - }, - "typeName": { - "id": 1324, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1323, - "name": "ITransparentUpgradeableProxy", - "nameLocations": [ - "682:28:12" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 1484, - "src": "682:28:12" - }, - "referencedDeclaration": 1484, - "src": "682:28:12", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ITransparentUpgradeableProxy_$1484", - "typeString": "contract ITransparentUpgradeableProxy" - } - }, - "visibility": "internal" - } - ], - "src": "681:36:12" - }, - "returnParameters": { - "id": 1329, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1328, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1355, - "src": "747:7:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1327, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "747:7:12", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "746:9:12" - }, - "scope": 1450, - "src": "650:438:12", - "stateMutability": "view", - "virtual": true, - "visibility": "public" - }, - { - "body": { - "id": 1388, - "nodeType": "Block", - "src": "1345:323:12", - "statements": [ - { - "assignments": [ - 1365, - 1367 - ], - "declarations": [ - { - "constant": false, - "id": 1365, - "mutability": "mutable", - "name": "success", - "nameLocation": "1509:7:12", - "nodeType": "VariableDeclaration", - "scope": 1388, - "src": "1504:12:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1364, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1504:4:12", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1367, - "mutability": "mutable", - "name": "returndata", - "nameLocation": "1531:10:12", - "nodeType": "VariableDeclaration", - "scope": 1388, - "src": "1518:23:12", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1366, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1518:5:12", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 1375, - "initialValue": { - "arguments": [ - { - "hexValue": "f851a440", - "id": 1373, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "hexString", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1571:13:12", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_cb23cf6c353ccb16f0d92c8e6b5c5b425654e65dd07e2d295b394de4cf15afb7", - "typeString": "literal_string hex\"f851a440\"" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_cb23cf6c353ccb16f0d92c8e6b5c5b425654e65dd07e2d295b394de4cf15afb7", - "typeString": "literal_string hex\"f851a440\"" - } - ], - "expression": { - "arguments": [ - { - "id": 1370, - "name": "proxy", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1359, - "src": "1553:5:12", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ITransparentUpgradeableProxy_$1484", - "typeString": "contract ITransparentUpgradeableProxy" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_ITransparentUpgradeableProxy_$1484", - "typeString": "contract ITransparentUpgradeableProxy" - } - ], - "id": 1369, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "1545:7:12", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 1368, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1545:7:12", - "typeDescriptions": {} - } - }, - "id": 1371, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1545:14:12", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1372, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "1560:10:12", - "memberName": "staticcall", - "nodeType": "MemberAccess", - "src": "1545:25:12", - "typeDescriptions": { - "typeIdentifier": "t_function_barestaticcall_view$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "function (bytes memory) view returns (bool,bytes memory)" - } - }, - "id": 1374, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1545:40:12", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "tuple(bool,bytes memory)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1503:82:12" - }, - { - "expression": { - "arguments": [ - { - "id": 1377, - "name": "success", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1365, - "src": "1603:7:12", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 1376, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "1595:7:12", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 1378, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1595:16:12", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1379, - "nodeType": "ExpressionStatement", - "src": "1595:16:12" - }, - { - "expression": { - "arguments": [ - { - "id": 1382, - "name": "returndata", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1367, - "src": "1639:10:12", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "components": [ - { - "id": 1384, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "1652:7:12", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 1383, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1652:7:12", - "typeDescriptions": {} - } - } - ], - "id": 1385, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "1651:9:12", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - } - ], - "expression": { - "id": 1380, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "1628:3:12", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 1381, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "1632:6:12", - "memberName": "decode", - "nodeType": "MemberAccess", - "src": "1628:10:12", - "typeDescriptions": { - "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 1386, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1628:33:12", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "functionReturnParameters": 1363, - "id": 1387, - "nodeType": "Return", - "src": "1621:40:12" - } - ] - }, - "documentation": { - "id": 1356, - "nodeType": "StructuredDocumentation", - "src": "1094:149:12", - "text": " @dev Returns the current admin of `proxy`.\n Requirements:\n - This contract must be the admin of `proxy`." - }, - "functionSelector": "f3b7dead", - "id": 1389, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getProxyAdmin", - "nameLocation": "1257:13:12", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1360, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1359, - "mutability": "mutable", - "name": "proxy", - "nameLocation": "1300:5:12", - "nodeType": "VariableDeclaration", - "scope": 1389, - "src": "1271:34:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ITransparentUpgradeableProxy_$1484", - "typeString": "contract ITransparentUpgradeableProxy" - }, - "typeName": { - "id": 1358, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1357, - "name": "ITransparentUpgradeableProxy", - "nameLocations": [ - "1271:28:12" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 1484, - "src": "1271:28:12" - }, - "referencedDeclaration": 1484, - "src": "1271:28:12", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ITransparentUpgradeableProxy_$1484", - "typeString": "contract ITransparentUpgradeableProxy" - } - }, - "visibility": "internal" - } - ], - "src": "1270:36:12" - }, - "returnParameters": { - "id": 1363, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1362, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1389, - "src": "1336:7:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1361, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1336:7:12", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "1335:9:12" - }, - "scope": 1450, - "src": "1248:420:12", - "stateMutability": "view", - "virtual": true, - "visibility": "public" - }, - { - "body": { - "id": 1406, - "nodeType": "Block", - "src": "1947:44:12", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 1403, - "name": "newAdmin", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1395, - "src": "1975:8:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "expression": { - "id": 1400, - "name": "proxy", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1393, - "src": "1957:5:12", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ITransparentUpgradeableProxy_$1484", - "typeString": "contract ITransparentUpgradeableProxy" - } - }, - "id": 1402, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "1963:11:12", - "memberName": "changeAdmin", - "nodeType": "MemberAccess", - "referencedDeclaration": 1471, - "src": "1957:17:12", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$__$", - "typeString": "function (address) external" - } - }, - "id": 1404, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1957:27:12", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1405, - "nodeType": "ExpressionStatement", - "src": "1957:27:12" - } - ] - }, - "documentation": { - "id": 1390, - "nodeType": "StructuredDocumentation", - "src": "1674:163:12", - "text": " @dev Changes the admin of `proxy` to `newAdmin`.\n Requirements:\n - This contract must be the current admin of `proxy`." - }, - "functionSelector": "7eff275e", - "id": 1407, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "id": 1398, - "kind": "modifierInvocation", - "modifierName": { - "id": 1397, - "name": "onlyOwner", - "nameLocations": [ - "1937:9:12" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 799, - "src": "1937:9:12" - }, - "nodeType": "ModifierInvocation", - "src": "1937:9:12" - } - ], - "name": "changeProxyAdmin", - "nameLocation": "1851:16:12", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1396, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1393, - "mutability": "mutable", - "name": "proxy", - "nameLocation": "1897:5:12", - "nodeType": "VariableDeclaration", - "scope": 1407, - "src": "1868:34:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ITransparentUpgradeableProxy_$1484", - "typeString": "contract ITransparentUpgradeableProxy" - }, - "typeName": { - "id": 1392, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1391, - "name": "ITransparentUpgradeableProxy", - "nameLocations": [ - "1868:28:12" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 1484, - "src": "1868:28:12" - }, - "referencedDeclaration": 1484, - "src": "1868:28:12", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ITransparentUpgradeableProxy_$1484", - "typeString": "contract ITransparentUpgradeableProxy" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1395, - "mutability": "mutable", - "name": "newAdmin", - "nameLocation": "1912:8:12", - "nodeType": "VariableDeclaration", - "scope": 1407, - "src": "1904:16:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1394, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1904:7:12", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "1867:54:12" - }, - "returnParameters": { - "id": 1399, - "nodeType": "ParameterList", - "parameters": [], - "src": "1947:0:12" - }, - "scope": 1450, - "src": "1842:149:12", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "public" - }, - { - "body": { - "id": 1424, - "nodeType": "Block", - "src": "2298:48:12", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 1421, - "name": "implementation", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1413, - "src": "2324:14:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "expression": { - "id": 1418, - "name": "proxy", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1411, - "src": "2308:5:12", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ITransparentUpgradeableProxy_$1484", - "typeString": "contract ITransparentUpgradeableProxy" - } - }, - "id": 1420, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "2314:9:12", - "memberName": "upgradeTo", - "nodeType": "MemberAccess", - "referencedDeclaration": 1476, - "src": "2308:15:12", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$__$", - "typeString": "function (address) external" - } - }, - "id": 1422, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2308:31:12", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1423, - "nodeType": "ExpressionStatement", - "src": "2308:31:12" - } - ] - }, - "documentation": { - "id": 1408, - "nodeType": "StructuredDocumentation", - "src": "1997:194:12", - "text": " @dev Upgrades `proxy` to `implementation`. See {TransparentUpgradeableProxy-upgradeTo}.\n Requirements:\n - This contract must be the admin of `proxy`." - }, - "functionSelector": "99a88ec4", - "id": 1425, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "id": 1416, - "kind": "modifierInvocation", - "modifierName": { - "id": 1415, - "name": "onlyOwner", - "nameLocations": [ - "2288:9:12" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 799, - "src": "2288:9:12" - }, - "nodeType": "ModifierInvocation", - "src": "2288:9:12" - } - ], - "name": "upgrade", - "nameLocation": "2205:7:12", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1414, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1411, - "mutability": "mutable", - "name": "proxy", - "nameLocation": "2242:5:12", - "nodeType": "VariableDeclaration", - "scope": 1425, - "src": "2213:34:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ITransparentUpgradeableProxy_$1484", - "typeString": "contract ITransparentUpgradeableProxy" - }, - "typeName": { - "id": 1410, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1409, - "name": "ITransparentUpgradeableProxy", - "nameLocations": [ - "2213:28:12" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 1484, - "src": "2213:28:12" - }, - "referencedDeclaration": 1484, - "src": "2213:28:12", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ITransparentUpgradeableProxy_$1484", - "typeString": "contract ITransparentUpgradeableProxy" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1413, - "mutability": "mutable", - "name": "implementation", - "nameLocation": "2257:14:12", - "nodeType": "VariableDeclaration", - "scope": 1425, - "src": "2249:22:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1412, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2249:7:12", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "2212:60:12" - }, - "returnParameters": { - "id": 1417, - "nodeType": "ParameterList", - "parameters": [], - "src": "2298:0:12" - }, - "scope": 1450, - "src": "2196:150:12", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "public" - }, - { - "body": { - "id": 1448, - "nodeType": "Block", - "src": "2778:79:12", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 1444, - "name": "implementation", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1431, - "src": "2829:14:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 1445, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1433, - "src": "2845:4:12", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "id": 1438, - "name": "proxy", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1429, - "src": "2788:5:12", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ITransparentUpgradeableProxy_$1484", - "typeString": "contract ITransparentUpgradeableProxy" - } - }, - "id": 1440, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "2794:16:12", - "memberName": "upgradeToAndCall", - "nodeType": "MemberAccess", - "referencedDeclaration": 1483, - "src": "2788:22:12", - "typeDescriptions": { - "typeIdentifier": "t_function_external_payable$_t_address_$_t_bytes_memory_ptr_$returns$__$", - "typeString": "function (address,bytes memory) payable external" - } - }, - "id": 1443, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "names": [ - "value" - ], - "nodeType": "FunctionCallOptions", - "options": [ - { - "expression": { - "id": 1441, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "2818:3:12", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1442, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "2822:5:12", - "memberName": "value", - "nodeType": "MemberAccess", - "src": "2818:9:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "src": "2788:40:12", - "typeDescriptions": { - "typeIdentifier": "t_function_external_payable$_t_address_$_t_bytes_memory_ptr_$returns$__$value", - "typeString": "function (address,bytes memory) payable external" - } - }, - "id": 1446, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2788:62:12", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1447, - "nodeType": "ExpressionStatement", - "src": "2788:62:12" - } - ] - }, - "documentation": { - "id": 1426, - "nodeType": "StructuredDocumentation", - "src": "2352:255:12", - "text": " @dev Upgrades `proxy` to `implementation` and calls a function on the new implementation. See\n {TransparentUpgradeableProxy-upgradeToAndCall}.\n Requirements:\n - This contract must be the admin of `proxy`." - }, - "functionSelector": "9623609d", - "id": 1449, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "id": 1436, - "kind": "modifierInvocation", - "modifierName": { - "id": 1435, - "name": "onlyOwner", - "nameLocations": [ - "2768:9:12" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 799, - "src": "2768:9:12" - }, - "nodeType": "ModifierInvocation", - "src": "2768:9:12" - } - ], - "name": "upgradeAndCall", - "nameLocation": "2621:14:12", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1434, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1429, - "mutability": "mutable", - "name": "proxy", - "nameLocation": "2674:5:12", - "nodeType": "VariableDeclaration", - "scope": 1449, - "src": "2645:34:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ITransparentUpgradeableProxy_$1484", - "typeString": "contract ITransparentUpgradeableProxy" - }, - "typeName": { - "id": 1428, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1427, - "name": "ITransparentUpgradeableProxy", - "nameLocations": [ - "2645:28:12" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 1484, - "src": "2645:28:12" - }, - "referencedDeclaration": 1484, - "src": "2645:28:12", - "typeDescriptions": { - "typeIdentifier": "t_contract$_ITransparentUpgradeableProxy_$1484", - "typeString": "contract ITransparentUpgradeableProxy" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1431, - "mutability": "mutable", - "name": "implementation", - "nameLocation": "2697:14:12", - "nodeType": "VariableDeclaration", - "scope": 1449, - "src": "2689:22:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1430, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2689:7:12", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1433, - "mutability": "mutable", - "name": "data", - "nameLocation": "2734:4:12", - "nodeType": "VariableDeclaration", - "scope": 1449, - "src": "2721:17:12", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1432, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "2721:5:12", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "2635:109:12" - }, - "returnParameters": { - "id": 1437, - "nodeType": "ParameterList", - "parameters": [], - "src": "2778:0:12" - }, - "scope": 1450, - "src": "2612:245:12", - "stateMutability": "payable", - "virtual": true, - "visibility": "public" - } - ], - "scope": 1451, - "src": "450:2409:12", - "usedErrors": [] - } - ], - "src": "116:2744:12" - }, - "compiler": { - "name": "solc", - "version": "0.8.18+commit.87f61d96.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "3.4.13", - "updatedAt": "2024-12-10T18:52:58.846Z", - "devdoc": { - "details": "This is an auxiliary contract meant to be assigned as the admin of a {TransparentUpgradeableProxy}. For an explanation of why you would want to use this see the documentation for {TransparentUpgradeableProxy}.", - "kind": "dev", - "methods": { - "changeProxyAdmin(address,address)": { - "details": "Changes the admin of `proxy` to `newAdmin`. Requirements: - This contract must be the current admin of `proxy`." - }, - "getProxyAdmin(address)": { - "details": "Returns the current admin of `proxy`. Requirements: - This contract must be the admin of `proxy`." - }, - "getProxyImplementation(address)": { - "details": "Returns the current implementation of `proxy`. Requirements: - This contract must be the admin of `proxy`." - }, - "owner()": { - "details": "Returns the address of the current owner." - }, - "renounceOwnership()": { - "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(address)": { - "details": "Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner." - }, - "upgrade(address,address)": { - "details": "Upgrades `proxy` to `implementation`. See {TransparentUpgradeableProxy-upgradeTo}. Requirements: - This contract must be the admin of `proxy`." - }, - "upgradeAndCall(address,address,bytes)": { - "details": "Upgrades `proxy` to `implementation` and calls a function on the new implementation. See {TransparentUpgradeableProxy-upgradeToAndCall}. Requirements: - This contract must be the admin of `proxy`." - } - }, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } -} \ No newline at end of file diff --git a/build/contracts/Quotes.json b/build/contracts/Quotes.json deleted file mode 100644 index cc4d79b..0000000 --- a/build/contracts/Quotes.json +++ /dev/null @@ -1,15183 +0,0 @@ -{ - "contractName": "Quotes", - "abi": [ - { - "inputs": [ - { - "components": [ - { - "internalType": "bytes20", - "name": "fedBtcAddress", - "type": "bytes20" - }, - { - "internalType": "address", - "name": "lbcAddress", - "type": "address" - }, - { - "internalType": "address", - "name": "liquidityProviderRskAddress", - "type": "address" - }, - { - "internalType": "bytes", - "name": "btcRefundAddress", - "type": "bytes" - }, - { - "internalType": "address payable", - "name": "rskRefundAddress", - "type": "address" - }, - { - "internalType": "bytes", - "name": "liquidityProviderBtcAddress", - "type": "bytes" - }, - { - "internalType": "uint256", - "name": "callFee", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "penaltyFee", - "type": "uint256" - }, - { - "internalType": "address", - "name": "contractAddress", - "type": "address" - }, - { - "internalType": "bytes", - "name": "data", - "type": "bytes" - }, - { - "internalType": "uint32", - "name": "gasLimit", - "type": "uint32" - }, - { - "internalType": "int64", - "name": "nonce", - "type": "int64" - }, - { - "internalType": "uint256", - "name": "value", - "type": "uint256" - }, - { - "internalType": "uint32", - "name": "agreementTimestamp", - "type": "uint32" - }, - { - "internalType": "uint32", - "name": "timeForDeposit", - "type": "uint32" - }, - { - "internalType": "uint32", - "name": "callTime", - "type": "uint32" - }, - { - "internalType": "uint16", - "name": "depositConfirmations", - "type": "uint16" - }, - { - "internalType": "bool", - "name": "callOnRegister", - "type": "bool" - } - ], - "internalType": "struct Quotes.PeginQuote", - "name": "quote", - "type": "tuple" - } - ], - "name": "encodeQuote", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [ - { - "components": [ - { - "internalType": "address", - "name": "lbcAddress", - "type": "address" - }, - { - "internalType": "address", - "name": "lpRskAddress", - "type": "address" - }, - { - "internalType": "bytes", - "name": "btcRefundAddress", - "type": "bytes" - }, - { - "internalType": "address", - "name": "rskRefundAddress", - "type": "address" - }, - { - "internalType": "bytes", - "name": "lpBtcAddress", - "type": "bytes" - }, - { - "internalType": "uint256", - "name": "callFee", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "penaltyFee", - "type": "uint256" - }, - { - "internalType": "int64", - "name": "nonce", - "type": "int64" - }, - { - "internalType": "bytes", - "name": "deposityAddress", - "type": "bytes" - }, - { - "internalType": "uint256", - "name": "value", - "type": "uint256" - }, - { - "internalType": "uint32", - "name": "agreementTimestamp", - "type": "uint32" - }, - { - "internalType": "uint32", - "name": "depositDateLimit", - "type": "uint32" - }, - { - "internalType": "uint16", - "name": "depositConfirmations", - "type": "uint16" - }, - { - "internalType": "uint16", - "name": "transferConfirmations", - "type": "uint16" - }, - { - "internalType": "uint32", - "name": "transferTime", - "type": "uint32" - }, - { - "internalType": "uint32", - "name": "expireDate", - "type": "uint32" - }, - { - "internalType": "uint32", - "name": "expireBlock", - "type": "uint32" - } - ], - "internalType": "struct Quotes.PegOutQuote", - "name": "quote", - "type": "tuple" - } - ], - "name": "encodePegOutQuote", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [ - { - "components": [ - { - "internalType": "bytes20", - "name": "fedBtcAddress", - "type": "bytes20" - }, - { - "internalType": "address", - "name": "lbcAddress", - "type": "address" - }, - { - "internalType": "address", - "name": "liquidityProviderRskAddress", - "type": "address" - }, - { - "internalType": "bytes", - "name": "btcRefundAddress", - "type": "bytes" - }, - { - "internalType": "address payable", - "name": "rskRefundAddress", - "type": "address" - }, - { - "internalType": "bytes", - "name": "liquidityProviderBtcAddress", - "type": "bytes" - }, - { - "internalType": "uint256", - "name": "callFee", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "penaltyFee", - "type": "uint256" - }, - { - "internalType": "address", - "name": "contractAddress", - "type": "address" - }, - { - "internalType": "bytes", - "name": "data", - "type": "bytes" - }, - { - "internalType": "uint32", - "name": "gasLimit", - "type": "uint32" - }, - { - "internalType": "int64", - "name": "nonce", - "type": "int64" - }, - { - "internalType": "uint256", - "name": "value", - "type": "uint256" - }, - { - "internalType": "uint32", - "name": "agreementTimestamp", - "type": "uint32" - }, - { - "internalType": "uint32", - "name": "timeForDeposit", - "type": "uint32" - }, - { - "internalType": "uint32", - "name": "callTime", - "type": "uint32" - }, - { - "internalType": "uint16", - "name": "depositConfirmations", - "type": "uint16" - }, - { - "internalType": "bool", - "name": "callOnRegister", - "type": "bool" - } - ], - "internalType": "struct Quotes.PeginQuote", - "name": "quote", - "type": "tuple" - }, - { - "internalType": "uint256", - "name": "transferredAmount", - "type": "uint256" - } - ], - "name": "checkAgreedAmount", - "outputs": [], - "stateMutability": "pure", - "type": "function" - } - ], - "metadata": "{\"compiler\":{\"version\":\"0.8.18+commit.87f61d96\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"components\":[{\"internalType\":\"bytes20\",\"name\":\"fedBtcAddress\",\"type\":\"bytes20\"},{\"internalType\":\"address\",\"name\":\"lbcAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"liquidityProviderRskAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"btcRefundAddress\",\"type\":\"bytes\"},{\"internalType\":\"address payable\",\"name\":\"rskRefundAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"liquidityProviderBtcAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"callFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"penaltyFee\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"gasLimit\",\"type\":\"uint32\"},{\"internalType\":\"int64\",\"name\":\"nonce\",\"type\":\"int64\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"agreementTimestamp\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"timeForDeposit\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"callTime\",\"type\":\"uint32\"},{\"internalType\":\"uint16\",\"name\":\"depositConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"bool\",\"name\":\"callOnRegister\",\"type\":\"bool\"}],\"internalType\":\"struct Quotes.PeginQuote\",\"name\":\"quote\",\"type\":\"tuple\"},{\"internalType\":\"uint256\",\"name\":\"transferredAmount\",\"type\":\"uint256\"}],\"name\":\"checkAgreedAmount\",\"outputs\":[],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"lbcAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"lpRskAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"btcRefundAddress\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"rskRefundAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"lpBtcAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"callFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"penaltyFee\",\"type\":\"uint256\"},{\"internalType\":\"int64\",\"name\":\"nonce\",\"type\":\"int64\"},{\"internalType\":\"bytes\",\"name\":\"deposityAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"agreementTimestamp\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"depositDateLimit\",\"type\":\"uint32\"},{\"internalType\":\"uint16\",\"name\":\"depositConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"uint16\",\"name\":\"transferConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"uint32\",\"name\":\"transferTime\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"expireDate\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"expireBlock\",\"type\":\"uint32\"}],\"internalType\":\"struct Quotes.PegOutQuote\",\"name\":\"quote\",\"type\":\"tuple\"}],\"name\":\"encodePegOutQuote\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bytes20\",\"name\":\"fedBtcAddress\",\"type\":\"bytes20\"},{\"internalType\":\"address\",\"name\":\"lbcAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"liquidityProviderRskAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"btcRefundAddress\",\"type\":\"bytes\"},{\"internalType\":\"address payable\",\"name\":\"rskRefundAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"liquidityProviderBtcAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"callFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"penaltyFee\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"gasLimit\",\"type\":\"uint32\"},{\"internalType\":\"int64\",\"name\":\"nonce\",\"type\":\"int64\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"agreementTimestamp\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"timeForDeposit\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"callTime\",\"type\":\"uint32\"},{\"internalType\":\"uint16\",\"name\":\"depositConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"bool\",\"name\":\"callOnRegister\",\"type\":\"bool\"}],\"internalType\":\"struct Quotes.PeginQuote\",\"name\":\"quote\",\"type\":\"tuple\"}],\"name\":\"encodeQuote\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"project:/contracts/Quotes.sol\":\"Quotes\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":1},\"remappings\":[]},\"sources\":{\"project:/contracts/Quotes.sol\":{\"keccak256\":\"0x28948b37d73f110d9cfc6cc3505fa7f2309b2d8d588d90c4069df45b4acbe399\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f2a824971a2421b56127e048a6b8a2d4ef4945b13e5f40cb266a19462c954e7f\",\"dweb:/ipfs/QmWm8YpQUwvqu4erUbsUZ1xz4PoVtJQiAX1Kh5Gezi32c1\"]}},\"version\":1}", - "bytecode": "0x610a8061003a600b82828239805160001a60731461002d57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe730000000000000000000000000000000000000000301460806040526004361061004b5760003560e01c8063039e8de4146100505780633f7acc2c14610065578063fb19b88b1461008e575b600080fd5b61006361005e3660046105c0565b6100a1565b005b610078610073366004610604565b610116565b6040516100859190610686565b60405180910390f35b61007861009c3660046106a0565b610151565b60008260c001518361018001516100b89190610860565b905060006100c861271083610879565b90506100d4818361089b565b8310156101105760405162461bcd60e51b81526020600482015260066024820152654c424330353760d01b604482015260640160405180910390fd5b50505050565b606061012182610165565b61012a836101ad565b60405160200161013b9291906108ae565b6040516020818303038152906040529050919050565b606061015c826101fd565b61012a83610245565b6060816000015182602001518360400151846060015185608001518660a001518760c001518860e0015189610100015160405160200161013b999897969594939291906108dc565b6060816101200151826101400151836101600151846101800151856101a00151866101c00151876101e0015188610200015189610220015160405160200161013b9998979695949392919061095b565b6060816000015182602001518360400151846060015185608001518660a001518760c001518860e0015189610100015160405160200161013b999897969594939291906109c6565b610120808201516101408301516101608401516101808501516101a08601516101c08701516101e088015161020089015160408051602081019990995263ffffffff9788169089015294861660608881019190915261ffff94851660808901529390921660a0870152841660c0860152831660e08501529116610100830152910161013b565b634e487b7160e01b600052604160045260246000fd5b60405161024081016001600160401b0381118282101715610304576103046102cb565b60405290565b60405161022081016001600160401b0381118282101715610304576103046102cb565b80356001600160601b03198116811461034557600080fd5b919050565b80356001600160a01b038116811461034557600080fd5b600082601f83011261037257600080fd5b81356001600160401b038082111561038c5761038c6102cb565b604051601f8301601f19908116603f011681019082821181831017156103b4576103b46102cb565b816040528381528660208588010111156103cd57600080fd5b836020870160208301376000602085830101528094505050505092915050565b803563ffffffff8116811461034557600080fd5b8035600781900b811461034557600080fd5b803561ffff8116811461034557600080fd5b8035801515811461034557600080fd5b6000610240828403121561044857600080fd5b6104506102e1565b905061045b8261032d565b81526104696020830161034a565b602082015261047a6040830161034a565b604082015260608201356001600160401b038082111561049957600080fd5b6104a585838601610361565b60608401526104b66080850161034a565b608084015260a08401359150808211156104cf57600080fd5b6104db85838601610361565b60a084015260c084013560c084015260e084013560e0840152610100915061050482850161034a565b828401526101209150818401358181111561051e57600080fd5b61052a86828701610361565b8385015250505061014061053f8184016103ed565b90820152610160610551838201610401565b9082015261018082810135908201526101a061056e8184016103ed565b908201526101c06105808382016103ed565b908201526101e06105928382016103ed565b908201526102006105a4838201610413565b908201526102206105b6838201610425565b9082015292915050565b600080604083850312156105d357600080fd5b82356001600160401b038111156105e957600080fd5b6105f585828601610435565b95602094909401359450505050565b60006020828403121561061657600080fd5b81356001600160401b0381111561062c57600080fd5b61063884828501610435565b949350505050565b6000815180845260005b818110156106665760208185018101518683018201520161064a565b506000602082860101526020601f19601f83011685010191505092915050565b6020815260006106996020830184610640565b9392505050565b6000602082840312156106b257600080fd5b81356001600160401b03808211156106c957600080fd5b9083019061022082860312156106de57600080fd5b6106e661030a565b6106ef8361034a565b81526106fd6020840161034a565b602082015260408301358281111561071457600080fd5b61072087828601610361565b6040830152506107326060840161034a565b606082015260808301358281111561074957600080fd5b61075587828601610361565b60808301525060a083013560a082015260c083013560c082015261077b60e08401610401565b60e0820152610100808401358381111561079457600080fd5b6107a088828701610361565b8284015250506101209150818301358282015261014091506107c38284016103ed565b8282015261016091506107d78284016103ed565b8282015261018091506107eb828401610413565b828201526101a091506107ff828401610413565b828201526101c091506108138284016103ed565b828201526101e091506108278284016103ed565b82820152610200915061083b8284016103ed565b91810191909152949350505050565b634e487b7160e01b600052601160045260246000fd5b808201808211156108735761087361084a565b92915050565b60008261089657634e487b7160e01b600052601260045260246000fd5b500490565b818103818111156108735761087361084a565b6040815260006108c16040830185610640565b82810360208401526108d38185610640565b95945050505050565b6001600160601b03198a1681526001600160a01b03898116602083015288811660408301526101206060830181905260009161091a8483018b610640565b9150808916608085015283820360a08501526109368289610640565b60c085019790975260e084019590955250509116610100909101529695505050505050565b600061012080835261096f8184018d610640565b63ffffffff9b8c16602085015260079a909a0b604084015250506060810196909652938716608086015291861660a085015290941660c083015261ffff90931660e082015291151561010090920191909152919050565b6001600160a01b038a811682528981166020830152610120604083018190526000916109f48483018c610640565b908a16606085015283810360808501529050610a108189610640565b90508660a08401528560c08401528460070b60e0840152828103610100840152610a3a8185610640565b9c9b50505050505050505050505056fea26469706673582212204f35982d754fe0b23702bdfe98d665512a50e47ef72afc3853cb2d0e9eb43c5f64736f6c63430008120033", - "deployedBytecode": "0x730000000000000000000000000000000000000000301460806040526004361061004b5760003560e01c8063039e8de4146100505780633f7acc2c14610065578063fb19b88b1461008e575b600080fd5b61006361005e3660046105c0565b6100a1565b005b610078610073366004610604565b610116565b6040516100859190610686565b60405180910390f35b61007861009c3660046106a0565b610151565b60008260c001518361018001516100b89190610860565b905060006100c861271083610879565b90506100d4818361089b565b8310156101105760405162461bcd60e51b81526020600482015260066024820152654c424330353760d01b604482015260640160405180910390fd5b50505050565b606061012182610165565b61012a836101ad565b60405160200161013b9291906108ae565b6040516020818303038152906040529050919050565b606061015c826101fd565b61012a83610245565b6060816000015182602001518360400151846060015185608001518660a001518760c001518860e0015189610100015160405160200161013b999897969594939291906108dc565b6060816101200151826101400151836101600151846101800151856101a00151866101c00151876101e0015188610200015189610220015160405160200161013b9998979695949392919061095b565b6060816000015182602001518360400151846060015185608001518660a001518760c001518860e0015189610100015160405160200161013b999897969594939291906109c6565b610120808201516101408301516101608401516101808501516101a08601516101c08701516101e088015161020089015160408051602081019990995263ffffffff9788169089015294861660608881019190915261ffff94851660808901529390921660a0870152841660c0860152831660e08501529116610100830152910161013b565b634e487b7160e01b600052604160045260246000fd5b60405161024081016001600160401b0381118282101715610304576103046102cb565b60405290565b60405161022081016001600160401b0381118282101715610304576103046102cb565b80356001600160601b03198116811461034557600080fd5b919050565b80356001600160a01b038116811461034557600080fd5b600082601f83011261037257600080fd5b81356001600160401b038082111561038c5761038c6102cb565b604051601f8301601f19908116603f011681019082821181831017156103b4576103b46102cb565b816040528381528660208588010111156103cd57600080fd5b836020870160208301376000602085830101528094505050505092915050565b803563ffffffff8116811461034557600080fd5b8035600781900b811461034557600080fd5b803561ffff8116811461034557600080fd5b8035801515811461034557600080fd5b6000610240828403121561044857600080fd5b6104506102e1565b905061045b8261032d565b81526104696020830161034a565b602082015261047a6040830161034a565b604082015260608201356001600160401b038082111561049957600080fd5b6104a585838601610361565b60608401526104b66080850161034a565b608084015260a08401359150808211156104cf57600080fd5b6104db85838601610361565b60a084015260c084013560c084015260e084013560e0840152610100915061050482850161034a565b828401526101209150818401358181111561051e57600080fd5b61052a86828701610361565b8385015250505061014061053f8184016103ed565b90820152610160610551838201610401565b9082015261018082810135908201526101a061056e8184016103ed565b908201526101c06105808382016103ed565b908201526101e06105928382016103ed565b908201526102006105a4838201610413565b908201526102206105b6838201610425565b9082015292915050565b600080604083850312156105d357600080fd5b82356001600160401b038111156105e957600080fd5b6105f585828601610435565b95602094909401359450505050565b60006020828403121561061657600080fd5b81356001600160401b0381111561062c57600080fd5b61063884828501610435565b949350505050565b6000815180845260005b818110156106665760208185018101518683018201520161064a565b506000602082860101526020601f19601f83011685010191505092915050565b6020815260006106996020830184610640565b9392505050565b6000602082840312156106b257600080fd5b81356001600160401b03808211156106c957600080fd5b9083019061022082860312156106de57600080fd5b6106e661030a565b6106ef8361034a565b81526106fd6020840161034a565b602082015260408301358281111561071457600080fd5b61072087828601610361565b6040830152506107326060840161034a565b606082015260808301358281111561074957600080fd5b61075587828601610361565b60808301525060a083013560a082015260c083013560c082015261077b60e08401610401565b60e0820152610100808401358381111561079457600080fd5b6107a088828701610361565b8284015250506101209150818301358282015261014091506107c38284016103ed565b8282015261016091506107d78284016103ed565b8282015261018091506107eb828401610413565b828201526101a091506107ff828401610413565b828201526101c091506108138284016103ed565b828201526101e091506108278284016103ed565b82820152610200915061083b8284016103ed565b91810191909152949350505050565b634e487b7160e01b600052601160045260246000fd5b808201808211156108735761087361084a565b92915050565b60008261089657634e487b7160e01b600052601260045260246000fd5b500490565b818103818111156108735761087361084a565b6040815260006108c16040830185610640565b82810360208401526108d38185610640565b95945050505050565b6001600160601b03198a1681526001600160a01b03898116602083015288811660408301526101206060830181905260009161091a8483018b610640565b9150808916608085015283820360a08501526109368289610640565b60c085019790975260e084019590955250509116610100909101529695505050505050565b600061012080835261096f8184018d610640565b63ffffffff9b8c16602085015260079a909a0b604084015250506060810196909652938716608086015291861660a085015290941660c083015261ffff90931660e082015291151561010090920191909152919050565b6001600160a01b038a811682528981166020830152610120604083018190526000916109f48483018c610640565b908a16606085015283810360808501529050610a108189610640565b90508660a08401528560c08401528460070b60e0840152828103610100840152610a3a8185610640565b9c9b50505050505050505050505056fea26469706673582212204f35982d754fe0b23702bdfe98d665512a50e47ef72afc3853cb2d0e9eb43c5f64736f6c63430008120033", - "immutableReferences": {}, - "generatedSources": [], - "deployedGeneratedSources": [ - { - "ast": { - "nodeType": "YulBlock", - "src": "0:13015:32", - "statements": [ - { - "nodeType": "YulBlock", - "src": "6:3:32", - "statements": [] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "46:95:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "63:1:32", - "type": "", - "value": "0" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "70:3:32", - "type": "", - "value": "224" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "75:10:32", - "type": "", - "value": "0x4e487b71" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "66:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "66:20:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "56:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "56:31:32" - }, - "nodeType": "YulExpressionStatement", - "src": "56:31:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "103:1:32", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "106:4:32", - "type": "", - "value": "0x41" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "96:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "96:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "96:15:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "127:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "130:4:32", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "120:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "120:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "120:15:32" - } - ] - }, - "name": "panic_error_0x41", - "nodeType": "YulFunctionDefinition", - "src": "14:127:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "192:209:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "202:19:32", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "218:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "212:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "212:9:32" - }, - "variableNames": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "202:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "230:37:32", - "value": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "252:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "260:6:32", - "type": "", - "value": "0x0240" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "248:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "248:19:32" - }, - "variables": [ - { - "name": "newFreePtr", - "nodeType": "YulTypedName", - "src": "234:10:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "342:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "344:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "344:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "344:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "285:10:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "305:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "309:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "301:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "301:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "313:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "297:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "297:18:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "282:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "282:34:32" - }, - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "321:10:32" - }, - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "333:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "318:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "318:22:32" - } - ], - "functionName": { - "name": "or", - "nodeType": "YulIdentifier", - "src": "279:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "279:62:32" - }, - "nodeType": "YulIf", - "src": "276:88:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "380:2:32", - "type": "", - "value": "64" - }, - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "384:10:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "373:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "373:22:32" - }, - "nodeType": "YulExpressionStatement", - "src": "373:22:32" - } - ] - }, - "name": "allocate_memory_1507", - "nodeType": "YulFunctionDefinition", - "returnVariables": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "181:6:32", - "type": "" - } - ], - "src": "146:255:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "447:209:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "457:19:32", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "473:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "467:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "467:9:32" - }, - "variableNames": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "457:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "485:37:32", - "value": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "507:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "515:6:32", - "type": "", - "value": "0x0220" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "503:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "503:19:32" - }, - "variables": [ - { - "name": "newFreePtr", - "nodeType": "YulTypedName", - "src": "489:10:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "597:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "599:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "599:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "599:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "540:10:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "560:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "564:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "556:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "556:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "568:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "552:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "552:18:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "537:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "537:34:32" - }, - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "576:10:32" - }, - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "588:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "573:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "573:22:32" - } - ], - "functionName": { - "name": "or", - "nodeType": "YulIdentifier", - "src": "534:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "534:62:32" - }, - "nodeType": "YulIf", - "src": "531:88:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "635:2:32", - "type": "", - "value": "64" - }, - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "639:10:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "628:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "628:22:32" - }, - "nodeType": "YulExpressionStatement", - "src": "628:22:32" - } - ] - }, - "name": "allocate_memory", - "nodeType": "YulFunctionDefinition", - "returnVariables": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "436:6:32", - "type": "" - } - ], - "src": "406:250:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "710:128:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "720:29:32", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "742:6:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "729:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "729:20:32" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "720:5:32" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "816:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "825:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "828:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "818:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "818:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "818:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "771:5:32" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "782:5:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "801:2:32", - "type": "", - "value": "96" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "805:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "797:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "797:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "809:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "793:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "793:18:32" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "789:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "789:23:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "778:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "778:35:32" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "768:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "768:46:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "761:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "761:54:32" - }, - "nodeType": "YulIf", - "src": "758:74:32" - } - ] - }, - "name": "abi_decode_bytes20", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "689:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "700:5:32", - "type": "" - } - ], - "src": "661:177:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "892:124:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "902:29:32", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "924:6:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "911:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "911:20:32" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "902:5:32" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "994:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1003:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1006:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "996:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "996:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "996:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "953:5:32" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "964:5:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "979:3:32", - "type": "", - "value": "160" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "984:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "975:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "975:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "988:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "971:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "971:19:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "960:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "960:31:32" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "950:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "950:42:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "943:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "943:50:32" - }, - "nodeType": "YulIf", - "src": "940:70:32" - } - ] - }, - "name": "abi_decode_address", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "871:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "882:5:32", - "type": "" - } - ], - "src": "843:173:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1073:666:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "1122:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1131:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1134:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1124:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1124:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1124:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1101:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1109:4:32", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1097:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1097:17:32" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "1116:3:32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "1093:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1093:27:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "1086:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1086:35:32" - }, - "nodeType": "YulIf", - "src": "1083:55:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1147:30:32", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1170:6:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "1157:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "1157:20:32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "1151:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1186:28:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1204:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1208:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "1200:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1200:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1212:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "1196:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1196:18:32" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "1190:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1237:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "1239:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "1239:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1239:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1229:2:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "1233:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1226:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "1226:10:32" - }, - "nodeType": "YulIf", - "src": "1223:36:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1268:17:32", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1282:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "1278:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1278:7:32" - }, - "variables": [ - { - "name": "_3", - "nodeType": "YulTypedName", - "src": "1272:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1294:23:32", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1314:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "1308:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "1308:9:32" - }, - "variables": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "1298:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1326:71:32", - "value": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1348:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1372:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1376:4:32", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1368:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1368:13:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "1383:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "1364:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1364:22:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1388:2:32", - "type": "", - "value": "63" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1360:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1360:31:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "1393:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "1356:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1356:40:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1344:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1344:53:32" - }, - "variables": [ - { - "name": "newFreePtr", - "nodeType": "YulTypedName", - "src": "1330:10:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1456:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "1458:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "1458:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1458:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "1415:10:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "1427:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1412:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "1412:18:32" - }, - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "1435:10:32" - }, - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1447:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "1432:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "1432:22:32" - } - ], - "functionName": { - "name": "or", - "nodeType": "YulIdentifier", - "src": "1409:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "1409:46:32" - }, - "nodeType": "YulIf", - "src": "1406:72:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1494:2:32", - "type": "", - "value": "64" - }, - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "1498:10:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1487:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1487:22:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1487:22:32" - }, - { - "expression": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1525:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1533:2:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1518:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1518:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1518:18:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1584:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1593:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1596:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1586:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1586:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1586:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1559:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1567:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1555:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1555:15:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1572:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1551:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1551:26:32" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "1579:3:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1548:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "1548:35:32" - }, - "nodeType": "YulIf", - "src": "1545:55:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1626:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1634:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1622:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1622:17:32" - }, - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1645:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1653:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1641:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1641:17:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1660:2:32" - } - ], - "functionName": { - "name": "calldatacopy", - "nodeType": "YulIdentifier", - "src": "1609:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "1609:54:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1609:54:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1687:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1695:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1683:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1683:15:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1700:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1679:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1679:26:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1707:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1672:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1672:37:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1672:37:32" - }, - { - "nodeType": "YulAssignment", - "src": "1718:15:32", - "value": { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1727:6:32" - }, - "variableNames": [ - { - "name": "array", - "nodeType": "YulIdentifier", - "src": "1718:5:32" - } - ] - } - ] - }, - "name": "abi_decode_bytes", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "1047:6:32", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "1055:3:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "array", - "nodeType": "YulTypedName", - "src": "1063:5:32", - "type": "" - } - ], - "src": "1021:718:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1792:115:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "1802:29:32", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1824:6:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "1811:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "1811:20:32" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "1802:5:32" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1885:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1894:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1897:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1887:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1887:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1887:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "1853:5:32" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "1864:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1871:10:32", - "type": "", - "value": "0xffffffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "1860:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1860:22:32" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "1850:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "1850:33:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "1843:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1843:41:32" - }, - "nodeType": "YulIf", - "src": "1840:61:32" - } - ] - }, - "name": "abi_decode_uint32", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "1771:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "1782:5:32", - "type": "" - } - ], - "src": "1744:163:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1959:113:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "1969:29:32", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1991:6:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "1978:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "1978:20:32" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "1969:5:32" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2050:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2059:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2062:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "2052:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2052:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2052:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2020:5:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2038:1:32", - "type": "", - "value": "7" - }, - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2041:5:32" - } - ], - "functionName": { - "name": "signextend", - "nodeType": "YulIdentifier", - "src": "2027:10:32" - }, - "nodeType": "YulFunctionCall", - "src": "2027:20:32" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "2017:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "2017:31:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "2010:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2010:39:32" - }, - "nodeType": "YulIf", - "src": "2007:59:32" - } - ] - }, - "name": "abi_decode_int64", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "1938:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "1949:5:32", - "type": "" - } - ], - "src": "1912:160:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2125:111:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "2135:29:32", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "2157:6:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "2144:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "2144:20:32" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2135:5:32" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2214:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2223:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2226:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "2216:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2216:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2216:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2186:5:32" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2197:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2204:6:32", - "type": "", - "value": "0xffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "2193:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2193:18:32" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "2183:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "2183:29:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "2176:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2176:37:32" - }, - "nodeType": "YulIf", - "src": "2173:57:32" - } - ] - }, - "name": "abi_decode_uint16", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "2104:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "2115:5:32", - "type": "" - } - ], - "src": "2077:159:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2287:114:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "2297:29:32", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "2319:6:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "2306:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "2306:20:32" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2297:5:32" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2379:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2388:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2391:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "2381:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2381:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2381:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2348:5:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2369:5:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "2362:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2362:13:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "2355:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2355:21:32" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "2345:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "2345:32:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "2338:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2338:40:32" - }, - "nodeType": "YulIf", - "src": "2335:60:32" - } - ] - }, - "name": "abi_decode_bool", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "2266:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "2277:5:32", - "type": "" - } - ], - "src": "2241:160:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2473:1938:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "2519:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2528:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2531:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "2521:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2521:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2521:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "2494:3:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2499:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "2490:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2490:19:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2511:6:32", - "type": "", - "value": "0x0240" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "2486:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2486:32:32" - }, - "nodeType": "YulIf", - "src": "2483:52:32" - }, - { - "nodeType": "YulAssignment", - "src": "2544:31:32", - "value": { - "arguments": [], - "functionName": { - "name": "allocate_memory_1507", - "nodeType": "YulIdentifier", - "src": "2553:20:32" - }, - "nodeType": "YulFunctionCall", - "src": "2553:22:32" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2544:5:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2591:5:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2617:9:32" - } - ], - "functionName": { - "name": "abi_decode_bytes20", - "nodeType": "YulIdentifier", - "src": "2598:18:32" - }, - "nodeType": "YulFunctionCall", - "src": "2598:29:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2584:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2584:44:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2584:44:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2648:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2655:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2644:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2644:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2683:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2694:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2679:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2679:18:32" - } - ], - "functionName": { - "name": "abi_decode_address", - "nodeType": "YulIdentifier", - "src": "2660:18:32" - }, - "nodeType": "YulFunctionCall", - "src": "2660:38:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2637:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2637:62:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2637:62:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2719:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2726:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2715:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2715:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2754:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2765:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2750:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2750:18:32" - } - ], - "functionName": { - "name": "abi_decode_address", - "nodeType": "YulIdentifier", - "src": "2731:18:32" - }, - "nodeType": "YulFunctionCall", - "src": "2731:38:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2708:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2708:62:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2708:62:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2779:46:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2810:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2821:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2806:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2806:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "2793:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "2793:32:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "2783:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2834:28:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2852:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2856:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "2848:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2848:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2860:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "2844:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2844:18:32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "2838:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2889:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2898:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2901:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "2891:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2891:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2891:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "2877:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "2885:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "2874:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "2874:14:32" - }, - "nodeType": "YulIf", - "src": "2871:34:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2925:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2932:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2921:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2921:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2958:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "2969:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2954:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2954:22:32" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "2978:3:32" - } - ], - "functionName": { - "name": "abi_decode_bytes", - "nodeType": "YulIdentifier", - "src": "2937:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "2937:45:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2914:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2914:69:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2914:69:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3003:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3010:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2999:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2999:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3039:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3050:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3035:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3035:19:32" - } - ], - "functionName": { - "name": "abi_decode_address", - "nodeType": "YulIdentifier", - "src": "3016:18:32" - }, - "nodeType": "YulFunctionCall", - "src": "3016:39:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2992:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2992:64:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2992:64:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3065:49:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3098:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3109:3:32", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3094:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3094:19:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "3081:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "3081:33:32" - }, - "variables": [ - { - "name": "offset_1", - "nodeType": "YulTypedName", - "src": "3069:8:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3143:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3152:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3155:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "3145:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3145:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3145:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "3129:8:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "3139:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "3126:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "3126:16:32" - }, - "nodeType": "YulIf", - "src": "3123:36:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3179:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3186:3:32", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3175:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3175:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3213:9:32" - }, - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "3224:8:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3209:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3209:24:32" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "3235:3:32" - } - ], - "functionName": { - "name": "abi_decode_bytes", - "nodeType": "YulIdentifier", - "src": "3192:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "3192:47:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3168:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3168:72:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3168:72:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3260:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3267:3:32", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3256:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3256:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3290:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3301:3:32", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3286:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3286:19:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "3273:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "3273:33:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3249:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3249:58:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3249:58:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3327:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3334:3:32", - "type": "", - "value": "224" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3323:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3323:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3357:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3368:3:32", - "type": "", - "value": "224" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3353:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3353:19:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "3340:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "3340:33:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3316:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3316:58:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3316:58:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3383:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3393:3:32", - "type": "", - "value": "256" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "3387:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3416:5:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "3423:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3412:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3412:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3451:9:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "3462:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3447:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3447:18:32" - } - ], - "functionName": { - "name": "abi_decode_address", - "nodeType": "YulIdentifier", - "src": "3428:18:32" - }, - "nodeType": "YulFunctionCall", - "src": "3428:38:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3405:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3405:62:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3405:62:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3476:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3486:3:32", - "type": "", - "value": "288" - }, - "variables": [ - { - "name": "_3", - "nodeType": "YulTypedName", - "src": "3480:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3498:48:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3531:9:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "3542:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3527:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3527:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "3514:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "3514:32:32" - }, - "variables": [ - { - "name": "offset_2", - "nodeType": "YulTypedName", - "src": "3502:8:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3575:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3584:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3587:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "3577:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3577:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3577:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_2", - "nodeType": "YulIdentifier", - "src": "3561:8:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "3571:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "3558:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "3558:16:32" - }, - "nodeType": "YulIf", - "src": "3555:36:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3611:5:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "3618:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3607:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3607:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3644:9:32" - }, - { - "name": "offset_2", - "nodeType": "YulIdentifier", - "src": "3655:8:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3640:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3640:24:32" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "3666:3:32" - } - ], - "functionName": { - "name": "abi_decode_bytes", - "nodeType": "YulIdentifier", - "src": "3623:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "3623:47:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3600:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3600:71:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3600:71:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3680:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3690:3:32", - "type": "", - "value": "320" - }, - "variables": [ - { - "name": "_4", - "nodeType": "YulTypedName", - "src": "3684:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3713:5:32" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "3720:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3709:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3709:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3747:9:32" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "3758:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3743:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3743:18:32" - } - ], - "functionName": { - "name": "abi_decode_uint32", - "nodeType": "YulIdentifier", - "src": "3725:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "3725:37:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3702:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3702:61:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3702:61:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3772:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3782:3:32", - "type": "", - "value": "352" - }, - "variables": [ - { - "name": "_5", - "nodeType": "YulTypedName", - "src": "3776:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3805:5:32" - }, - { - "name": "_5", - "nodeType": "YulIdentifier", - "src": "3812:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3801:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3801:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3838:9:32" - }, - { - "name": "_5", - "nodeType": "YulIdentifier", - "src": "3849:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3834:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3834:18:32" - } - ], - "functionName": { - "name": "abi_decode_int64", - "nodeType": "YulIdentifier", - "src": "3817:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "3817:36:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3794:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3794:60:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3794:60:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3863:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3873:3:32", - "type": "", - "value": "384" - }, - "variables": [ - { - "name": "_6", - "nodeType": "YulTypedName", - "src": "3867:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3896:5:32" - }, - { - "name": "_6", - "nodeType": "YulIdentifier", - "src": "3903:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3892:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3892:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3925:9:32" - }, - { - "name": "_6", - "nodeType": "YulIdentifier", - "src": "3936:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3921:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3921:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "3908:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "3908:32:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3885:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3885:56:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3885:56:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3950:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3960:3:32", - "type": "", - "value": "416" - }, - "variables": [ - { - "name": "_7", - "nodeType": "YulTypedName", - "src": "3954:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3983:5:32" - }, - { - "name": "_7", - "nodeType": "YulIdentifier", - "src": "3990:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3979:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3979:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4017:9:32" - }, - { - "name": "_7", - "nodeType": "YulIdentifier", - "src": "4028:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4013:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4013:18:32" - } - ], - "functionName": { - "name": "abi_decode_uint32", - "nodeType": "YulIdentifier", - "src": "3995:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "3995:37:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3972:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3972:61:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3972:61:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "4042:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4052:3:32", - "type": "", - "value": "448" - }, - "variables": [ - { - "name": "_8", - "nodeType": "YulTypedName", - "src": "4046:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "4075:5:32" - }, - { - "name": "_8", - "nodeType": "YulIdentifier", - "src": "4082:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4071:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4071:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4109:9:32" - }, - { - "name": "_8", - "nodeType": "YulIdentifier", - "src": "4120:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4105:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4105:18:32" - } - ], - "functionName": { - "name": "abi_decode_uint32", - "nodeType": "YulIdentifier", - "src": "4087:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "4087:37:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4064:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4064:61:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4064:61:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "4134:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4144:3:32", - "type": "", - "value": "480" - }, - "variables": [ - { - "name": "_9", - "nodeType": "YulTypedName", - "src": "4138:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "4167:5:32" - }, - { - "name": "_9", - "nodeType": "YulIdentifier", - "src": "4174:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4163:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4163:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4201:9:32" - }, - { - "name": "_9", - "nodeType": "YulIdentifier", - "src": "4212:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4197:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4197:18:32" - } - ], - "functionName": { - "name": "abi_decode_uint32", - "nodeType": "YulIdentifier", - "src": "4179:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "4179:37:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4156:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4156:61:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4156:61:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "4226:14:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4237:3:32", - "type": "", - "value": "512" - }, - "variables": [ - { - "name": "_10", - "nodeType": "YulTypedName", - "src": "4230:3:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "4260:5:32" - }, - { - "name": "_10", - "nodeType": "YulIdentifier", - "src": "4267:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4256:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4256:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4295:9:32" - }, - { - "name": "_10", - "nodeType": "YulIdentifier", - "src": "4306:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4291:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4291:19:32" - } - ], - "functionName": { - "name": "abi_decode_uint16", - "nodeType": "YulIdentifier", - "src": "4273:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "4273:38:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4249:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4249:63:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4249:63:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "4321:14:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4332:3:32", - "type": "", - "value": "544" - }, - "variables": [ - { - "name": "_11", - "nodeType": "YulTypedName", - "src": "4325:3:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "4355:5:32" - }, - { - "name": "_11", - "nodeType": "YulIdentifier", - "src": "4362:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4351:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4351:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4388:9:32" - }, - { - "name": "_11", - "nodeType": "YulIdentifier", - "src": "4399:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4384:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4384:19:32" - } - ], - "functionName": { - "name": "abi_decode_bool", - "nodeType": "YulIdentifier", - "src": "4368:15:32" - }, - "nodeType": "YulFunctionCall", - "src": "4368:36:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4344:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4344:61:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4344:61:32" - } - ] - }, - "name": "abi_decode_struct_PeginQuote", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "2444:9:32", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "2455:3:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "2463:5:32", - "type": "" - } - ], - "src": "2406:2005:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4532:304:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "4578:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4587:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4590:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "4580:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4580:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4580:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "4553:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4562:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "4549:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4549:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4574:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "4545:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4545:32:32" - }, - "nodeType": "YulIf", - "src": "4542:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "4603:37:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4630:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "4617:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "4617:23:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "4607:6:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4683:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4692:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4695:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "4685:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4685:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4685:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "4655:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4671:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4675:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "4667:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4667:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4679:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "4663:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4663:18:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "4652:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "4652:30:32" - }, - "nodeType": "YulIf", - "src": "4649:50:32" - }, - { - "nodeType": "YulAssignment", - "src": "4708:71:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4751:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "4762:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4747:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4747:22:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "4771:7:32" - } - ], - "functionName": { - "name": "abi_decode_struct_PeginQuote", - "nodeType": "YulIdentifier", - "src": "4718:28:32" - }, - "nodeType": "YulFunctionCall", - "src": "4718:61:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "4708:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "4788:42:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4815:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4826:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4811:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4811:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "4798:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "4798:32:32" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "4788:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_struct$_PeginQuote_$10962_memory_ptrt_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "4490:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "4501:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "4513:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "4521:6:32", - "type": "" - } - ], - "src": "4416:420:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4940:253:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "4986:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4995:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4998:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "4988:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4988:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4988:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "4961:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4970:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "4957:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4957:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4982:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "4953:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4953:32:32" - }, - "nodeType": "YulIf", - "src": "4950:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "5011:37:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5038:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "5025:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "5025:23:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "5015:6:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5091:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5100:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5103:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "5093:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "5093:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "5093:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "5063:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5079:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5083:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "5075:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5075:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5087:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "5071:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5071:18:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "5060:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "5060:30:32" - }, - "nodeType": "YulIf", - "src": "5057:50:32" - }, - { - "nodeType": "YulAssignment", - "src": "5116:71:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5159:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "5170:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5155:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5155:22:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "5179:7:32" - } - ], - "functionName": { - "name": "abi_decode_struct_PeginQuote", - "nodeType": "YulIdentifier", - "src": "5126:28:32" - }, - "nodeType": "YulFunctionCall", - "src": "5126:61:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "5116:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_struct$_PeginQuote_$10962_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "4906:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "4917:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "4929:6:32", - "type": "" - } - ], - "src": "4841:352:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5247:373:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "5257:26:32", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "5277:5:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "5271:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "5271:12:32" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "5261:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "5299:3:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "5304:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5292:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "5292:19:32" - }, - "nodeType": "YulExpressionStatement", - "src": "5292:19:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "5320:10:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5329:1:32", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "i", - "nodeType": "YulTypedName", - "src": "5324:1:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5391:110:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "5405:14:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5415:4:32", - "type": "", - "value": "0x20" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "5409:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "5447:3:32" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "5452:1:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5443:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5443:11:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "5456:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5439:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5439:20:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "5475:5:32" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "5482:1:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5471:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5471:13:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "5486:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5467:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5467:22:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "5461:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "5461:29:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5432:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "5432:59:32" - }, - "nodeType": "YulExpressionStatement", - "src": "5432:59:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "5350:1:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "5353:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "5347:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "5347:13:32" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "5361:21:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "5363:17:32", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "5372:1:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5375:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5368:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5368:12:32" - }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "5363:1:32" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "5343:3:32", - "statements": [] - }, - "src": "5339:162:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "5525:3:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "5530:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5521:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5521:16:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5539:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5517:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5517:27:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5546:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5510:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "5510:38:32" - }, - "nodeType": "YulExpressionStatement", - "src": "5510:38:32" - }, - { - "nodeType": "YulAssignment", - "src": "5557:57:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "5572:3:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "5585:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5593:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5581:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5581:15:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5602:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "5598:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5598:7:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "5577:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5577:29:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5568:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5568:39:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5609:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5564:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5564:50:32" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "5557:3:32" - } - ] - } - ] - }, - "name": "abi_encode_bytes", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "5224:5:32", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "5231:3:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "5239:3:32", - "type": "" - } - ], - "src": "5198:422:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5752:98:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5769:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5780:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5762:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "5762:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "5762:21:32" - }, - { - "nodeType": "YulAssignment", - "src": "5792:52:32", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "5817:6:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5829:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5840:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5825:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5825:18:32" - } - ], - "functionName": { - "name": "abi_encode_bytes", - "nodeType": "YulIdentifier", - "src": "5800:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "5800:44:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "5792:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_library_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "5721:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "5732:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "5743:4:32", - "type": "" - } - ], - "src": "5625:225:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5955:1935:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "6001:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6010:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6013:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "6003:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "6003:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "6003:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "5976:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5985:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "5972:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5972:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5997:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "5968:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5968:32:32" - }, - "nodeType": "YulIf", - "src": "5965:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "6026:37:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6053:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "6040:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "6040:23:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "6030:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "6072:28:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6090:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6094:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "6086:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6086:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6098:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "6082:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6082:18:32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "6076:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6127:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6136:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6139:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "6129:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "6129:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "6129:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "6115:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "6123:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "6112:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "6112:14:32" - }, - "nodeType": "YulIf", - "src": "6109:34:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "6152:32:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6166:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "6177:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6162:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6162:22:32" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "6156:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6226:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6235:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6238:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "6228:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "6228:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "6228:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "6204:7:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "6213:2:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "6200:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6200:16:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6218:6:32", - "type": "", - "value": "0x0220" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "6196:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6196:29:32" - }, - "nodeType": "YulIf", - "src": "6193:49:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "6251:30:32", - "value": { - "arguments": [], - "functionName": { - "name": "allocate_memory", - "nodeType": "YulIdentifier", - "src": "6264:15:32" - }, - "nodeType": "YulFunctionCall", - "src": "6264:17:32" - }, - "variables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "6255:5:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "6297:5:32" - }, - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "6323:2:32" - } - ], - "functionName": { - "name": "abi_decode_address", - "nodeType": "YulIdentifier", - "src": "6304:18:32" - }, - "nodeType": "YulFunctionCall", - "src": "6304:22:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "6290:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "6290:37:32" - }, - "nodeType": "YulExpressionStatement", - "src": "6290:37:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "6347:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6354:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6343:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6343:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "6382:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6386:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6378:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6378:11:32" - } - ], - "functionName": { - "name": "abi_decode_address", - "nodeType": "YulIdentifier", - "src": "6359:18:32" - }, - "nodeType": "YulFunctionCall", - "src": "6359:31:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "6336:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "6336:55:32" - }, - "nodeType": "YulExpressionStatement", - "src": "6336:55:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "6400:41:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "6433:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6437:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6429:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6429:11:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "6416:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "6416:25:32" - }, - "variables": [ - { - "name": "offset_1", - "nodeType": "YulTypedName", - "src": "6404:8:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6470:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6479:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6482:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "6472:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "6472:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "6472:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "6456:8:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "6466:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "6453:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "6453:16:32" - }, - "nodeType": "YulIf", - "src": "6450:36:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "6506:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6513:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6502:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6502:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "6539:2:32" - }, - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "6543:8:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6535:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6535:17:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "6554:7:32" - } - ], - "functionName": { - "name": "abi_decode_bytes", - "nodeType": "YulIdentifier", - "src": "6518:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "6518:44:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "6495:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "6495:68:32" - }, - "nodeType": "YulExpressionStatement", - "src": "6495:68:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "6583:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6590:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6579:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6579:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "6618:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6622:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6614:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6614:11:32" - } - ], - "functionName": { - "name": "abi_decode_address", - "nodeType": "YulIdentifier", - "src": "6595:18:32" - }, - "nodeType": "YulFunctionCall", - "src": "6595:31:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "6572:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "6572:55:32" - }, - "nodeType": "YulExpressionStatement", - "src": "6572:55:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "6636:42:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "6669:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6673:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6665:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6665:12:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "6652:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "6652:26:32" - }, - "variables": [ - { - "name": "offset_2", - "nodeType": "YulTypedName", - "src": "6640:8:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6707:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6716:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6719:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "6709:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "6709:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "6709:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_2", - "nodeType": "YulIdentifier", - "src": "6693:8:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "6703:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "6690:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "6690:16:32" - }, - "nodeType": "YulIf", - "src": "6687:36:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "6743:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6750:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6739:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6739:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "6777:2:32" - }, - { - "name": "offset_2", - "nodeType": "YulIdentifier", - "src": "6781:8:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6773:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6773:17:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "6792:7:32" - } - ], - "functionName": { - "name": "abi_decode_bytes", - "nodeType": "YulIdentifier", - "src": "6756:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "6756:44:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "6732:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "6732:69:32" - }, - "nodeType": "YulExpressionStatement", - "src": "6732:69:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "6821:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6828:3:32", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6817:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6817:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "6851:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6855:3:32", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6847:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6847:12:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "6834:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "6834:26:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "6810:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "6810:51:32" - }, - "nodeType": "YulExpressionStatement", - "src": "6810:51:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "6881:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6888:3:32", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6877:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6877:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "6911:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6915:3:32", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6907:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6907:12:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "6894:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "6894:26:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "6870:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "6870:51:32" - }, - "nodeType": "YulExpressionStatement", - "src": "6870:51:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "6941:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6948:3:32", - "type": "", - "value": "224" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6937:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6937:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "6975:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6979:3:32", - "type": "", - "value": "224" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6971:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6971:12:32" - } - ], - "functionName": { - "name": "abi_decode_int64", - "nodeType": "YulIdentifier", - "src": "6954:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "6954:30:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "6930:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "6930:55:32" - }, - "nodeType": "YulExpressionStatement", - "src": "6930:55:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "6994:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7004:3:32", - "type": "", - "value": "256" - }, - "variables": [ - { - "name": "_3", - "nodeType": "YulTypedName", - "src": "6998:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "7016:41:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "7049:2:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "7053:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7045:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7045:11:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "7032:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "7032:25:32" - }, - "variables": [ - { - "name": "offset_3", - "nodeType": "YulTypedName", - "src": "7020:8:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7086:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7095:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7098:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "7088:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "7088:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "7088:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_3", - "nodeType": "YulIdentifier", - "src": "7072:8:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "7082:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "7069:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "7069:16:32" - }, - "nodeType": "YulIf", - "src": "7066:36:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "7122:5:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "7129:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7118:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7118:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "7155:2:32" - }, - { - "name": "offset_3", - "nodeType": "YulIdentifier", - "src": "7159:8:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7151:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7151:17:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "7170:7:32" - } - ], - "functionName": { - "name": "abi_decode_bytes", - "nodeType": "YulIdentifier", - "src": "7134:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "7134:44:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "7111:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "7111:68:32" - }, - "nodeType": "YulExpressionStatement", - "src": "7111:68:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "7188:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7198:3:32", - "type": "", - "value": "288" - }, - "variables": [ - { - "name": "_4", - "nodeType": "YulTypedName", - "src": "7192:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "7221:5:32" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "7228:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7217:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7217:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "7250:2:32" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "7254:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7246:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7246:11:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "7233:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "7233:25:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "7210:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "7210:49:32" - }, - "nodeType": "YulExpressionStatement", - "src": "7210:49:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "7268:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7278:3:32", - "type": "", - "value": "320" - }, - "variables": [ - { - "name": "_5", - "nodeType": "YulTypedName", - "src": "7272:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "7301:5:32" - }, - { - "name": "_5", - "nodeType": "YulIdentifier", - "src": "7308:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7297:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7297:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "7335:2:32" - }, - { - "name": "_5", - "nodeType": "YulIdentifier", - "src": "7339:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7331:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7331:11:32" - } - ], - "functionName": { - "name": "abi_decode_uint32", - "nodeType": "YulIdentifier", - "src": "7313:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "7313:30:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "7290:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "7290:54:32" - }, - "nodeType": "YulExpressionStatement", - "src": "7290:54:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "7353:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7363:3:32", - "type": "", - "value": "352" - }, - "variables": [ - { - "name": "_6", - "nodeType": "YulTypedName", - "src": "7357:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "7386:5:32" - }, - { - "name": "_6", - "nodeType": "YulIdentifier", - "src": "7393:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7382:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7382:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "7420:2:32" - }, - { - "name": "_6", - "nodeType": "YulIdentifier", - "src": "7424:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7416:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7416:11:32" - } - ], - "functionName": { - "name": "abi_decode_uint32", - "nodeType": "YulIdentifier", - "src": "7398:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "7398:30:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "7375:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "7375:54:32" - }, - "nodeType": "YulExpressionStatement", - "src": "7375:54:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "7438:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7448:3:32", - "type": "", - "value": "384" - }, - "variables": [ - { - "name": "_7", - "nodeType": "YulTypedName", - "src": "7442:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "7471:5:32" - }, - { - "name": "_7", - "nodeType": "YulIdentifier", - "src": "7478:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7467:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7467:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "7505:2:32" - }, - { - "name": "_7", - "nodeType": "YulIdentifier", - "src": "7509:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7501:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7501:11:32" - } - ], - "functionName": { - "name": "abi_decode_uint16", - "nodeType": "YulIdentifier", - "src": "7483:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "7483:30:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "7460:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "7460:54:32" - }, - "nodeType": "YulExpressionStatement", - "src": "7460:54:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "7523:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7533:3:32", - "type": "", - "value": "416" - }, - "variables": [ - { - "name": "_8", - "nodeType": "YulTypedName", - "src": "7527:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "7556:5:32" - }, - { - "name": "_8", - "nodeType": "YulIdentifier", - "src": "7563:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7552:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7552:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "7590:2:32" - }, - { - "name": "_8", - "nodeType": "YulIdentifier", - "src": "7594:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7586:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7586:11:32" - } - ], - "functionName": { - "name": "abi_decode_uint16", - "nodeType": "YulIdentifier", - "src": "7568:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "7568:30:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "7545:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "7545:54:32" - }, - "nodeType": "YulExpressionStatement", - "src": "7545:54:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "7608:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7618:3:32", - "type": "", - "value": "448" - }, - "variables": [ - { - "name": "_9", - "nodeType": "YulTypedName", - "src": "7612:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "7641:5:32" - }, - { - "name": "_9", - "nodeType": "YulIdentifier", - "src": "7648:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7637:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7637:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "7675:2:32" - }, - { - "name": "_9", - "nodeType": "YulIdentifier", - "src": "7679:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7671:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7671:11:32" - } - ], - "functionName": { - "name": "abi_decode_uint32", - "nodeType": "YulIdentifier", - "src": "7653:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "7653:30:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "7630:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "7630:54:32" - }, - "nodeType": "YulExpressionStatement", - "src": "7630:54:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "7693:14:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7704:3:32", - "type": "", - "value": "480" - }, - "variables": [ - { - "name": "_10", - "nodeType": "YulTypedName", - "src": "7697:3:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "7727:5:32" - }, - { - "name": "_10", - "nodeType": "YulIdentifier", - "src": "7734:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7723:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7723:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "7762:2:32" - }, - { - "name": "_10", - "nodeType": "YulIdentifier", - "src": "7766:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7758:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7758:12:32" - } - ], - "functionName": { - "name": "abi_decode_uint32", - "nodeType": "YulIdentifier", - "src": "7740:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "7740:31:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "7716:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "7716:56:32" - }, - "nodeType": "YulExpressionStatement", - "src": "7716:56:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "7781:14:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7792:3:32", - "type": "", - "value": "512" - }, - "variables": [ - { - "name": "_11", - "nodeType": "YulTypedName", - "src": "7785:3:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "7815:5:32" - }, - { - "name": "_11", - "nodeType": "YulIdentifier", - "src": "7822:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7811:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7811:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "7850:2:32" - }, - { - "name": "_11", - "nodeType": "YulIdentifier", - "src": "7854:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7846:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7846:12:32" - } - ], - "functionName": { - "name": "abi_decode_uint32", - "nodeType": "YulIdentifier", - "src": "7828:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "7828:31:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "7804:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "7804:56:32" - }, - "nodeType": "YulExpressionStatement", - "src": "7804:56:32" - }, - { - "nodeType": "YulAssignment", - "src": "7869:15:32", - "value": { - "name": "value", - "nodeType": "YulIdentifier", - "src": "7879:5:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "7869:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_struct$_PegOutQuote_$10997_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "5921:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "5932:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "5944:6:32", - "type": "" - } - ], - "src": "5855:2035:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7927:95:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7944:1:32", - "type": "", - "value": "0" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7951:3:32", - "type": "", - "value": "224" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7956:10:32", - "type": "", - "value": "0x4e487b71" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "7947:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7947:20:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "7937:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "7937:31:32" - }, - "nodeType": "YulExpressionStatement", - "src": "7937:31:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7984:1:32", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7987:4:32", - "type": "", - "value": "0x11" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "7977:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "7977:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "7977:15:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8008:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8011:4:32", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "8001:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "8001:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "8001:15:32" - } - ] - }, - "name": "panic_error_0x11", - "nodeType": "YulFunctionDefinition", - "src": "7895:127:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8075:77:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "8085:16:32", - "value": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "8096:1:32" - }, - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "8099:1:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8092:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8092:9:32" - }, - "variableNames": [ - { - "name": "sum", - "nodeType": "YulIdentifier", - "src": "8085:3:32" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8124:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x11", - "nodeType": "YulIdentifier", - "src": "8126:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "8126:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "8126:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "8116:1:32" - }, - { - "name": "sum", - "nodeType": "YulIdentifier", - "src": "8119:3:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "8113:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "8113:10:32" - }, - "nodeType": "YulIf", - "src": "8110:36:32" - } - ] - }, - "name": "checked_add_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "x", - "nodeType": "YulTypedName", - "src": "8058:1:32", - "type": "" - }, - { - "name": "y", - "nodeType": "YulTypedName", - "src": "8061:1:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "sum", - "nodeType": "YulTypedName", - "src": "8067:3:32", - "type": "" - } - ], - "src": "8027:125:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8203:171:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "8234:111:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8255:1:32", - "type": "", - "value": "0" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8262:3:32", - "type": "", - "value": "224" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8267:10:32", - "type": "", - "value": "0x4e487b71" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "8258:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8258:20:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "8248:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "8248:31:32" - }, - "nodeType": "YulExpressionStatement", - "src": "8248:31:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8299:1:32", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8302:4:32", - "type": "", - "value": "0x12" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "8292:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "8292:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "8292:15:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8327:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8330:4:32", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "8320:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "8320:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "8320:15:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "8223:1:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "8216:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "8216:9:32" - }, - "nodeType": "YulIf", - "src": "8213:132:32" - }, - { - "nodeType": "YulAssignment", - "src": "8354:14:32", - "value": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "8363:1:32" - }, - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "8366:1:32" - } - ], - "functionName": { - "name": "div", - "nodeType": "YulIdentifier", - "src": "8359:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8359:9:32" - }, - "variableNames": [ - { - "name": "r", - "nodeType": "YulIdentifier", - "src": "8354:1:32" - } - ] - } - ] - }, - "name": "checked_div_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "x", - "nodeType": "YulTypedName", - "src": "8188:1:32", - "type": "" - }, - { - "name": "y", - "nodeType": "YulTypedName", - "src": "8191:1:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "r", - "nodeType": "YulTypedName", - "src": "8197:1:32", - "type": "" - } - ], - "src": "8157:217:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8428:79:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "8438:17:32", - "value": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "8450:1:32" - }, - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "8453:1:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "8446:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8446:9:32" - }, - "variableNames": [ - { - "name": "diff", - "nodeType": "YulIdentifier", - "src": "8438:4:32" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8479:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x11", - "nodeType": "YulIdentifier", - "src": "8481:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "8481:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "8481:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "diff", - "nodeType": "YulIdentifier", - "src": "8470:4:32" - }, - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "8476:1:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "8467:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "8467:11:32" - }, - "nodeType": "YulIf", - "src": "8464:37:32" - } - ] - }, - "name": "checked_sub_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "x", - "nodeType": "YulTypedName", - "src": "8410:1:32", - "type": "" - }, - { - "name": "y", - "nodeType": "YulTypedName", - "src": "8413:1:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "diff", - "nodeType": "YulTypedName", - "src": "8419:4:32", - "type": "" - } - ], - "src": "8379:128:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8686:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8703:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8714:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "8696:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "8696:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "8696:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8737:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8748:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8733:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8733:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8753:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "8726:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "8726:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "8726:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8775:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8786:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8771:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8771:18:32" - }, - { - "hexValue": "4c4243303537", - "kind": "string", - "nodeType": "YulLiteral", - "src": "8791:8:32", - "type": "", - "value": "LBC057" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "8764:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "8764:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "8764:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "8809:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8821:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8832:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8817:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8817:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "8809:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_edc8872f52a3fbd4c102c7239a16e50d62a454725123fb252e7131b6a2223277__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "8663:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "8677:4:32", - "type": "" - } - ], - "src": "8512:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9011:212:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9028:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9039:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "9021:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "9021:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "9021:21:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "9051:58:32", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "9082:6:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9094:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9105:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9090:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9090:18:32" - } - ], - "functionName": { - "name": "abi_encode_bytes", - "nodeType": "YulIdentifier", - "src": "9065:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "9065:44:32" - }, - "variables": [ - { - "name": "tail_1", - "nodeType": "YulTypedName", - "src": "9055:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9129:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9140:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9125:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9125:18:32" - }, - { - "arguments": [ - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "9149:6:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9157:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "9145:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9145:22:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "9118:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "9118:50:32" - }, - "nodeType": "YulExpressionStatement", - "src": "9118:50:32" - }, - { - "nodeType": "YulAssignment", - "src": "9177:40:32", - "value": { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "9202:6:32" - }, - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "9210:6:32" - } - ], - "functionName": { - "name": "abi_encode_bytes", - "nodeType": "YulIdentifier", - "src": "9185:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "9185:32:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "9177:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_bytes_memory_ptr_t_bytes_memory_ptr__to_t_bytes_memory_ptr_t_bytes_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "8972:9:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "8983:6:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "8991:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "9002:4:32", - "type": "" - } - ], - "src": "8846:377:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9605:644:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "9615:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9625:3:32", - "type": "", - "value": "288" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "9619:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9644:9:32" - }, - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "9659:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9679:2:32", - "type": "", - "value": "96" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9683:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "9675:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9675:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9687:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "9671:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9671:18:32" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "9667:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9667:23:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "9655:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9655:36:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "9637:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "9637:55:32" - }, - "nodeType": "YulExpressionStatement", - "src": "9637:55:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "9701:29:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9719:3:32", - "type": "", - "value": "160" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9724:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "9715:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9715:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9728:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "9711:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9711:19:32" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "9705:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9750:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9761:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9746:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9746:18:32" - }, - { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "9770:6:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "9778:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "9766:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9766:15:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "9739:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "9739:43:32" - }, - "nodeType": "YulExpressionStatement", - "src": "9739:43:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9802:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9813:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9798:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9798:18:32" - }, - { - "arguments": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "9822:6:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "9830:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "9818:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9818:15:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "9791:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "9791:43:32" - }, - "nodeType": "YulExpressionStatement", - "src": "9791:43:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9854:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9865:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9850:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9850:18:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "9870:2:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "9843:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "9843:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "9843:30:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "9882:58:32", - "value": { - "arguments": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "9913:6:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9925:9:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "9936:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9921:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9921:18:32" - } - ], - "functionName": { - "name": "abi_encode_bytes", - "nodeType": "YulIdentifier", - "src": "9896:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "9896:44:32" - }, - "variables": [ - { - "name": "tail_1", - "nodeType": "YulTypedName", - "src": "9886:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9960:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9971:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9956:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9956:19:32" - }, - { - "arguments": [ - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "9981:6:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "9989:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "9977:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9977:15:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "9949:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "9949:44:32" - }, - "nodeType": "YulExpressionStatement", - "src": "9949:44:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10013:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10024:3:32", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10009:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10009:19:32" - }, - { - "arguments": [ - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "10034:6:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10042:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "10030:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10030:22:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "10002:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "10002:51:32" - }, - "nodeType": "YulExpressionStatement", - "src": "10002:51:32" - }, - { - "nodeType": "YulAssignment", - "src": "10062:40:32", - "value": { - "arguments": [ - { - "name": "value5", - "nodeType": "YulIdentifier", - "src": "10087:6:32" - }, - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "10095:6:32" - } - ], - "functionName": { - "name": "abi_encode_bytes", - "nodeType": "YulIdentifier", - "src": "10070:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "10070:32:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "10062:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10122:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10133:3:32", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10118:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10118:19:32" - }, - { - "name": "value6", - "nodeType": "YulIdentifier", - "src": "10139:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "10111:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "10111:35:32" - }, - "nodeType": "YulExpressionStatement", - "src": "10111:35:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10166:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10177:3:32", - "type": "", - "value": "224" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10162:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10162:19:32" - }, - { - "name": "value7", - "nodeType": "YulIdentifier", - "src": "10183:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "10155:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "10155:35:32" - }, - "nodeType": "YulExpressionStatement", - "src": "10155:35:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10210:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10221:3:32", - "type": "", - "value": "256" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10206:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10206:19:32" - }, - { - "arguments": [ - { - "name": "value8", - "nodeType": "YulIdentifier", - "src": "10231:6:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "10239:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "10227:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10227:15:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "10199:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "10199:44:32" - }, - "nodeType": "YulExpressionStatement", - "src": "10199:44:32" - } - ] - }, - "name": "abi_encode_tuple_t_bytes20_t_address_t_address_t_bytes_memory_ptr_t_address_payable_t_bytes_memory_ptr_t_uint256_t_uint256_t_address__to_t_bytes20_t_address_t_address_t_bytes_memory_ptr_t_address_payable_t_bytes_memory_ptr_t_uint256_t_uint256_t_address__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "9510:9:32", - "type": "" - }, - { - "name": "value8", - "nodeType": "YulTypedName", - "src": "9521:6:32", - "type": "" - }, - { - "name": "value7", - "nodeType": "YulTypedName", - "src": "9529:6:32", - "type": "" - }, - { - "name": "value6", - "nodeType": "YulTypedName", - "src": "9537:6:32", - "type": "" - }, - { - "name": "value5", - "nodeType": "YulTypedName", - "src": "9545:6:32", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "9553:6:32", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "9561:6:32", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "9569:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "9577:6:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "9585:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "9596:4:32", - "type": "" - } - ], - "src": "9228:1021:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10577:578:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "10587:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10597:3:32", - "type": "", - "value": "288" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "10591:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10616:9:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "10627:2:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "10609:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "10609:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "10609:21:32" - }, - { - "nodeType": "YulAssignment", - "src": "10639:52:32", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "10664:6:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10676:9:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "10687:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10672:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10672:18:32" - } - ], - "functionName": { - "name": "abi_encode_bytes", - "nodeType": "YulIdentifier", - "src": "10647:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "10647:44:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "10639:4:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "10700:20:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10710:10:32", - "type": "", - "value": "0xffffffff" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "10704:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10740:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10751:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10736:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10736:18:32" - }, - { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "10760:6:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "10768:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "10756:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10756:15:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "10729:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "10729:43:32" - }, - "nodeType": "YulExpressionStatement", - "src": "10729:43:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10792:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10803:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10788:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10788:18:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10819:1:32", - "type": "", - "value": "7" - }, - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "10822:6:32" - } - ], - "functionName": { - "name": "signextend", - "nodeType": "YulIdentifier", - "src": "10808:10:32" - }, - "nodeType": "YulFunctionCall", - "src": "10808:21:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "10781:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "10781:49:32" - }, - "nodeType": "YulExpressionStatement", - "src": "10781:49:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10850:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10861:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10846:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10846:18:32" - }, - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "10866:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "10839:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "10839:34:32" - }, - "nodeType": "YulExpressionStatement", - "src": "10839:34:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10893:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10904:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10889:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10889:19:32" - }, - { - "arguments": [ - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "10914:6:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "10922:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "10910:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10910:15:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "10882:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "10882:44:32" - }, - "nodeType": "YulExpressionStatement", - "src": "10882:44:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10946:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10957:3:32", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10942:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10942:19:32" - }, - { - "arguments": [ - { - "name": "value5", - "nodeType": "YulIdentifier", - "src": "10967:6:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "10975:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "10963:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10963:15:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "10935:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "10935:44:32" - }, - "nodeType": "YulExpressionStatement", - "src": "10935:44:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10999:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11010:3:32", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10995:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10995:19:32" - }, - { - "arguments": [ - { - "name": "value6", - "nodeType": "YulIdentifier", - "src": "11020:6:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "11028:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "11016:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11016:15:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "10988:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "10988:44:32" - }, - "nodeType": "YulExpressionStatement", - "src": "10988:44:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11052:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11063:3:32", - "type": "", - "value": "224" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11048:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11048:19:32" - }, - { - "arguments": [ - { - "name": "value7", - "nodeType": "YulIdentifier", - "src": "11073:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11081:6:32", - "type": "", - "value": "0xffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "11069:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11069:19:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "11041:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "11041:48:32" - }, - "nodeType": "YulExpressionStatement", - "src": "11041:48:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11109:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11120:3:32", - "type": "", - "value": "256" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11105:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11105:19:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "value8", - "nodeType": "YulIdentifier", - "src": "11140:6:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "11133:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "11133:14:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "11126:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "11126:22:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "11098:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "11098:51:32" - }, - "nodeType": "YulExpressionStatement", - "src": "11098:51:32" - } - ] - }, - "name": "abi_encode_tuple_t_bytes_memory_ptr_t_uint32_t_int64_t_uint256_t_uint32_t_uint32_t_uint32_t_uint16_t_bool__to_t_bytes_memory_ptr_t_uint32_t_int64_t_uint256_t_uint32_t_uint32_t_uint32_t_uint16_t_bool__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "10482:9:32", - "type": "" - }, - { - "name": "value8", - "nodeType": "YulTypedName", - "src": "10493:6:32", - "type": "" - }, - { - "name": "value7", - "nodeType": "YulTypedName", - "src": "10501:6:32", - "type": "" - }, - { - "name": "value6", - "nodeType": "YulTypedName", - "src": "10509:6:32", - "type": "" - }, - { - "name": "value5", - "nodeType": "YulTypedName", - "src": "10517:6:32", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "10525:6:32", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "10533:6:32", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "10541:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "10549:6:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "10557:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "10568:4:32", - "type": "" - } - ], - "src": "10254:901:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "11535:691:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "11545:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11555:3:32", - "type": "", - "value": "288" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "11549:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "11567:29:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11585:3:32", - "type": "", - "value": "160" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11590:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "11581:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11581:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11594:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "11577:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11577:19:32" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "11571:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11612:9:32" - }, - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "11627:6:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "11635:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "11623:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11623:15:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "11605:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "11605:34:32" - }, - "nodeType": "YulExpressionStatement", - "src": "11605:34:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11659:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11670:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11655:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11655:18:32" - }, - { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "11679:6:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "11687:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "11675:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11675:15:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "11648:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "11648:43:32" - }, - "nodeType": "YulExpressionStatement", - "src": "11648:43:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11711:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11722:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11707:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11707:18:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "11727:2:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "11700:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "11700:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "11700:30:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "11739:58:32", - "value": { - "arguments": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "11770:6:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11782:9:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "11793:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11778:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11778:18:32" - } - ], - "functionName": { - "name": "abi_encode_bytes", - "nodeType": "YulIdentifier", - "src": "11753:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "11753:44:32" - }, - "variables": [ - { - "name": "tail_1", - "nodeType": "YulTypedName", - "src": "11743:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11817:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11828:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11813:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11813:18:32" - }, - { - "arguments": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "11837:6:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "11845:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "11833:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11833:15:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "11806:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "11806:43:32" - }, - "nodeType": "YulExpressionStatement", - "src": "11806:43:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11869:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11880:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11865:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11865:19:32" - }, - { - "arguments": [ - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "11890:6:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11898:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "11886:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11886:22:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "11858:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "11858:51:32" - }, - "nodeType": "YulExpressionStatement", - "src": "11858:51:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "11918:46:32", - "value": { - "arguments": [ - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "11949:6:32" - }, - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "11957:6:32" - } - ], - "functionName": { - "name": "abi_encode_bytes", - "nodeType": "YulIdentifier", - "src": "11932:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "11932:32:32" - }, - "variables": [ - { - "name": "tail_2", - "nodeType": "YulTypedName", - "src": "11922:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11984:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11995:3:32", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11980:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11980:19:32" - }, - { - "name": "value5", - "nodeType": "YulIdentifier", - "src": "12001:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "11973:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "11973:35:32" - }, - "nodeType": "YulExpressionStatement", - "src": "11973:35:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12028:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12039:3:32", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12024:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12024:19:32" - }, - { - "name": "value6", - "nodeType": "YulIdentifier", - "src": "12045:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12017:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "12017:35:32" - }, - "nodeType": "YulExpressionStatement", - "src": "12017:35:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12072:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12083:3:32", - "type": "", - "value": "224" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12068:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12068:19:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12100:1:32", - "type": "", - "value": "7" - }, - { - "name": "value7", - "nodeType": "YulIdentifier", - "src": "12103:6:32" - } - ], - "functionName": { - "name": "signextend", - "nodeType": "YulIdentifier", - "src": "12089:10:32" - }, - "nodeType": "YulFunctionCall", - "src": "12089:21:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12061:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "12061:50:32" - }, - "nodeType": "YulExpressionStatement", - "src": "12061:50:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12131:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12142:3:32", - "type": "", - "value": "256" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12127:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12127:19:32" - }, - { - "arguments": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "12152:6:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12160:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "12148:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12148:22:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12120:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "12120:51:32" - }, - "nodeType": "YulExpressionStatement", - "src": "12120:51:32" - }, - { - "nodeType": "YulAssignment", - "src": "12180:40:32", - "value": { - "arguments": [ - { - "name": "value8", - "nodeType": "YulIdentifier", - "src": "12205:6:32" - }, - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "12213:6:32" - } - ], - "functionName": { - "name": "abi_encode_bytes", - "nodeType": "YulIdentifier", - "src": "12188:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "12188:32:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "12180:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_address_t_address_t_bytes_memory_ptr_t_address_t_bytes_memory_ptr_t_uint256_t_uint256_t_int64_t_bytes_memory_ptr__to_t_address_t_address_t_bytes_memory_ptr_t_address_t_bytes_memory_ptr_t_uint256_t_uint256_t_int64_t_bytes_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "11440:9:32", - "type": "" - }, - { - "name": "value8", - "nodeType": "YulTypedName", - "src": "11451:6:32", - "type": "" - }, - { - "name": "value7", - "nodeType": "YulTypedName", - "src": "11459:6:32", - "type": "" - }, - { - "name": "value6", - "nodeType": "YulTypedName", - "src": "11467:6:32", - "type": "" - }, - { - "name": "value5", - "nodeType": "YulTypedName", - "src": "11475:6:32", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "11483:6:32", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "11491:6:32", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "11499:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "11507:6:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "11515:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "11526:4:32", - "type": "" - } - ], - "src": "11160:1066:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12514:499:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "12524:27:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12536:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12547:3:32", - "type": "", - "value": "256" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12532:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12532:19:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "12524:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12567:9:32" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "12578:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12560:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "12560:25:32" - }, - "nodeType": "YulExpressionStatement", - "src": "12560:25:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "12594:20:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12604:10:32", - "type": "", - "value": "0xffffffff" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "12598:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12634:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12645:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12630:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12630:18:32" - }, - { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "12654:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "12662:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "12650:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12650:15:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12623:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "12623:43:32" - }, - "nodeType": "YulExpressionStatement", - "src": "12623:43:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12686:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12697:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12682:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12682:18:32" - }, - { - "arguments": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "12706:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "12714:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "12702:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12702:15:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12675:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "12675:43:32" - }, - "nodeType": "YulExpressionStatement", - "src": "12675:43:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "12727:16:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12737:6:32", - "type": "", - "value": "0xffff" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "12731:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12763:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12774:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12759:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12759:18:32" - }, - { - "arguments": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "12783:6:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "12791:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "12779:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12779:15:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12752:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "12752:43:32" - }, - "nodeType": "YulExpressionStatement", - "src": "12752:43:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12815:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12826:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12811:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12811:19:32" - }, - { - "arguments": [ - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "12836:6:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "12844:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "12832:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12832:15:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12804:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "12804:44:32" - }, - "nodeType": "YulExpressionStatement", - "src": "12804:44:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12868:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12879:3:32", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12864:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12864:19:32" - }, - { - "arguments": [ - { - "name": "value5", - "nodeType": "YulIdentifier", - "src": "12889:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "12897:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "12885:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12885:15:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12857:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "12857:44:32" - }, - "nodeType": "YulExpressionStatement", - "src": "12857:44:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12921:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12932:3:32", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12917:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12917:19:32" - }, - { - "arguments": [ - { - "name": "value6", - "nodeType": "YulIdentifier", - "src": "12942:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "12950:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "12938:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12938:15:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12910:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "12910:44:32" - }, - "nodeType": "YulExpressionStatement", - "src": "12910:44:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12974:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12985:3:32", - "type": "", - "value": "224" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12970:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12970:19:32" - }, - { - "arguments": [ - { - "name": "value7", - "nodeType": "YulIdentifier", - "src": "12995:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "13003:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "12991:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12991:15:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12963:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "12963:44:32" - }, - "nodeType": "YulExpressionStatement", - "src": "12963:44:32" - } - ] - }, - "name": "abi_encode_tuple_t_uint256_t_uint32_t_uint32_t_uint16_t_uint16_t_uint32_t_uint32_t_uint32__to_t_uint256_t_uint32_t_uint32_t_uint16_t_uint16_t_uint32_t_uint32_t_uint32__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "12427:9:32", - "type": "" - }, - { - "name": "value7", - "nodeType": "YulTypedName", - "src": "12438:6:32", - "type": "" - }, - { - "name": "value6", - "nodeType": "YulTypedName", - "src": "12446:6:32", - "type": "" - }, - { - "name": "value5", - "nodeType": "YulTypedName", - "src": "12454:6:32", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "12462:6:32", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "12470:6:32", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "12478:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "12486:6:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "12494:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "12505:4:32", - "type": "" - } - ], - "src": "12231:782:32" - } - ] - }, - "contents": "{\n { }\n function panic_error_0x41()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n function allocate_memory_1507() -> memPtr\n {\n memPtr := mload(64)\n let newFreePtr := add(memPtr, 0x0240)\n if or(gt(newFreePtr, sub(shl(64, 1), 1)), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n function allocate_memory() -> memPtr\n {\n memPtr := mload(64)\n let newFreePtr := add(memPtr, 0x0220)\n if or(gt(newFreePtr, sub(shl(64, 1), 1)), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n function abi_decode_bytes20(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, not(sub(shl(96, 1), 1))))) { revert(0, 0) }\n }\n function abi_decode_address(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, sub(shl(160, 1), 1)))) { revert(0, 0) }\n }\n function abi_decode_bytes(offset, end) -> array\n {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n let _1 := calldataload(offset)\n let _2 := sub(shl(64, 1), 1)\n if gt(_1, _2) { panic_error_0x41() }\n let _3 := not(31)\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_uint32(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, 0xffffffff))) { revert(0, 0) }\n }\n function abi_decode_int64(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, signextend(7, value))) { revert(0, 0) }\n }\n function abi_decode_uint16(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, 0xffff))) { revert(0, 0) }\n }\n function abi_decode_bool(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, iszero(iszero(value)))) { revert(0, 0) }\n }\n function abi_decode_struct_PeginQuote(headStart, end) -> value\n {\n if slt(sub(end, headStart), 0x0240) { revert(0, 0) }\n value := allocate_memory_1507()\n mstore(value, abi_decode_bytes20(headStart))\n mstore(add(value, 32), abi_decode_address(add(headStart, 32)))\n mstore(add(value, 64), abi_decode_address(add(headStart, 64)))\n let offset := calldataload(add(headStart, 96))\n let _1 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n mstore(add(value, 96), abi_decode_bytes(add(headStart, offset), end))\n mstore(add(value, 128), abi_decode_address(add(headStart, 128)))\n let offset_1 := calldataload(add(headStart, 160))\n if gt(offset_1, _1) { revert(0, 0) }\n mstore(add(value, 160), abi_decode_bytes(add(headStart, offset_1), end))\n mstore(add(value, 192), calldataload(add(headStart, 192)))\n mstore(add(value, 224), calldataload(add(headStart, 224)))\n let _2 := 256\n mstore(add(value, _2), abi_decode_address(add(headStart, _2)))\n let _3 := 288\n let offset_2 := calldataload(add(headStart, _3))\n if gt(offset_2, _1) { revert(0, 0) }\n mstore(add(value, _3), abi_decode_bytes(add(headStart, offset_2), end))\n let _4 := 320\n mstore(add(value, _4), abi_decode_uint32(add(headStart, _4)))\n let _5 := 352\n mstore(add(value, _5), abi_decode_int64(add(headStart, _5)))\n let _6 := 384\n mstore(add(value, _6), calldataload(add(headStart, _6)))\n let _7 := 416\n mstore(add(value, _7), abi_decode_uint32(add(headStart, _7)))\n let _8 := 448\n mstore(add(value, _8), abi_decode_uint32(add(headStart, _8)))\n let _9 := 480\n mstore(add(value, _9), abi_decode_uint32(add(headStart, _9)))\n let _10 := 512\n mstore(add(value, _10), abi_decode_uint16(add(headStart, _10)))\n let _11 := 544\n mstore(add(value, _11), abi_decode_bool(add(headStart, _11)))\n }\n function abi_decode_tuple_t_struct$_PeginQuote_$10962_memory_ptrt_uint256(headStart, dataEnd) -> value0, value1\n {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n let offset := calldataload(headStart)\n if gt(offset, sub(shl(64, 1), 1)) { revert(0, 0) }\n value0 := abi_decode_struct_PeginQuote(add(headStart, offset), dataEnd)\n value1 := calldataload(add(headStart, 32))\n }\n function abi_decode_tuple_t_struct$_PeginQuote_$10962_memory_ptr(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let offset := calldataload(headStart)\n if gt(offset, sub(shl(64, 1), 1)) { revert(0, 0) }\n value0 := abi_decode_struct_PeginQuote(add(headStart, offset), dataEnd)\n }\n function abi_encode_bytes(value, pos) -> end\n {\n let length := mload(value)\n mstore(pos, length)\n let i := 0\n for { } lt(i, length) { i := add(i, 0x20) }\n {\n let _1 := 0x20\n mstore(add(add(pos, i), _1), mload(add(add(value, i), _1)))\n }\n mstore(add(add(pos, length), 0x20), 0)\n end := add(add(pos, and(add(length, 31), not(31))), 0x20)\n }\n function abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_library_reversed(headStart, value0) -> tail\n {\n mstore(headStart, 32)\n tail := abi_encode_bytes(value0, add(headStart, 32))\n }\n function abi_decode_tuple_t_struct$_PegOutQuote_$10997_memory_ptr(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let offset := calldataload(headStart)\n let _1 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n let _2 := add(headStart, offset)\n if slt(sub(dataEnd, _2), 0x0220) { revert(0, 0) }\n let value := allocate_memory()\n mstore(value, abi_decode_address(_2))\n mstore(add(value, 32), abi_decode_address(add(_2, 32)))\n let offset_1 := calldataload(add(_2, 64))\n if gt(offset_1, _1) { revert(0, 0) }\n mstore(add(value, 64), abi_decode_bytes(add(_2, offset_1), dataEnd))\n mstore(add(value, 96), abi_decode_address(add(_2, 96)))\n let offset_2 := calldataload(add(_2, 128))\n if gt(offset_2, _1) { revert(0, 0) }\n mstore(add(value, 128), abi_decode_bytes(add(_2, offset_2), dataEnd))\n mstore(add(value, 160), calldataload(add(_2, 160)))\n mstore(add(value, 192), calldataload(add(_2, 192)))\n mstore(add(value, 224), abi_decode_int64(add(_2, 224)))\n let _3 := 256\n let offset_3 := calldataload(add(_2, _3))\n if gt(offset_3, _1) { revert(0, 0) }\n mstore(add(value, _3), abi_decode_bytes(add(_2, offset_3), dataEnd))\n let _4 := 288\n mstore(add(value, _4), calldataload(add(_2, _4)))\n let _5 := 320\n mstore(add(value, _5), abi_decode_uint32(add(_2, _5)))\n let _6 := 352\n mstore(add(value, _6), abi_decode_uint32(add(_2, _6)))\n let _7 := 384\n mstore(add(value, _7), abi_decode_uint16(add(_2, _7)))\n let _8 := 416\n mstore(add(value, _8), abi_decode_uint16(add(_2, _8)))\n let _9 := 448\n mstore(add(value, _9), abi_decode_uint32(add(_2, _9)))\n let _10 := 480\n mstore(add(value, _10), abi_decode_uint32(add(_2, _10)))\n let _11 := 512\n mstore(add(value, _11), abi_decode_uint32(add(_2, _11)))\n value0 := value\n }\n function panic_error_0x11()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x11)\n revert(0, 0x24)\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 checked_div_t_uint256(x, y) -> r\n {\n if iszero(y)\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x12)\n revert(0, 0x24)\n }\n r := div(x, y)\n }\n function checked_sub_t_uint256(x, y) -> diff\n {\n diff := sub(x, y)\n if gt(diff, x) { panic_error_0x11() }\n }\n function abi_encode_tuple_t_stringliteral_edc8872f52a3fbd4c102c7239a16e50d62a454725123fb252e7131b6a2223277__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC057\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_bytes_memory_ptr_t_bytes_memory_ptr__to_t_bytes_memory_ptr_t_bytes_memory_ptr__fromStack_reversed(headStart, value1, value0) -> tail\n {\n mstore(headStart, 64)\n let tail_1 := abi_encode_bytes(value0, add(headStart, 64))\n mstore(add(headStart, 32), sub(tail_1, headStart))\n tail := abi_encode_bytes(value1, tail_1)\n }\n function abi_encode_tuple_t_bytes20_t_address_t_address_t_bytes_memory_ptr_t_address_payable_t_bytes_memory_ptr_t_uint256_t_uint256_t_address__to_t_bytes20_t_address_t_address_t_bytes_memory_ptr_t_address_payable_t_bytes_memory_ptr_t_uint256_t_uint256_t_address__fromStack_reversed(headStart, value8, value7, value6, value5, value4, value3, value2, value1, value0) -> tail\n {\n let _1 := 288\n mstore(headStart, and(value0, not(sub(shl(96, 1), 1))))\n let _2 := sub(shl(160, 1), 1)\n mstore(add(headStart, 32), and(value1, _2))\n mstore(add(headStart, 64), and(value2, _2))\n mstore(add(headStart, 96), _1)\n let tail_1 := abi_encode_bytes(value3, add(headStart, _1))\n mstore(add(headStart, 128), and(value4, _2))\n mstore(add(headStart, 160), sub(tail_1, headStart))\n tail := abi_encode_bytes(value5, tail_1)\n mstore(add(headStart, 192), value6)\n mstore(add(headStart, 224), value7)\n mstore(add(headStart, 256), and(value8, _2))\n }\n function abi_encode_tuple_t_bytes_memory_ptr_t_uint32_t_int64_t_uint256_t_uint32_t_uint32_t_uint32_t_uint16_t_bool__to_t_bytes_memory_ptr_t_uint32_t_int64_t_uint256_t_uint32_t_uint32_t_uint32_t_uint16_t_bool__fromStack_reversed(headStart, value8, value7, value6, value5, value4, value3, value2, value1, value0) -> tail\n {\n let _1 := 288\n mstore(headStart, _1)\n tail := abi_encode_bytes(value0, add(headStart, _1))\n let _2 := 0xffffffff\n mstore(add(headStart, 32), and(value1, _2))\n mstore(add(headStart, 64), signextend(7, value2))\n mstore(add(headStart, 96), value3)\n mstore(add(headStart, 128), and(value4, _2))\n mstore(add(headStart, 160), and(value5, _2))\n mstore(add(headStart, 192), and(value6, _2))\n mstore(add(headStart, 224), and(value7, 0xffff))\n mstore(add(headStart, 256), iszero(iszero(value8)))\n }\n function abi_encode_tuple_t_address_t_address_t_bytes_memory_ptr_t_address_t_bytes_memory_ptr_t_uint256_t_uint256_t_int64_t_bytes_memory_ptr__to_t_address_t_address_t_bytes_memory_ptr_t_address_t_bytes_memory_ptr_t_uint256_t_uint256_t_int64_t_bytes_memory_ptr__fromStack_reversed(headStart, value8, value7, value6, value5, value4, value3, value2, value1, value0) -> tail\n {\n let _1 := 288\n let _2 := sub(shl(160, 1), 1)\n mstore(headStart, and(value0, _2))\n mstore(add(headStart, 32), and(value1, _2))\n mstore(add(headStart, 64), _1)\n let tail_1 := abi_encode_bytes(value2, add(headStart, _1))\n mstore(add(headStart, 96), and(value3, _2))\n mstore(add(headStart, 128), sub(tail_1, headStart))\n let tail_2 := abi_encode_bytes(value4, tail_1)\n mstore(add(headStart, 160), value5)\n mstore(add(headStart, 192), value6)\n mstore(add(headStart, 224), signextend(7, value7))\n mstore(add(headStart, 256), sub(tail_2, headStart))\n tail := abi_encode_bytes(value8, tail_2)\n }\n function abi_encode_tuple_t_uint256_t_uint32_t_uint32_t_uint16_t_uint16_t_uint32_t_uint32_t_uint32__to_t_uint256_t_uint32_t_uint32_t_uint16_t_uint16_t_uint32_t_uint32_t_uint32__fromStack_reversed(headStart, value7, value6, value5, value4, value3, value2, value1, value0) -> tail\n {\n tail := add(headStart, 256)\n mstore(headStart, value0)\n let _1 := 0xffffffff\n mstore(add(headStart, 32), and(value1, _1))\n mstore(add(headStart, 64), and(value2, _1))\n let _2 := 0xffff\n mstore(add(headStart, 96), and(value3, _2))\n mstore(add(headStart, 128), and(value4, _2))\n mstore(add(headStart, 160), and(value5, _1))\n mstore(add(headStart, 192), and(value6, _1))\n mstore(add(headStart, 224), and(value7, _1))\n }\n}", - "id": 32, - "language": "Yul", - "name": "#utility.yul" - } - ], - "sourceMap": "58:4167:27:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;58:4167:27;;;;;;;;;;;;;;;;;", - "deployedSourceMap": "58:4167:27:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3756:466;;;;;;:::i;:::-;;:::i;:::-;;1202:284;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1492:303;;;;;;:::i;:::-;;:::i;3756:466::-;3878:17;3912:5;:13;;;3898:5;:11;;;:27;;;;:::i;:::-;3878:47;-1:-1:-1;3935:10:27;3948:20;3963:5;3878:47;3948:20;:::i;:::-;3935:33;-1:-1:-1;4163:20:27;3935:33;4163:12;:20;:::i;:::-;4142:17;:41;;4121:94;;;;-1:-1:-1;;;4121:94:27;;8714:2:32;4121:94:27;;;8696:21:32;8753:1;8733:18;;;8726:29;-1:-1:-1;;;8771:18:32;;;8764:36;8817:18;;4121:94:27;;;;;;;;3868:354;;3756:466;;:::o;1202:284::-;1285:12;1440:18;1452:5;1440:11;:18::i;:::-;1460;1472:5;1460:11;:18::i;:::-;1429:50;;;;;;;;;:::i;:::-;;;;;;;;;;;;;1422:57;;1202:284;;;:::o;1492:303::-;1582:12;1737:24;1755:5;1737:17;:24::i;:::-;1763;1781:5;1763:17;:24::i;1801:513::-;1883:12;1954:5;:19;;;1991:5;:16;;;2025:5;:33;;;2076:5;:22;;;2116:5;:22;;;2156:5;:33;;;2207:5;:13;;;2238:5;:16;;;2272:5;:21;;;1926:381;;;;;;;;;;;;;;;;:::i;2320:468::-;2402:12;2473:5;:10;;;2501:5;:14;;;2533:5;:11;;;2562:5;:11;;;2591:5;:24;;;2633:5;:20;;;2671:5;:14;;;2703:5;:26;;;2747:5;:20;;;2445:336;;;;;;;;;;;;;;;;:::i;2794:482::-;2883:12;2954:5;:16;;;2988:5;:18;;;3024:5;:22;;;3064:5;:22;;;3104:5;:18;;;3140:5;:13;;;3171:5;:16;;;3205:5;:11;;;3234:5;:21;;;2926:343;;;;;;;;;;;;;;;;:::i;3282:468::-;3442:11;;;;;3471:24;;;;3513:22;;;;3553:26;;;;3597:27;;;;3642:18;;;;3678:16;;;;3712:17;;;;3414:329;;;;;;12560:25:32;;;;12604:10;12650:15;;;12630:18;;;12623:43;12702:15;;;3371:12:27;12682:18:32;;;12675:43;;;;12737:6;12779:15;;;12759:18;;;12752:43;12832:15;;;;12811:19;;;12804:44;12885:15;;12864:19;;;12857:44;12938:15;;12917:19;;;12910:44;12991:15;;-1:-1:-1;12970:19:32;;12963:44;3371:12:27;12532:19:32;3414:329:27;12231:782:32;14:127;75:10;70:3;66:20;63:1;56:31;106:4;103:1;96:15;130:4;127:1;120:15;146:255;218:2;212:9;260:6;248:19;;-1:-1:-1;;;;;282:34:32;;318:22;;;279:62;276:88;;;344:18;;:::i;:::-;380:2;373:22;146:255;:::o;406:250::-;473:2;467:9;515:6;503:19;;-1:-1:-1;;;;;537:34:32;;573:22;;;534:62;531:88;;;599:18;;:::i;661:177::-;729:20;;-1:-1:-1;;;;;;778:35:32;;768:46;;758:74;;828:1;825;818:12;758:74;661:177;;;:::o;843:173::-;911:20;;-1:-1:-1;;;;;960:31:32;;950:42;;940:70;;1006:1;1003;996:12;1021:718;1063:5;1116:3;1109:4;1101:6;1097:17;1093:27;1083:55;;1134:1;1131;1124:12;1083:55;1157:20;;-1:-1:-1;;;;;1226:10:32;;;1223:36;;;1239:18;;:::i;:::-;1314:2;1308:9;1282:2;1368:13;;-1:-1:-1;;1364:22:32;;;1388:2;1360:31;1356:40;1344:53;;;1412:18;;;1432:22;;;1409:46;1406:72;;;1458:18;;:::i;:::-;1498:10;1494:2;1487:22;1533:2;1525:6;1518:18;1579:3;1572:4;1567:2;1559:6;1555:15;1551:26;1548:35;1545:55;;;1596:1;1593;1586:12;1545:55;1660:2;1653:4;1645:6;1641:17;1634:4;1626:6;1622:17;1609:54;1707:1;1700:4;1695:2;1687:6;1683:15;1679:26;1672:37;1727:6;1718:15;;;;;;1021:718;;;;:::o;1744:163::-;1811:20;;1871:10;1860:22;;1850:33;;1840:61;;1897:1;1894;1887:12;1912:160;1978:20;;2038:1;2027:20;;;2017:31;;2007:59;;2062:1;2059;2052:12;2077:159;2144:20;;2204:6;2193:18;;2183:29;;2173:57;;2226:1;2223;2216:12;2241:160;2306:20;;2362:13;;2355:21;2345:32;;2335:60;;2391:1;2388;2381:12;2406:2005;2463:5;2511:6;2499:9;2494:3;2490:19;2486:32;2483:52;;;2531:1;2528;2521:12;2483:52;2553:22;;:::i;:::-;2544:31;;2598:29;2617:9;2598:29;:::i;:::-;2591:5;2584:44;2660:38;2694:2;2683:9;2679:18;2660:38;:::i;:::-;2655:2;2648:5;2644:14;2637:62;2731:38;2765:2;2754:9;2750:18;2731:38;:::i;:::-;2726:2;2715:14;;2708:62;2821:2;2806:18;;2793:32;-1:-1:-1;;;;;2874:14:32;;;2871:34;;;2901:1;2898;2891:12;2871:34;2937:45;2978:3;2969:6;2958:9;2954:22;2937:45;:::i;:::-;2932:2;2925:5;2921:14;2914:69;3016:39;3050:3;3039:9;3035:19;3016:39;:::i;:::-;3010:3;3003:5;2999:15;2992:64;3109:3;3098:9;3094:19;3081:33;3065:49;;3139:2;3129:8;3126:16;3123:36;;;3155:1;3152;3145:12;3123:36;3192:47;3235:3;3224:8;3213:9;3209:24;3192:47;:::i;:::-;3186:3;3179:5;3175:15;3168:72;3301:3;3290:9;3286:19;3273:33;3267:3;3260:5;3256:15;3249:58;3368:3;3357:9;3353:19;3340:33;3334:3;3327:5;3323:15;3316:58;3393:3;3383:13;;3428:38;3462:2;3451:9;3447:18;3428:38;:::i;:::-;3423:2;3416:5;3412:14;3405:62;3486:3;3476:13;;3542:2;3531:9;3527:18;3514:32;3571:2;3561:8;3558:16;3555:36;;;3587:1;3584;3577:12;3555:36;3623:47;3666:3;3655:8;3644:9;3640:24;3623:47;:::i;:::-;3618:2;3611:5;3607:14;3600:71;;;;3690:3;3725:37;3758:2;3747:9;3743:18;3725:37;:::i;:::-;3709:14;;;3702:61;3782:3;3817:36;3834:18;;;3817:36;:::i;:::-;3801:14;;;3794:60;3873:3;3921:18;;;3908:32;3892:14;;;3885:56;3960:3;3995:37;4013:18;;;3995:37;:::i;:::-;3979:14;;;3972:61;4052:3;4087:37;4105:18;;;4087:37;:::i;:::-;4071:14;;;4064:61;4144:3;4179:37;4197:18;;;4179:37;:::i;:::-;4163:14;;;4156:61;4237:3;4273:38;4291:19;;;4273:38;:::i;:::-;4256:15;;;4249:63;4332:3;4368:36;4384:19;;;4368:36;:::i;:::-;4351:15;;;4344:61;4355:5;2406:2005;-1:-1:-1;;2406:2005:32:o;4416:420::-;4513:6;4521;4574:2;4562:9;4553:7;4549:23;4545:32;4542:52;;;4590:1;4587;4580:12;4542:52;4617:23;;-1:-1:-1;;;;;4652:30:32;;4649:50;;;4695:1;4692;4685:12;4649:50;4718:61;4771:7;4762:6;4751:9;4747:22;4718:61;:::i;:::-;4708:71;4826:2;4811:18;;;;4798:32;;-1:-1:-1;;;;4416:420:32:o;4841:352::-;4929:6;4982:2;4970:9;4961:7;4957:23;4953:32;4950:52;;;4998:1;4995;4988:12;4950:52;5025:23;;-1:-1:-1;;;;;5060:30:32;;5057:50;;;5103:1;5100;5093:12;5057:50;5126:61;5179:7;5170:6;5159:9;5155:22;5126:61;:::i;:::-;5116:71;4841:352;-1:-1:-1;;;;4841:352:32:o;5198:422::-;5239:3;5277:5;5271:12;5304:6;5299:3;5292:19;5329:1;5339:162;5353:6;5350:1;5347:13;5339:162;;;5415:4;5471:13;;;5467:22;;5461:29;5443:11;;;5439:20;;5432:59;5368:12;5339:162;;;5343:3;5546:1;5539:4;5530:6;5525:3;5521:16;5517:27;5510:38;5609:4;5602:2;5598:7;5593:2;5585:6;5581:15;5577:29;5572:3;5568:39;5564:50;5557:57;;;5198:422;;;;:::o;5625:225::-;5780:2;5769:9;5762:21;5743:4;5800:44;5840:2;5829:9;5825:18;5817:6;5800:44;:::i;:::-;5792:52;5625:225;-1:-1:-1;;;5625:225:32:o;5855:2035::-;5944:6;5997:2;5985:9;5976:7;5972:23;5968:32;5965:52;;;6013:1;6010;6003:12;5965:52;6040:23;;-1:-1:-1;;;;;6112:14:32;;;6109:34;;;6139:1;6136;6129:12;6109:34;6162:22;;;;6218:6;6200:16;;;6196:29;6193:49;;;6238:1;6235;6228:12;6193:49;6264:17;;:::i;:::-;6304:22;6323:2;6304:22;:::i;:::-;6297:5;6290:37;6359:31;6386:2;6382;6378:11;6359:31;:::i;:::-;6354:2;6347:5;6343:14;6336:55;6437:2;6433;6429:11;6416:25;6466:2;6456:8;6453:16;6450:36;;;6482:1;6479;6472:12;6450:36;6518:44;6554:7;6543:8;6539:2;6535:17;6518:44;:::i;:::-;6513:2;6506:5;6502:14;6495:68;;6595:31;6622:2;6618;6614:11;6595:31;:::i;:::-;6590:2;6583:5;6579:14;6572:55;6673:3;6669:2;6665:12;6652:26;6703:2;6693:8;6690:16;6687:36;;;6719:1;6716;6709:12;6687:36;6756:44;6792:7;6781:8;6777:2;6773:17;6756:44;:::i;:::-;6750:3;6743:5;6739:15;6732:69;;6855:3;6851:2;6847:12;6834:26;6828:3;6821:5;6817:15;6810:51;6915:3;6911:2;6907:12;6894:26;6888:3;6881:5;6877:15;6870:51;6954:30;6979:3;6975:2;6971:12;6954:30;:::i;:::-;6948:3;6941:5;6937:15;6930:55;7004:3;7053:2;7049;7045:11;7032:25;7082:2;7072:8;7069:16;7066:36;;;7098:1;7095;7088:12;7066:36;7134:44;7170:7;7159:8;7155:2;7151:17;7134:44;:::i;:::-;7129:2;7122:5;7118:14;7111:68;;;7198:3;7188:13;;7254:2;7250;7246:11;7233:25;7228:2;7221:5;7217:14;7210:49;7278:3;7268:13;;7313:30;7339:2;7335;7331:11;7313:30;:::i;:::-;7308:2;7301:5;7297:14;7290:54;7363:3;7353:13;;7398:30;7424:2;7420;7416:11;7398:30;:::i;:::-;7393:2;7386:5;7382:14;7375:54;7448:3;7438:13;;7483:30;7509:2;7505;7501:11;7483:30;:::i;:::-;7478:2;7471:5;7467:14;7460:54;7533:3;7523:13;;7568:30;7594:2;7590;7586:11;7568:30;:::i;:::-;7563:2;7556:5;7552:14;7545:54;7618:3;7608:13;;7653:30;7679:2;7675;7671:11;7653:30;:::i;:::-;7648:2;7641:5;7637:14;7630:54;7704:3;7693:14;;7740:31;7766:3;7762:2;7758:12;7740:31;:::i;:::-;7734:3;7727:5;7723:15;7716:56;7792:3;7781:14;;7828:31;7854:3;7850:2;7846:12;7828:31;:::i;:::-;7811:15;;;7804:56;;;;7815:5;5855:2035;-1:-1:-1;;;;5855:2035:32:o;7895:127::-;7956:10;7951:3;7947:20;7944:1;7937:31;7987:4;7984:1;7977:15;8011:4;8008:1;8001:15;8027:125;8092:9;;;8113:10;;;8110:36;;;8126:18;;:::i;:::-;8027:125;;;;:::o;8157:217::-;8197:1;8223;8213:132;;8267:10;8262:3;8258:20;8255:1;8248:31;8302:4;8299:1;8292:15;8330:4;8327:1;8320:15;8213:132;-1:-1:-1;8359:9:32;;8157:217::o;8379:128::-;8446:9;;;8467:11;;;8464:37;;;8481:18;;:::i;8846:377::-;9039:2;9028:9;9021:21;9002:4;9065:44;9105:2;9094:9;9090:18;9082:6;9065:44;:::i;:::-;9157:9;9149:6;9145:22;9140:2;9129:9;9125:18;9118:50;9185:32;9210:6;9202;9185:32;:::i;:::-;9177:40;8846:377;-1:-1:-1;;;;;8846:377:32:o;9228:1021::-;-1:-1:-1;;;;;;9655:36:32;;9637:55;;-1:-1:-1;;;;;9766:15:32;;;9761:2;9746:18;;9739:43;9818:15;;;9813:2;9798:18;;9791:43;9625:3;9679:2;9850:18;;9843:30;;;9596:4;;9896:44;9921:18;;;9913:6;9896:44;:::i;:::-;9882:58;;9989:2;9981:6;9977:15;9971:3;9960:9;9956:19;9949:44;10042:9;10034:6;10030:22;10024:3;10013:9;10009:19;10002:51;10070:32;10095:6;10087;10070:32;:::i;:::-;10133:3;10118:19;;10111:35;;;;10177:3;10162:19;;10155:35;;;;-1:-1:-1;;10227:15:32;;10221:3;10206:19;;;10199:44;10062:40;9228:1021;-1:-1:-1;;;;;;9228:1021:32:o;10254:901::-;10568:4;10597:3;10627:2;10616:9;10609:21;10647:44;10687:2;10676:9;10672:18;10664:6;10647:44;:::i;:::-;10710:10;10756:15;;;10751:2;10736:18;;10729:43;10819:1;10808:21;;;;10803:2;10788:18;;10781:49;-1:-1:-1;;10861:2:32;10846:18;;10839:34;;;;10910:15;;;10904:3;10889:19;;10882:44;10963:15;;;10957:3;10942:19;;10935:44;11016:15;;;11010:3;10995:19;;10988:44;11081:6;11069:19;;;11063:3;11048:19;;11041:48;11133:14;;11126:22;11120:3;11105:19;;;11098:51;;;;10808:21;10639:52;-1:-1:-1;10254:901:32:o;11160:1066::-;-1:-1:-1;;;;;11623:15:32;;;11605:34;;11675:15;;;11670:2;11655:18;;11648:43;11555:3;11722:2;11707:18;;11700:30;;;11526:4;;11753:44;11778:18;;;11770:6;11753:44;:::i;:::-;11833:15;;;11828:2;11813:18;;11806:43;11886:22;;;11880:3;11865:19;;11858:51;11739:58;-1:-1:-1;11932:32:32;11739:58;11949:6;11932:32;:::i;:::-;11918:46;;12001:6;11995:3;11984:9;11980:19;11973:35;12045:6;12039:3;12028:9;12024:19;12017:35;12103:6;12100:1;12089:21;12083:3;12072:9;12068:19;12061:50;12160:9;12152:6;12148:22;12142:3;12131:9;12127:19;12120:51;12188:32;12213:6;12205;12188:32;:::i;:::-;12180:40;11160:1066;-1:-1:-1;;;;;;;;;;;;11160:1066:32:o", - "source": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.18;\n\nlibrary Quotes {\n struct PeginQuote {\n bytes20 fedBtcAddress;\n address lbcAddress;\n address liquidityProviderRskAddress;\n bytes btcRefundAddress;\n address payable rskRefundAddress;\n bytes liquidityProviderBtcAddress;\n uint256 callFee;\n uint256 penaltyFee;\n address contractAddress;\n bytes data;\n uint32 gasLimit;\n int64 nonce;\n uint256 value;\n uint32 agreementTimestamp;\n uint32 timeForDeposit;\n uint32 callTime;\n uint16 depositConfirmations;\n bool callOnRegister;\n }\n\n struct PegOutQuote {\n address lbcAddress;\n address lpRskAddress;\n bytes btcRefundAddress;\n address rskRefundAddress;\n bytes lpBtcAddress;\n uint256 callFee;\n uint256 penaltyFee;\n int64 nonce;\n bytes deposityAddress;\n uint256 value;\n uint32 agreementTimestamp;\n uint32 depositDateLimit;\n uint16 depositConfirmations;\n uint16 transferConfirmations;\n uint32 transferTime;\n uint32 expireDate;\n uint32 expireBlock;\n }\n\n function encodeQuote(\n PeginQuote memory quote\n ) external pure returns (bytes memory) {\n // Encode in two parts because abi.encode cannot take more than 12 parameters due to stack depth limits.\n return abi.encode(encodePart1(quote), encodePart2(quote));\n }\n\n function encodePegOutQuote(\n PegOutQuote memory quote\n ) external pure returns (bytes memory) {\n // Encode in two parts because abi.encode cannot take more than 12 parameters due to stack depth limits.\n return abi.encode(encodePegOutPart1(quote), encodePegOutPart2(quote));\n }\n\n function encodePart1(\n PeginQuote memory quote\n ) private pure returns (bytes memory) {\n return\n abi.encode(\n quote.fedBtcAddress,\n quote.lbcAddress,\n quote.liquidityProviderRskAddress,\n quote.btcRefundAddress,\n quote.rskRefundAddress,\n quote.liquidityProviderBtcAddress,\n quote.callFee,\n quote.penaltyFee,\n quote.contractAddress\n );\n }\n\n function encodePart2(\n PeginQuote memory quote\n ) private pure returns (bytes memory) {\n return\n abi.encode(\n quote.data,\n quote.gasLimit,\n quote.nonce,\n quote.value,\n quote.agreementTimestamp,\n quote.timeForDeposit,\n quote.callTime,\n quote.depositConfirmations,\n quote.callOnRegister\n );\n }\n\n function encodePegOutPart1(\n PegOutQuote memory quote\n ) private pure returns (bytes memory) {\n return\n abi.encode(\n quote.lbcAddress,\n quote.lpRskAddress,\n quote.btcRefundAddress,\n quote.rskRefundAddress,\n quote.lpBtcAddress,\n quote.callFee,\n quote.penaltyFee,\n quote.nonce,\n quote.deposityAddress\n );\n }\n\n function encodePegOutPart2(\n PegOutQuote memory quote\n ) private pure returns (bytes memory) {\n return\n abi.encode(\n quote.value,\n quote.agreementTimestamp,\n quote.depositDateLimit,\n quote.depositConfirmations,\n quote.transferConfirmations,\n quote.transferTime,\n quote.expireDate,\n quote.expireBlock\n );\n }\n\n function checkAgreedAmount(\n PeginQuote memory quote,\n uint transferredAmount\n ) external pure {\n uint agreedAmount = quote.value + quote.callFee;\n uint delta = agreedAmount / 10000;\n // transferred amount should not be lower than (agreed amount - delta),\n // where delta is intended to tackle rounding problems\n require(\n transferredAmount >= agreedAmount - delta,\n \"LBC057\"\n );\n }\n\n}", - "sourcePath": "/Users/luischavez/iov/liquidity-bridge-contract/contracts/Quotes.sol", - "ast": { - "absolutePath": "project:/contracts/Quotes.sol", - "exportedSymbols": { - "Quotes": [ - 11190 - ] - }, - "id": 11191, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 10925, - "literals": [ - "solidity", - "^", - "0.8", - ".18" - ], - "nodeType": "PragmaDirective", - "src": "32:24:27" - }, - { - "abstract": false, - "baseContracts": [], - "canonicalName": "Quotes", - "contractDependencies": [], - "contractKind": "library", - "fullyImplemented": true, - "id": 11190, - "linearizedBaseContracts": [ - 11190 - ], - "name": "Quotes", - "nameLocation": "66:6:27", - "nodeType": "ContractDefinition", - "nodes": [ - { - "canonicalName": "Quotes.PeginQuote", - "id": 10962, - "members": [ - { - "constant": false, - "id": 10927, - "mutability": "mutable", - "name": "fedBtcAddress", - "nameLocation": "115:13:27", - "nodeType": "VariableDeclaration", - "scope": 10962, - "src": "107:21:27", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes20", - "typeString": "bytes20" - }, - "typeName": { - "id": 10926, - "name": "bytes20", - "nodeType": "ElementaryTypeName", - "src": "107:7:27", - "typeDescriptions": { - "typeIdentifier": "t_bytes20", - "typeString": "bytes20" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 10929, - "mutability": "mutable", - "name": "lbcAddress", - "nameLocation": "146:10:27", - "nodeType": "VariableDeclaration", - "scope": 10962, - "src": "138:18:27", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 10928, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "138:7:27", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 10931, - "mutability": "mutable", - "name": "liquidityProviderRskAddress", - "nameLocation": "174:27:27", - "nodeType": "VariableDeclaration", - "scope": 10962, - "src": "166:35:27", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 10930, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "166:7:27", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 10933, - "mutability": "mutable", - "name": "btcRefundAddress", - "nameLocation": "217:16:27", - "nodeType": "VariableDeclaration", - "scope": 10962, - "src": "211:22:27", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 10932, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "211:5:27", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 10935, - "mutability": "mutable", - "name": "rskRefundAddress", - "nameLocation": "259:16:27", - "nodeType": "VariableDeclaration", - "scope": 10962, - "src": "243:32:27", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - }, - "typeName": { - "id": 10934, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "243:15:27", - "stateMutability": "payable", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 10937, - "mutability": "mutable", - "name": "liquidityProviderBtcAddress", - "nameLocation": "291:27:27", - "nodeType": "VariableDeclaration", - "scope": 10962, - "src": "285:33:27", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 10936, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "285:5:27", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 10939, - "mutability": "mutable", - "name": "callFee", - "nameLocation": "336:7:27", - "nodeType": "VariableDeclaration", - "scope": 10962, - "src": "328:15:27", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 10938, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "328:7:27", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 10941, - "mutability": "mutable", - "name": "penaltyFee", - "nameLocation": "361:10:27", - "nodeType": "VariableDeclaration", - "scope": 10962, - "src": "353:18:27", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 10940, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "353:7:27", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 10943, - "mutability": "mutable", - "name": "contractAddress", - "nameLocation": "389:15:27", - "nodeType": "VariableDeclaration", - "scope": 10962, - "src": "381:23:27", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 10942, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "381:7:27", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 10945, - "mutability": "mutable", - "name": "data", - "nameLocation": "420:4:27", - "nodeType": "VariableDeclaration", - "scope": 10962, - "src": "414:10:27", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 10944, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "414:5:27", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 10947, - "mutability": "mutable", - "name": "gasLimit", - "nameLocation": "441:8:27", - "nodeType": "VariableDeclaration", - "scope": 10962, - "src": "434:15:27", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "typeName": { - "id": 10946, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "434:6:27", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 10949, - "mutability": "mutable", - "name": "nonce", - "nameLocation": "465:5:27", - "nodeType": "VariableDeclaration", - "scope": 10962, - "src": "459:11:27", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int64", - "typeString": "int64" - }, - "typeName": { - "id": 10948, - "name": "int64", - "nodeType": "ElementaryTypeName", - "src": "459:5:27", - "typeDescriptions": { - "typeIdentifier": "t_int64", - "typeString": "int64" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 10951, - "mutability": "mutable", - "name": "value", - "nameLocation": "488:5:27", - "nodeType": "VariableDeclaration", - "scope": 10962, - "src": "480:13:27", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 10950, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "480:7:27", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 10953, - "mutability": "mutable", - "name": "agreementTimestamp", - "nameLocation": "510:18:27", - "nodeType": "VariableDeclaration", - "scope": 10962, - "src": "503:25:27", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "typeName": { - "id": 10952, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "503:6:27", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 10955, - "mutability": "mutable", - "name": "timeForDeposit", - "nameLocation": "545:14:27", - "nodeType": "VariableDeclaration", - "scope": 10962, - "src": "538:21:27", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "typeName": { - "id": 10954, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "538:6:27", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 10957, - "mutability": "mutable", - "name": "callTime", - "nameLocation": "576:8:27", - "nodeType": "VariableDeclaration", - "scope": 10962, - "src": "569:15:27", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "typeName": { - "id": 10956, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "569:6:27", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 10959, - "mutability": "mutable", - "name": "depositConfirmations", - "nameLocation": "601:20:27", - "nodeType": "VariableDeclaration", - "scope": 10962, - "src": "594:27:27", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - }, - "typeName": { - "id": 10958, - "name": "uint16", - "nodeType": "ElementaryTypeName", - "src": "594:6:27", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 10961, - "mutability": "mutable", - "name": "callOnRegister", - "nameLocation": "636:14:27", - "nodeType": "VariableDeclaration", - "scope": 10962, - "src": "631:19:27", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 10960, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "631:4:27", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "name": "PeginQuote", - "nameLocation": "86:10:27", - "nodeType": "StructDefinition", - "scope": 11190, - "src": "79:578:27", - "visibility": "public" - }, - { - "canonicalName": "Quotes.PegOutQuote", - "id": 10997, - "members": [ - { - "constant": false, - "id": 10964, - "mutability": "mutable", - "name": "lbcAddress", - "nameLocation": "700:10:27", - "nodeType": "VariableDeclaration", - "scope": 10997, - "src": "692:18:27", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 10963, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "692:7:27", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 10966, - "mutability": "mutable", - "name": "lpRskAddress", - "nameLocation": "728:12:27", - "nodeType": "VariableDeclaration", - "scope": 10997, - "src": "720:20:27", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 10965, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "720:7:27", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 10968, - "mutability": "mutable", - "name": "btcRefundAddress", - "nameLocation": "756:16:27", - "nodeType": "VariableDeclaration", - "scope": 10997, - "src": "750:22:27", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 10967, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "750:5:27", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 10970, - "mutability": "mutable", - "name": "rskRefundAddress", - "nameLocation": "790:16:27", - "nodeType": "VariableDeclaration", - "scope": 10997, - "src": "782:24:27", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 10969, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "782:7:27", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 10972, - "mutability": "mutable", - "name": "lpBtcAddress", - "nameLocation": "822:12:27", - "nodeType": "VariableDeclaration", - "scope": 10997, - "src": "816:18:27", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 10971, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "816:5:27", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 10974, - "mutability": "mutable", - "name": "callFee", - "nameLocation": "852:7:27", - "nodeType": "VariableDeclaration", - "scope": 10997, - "src": "844:15:27", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 10973, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "844:7:27", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 10976, - "mutability": "mutable", - "name": "penaltyFee", - "nameLocation": "877:10:27", - "nodeType": "VariableDeclaration", - "scope": 10997, - "src": "869:18:27", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 10975, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "869:7:27", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 10978, - "mutability": "mutable", - "name": "nonce", - "nameLocation": "903:5:27", - "nodeType": "VariableDeclaration", - "scope": 10997, - "src": "897:11:27", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int64", - "typeString": "int64" - }, - "typeName": { - "id": 10977, - "name": "int64", - "nodeType": "ElementaryTypeName", - "src": "897:5:27", - "typeDescriptions": { - "typeIdentifier": "t_int64", - "typeString": "int64" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 10980, - "mutability": "mutable", - "name": "deposityAddress", - "nameLocation": "924:15:27", - "nodeType": "VariableDeclaration", - "scope": 10997, - "src": "918:21:27", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 10979, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "918:5:27", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 10982, - "mutability": "mutable", - "name": "value", - "nameLocation": "957:5:27", - "nodeType": "VariableDeclaration", - "scope": 10997, - "src": "949:13:27", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 10981, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "949:7:27", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 10984, - "mutability": "mutable", - "name": "agreementTimestamp", - "nameLocation": "979:18:27", - "nodeType": "VariableDeclaration", - "scope": 10997, - "src": "972:25:27", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "typeName": { - "id": 10983, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "972:6:27", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 10986, - "mutability": "mutable", - "name": "depositDateLimit", - "nameLocation": "1014:16:27", - "nodeType": "VariableDeclaration", - "scope": 10997, - "src": "1007:23:27", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "typeName": { - "id": 10985, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "1007:6:27", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 10988, - "mutability": "mutable", - "name": "depositConfirmations", - "nameLocation": "1047:20:27", - "nodeType": "VariableDeclaration", - "scope": 10997, - "src": "1040:27:27", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - }, - "typeName": { - "id": 10987, - "name": "uint16", - "nodeType": "ElementaryTypeName", - "src": "1040:6:27", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 10990, - "mutability": "mutable", - "name": "transferConfirmations", - "nameLocation": "1084:21:27", - "nodeType": "VariableDeclaration", - "scope": 10997, - "src": "1077:28:27", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - }, - "typeName": { - "id": 10989, - "name": "uint16", - "nodeType": "ElementaryTypeName", - "src": "1077:6:27", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 10992, - "mutability": "mutable", - "name": "transferTime", - "nameLocation": "1122:12:27", - "nodeType": "VariableDeclaration", - "scope": 10997, - "src": "1115:19:27", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "typeName": { - "id": 10991, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "1115:6:27", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 10994, - "mutability": "mutable", - "name": "expireDate", - "nameLocation": "1151:10:27", - "nodeType": "VariableDeclaration", - "scope": 10997, - "src": "1144:17:27", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "typeName": { - "id": 10993, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "1144:6:27", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 10996, - "mutability": "mutable", - "name": "expireBlock", - "nameLocation": "1178:11:27", - "nodeType": "VariableDeclaration", - "scope": 10997, - "src": "1171:18:27", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "typeName": { - "id": 10995, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "1171:6:27", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "visibility": "internal" - } - ], - "name": "PegOutQuote", - "nameLocation": "670:11:27", - "nodeType": "StructDefinition", - "scope": 11190, - "src": "663:533:27", - "visibility": "public" - }, - { - "body": { - "id": 11015, - "nodeType": "Block", - "src": "1299:187:27", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "id": 11008, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11000, - "src": "1452:5:27", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - ], - "id": 11007, - "name": "encodePart1", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11066, - "src": "1440:11:27", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_struct$_PeginQuote_$10962_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (struct Quotes.PeginQuote memory) pure returns (bytes memory)" - } - }, - "id": 11009, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1440:18:27", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "arguments": [ - { - "id": 11011, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11000, - "src": "1472:5:27", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - ], - "id": 11010, - "name": "encodePart2", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11097, - "src": "1460:11:27", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_struct$_PeginQuote_$10962_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (struct Quotes.PeginQuote memory) pure returns (bytes memory)" - } - }, - "id": 11012, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1460:18:27", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "id": 11005, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "1429:3:27", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 11006, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "1433:6:27", - "memberName": "encode", - "nodeType": "MemberAccess", - "src": "1429:10:27", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 11013, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1429:50:27", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 11004, - "id": 11014, - "nodeType": "Return", - "src": "1422:57:27" - } - ] - }, - "functionSelector": "3f7acc2c", - "id": 11016, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "encodeQuote", - "nameLocation": "1211:11:27", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 11001, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 11000, - "mutability": "mutable", - "name": "quote", - "nameLocation": "1250:5:27", - "nodeType": "VariableDeclaration", - "scope": 11016, - "src": "1232:23:27", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote" - }, - "typeName": { - "id": 10999, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 10998, - "name": "PeginQuote", - "nameLocations": [ - "1232:10:27" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 10962, - "src": "1232:10:27" - }, - "referencedDeclaration": 10962, - "src": "1232:10:27", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_storage_ptr", - "typeString": "struct Quotes.PeginQuote" - } - }, - "visibility": "internal" - } - ], - "src": "1222:39:27" - }, - "returnParameters": { - "id": 11004, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 11003, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 11016, - "src": "1285:12:27", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 11002, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1285:5:27", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "1284:14:27" - }, - "scope": 11190, - "src": "1202:284:27", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 11034, - "nodeType": "Block", - "src": "1596:199:27", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "id": 11027, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11019, - "src": "1755:5:27", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_memory_ptr", - "typeString": "struct Quotes.PegOutQuote memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_memory_ptr", - "typeString": "struct Quotes.PegOutQuote memory" - } - ], - "id": 11026, - "name": "encodePegOutPart1", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11128, - "src": "1737:17:27", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_struct$_PegOutQuote_$10997_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (struct Quotes.PegOutQuote memory) pure returns (bytes memory)" - } - }, - "id": 11028, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1737:24:27", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "arguments": [ - { - "id": 11030, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11019, - "src": "1781:5:27", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_memory_ptr", - "typeString": "struct Quotes.PegOutQuote memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_memory_ptr", - "typeString": "struct Quotes.PegOutQuote memory" - } - ], - "id": 11029, - "name": "encodePegOutPart2", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11157, - "src": "1763:17:27", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_struct$_PegOutQuote_$10997_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (struct Quotes.PegOutQuote memory) pure returns (bytes memory)" - } - }, - "id": 11031, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1763:24:27", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "id": 11024, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "1726:3:27", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 11025, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "1730:6:27", - "memberName": "encode", - "nodeType": "MemberAccess", - "src": "1726:10:27", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 11032, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1726:62:27", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 11023, - "id": 11033, - "nodeType": "Return", - "src": "1719:69:27" - } - ] - }, - "functionSelector": "fb19b88b", - "id": 11035, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "encodePegOutQuote", - "nameLocation": "1501:17:27", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 11020, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 11019, - "mutability": "mutable", - "name": "quote", - "nameLocation": "1547:5:27", - "nodeType": "VariableDeclaration", - "scope": 11035, - "src": "1528:24:27", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_memory_ptr", - "typeString": "struct Quotes.PegOutQuote" - }, - "typeName": { - "id": 11018, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 11017, - "name": "PegOutQuote", - "nameLocations": [ - "1528:11:27" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 10997, - "src": "1528:11:27" - }, - "referencedDeclaration": 10997, - "src": "1528:11:27", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_storage_ptr", - "typeString": "struct Quotes.PegOutQuote" - } - }, - "visibility": "internal" - } - ], - "src": "1518:40:27" - }, - "returnParameters": { - "id": 11023, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 11022, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 11035, - "src": "1582:12:27", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 11021, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1582:5:27", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "1581:14:27" - }, - "scope": 11190, - "src": "1492:303:27", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 11065, - "nodeType": "Block", - "src": "1897:417:27", - "statements": [ - { - "expression": { - "arguments": [ - { - "expression": { - "id": 11045, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11038, - "src": "1954:5:27", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 11046, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "1960:13:27", - "memberName": "fedBtcAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 10927, - "src": "1954:19:27", - "typeDescriptions": { - "typeIdentifier": "t_bytes20", - "typeString": "bytes20" - } - }, - { - "expression": { - "id": 11047, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11038, - "src": "1991:5:27", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 11048, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "1997:10:27", - "memberName": "lbcAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 10929, - "src": "1991:16:27", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 11049, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11038, - "src": "2025:5:27", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 11050, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "2031:27:27", - "memberName": "liquidityProviderRskAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 10931, - "src": "2025:33:27", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 11051, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11038, - "src": "2076:5:27", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 11052, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "2082:16:27", - "memberName": "btcRefundAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 10933, - "src": "2076:22:27", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "expression": { - "id": 11053, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11038, - "src": "2116:5:27", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 11054, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "2122:16:27", - "memberName": "rskRefundAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 10935, - "src": "2116:22:27", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - { - "expression": { - "id": 11055, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11038, - "src": "2156:5:27", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 11056, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "2162:27:27", - "memberName": "liquidityProviderBtcAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 10937, - "src": "2156:33:27", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "expression": { - "id": 11057, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11038, - "src": "2207:5:27", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 11058, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "2213:7:27", - "memberName": "callFee", - "nodeType": "MemberAccess", - "referencedDeclaration": 10939, - "src": "2207:13:27", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "expression": { - "id": 11059, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11038, - "src": "2238:5:27", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 11060, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "2244:10:27", - "memberName": "penaltyFee", - "nodeType": "MemberAccess", - "referencedDeclaration": 10941, - "src": "2238:16:27", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "expression": { - "id": 11061, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11038, - "src": "2272:5:27", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 11062, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "2278:15:27", - "memberName": "contractAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 10943, - "src": "2272:21:27", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes20", - "typeString": "bytes20" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "expression": { - "id": 11043, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "1926:3:27", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 11044, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "1930:6:27", - "memberName": "encode", - "nodeType": "MemberAccess", - "src": "1926:10:27", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 11063, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1926:381:27", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 11042, - "id": 11064, - "nodeType": "Return", - "src": "1907:400:27" - } - ] - }, - "id": 11066, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "encodePart1", - "nameLocation": "1810:11:27", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 11039, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 11038, - "mutability": "mutable", - "name": "quote", - "nameLocation": "1849:5:27", - "nodeType": "VariableDeclaration", - "scope": 11066, - "src": "1831:23:27", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote" - }, - "typeName": { - "id": 11037, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 11036, - "name": "PeginQuote", - "nameLocations": [ - "1831:10:27" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 10962, - "src": "1831:10:27" - }, - "referencedDeclaration": 10962, - "src": "1831:10:27", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_storage_ptr", - "typeString": "struct Quotes.PeginQuote" - } - }, - "visibility": "internal" - } - ], - "src": "1821:39:27" - }, - "returnParameters": { - "id": 11042, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 11041, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 11066, - "src": "1883:12:27", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 11040, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1883:5:27", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "1882:14:27" - }, - "scope": 11190, - "src": "1801:513:27", - "stateMutability": "pure", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 11096, - "nodeType": "Block", - "src": "2416:372:27", - "statements": [ - { - "expression": { - "arguments": [ - { - "expression": { - "id": 11076, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11069, - "src": "2473:5:27", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 11077, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "2479:4:27", - "memberName": "data", - "nodeType": "MemberAccess", - "referencedDeclaration": 10945, - "src": "2473:10:27", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "expression": { - "id": 11078, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11069, - "src": "2501:5:27", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 11079, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "2507:8:27", - "memberName": "gasLimit", - "nodeType": "MemberAccess", - "referencedDeclaration": 10947, - "src": "2501:14:27", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - { - "expression": { - "id": 11080, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11069, - "src": "2533:5:27", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 11081, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "2539:5:27", - "memberName": "nonce", - "nodeType": "MemberAccess", - "referencedDeclaration": 10949, - "src": "2533:11:27", - "typeDescriptions": { - "typeIdentifier": "t_int64", - "typeString": "int64" - } - }, - { - "expression": { - "id": 11082, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11069, - "src": "2562:5:27", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 11083, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "2568:5:27", - "memberName": "value", - "nodeType": "MemberAccess", - "referencedDeclaration": 10951, - "src": "2562:11:27", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "expression": { - "id": 11084, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11069, - "src": "2591:5:27", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 11085, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "2597:18:27", - "memberName": "agreementTimestamp", - "nodeType": "MemberAccess", - "referencedDeclaration": 10953, - "src": "2591:24:27", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - { - "expression": { - "id": 11086, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11069, - "src": "2633:5:27", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 11087, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "2639:14:27", - "memberName": "timeForDeposit", - "nodeType": "MemberAccess", - "referencedDeclaration": 10955, - "src": "2633:20:27", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - { - "expression": { - "id": 11088, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11069, - "src": "2671:5:27", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 11089, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "2677:8:27", - "memberName": "callTime", - "nodeType": "MemberAccess", - "referencedDeclaration": 10957, - "src": "2671:14:27", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - { - "expression": { - "id": 11090, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11069, - "src": "2703:5:27", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 11091, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "2709:20:27", - "memberName": "depositConfirmations", - "nodeType": "MemberAccess", - "referencedDeclaration": 10959, - "src": "2703:26:27", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - { - "expression": { - "id": 11092, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11069, - "src": "2747:5:27", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 11093, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "2753:14:27", - "memberName": "callOnRegister", - "nodeType": "MemberAccess", - "referencedDeclaration": 10961, - "src": "2747:20:27", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - { - "typeIdentifier": "t_int64", - "typeString": "int64" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "expression": { - "id": 11074, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "2445:3:27", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 11075, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "2449:6:27", - "memberName": "encode", - "nodeType": "MemberAccess", - "src": "2445:10:27", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 11094, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2445:336:27", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 11073, - "id": 11095, - "nodeType": "Return", - "src": "2426:355:27" - } - ] - }, - "id": 11097, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "encodePart2", - "nameLocation": "2329:11:27", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 11070, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 11069, - "mutability": "mutable", - "name": "quote", - "nameLocation": "2368:5:27", - "nodeType": "VariableDeclaration", - "scope": 11097, - "src": "2350:23:27", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote" - }, - "typeName": { - "id": 11068, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 11067, - "name": "PeginQuote", - "nameLocations": [ - "2350:10:27" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 10962, - "src": "2350:10:27" - }, - "referencedDeclaration": 10962, - "src": "2350:10:27", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_storage_ptr", - "typeString": "struct Quotes.PeginQuote" - } - }, - "visibility": "internal" - } - ], - "src": "2340:39:27" - }, - "returnParameters": { - "id": 11073, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 11072, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 11097, - "src": "2402:12:27", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 11071, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "2402:5:27", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "2401:14:27" - }, - "scope": 11190, - "src": "2320:468:27", - "stateMutability": "pure", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 11127, - "nodeType": "Block", - "src": "2897:379:27", - "statements": [ - { - "expression": { - "arguments": [ - { - "expression": { - "id": 11107, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11100, - "src": "2954:5:27", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_memory_ptr", - "typeString": "struct Quotes.PegOutQuote memory" - } - }, - "id": 11108, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "2960:10:27", - "memberName": "lbcAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 10964, - "src": "2954:16:27", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 11109, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11100, - "src": "2988:5:27", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_memory_ptr", - "typeString": "struct Quotes.PegOutQuote memory" - } - }, - "id": 11110, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "2994:12:27", - "memberName": "lpRskAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 10966, - "src": "2988:18:27", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 11111, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11100, - "src": "3024:5:27", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_memory_ptr", - "typeString": "struct Quotes.PegOutQuote memory" - } - }, - "id": 11112, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "3030:16:27", - "memberName": "btcRefundAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 10968, - "src": "3024:22:27", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "expression": { - "id": 11113, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11100, - "src": "3064:5:27", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_memory_ptr", - "typeString": "struct Quotes.PegOutQuote memory" - } - }, - "id": 11114, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "3070:16:27", - "memberName": "rskRefundAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 10970, - "src": "3064:22:27", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 11115, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11100, - "src": "3104:5:27", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_memory_ptr", - "typeString": "struct Quotes.PegOutQuote memory" - } - }, - "id": 11116, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "3110:12:27", - "memberName": "lpBtcAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 10972, - "src": "3104:18:27", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "expression": { - "id": 11117, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11100, - "src": "3140:5:27", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_memory_ptr", - "typeString": "struct Quotes.PegOutQuote memory" - } - }, - "id": 11118, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "3146:7:27", - "memberName": "callFee", - "nodeType": "MemberAccess", - "referencedDeclaration": 10974, - "src": "3140:13:27", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "expression": { - "id": 11119, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11100, - "src": "3171:5:27", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_memory_ptr", - "typeString": "struct Quotes.PegOutQuote memory" - } - }, - "id": 11120, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "3177:10:27", - "memberName": "penaltyFee", - "nodeType": "MemberAccess", - "referencedDeclaration": 10976, - "src": "3171:16:27", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "expression": { - "id": 11121, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11100, - "src": "3205:5:27", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_memory_ptr", - "typeString": "struct Quotes.PegOutQuote memory" - } - }, - "id": 11122, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "3211:5:27", - "memberName": "nonce", - "nodeType": "MemberAccess", - "referencedDeclaration": 10978, - "src": "3205:11:27", - "typeDescriptions": { - "typeIdentifier": "t_int64", - "typeString": "int64" - } - }, - { - "expression": { - "id": 11123, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11100, - "src": "3234:5:27", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_memory_ptr", - "typeString": "struct Quotes.PegOutQuote memory" - } - }, - "id": 11124, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "3240:15:27", - "memberName": "deposityAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 10980, - "src": "3234:21:27", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_int64", - "typeString": "int64" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "id": 11105, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "2926:3:27", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 11106, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "2930:6:27", - "memberName": "encode", - "nodeType": "MemberAccess", - "src": "2926:10:27", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 11125, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2926:343:27", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 11104, - "id": 11126, - "nodeType": "Return", - "src": "2907:362:27" - } - ] - }, - "id": 11128, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "encodePegOutPart1", - "nameLocation": "2803:17:27", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 11101, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 11100, - "mutability": "mutable", - "name": "quote", - "nameLocation": "2849:5:27", - "nodeType": "VariableDeclaration", - "scope": 11128, - "src": "2830:24:27", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_memory_ptr", - "typeString": "struct Quotes.PegOutQuote" - }, - "typeName": { - "id": 11099, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 11098, - "name": "PegOutQuote", - "nameLocations": [ - "2830:11:27" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 10997, - "src": "2830:11:27" - }, - "referencedDeclaration": 10997, - "src": "2830:11:27", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_storage_ptr", - "typeString": "struct Quotes.PegOutQuote" - } - }, - "visibility": "internal" - } - ], - "src": "2820:40:27" - }, - "returnParameters": { - "id": 11104, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 11103, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 11128, - "src": "2883:12:27", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 11102, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "2883:5:27", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "2882:14:27" - }, - "scope": 11190, - "src": "2794:482:27", - "stateMutability": "pure", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 11156, - "nodeType": "Block", - "src": "3385:365:27", - "statements": [ - { - "expression": { - "arguments": [ - { - "expression": { - "id": 11138, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11131, - "src": "3442:5:27", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_memory_ptr", - "typeString": "struct Quotes.PegOutQuote memory" - } - }, - "id": 11139, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "3448:5:27", - "memberName": "value", - "nodeType": "MemberAccess", - "referencedDeclaration": 10982, - "src": "3442:11:27", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "expression": { - "id": 11140, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11131, - "src": "3471:5:27", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_memory_ptr", - "typeString": "struct Quotes.PegOutQuote memory" - } - }, - "id": 11141, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "3477:18:27", - "memberName": "agreementTimestamp", - "nodeType": "MemberAccess", - "referencedDeclaration": 10984, - "src": "3471:24:27", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - { - "expression": { - "id": 11142, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11131, - "src": "3513:5:27", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_memory_ptr", - "typeString": "struct Quotes.PegOutQuote memory" - } - }, - "id": 11143, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "3519:16:27", - "memberName": "depositDateLimit", - "nodeType": "MemberAccess", - "referencedDeclaration": 10986, - "src": "3513:22:27", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - { - "expression": { - "id": 11144, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11131, - "src": "3553:5:27", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_memory_ptr", - "typeString": "struct Quotes.PegOutQuote memory" - } - }, - "id": 11145, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "3559:20:27", - "memberName": "depositConfirmations", - "nodeType": "MemberAccess", - "referencedDeclaration": 10988, - "src": "3553:26:27", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - { - "expression": { - "id": 11146, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11131, - "src": "3597:5:27", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_memory_ptr", - "typeString": "struct Quotes.PegOutQuote memory" - } - }, - "id": 11147, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "3603:21:27", - "memberName": "transferConfirmations", - "nodeType": "MemberAccess", - "referencedDeclaration": 10990, - "src": "3597:27:27", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - { - "expression": { - "id": 11148, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11131, - "src": "3642:5:27", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_memory_ptr", - "typeString": "struct Quotes.PegOutQuote memory" - } - }, - "id": 11149, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "3648:12:27", - "memberName": "transferTime", - "nodeType": "MemberAccess", - "referencedDeclaration": 10992, - "src": "3642:18:27", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - { - "expression": { - "id": 11150, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11131, - "src": "3678:5:27", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_memory_ptr", - "typeString": "struct Quotes.PegOutQuote memory" - } - }, - "id": 11151, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "3684:10:27", - "memberName": "expireDate", - "nodeType": "MemberAccess", - "referencedDeclaration": 10994, - "src": "3678:16:27", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - { - "expression": { - "id": 11152, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11131, - "src": "3712:5:27", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_memory_ptr", - "typeString": "struct Quotes.PegOutQuote memory" - } - }, - "id": 11153, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "3718:11:27", - "memberName": "expireBlock", - "nodeType": "MemberAccess", - "referencedDeclaration": 10996, - "src": "3712:17:27", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - }, - { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - }, - { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - ], - "expression": { - "id": 11136, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "3414:3:27", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 11137, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "3418:6:27", - "memberName": "encode", - "nodeType": "MemberAccess", - "src": "3414:10:27", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 11154, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "3414:329:27", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 11135, - "id": 11155, - "nodeType": "Return", - "src": "3395:348:27" - } - ] - }, - "id": 11157, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "encodePegOutPart2", - "nameLocation": "3291:17:27", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 11132, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 11131, - "mutability": "mutable", - "name": "quote", - "nameLocation": "3337:5:27", - "nodeType": "VariableDeclaration", - "scope": 11157, - "src": "3318:24:27", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_memory_ptr", - "typeString": "struct Quotes.PegOutQuote" - }, - "typeName": { - "id": 11130, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 11129, - "name": "PegOutQuote", - "nameLocations": [ - "3318:11:27" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 10997, - "src": "3318:11:27" - }, - "referencedDeclaration": 10997, - "src": "3318:11:27", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$10997_storage_ptr", - "typeString": "struct Quotes.PegOutQuote" - } - }, - "visibility": "internal" - } - ], - "src": "3308:40:27" - }, - "returnParameters": { - "id": 11135, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 11134, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 11157, - "src": "3371:12:27", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 11133, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "3371:5:27", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "3370:14:27" - }, - "scope": 11190, - "src": "3282:468:27", - "stateMutability": "pure", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 11188, - "nodeType": "Block", - "src": "3868:354:27", - "statements": [ - { - "assignments": [ - 11166 - ], - "declarations": [ - { - "constant": false, - "id": 11166, - "mutability": "mutable", - "name": "agreedAmount", - "nameLocation": "3883:12:27", - "nodeType": "VariableDeclaration", - "scope": 11188, - "src": "3878:17:27", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 11165, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "3878:4:27", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 11172, - "initialValue": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 11171, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 11167, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11160, - "src": "3898:5:27", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 11168, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "3904:5:27", - "memberName": "value", - "nodeType": "MemberAccess", - "referencedDeclaration": 10951, - "src": "3898:11:27", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "expression": { - "id": 11169, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11160, - "src": "3912:5:27", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote memory" - } - }, - "id": 11170, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "3918:7:27", - "memberName": "callFee", - "nodeType": "MemberAccess", - "referencedDeclaration": 10939, - "src": "3912:13:27", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "3898:27:27", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "3878:47:27" - }, - { - "assignments": [ - 11174 - ], - "declarations": [ - { - "constant": false, - "id": 11174, - "mutability": "mutable", - "name": "delta", - "nameLocation": "3940:5:27", - "nodeType": "VariableDeclaration", - "scope": 11188, - "src": "3935:10:27", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 11173, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "3935:4:27", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 11178, - "initialValue": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 11177, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 11175, - "name": "agreedAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11166, - "src": "3948:12:27", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "/", - "rightExpression": { - "hexValue": "3130303030", - "id": 11176, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3963:5:27", - "typeDescriptions": { - "typeIdentifier": "t_rational_10000_by_1", - "typeString": "int_const 10000" - }, - "value": "10000" - }, - "src": "3948:20:27", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "3935:33:27" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 11184, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 11180, - "name": "transferredAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11162, - "src": "4142:17:27", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 11183, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 11181, - "name": "agreedAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11166, - "src": "4163:12:27", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "id": 11182, - "name": "delta", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11174, - "src": "4178:5:27", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "4163:20:27", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "4142:41:27", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303537", - "id": 11185, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4197:8:27", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_edc8872f52a3fbd4c102c7239a16e50d62a454725123fb252e7131b6a2223277", - "typeString": "literal_string \"LBC057\"" - }, - "value": "LBC057" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_edc8872f52a3fbd4c102c7239a16e50d62a454725123fb252e7131b6a2223277", - "typeString": "literal_string \"LBC057\"" - } - ], - "id": 11179, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "4121:7:27", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 11186, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4121:94:27", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 11187, - "nodeType": "ExpressionStatement", - "src": "4121:94:27" - } - ] - }, - "functionSelector": "039e8de4", - "id": 11189, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "checkAgreedAmount", - "nameLocation": "3765:17:27", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 11163, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 11160, - "mutability": "mutable", - "name": "quote", - "nameLocation": "3810:5:27", - "nodeType": "VariableDeclaration", - "scope": 11189, - "src": "3792:23:27", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_memory_ptr", - "typeString": "struct Quotes.PeginQuote" - }, - "typeName": { - "id": 11159, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 11158, - "name": "PeginQuote", - "nameLocations": [ - "3792:10:27" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 10962, - "src": "3792:10:27" - }, - "referencedDeclaration": 10962, - "src": "3792:10:27", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$10962_storage_ptr", - "typeString": "struct Quotes.PeginQuote" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 11162, - "mutability": "mutable", - "name": "transferredAmount", - "nameLocation": "3830:17:27", - "nodeType": "VariableDeclaration", - "scope": 11189, - "src": "3825:22:27", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 11161, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "3825:4:27", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "3782:71:27" - }, - "returnParameters": { - "id": 11164, - "nodeType": "ParameterList", - "parameters": [], - "src": "3868:0:27" - }, - "scope": 11190, - "src": "3756:466:27", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - } - ], - "scope": 11191, - "src": "58:4167:27", - "usedErrors": [] - } - ], - "src": "32:4193:27" - }, - "compiler": { - "name": "solc", - "version": "0.8.18+commit.87f61d96.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "3.4.13", - "updatedAt": "2024-12-10T18:53:54.132Z", - "networkType": "ethereum", - "devdoc": { - "kind": "dev", - "methods": {}, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } -} \ No newline at end of file diff --git a/build/contracts/QuotesV2.json b/build/contracts/QuotesV2.json deleted file mode 100644 index 7f7318b..0000000 --- a/build/contracts/QuotesV2.json +++ /dev/null @@ -1,16135 +0,0 @@ -{ - "contractName": "QuotesV2", - "abi": [ - { - "inputs": [ - { - "components": [ - { - "internalType": "bytes20", - "name": "fedBtcAddress", - "type": "bytes20" - }, - { - "internalType": "address", - "name": "lbcAddress", - "type": "address" - }, - { - "internalType": "address", - "name": "liquidityProviderRskAddress", - "type": "address" - }, - { - "internalType": "bytes", - "name": "btcRefundAddress", - "type": "bytes" - }, - { - "internalType": "address payable", - "name": "rskRefundAddress", - "type": "address" - }, - { - "internalType": "bytes", - "name": "liquidityProviderBtcAddress", - "type": "bytes" - }, - { - "internalType": "uint256", - "name": "callFee", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "penaltyFee", - "type": "uint256" - }, - { - "internalType": "address", - "name": "contractAddress", - "type": "address" - }, - { - "internalType": "bytes", - "name": "data", - "type": "bytes" - }, - { - "internalType": "uint32", - "name": "gasLimit", - "type": "uint32" - }, - { - "internalType": "int64", - "name": "nonce", - "type": "int64" - }, - { - "internalType": "uint256", - "name": "value", - "type": "uint256" - }, - { - "internalType": "uint32", - "name": "agreementTimestamp", - "type": "uint32" - }, - { - "internalType": "uint32", - "name": "timeForDeposit", - "type": "uint32" - }, - { - "internalType": "uint32", - "name": "callTime", - "type": "uint32" - }, - { - "internalType": "uint16", - "name": "depositConfirmations", - "type": "uint16" - }, - { - "internalType": "bool", - "name": "callOnRegister", - "type": "bool" - }, - { - "internalType": "uint256", - "name": "productFeeAmount", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "gasFee", - "type": "uint256" - } - ], - "internalType": "struct QuotesV2.PeginQuote", - "name": "quote", - "type": "tuple" - } - ], - "name": "encodeQuote", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "stateMutability": "pure", - "type": "function", - "constant": true - }, - { - "inputs": [ - { - "components": [ - { - "internalType": "address", - "name": "lbcAddress", - "type": "address" - }, - { - "internalType": "address", - "name": "lpRskAddress", - "type": "address" - }, - { - "internalType": "bytes", - "name": "btcRefundAddress", - "type": "bytes" - }, - { - "internalType": "address", - "name": "rskRefundAddress", - "type": "address" - }, - { - "internalType": "bytes", - "name": "lpBtcAddress", - "type": "bytes" - }, - { - "internalType": "uint256", - "name": "callFee", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "penaltyFee", - "type": "uint256" - }, - { - "internalType": "int64", - "name": "nonce", - "type": "int64" - }, - { - "internalType": "bytes", - "name": "deposityAddress", - "type": "bytes" - }, - { - "internalType": "uint256", - "name": "value", - "type": "uint256" - }, - { - "internalType": "uint32", - "name": "agreementTimestamp", - "type": "uint32" - }, - { - "internalType": "uint32", - "name": "depositDateLimit", - "type": "uint32" - }, - { - "internalType": "uint16", - "name": "depositConfirmations", - "type": "uint16" - }, - { - "internalType": "uint16", - "name": "transferConfirmations", - "type": "uint16" - }, - { - "internalType": "uint32", - "name": "transferTime", - "type": "uint32" - }, - { - "internalType": "uint32", - "name": "expireDate", - "type": "uint32" - }, - { - "internalType": "uint32", - "name": "expireBlock", - "type": "uint32" - }, - { - "internalType": "uint256", - "name": "productFeeAmount", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "gasFee", - "type": "uint256" - } - ], - "internalType": "struct QuotesV2.PegOutQuote", - "name": "quote", - "type": "tuple" - } - ], - "name": "encodePegOutQuote", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "stateMutability": "pure", - "type": "function", - "constant": true - }, - { - "inputs": [ - { - "components": [ - { - "internalType": "bytes20", - "name": "fedBtcAddress", - "type": "bytes20" - }, - { - "internalType": "address", - "name": "lbcAddress", - "type": "address" - }, - { - "internalType": "address", - "name": "liquidityProviderRskAddress", - "type": "address" - }, - { - "internalType": "bytes", - "name": "btcRefundAddress", - "type": "bytes" - }, - { - "internalType": "address payable", - "name": "rskRefundAddress", - "type": "address" - }, - { - "internalType": "bytes", - "name": "liquidityProviderBtcAddress", - "type": "bytes" - }, - { - "internalType": "uint256", - "name": "callFee", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "penaltyFee", - "type": "uint256" - }, - { - "internalType": "address", - "name": "contractAddress", - "type": "address" - }, - { - "internalType": "bytes", - "name": "data", - "type": "bytes" - }, - { - "internalType": "uint32", - "name": "gasLimit", - "type": "uint32" - }, - { - "internalType": "int64", - "name": "nonce", - "type": "int64" - }, - { - "internalType": "uint256", - "name": "value", - "type": "uint256" - }, - { - "internalType": "uint32", - "name": "agreementTimestamp", - "type": "uint32" - }, - { - "internalType": "uint32", - "name": "timeForDeposit", - "type": "uint32" - }, - { - "internalType": "uint32", - "name": "callTime", - "type": "uint32" - }, - { - "internalType": "uint16", - "name": "depositConfirmations", - "type": "uint16" - }, - { - "internalType": "bool", - "name": "callOnRegister", - "type": "bool" - }, - { - "internalType": "uint256", - "name": "productFeeAmount", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "gasFee", - "type": "uint256" - } - ], - "internalType": "struct QuotesV2.PeginQuote", - "name": "quote", - "type": "tuple" - }, - { - "internalType": "uint256", - "name": "transferredAmount", - "type": "uint256" - } - ], - "name": "checkAgreedAmount", - "outputs": [], - "stateMutability": "pure", - "type": "function", - "constant": true - } - ], - "metadata": "{\"compiler\":{\"version\":\"0.8.18+commit.87f61d96\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"components\":[{\"internalType\":\"bytes20\",\"name\":\"fedBtcAddress\",\"type\":\"bytes20\"},{\"internalType\":\"address\",\"name\":\"lbcAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"liquidityProviderRskAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"btcRefundAddress\",\"type\":\"bytes\"},{\"internalType\":\"address payable\",\"name\":\"rskRefundAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"liquidityProviderBtcAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"callFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"penaltyFee\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"gasLimit\",\"type\":\"uint32\"},{\"internalType\":\"int64\",\"name\":\"nonce\",\"type\":\"int64\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"agreementTimestamp\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"timeForDeposit\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"callTime\",\"type\":\"uint32\"},{\"internalType\":\"uint16\",\"name\":\"depositConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"bool\",\"name\":\"callOnRegister\",\"type\":\"bool\"},{\"internalType\":\"uint256\",\"name\":\"productFeeAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"gasFee\",\"type\":\"uint256\"}],\"internalType\":\"struct QuotesV2.PeginQuote\",\"name\":\"quote\",\"type\":\"tuple\"},{\"internalType\":\"uint256\",\"name\":\"transferredAmount\",\"type\":\"uint256\"}],\"name\":\"checkAgreedAmount\",\"outputs\":[],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"lbcAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"lpRskAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"btcRefundAddress\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"rskRefundAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"lpBtcAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"callFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"penaltyFee\",\"type\":\"uint256\"},{\"internalType\":\"int64\",\"name\":\"nonce\",\"type\":\"int64\"},{\"internalType\":\"bytes\",\"name\":\"deposityAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"agreementTimestamp\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"depositDateLimit\",\"type\":\"uint32\"},{\"internalType\":\"uint16\",\"name\":\"depositConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"uint16\",\"name\":\"transferConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"uint32\",\"name\":\"transferTime\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"expireDate\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"expireBlock\",\"type\":\"uint32\"},{\"internalType\":\"uint256\",\"name\":\"productFeeAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"gasFee\",\"type\":\"uint256\"}],\"internalType\":\"struct QuotesV2.PegOutQuote\",\"name\":\"quote\",\"type\":\"tuple\"}],\"name\":\"encodePegOutQuote\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bytes20\",\"name\":\"fedBtcAddress\",\"type\":\"bytes20\"},{\"internalType\":\"address\",\"name\":\"lbcAddress\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"liquidityProviderRskAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"btcRefundAddress\",\"type\":\"bytes\"},{\"internalType\":\"address payable\",\"name\":\"rskRefundAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"liquidityProviderBtcAddress\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"callFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"penaltyFee\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"gasLimit\",\"type\":\"uint32\"},{\"internalType\":\"int64\",\"name\":\"nonce\",\"type\":\"int64\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"uint32\",\"name\":\"agreementTimestamp\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"timeForDeposit\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"callTime\",\"type\":\"uint32\"},{\"internalType\":\"uint16\",\"name\":\"depositConfirmations\",\"type\":\"uint16\"},{\"internalType\":\"bool\",\"name\":\"callOnRegister\",\"type\":\"bool\"},{\"internalType\":\"uint256\",\"name\":\"productFeeAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"gasFee\",\"type\":\"uint256\"}],\"internalType\":\"struct QuotesV2.PeginQuote\",\"name\":\"quote\",\"type\":\"tuple\"}],\"name\":\"encodeQuote\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"project:/contracts/QuotesV2.sol\":\"QuotesV2\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":1},\"remappings\":[]},\"sources\":{\"project:/contracts/QuotesV2.sol\":{\"keccak256\":\"0xda3afec2b2b9aae5c1747ffcd7646fd0680965743702961b08236e0cce699d35\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0e751b7128c53b32303e573fb14796eb0e8912d50114c8824ad307ac632725ee\",\"dweb:/ipfs/QmTyF3Dmw1d7crXtSALUsaQcHtp5cCzUo1xEtyG3uBtXAY\"]}},\"version\":1}", - "bytecode": "0x610b0661003a600b82828239805160001a60731461002d57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe730000000000000000000000000000000000000000301460806040526004361061004a5760003560e01c8062773b791461004f5780631280c73814610078578063fa6ea3e71461008b575b600080fd5b61006261005d366004610620565b6100a0565b60405161006f91906106a2565b60405180910390f35b6100626100863660046106bc565b6100db565b61009e61009936600461087e565b6100ef565b005b60606100ab82610184565b6100b4836101cc565b6040516020016100c59291906108c2565b6040516020818303038152906040529050919050565b60606100e68261022a565b6100b483610272565b60008261026001518361024001518460c001518561018001516101129190610906565b61011c9190610906565b6101269190610906565b905060006101366127108361091f565b90506101428183610941565b83101561017e5760405162461bcd60e51b81526020600482015260066024820152654c424330353760d01b604482015260640160405180910390fd5b50505050565b6060816000015182602001518360400151846060015185608001518660a001518760c001518860e001518961010001516040516020016100c599989796959493929190610954565b6060816101200151826101400151836101600151846101800151856101a00151866101c00151876101e001518861020001518961022001518a61024001518b61026001516040516020016100c59b9a999897969594939291906109d3565b6060816000015182602001518360400151846060015185608001518660a001518760c001518860e001518961010001516040516020016100c599989796959493929190610a4c565b6101208082015161014080840151610160808601516101808701516101a08801516101c08901516101e08a01516102008b01516102208c01516102408d015160408051602081019d909d5263ffffffff9a8b16908d015296891660608c81019190915261ffff96871660808d01529590941660a08b015291871660c08a0152861660e0890152949094166101008701529585019290925291830152016100c5565b634e487b7160e01b600052604160045260246000fd5b60405161028081016001600160401b038111828210171561034c5761034c610313565b60405290565b60405161026081016001600160401b038111828210171561034c5761034c610313565b80356001600160601b03198116811461038d57600080fd5b919050565b80356001600160a01b038116811461038d57600080fd5b600082601f8301126103ba57600080fd5b81356001600160401b03808211156103d4576103d4610313565b604051601f8301601f19908116603f011681019082821181831017156103fc576103fc610313565b8160405283815286602085880101111561041557600080fd5b836020870160208301376000602085830101528094505050505092915050565b803563ffffffff8116811461038d57600080fd5b8035600781900b811461038d57600080fd5b803561ffff8116811461038d57600080fd5b8035801515811461038d57600080fd5b6000610280828403121561049057600080fd5b610498610329565b90506104a382610375565b81526104b160208301610392565b60208201526104c260408301610392565b604082015260608201356001600160401b03808211156104e157600080fd5b6104ed858386016103a9565b60608401526104fe60808501610392565b608084015260a084013591508082111561051757600080fd5b610523858386016103a9565b60a084015260c084013560c084015260e084013560e0840152610100915061054c828501610392565b828401526101209150818401358181111561056657600080fd5b610572868287016103a9565b83850152505050610140610587818401610435565b90820152610160610599838201610449565b9082015261018082810135908201526101a06105b6818401610435565b908201526101c06105c8838201610435565b908201526101e06105da838201610435565b908201526102006105ec83820161045b565b908201526102206105fe83820161046d565b9082015261024082810135908201526102609182013591810191909152919050565b60006020828403121561063257600080fd5b81356001600160401b0381111561064857600080fd5b6106548482850161047d565b949350505050565b6000815180845260005b8181101561068257602081850181015186830182015201610666565b506000602082860101526020601f19601f83011685010191505092915050565b6020815260006106b5602083018461065c565b9392505050565b6000602082840312156106ce57600080fd5b81356001600160401b03808211156106e557600080fd5b9083019061026082860312156106fa57600080fd5b610702610352565b61070b83610392565b815261071960208401610392565b602082015260408301358281111561073057600080fd5b61073c878286016103a9565b60408301525061074e60608401610392565b606082015260808301358281111561076557600080fd5b610771878286016103a9565b60808301525060a083013560a082015260c083013560c082015261079760e08401610449565b60e082015261010080840135838111156107b057600080fd5b6107bc888287016103a9565b8284015250506101209150818301358282015261014091506107df828401610435565b8282015261016091506107f3828401610435565b82820152610180915061080782840161045b565b828201526101a0915061081b82840161045b565b828201526101c0915061082f828401610435565b828201526101e09150610843828401610435565b828201526102009150610857828401610435565b91810191909152610220828101359082015261024091820135918101919091529392505050565b6000806040838503121561089157600080fd5b82356001600160401b038111156108a757600080fd5b6108b38582860161047d565b95602094909401359450505050565b6040815260006108d5604083018561065c565b82810360208401526108e7818561065c565b95945050505050565b634e487b7160e01b600052601160045260246000fd5b80820180821115610919576109196108f0565b92915050565b60008261093c57634e487b7160e01b600052601260045260246000fd5b500490565b81810381811115610919576109196108f0565b6001600160601b03198a1681526001600160a01b0389811660208301528881166040830152610120606083018190526000916109928483018b61065c565b9150808916608085015283820360a08501526109ae828961065c565b60c085019790975260e084019590955250509116610100909101529695505050505050565b60006101608083526109e78184018f61065c565b63ffffffff9d8e16602085015260079c909c0b604084015250506060810198909852958916608088015293881660a08701529190961660c085015261ffff90951660e08401529315156101008301526101208201939093526101400191909152919050565b6001600160a01b038a81168252898116602083015261012060408301819052600091610a7a8483018c61065c565b908a16606085015283810360808501529050610a96818961065c565b90508660a08401528560c08401528460070b60e0840152828103610100840152610ac0818561065c565b9c9b50505050505050505050505056fea2646970667358221220e38a59a1f3773a883d7a22896f663f27f410c865d9addabfd56a0a26ca7916e064736f6c63430008120033", - "deployedBytecode": "0x730000000000000000000000000000000000000000301460806040526004361061004a5760003560e01c8062773b791461004f5780631280c73814610078578063fa6ea3e71461008b575b600080fd5b61006261005d366004610620565b6100a0565b60405161006f91906106a2565b60405180910390f35b6100626100863660046106bc565b6100db565b61009e61009936600461087e565b6100ef565b005b60606100ab82610184565b6100b4836101cc565b6040516020016100c59291906108c2565b6040516020818303038152906040529050919050565b60606100e68261022a565b6100b483610272565b60008261026001518361024001518460c001518561018001516101129190610906565b61011c9190610906565b6101269190610906565b905060006101366127108361091f565b90506101428183610941565b83101561017e5760405162461bcd60e51b81526020600482015260066024820152654c424330353760d01b604482015260640160405180910390fd5b50505050565b6060816000015182602001518360400151846060015185608001518660a001518760c001518860e001518961010001516040516020016100c599989796959493929190610954565b6060816101200151826101400151836101600151846101800151856101a00151866101c00151876101e001518861020001518961022001518a61024001518b61026001516040516020016100c59b9a999897969594939291906109d3565b6060816000015182602001518360400151846060015185608001518660a001518760c001518860e001518961010001516040516020016100c599989796959493929190610a4c565b6101208082015161014080840151610160808601516101808701516101a08801516101c08901516101e08a01516102008b01516102208c01516102408d015160408051602081019d909d5263ffffffff9a8b16908d015296891660608c81019190915261ffff96871660808d01529590941660a08b015291871660c08a0152861660e0890152949094166101008701529585019290925291830152016100c5565b634e487b7160e01b600052604160045260246000fd5b60405161028081016001600160401b038111828210171561034c5761034c610313565b60405290565b60405161026081016001600160401b038111828210171561034c5761034c610313565b80356001600160601b03198116811461038d57600080fd5b919050565b80356001600160a01b038116811461038d57600080fd5b600082601f8301126103ba57600080fd5b81356001600160401b03808211156103d4576103d4610313565b604051601f8301601f19908116603f011681019082821181831017156103fc576103fc610313565b8160405283815286602085880101111561041557600080fd5b836020870160208301376000602085830101528094505050505092915050565b803563ffffffff8116811461038d57600080fd5b8035600781900b811461038d57600080fd5b803561ffff8116811461038d57600080fd5b8035801515811461038d57600080fd5b6000610280828403121561049057600080fd5b610498610329565b90506104a382610375565b81526104b160208301610392565b60208201526104c260408301610392565b604082015260608201356001600160401b03808211156104e157600080fd5b6104ed858386016103a9565b60608401526104fe60808501610392565b608084015260a084013591508082111561051757600080fd5b610523858386016103a9565b60a084015260c084013560c084015260e084013560e0840152610100915061054c828501610392565b828401526101209150818401358181111561056657600080fd5b610572868287016103a9565b83850152505050610140610587818401610435565b90820152610160610599838201610449565b9082015261018082810135908201526101a06105b6818401610435565b908201526101c06105c8838201610435565b908201526101e06105da838201610435565b908201526102006105ec83820161045b565b908201526102206105fe83820161046d565b9082015261024082810135908201526102609182013591810191909152919050565b60006020828403121561063257600080fd5b81356001600160401b0381111561064857600080fd5b6106548482850161047d565b949350505050565b6000815180845260005b8181101561068257602081850181015186830182015201610666565b506000602082860101526020601f19601f83011685010191505092915050565b6020815260006106b5602083018461065c565b9392505050565b6000602082840312156106ce57600080fd5b81356001600160401b03808211156106e557600080fd5b9083019061026082860312156106fa57600080fd5b610702610352565b61070b83610392565b815261071960208401610392565b602082015260408301358281111561073057600080fd5b61073c878286016103a9565b60408301525061074e60608401610392565b606082015260808301358281111561076557600080fd5b610771878286016103a9565b60808301525060a083013560a082015260c083013560c082015261079760e08401610449565b60e082015261010080840135838111156107b057600080fd5b6107bc888287016103a9565b8284015250506101209150818301358282015261014091506107df828401610435565b8282015261016091506107f3828401610435565b82820152610180915061080782840161045b565b828201526101a0915061081b82840161045b565b828201526101c0915061082f828401610435565b828201526101e09150610843828401610435565b828201526102009150610857828401610435565b91810191909152610220828101359082015261024091820135918101919091529392505050565b6000806040838503121561089157600080fd5b82356001600160401b038111156108a757600080fd5b6108b38582860161047d565b95602094909401359450505050565b6040815260006108d5604083018561065c565b82810360208401526108e7818561065c565b95945050505050565b634e487b7160e01b600052601160045260246000fd5b80820180821115610919576109196108f0565b92915050565b60008261093c57634e487b7160e01b600052601260045260246000fd5b500490565b81810381811115610919576109196108f0565b6001600160601b03198a1681526001600160a01b0389811660208301528881166040830152610120606083018190526000916109928483018b61065c565b9150808916608085015283820360a08501526109ae828961065c565b60c085019790975260e084019590955250509116610100909101529695505050505050565b60006101608083526109e78184018f61065c565b63ffffffff9d8e16602085015260079c909c0b604084015250506060810198909852958916608088015293881660a08701529190961660c085015261ffff90951660e08401529315156101008301526101208201939093526101400191909152919050565b6001600160a01b038a81168252898116602083015261012060408301819052600091610a7a8483018c61065c565b908a16606085015283810360808501529050610a96818961065c565b90508660a08401528560c08401528460070b60e0840152828103610100840152610ac0818561065c565b9c9b50505050505050505050505056fea2646970667358221220e38a59a1f3773a883d7a22896f663f27f410c865d9addabfd56a0a26ca7916e064736f6c63430008120033", - "immutableReferences": {}, - "generatedSources": [], - "deployedGeneratedSources": [ - { - "ast": { - "nodeType": "YulBlock", - "src": "0:13651:32", - "statements": [ - { - "nodeType": "YulBlock", - "src": "6:3:32", - "statements": [] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "46:95:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "63:1:32", - "type": "", - "value": "0" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "70:3:32", - "type": "", - "value": "224" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "75:10:32", - "type": "", - "value": "0x4e487b71" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "66:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "66:20:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "56:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "56:31:32" - }, - "nodeType": "YulExpressionStatement", - "src": "56:31:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "103:1:32", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "106:4:32", - "type": "", - "value": "0x41" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "96:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "96:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "96:15:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "127:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "130:4:32", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "120:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "120:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "120:15:32" - } - ] - }, - "name": "panic_error_0x41", - "nodeType": "YulFunctionDefinition", - "src": "14:127:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "192:209:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "202:19:32", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "218:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "212:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "212:9:32" - }, - "variableNames": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "202:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "230:37:32", - "value": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "252:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "260:6:32", - "type": "", - "value": "0x0280" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "248:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "248:19:32" - }, - "variables": [ - { - "name": "newFreePtr", - "nodeType": "YulTypedName", - "src": "234:10:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "342:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "344:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "344:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "344:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "285:10:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "305:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "309:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "301:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "301:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "313:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "297:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "297:18:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "282:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "282:34:32" - }, - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "321:10:32" - }, - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "333:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "318:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "318:22:32" - } - ], - "functionName": { - "name": "or", - "nodeType": "YulIdentifier", - "src": "279:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "279:62:32" - }, - "nodeType": "YulIf", - "src": "276:88:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "380:2:32", - "type": "", - "value": "64" - }, - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "384:10:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "373:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "373:22:32" - }, - "nodeType": "YulExpressionStatement", - "src": "373:22:32" - } - ] - }, - "name": "allocate_memory_1569", - "nodeType": "YulFunctionDefinition", - "returnVariables": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "181:6:32", - "type": "" - } - ], - "src": "146:255:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "447:209:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "457:19:32", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "473:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "467:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "467:9:32" - }, - "variableNames": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "457:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "485:37:32", - "value": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "507:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "515:6:32", - "type": "", - "value": "0x0260" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "503:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "503:19:32" - }, - "variables": [ - { - "name": "newFreePtr", - "nodeType": "YulTypedName", - "src": "489:10:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "597:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "599:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "599:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "599:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "540:10:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "560:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "564:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "556:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "556:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "568:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "552:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "552:18:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "537:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "537:34:32" - }, - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "576:10:32" - }, - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "588:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "573:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "573:22:32" - } - ], - "functionName": { - "name": "or", - "nodeType": "YulIdentifier", - "src": "534:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "534:62:32" - }, - "nodeType": "YulIf", - "src": "531:88:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "635:2:32", - "type": "", - "value": "64" - }, - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "639:10:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "628:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "628:22:32" - }, - "nodeType": "YulExpressionStatement", - "src": "628:22:32" - } - ] - }, - "name": "allocate_memory", - "nodeType": "YulFunctionDefinition", - "returnVariables": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "436:6:32", - "type": "" - } - ], - "src": "406:250:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "710:128:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "720:29:32", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "742:6:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "729:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "729:20:32" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "720:5:32" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "816:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "825:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "828:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "818:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "818:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "818:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "771:5:32" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "782:5:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "801:2:32", - "type": "", - "value": "96" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "805:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "797:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "797:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "809:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "793:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "793:18:32" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "789:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "789:23:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "778:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "778:35:32" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "768:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "768:46:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "761:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "761:54:32" - }, - "nodeType": "YulIf", - "src": "758:74:32" - } - ] - }, - "name": "abi_decode_bytes20", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "689:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "700:5:32", - "type": "" - } - ], - "src": "661:177:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "892:124:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "902:29:32", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "924:6:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "911:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "911:20:32" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "902:5:32" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "994:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1003:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1006:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "996:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "996:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "996:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "953:5:32" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "964:5:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "979:3:32", - "type": "", - "value": "160" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "984:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "975:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "975:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "988:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "971:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "971:19:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "960:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "960:31:32" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "950:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "950:42:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "943:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "943:50:32" - }, - "nodeType": "YulIf", - "src": "940:70:32" - } - ] - }, - "name": "abi_decode_address", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "871:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "882:5:32", - "type": "" - } - ], - "src": "843:173:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1073:666:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "1122:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1131:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1134:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1124:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1124:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1124:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1101:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1109:4:32", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1097:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1097:17:32" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "1116:3:32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "1093:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1093:27:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "1086:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1086:35:32" - }, - "nodeType": "YulIf", - "src": "1083:55:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1147:30:32", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1170:6:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "1157:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "1157:20:32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "1151:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1186:28:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1204:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1208:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "1200:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1200:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1212:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "1196:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1196:18:32" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "1190:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1237:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "1239:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "1239:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1239:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1229:2:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "1233:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1226:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "1226:10:32" - }, - "nodeType": "YulIf", - "src": "1223:36:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1268:17:32", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1282:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "1278:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1278:7:32" - }, - "variables": [ - { - "name": "_3", - "nodeType": "YulTypedName", - "src": "1272:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1294:23:32", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1314:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "1308:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "1308:9:32" - }, - "variables": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "1298:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1326:71:32", - "value": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1348:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1372:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1376:4:32", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1368:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1368:13:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "1383:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "1364:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1364:22:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1388:2:32", - "type": "", - "value": "63" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1360:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1360:31:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "1393:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "1356:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1356:40:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1344:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1344:53:32" - }, - "variables": [ - { - "name": "newFreePtr", - "nodeType": "YulTypedName", - "src": "1330:10:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1456:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "1458:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "1458:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1458:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "1415:10:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "1427:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1412:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "1412:18:32" - }, - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "1435:10:32" - }, - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1447:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "1432:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "1432:22:32" - } - ], - "functionName": { - "name": "or", - "nodeType": "YulIdentifier", - "src": "1409:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "1409:46:32" - }, - "nodeType": "YulIf", - "src": "1406:72:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1494:2:32", - "type": "", - "value": "64" - }, - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "1498:10:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1487:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1487:22:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1487:22:32" - }, - { - "expression": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1525:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1533:2:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1518:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1518:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1518:18:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1584:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1593:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1596:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1586:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1586:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1586:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1559:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1567:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1555:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1555:15:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1572:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1551:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1551:26:32" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "1579:3:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1548:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "1548:35:32" - }, - "nodeType": "YulIf", - "src": "1545:55:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1626:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1634:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1622:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1622:17:32" - }, - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1645:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1653:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1641:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1641:17:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1660:2:32" - } - ], - "functionName": { - "name": "calldatacopy", - "nodeType": "YulIdentifier", - "src": "1609:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "1609:54:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1609:54:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1687:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1695:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1683:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1683:15:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1700:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1679:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1679:26:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1707:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1672:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1672:37:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1672:37:32" - }, - { - "nodeType": "YulAssignment", - "src": "1718:15:32", - "value": { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1727:6:32" - }, - "variableNames": [ - { - "name": "array", - "nodeType": "YulIdentifier", - "src": "1718:5:32" - } - ] - } - ] - }, - "name": "abi_decode_bytes", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "1047:6:32", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "1055:3:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "array", - "nodeType": "YulTypedName", - "src": "1063:5:32", - "type": "" - } - ], - "src": "1021:718:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1792:115:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "1802:29:32", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1824:6:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "1811:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "1811:20:32" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "1802:5:32" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1885:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1894:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1897:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1887:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1887:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1887:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "1853:5:32" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "1864:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1871:10:32", - "type": "", - "value": "0xffffffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "1860:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1860:22:32" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "1850:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "1850:33:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "1843:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1843:41:32" - }, - "nodeType": "YulIf", - "src": "1840:61:32" - } - ] - }, - "name": "abi_decode_uint32", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "1771:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "1782:5:32", - "type": "" - } - ], - "src": "1744:163:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1959:113:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "1969:29:32", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1991:6:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "1978:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "1978:20:32" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "1969:5:32" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2050:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2059:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2062:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "2052:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2052:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2052:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2020:5:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2038:1:32", - "type": "", - "value": "7" - }, - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2041:5:32" - } - ], - "functionName": { - "name": "signextend", - "nodeType": "YulIdentifier", - "src": "2027:10:32" - }, - "nodeType": "YulFunctionCall", - "src": "2027:20:32" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "2017:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "2017:31:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "2010:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2010:39:32" - }, - "nodeType": "YulIf", - "src": "2007:59:32" - } - ] - }, - "name": "abi_decode_int64", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "1938:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "1949:5:32", - "type": "" - } - ], - "src": "1912:160:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2125:111:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "2135:29:32", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "2157:6:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "2144:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "2144:20:32" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2135:5:32" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2214:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2223:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2226:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "2216:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2216:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2216:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2186:5:32" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2197:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2204:6:32", - "type": "", - "value": "0xffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "2193:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2193:18:32" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "2183:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "2183:29:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "2176:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2176:37:32" - }, - "nodeType": "YulIf", - "src": "2173:57:32" - } - ] - }, - "name": "abi_decode_uint16", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "2104:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "2115:5:32", - "type": "" - } - ], - "src": "2077:159:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2287:114:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "2297:29:32", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "2319:6:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "2306:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "2306:20:32" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2297:5:32" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2379:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2388:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2391:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "2381:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2381:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2381:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2348:5:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2369:5:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "2362:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2362:13:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "2355:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2355:21:32" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "2345:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "2345:32:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "2338:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2338:40:32" - }, - "nodeType": "YulIf", - "src": "2335:60:32" - } - ] - }, - "name": "abi_decode_bool", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "2266:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "2277:5:32", - "type": "" - } - ], - "src": "2241:160:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2473:2118:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "2519:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2528:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2531:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "2521:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2521:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2521:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "2494:3:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2499:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "2490:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2490:19:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2511:6:32", - "type": "", - "value": "0x0280" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "2486:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2486:32:32" - }, - "nodeType": "YulIf", - "src": "2483:52:32" - }, - { - "nodeType": "YulAssignment", - "src": "2544:31:32", - "value": { - "arguments": [], - "functionName": { - "name": "allocate_memory_1569", - "nodeType": "YulIdentifier", - "src": "2553:20:32" - }, - "nodeType": "YulFunctionCall", - "src": "2553:22:32" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2544:5:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2591:5:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2617:9:32" - } - ], - "functionName": { - "name": "abi_decode_bytes20", - "nodeType": "YulIdentifier", - "src": "2598:18:32" - }, - "nodeType": "YulFunctionCall", - "src": "2598:29:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2584:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2584:44:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2584:44:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2648:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2655:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2644:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2644:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2683:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2694:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2679:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2679:18:32" - } - ], - "functionName": { - "name": "abi_decode_address", - "nodeType": "YulIdentifier", - "src": "2660:18:32" - }, - "nodeType": "YulFunctionCall", - "src": "2660:38:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2637:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2637:62:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2637:62:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2719:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2726:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2715:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2715:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2754:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2765:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2750:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2750:18:32" - } - ], - "functionName": { - "name": "abi_decode_address", - "nodeType": "YulIdentifier", - "src": "2731:18:32" - }, - "nodeType": "YulFunctionCall", - "src": "2731:38:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2708:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2708:62:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2708:62:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2779:46:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2810:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2821:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2806:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2806:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "2793:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "2793:32:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "2783:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2834:28:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2852:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2856:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "2848:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2848:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2860:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "2844:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2844:18:32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "2838:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2889:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2898:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2901:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "2891:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2891:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2891:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "2877:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "2885:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "2874:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "2874:14:32" - }, - "nodeType": "YulIf", - "src": "2871:34:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2925:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2932:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2921:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2921:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2958:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "2969:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2954:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2954:22:32" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "2978:3:32" - } - ], - "functionName": { - "name": "abi_decode_bytes", - "nodeType": "YulIdentifier", - "src": "2937:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "2937:45:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2914:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2914:69:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2914:69:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3003:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3010:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2999:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2999:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3039:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3050:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3035:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3035:19:32" - } - ], - "functionName": { - "name": "abi_decode_address", - "nodeType": "YulIdentifier", - "src": "3016:18:32" - }, - "nodeType": "YulFunctionCall", - "src": "3016:39:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2992:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2992:64:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2992:64:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3065:49:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3098:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3109:3:32", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3094:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3094:19:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "3081:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "3081:33:32" - }, - "variables": [ - { - "name": "offset_1", - "nodeType": "YulTypedName", - "src": "3069:8:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3143:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3152:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3155:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "3145:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3145:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3145:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "3129:8:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "3139:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "3126:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "3126:16:32" - }, - "nodeType": "YulIf", - "src": "3123:36:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3179:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3186:3:32", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3175:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3175:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3213:9:32" - }, - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "3224:8:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3209:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3209:24:32" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "3235:3:32" - } - ], - "functionName": { - "name": "abi_decode_bytes", - "nodeType": "YulIdentifier", - "src": "3192:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "3192:47:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3168:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3168:72:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3168:72:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3260:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3267:3:32", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3256:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3256:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3290:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3301:3:32", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3286:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3286:19:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "3273:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "3273:33:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3249:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3249:58:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3249:58:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3327:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3334:3:32", - "type": "", - "value": "224" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3323:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3323:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3357:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3368:3:32", - "type": "", - "value": "224" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3353:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3353:19:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "3340:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "3340:33:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3316:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3316:58:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3316:58:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3383:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3393:3:32", - "type": "", - "value": "256" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "3387:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3416:5:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "3423:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3412:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3412:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3451:9:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "3462:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3447:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3447:18:32" - } - ], - "functionName": { - "name": "abi_decode_address", - "nodeType": "YulIdentifier", - "src": "3428:18:32" - }, - "nodeType": "YulFunctionCall", - "src": "3428:38:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3405:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3405:62:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3405:62:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3476:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3486:3:32", - "type": "", - "value": "288" - }, - "variables": [ - { - "name": "_3", - "nodeType": "YulTypedName", - "src": "3480:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3498:48:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3531:9:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "3542:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3527:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3527:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "3514:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "3514:32:32" - }, - "variables": [ - { - "name": "offset_2", - "nodeType": "YulTypedName", - "src": "3502:8:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3575:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3584:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3587:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "3577:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3577:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3577:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_2", - "nodeType": "YulIdentifier", - "src": "3561:8:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "3571:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "3558:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "3558:16:32" - }, - "nodeType": "YulIf", - "src": "3555:36:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3611:5:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "3618:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3607:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3607:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3644:9:32" - }, - { - "name": "offset_2", - "nodeType": "YulIdentifier", - "src": "3655:8:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3640:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3640:24:32" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "3666:3:32" - } - ], - "functionName": { - "name": "abi_decode_bytes", - "nodeType": "YulIdentifier", - "src": "3623:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "3623:47:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3600:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3600:71:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3600:71:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3680:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3690:3:32", - "type": "", - "value": "320" - }, - "variables": [ - { - "name": "_4", - "nodeType": "YulTypedName", - "src": "3684:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3713:5:32" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "3720:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3709:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3709:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3747:9:32" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "3758:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3743:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3743:18:32" - } - ], - "functionName": { - "name": "abi_decode_uint32", - "nodeType": "YulIdentifier", - "src": "3725:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "3725:37:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3702:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3702:61:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3702:61:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3772:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3782:3:32", - "type": "", - "value": "352" - }, - "variables": [ - { - "name": "_5", - "nodeType": "YulTypedName", - "src": "3776:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3805:5:32" - }, - { - "name": "_5", - "nodeType": "YulIdentifier", - "src": "3812:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3801:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3801:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3838:9:32" - }, - { - "name": "_5", - "nodeType": "YulIdentifier", - "src": "3849:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3834:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3834:18:32" - } - ], - "functionName": { - "name": "abi_decode_int64", - "nodeType": "YulIdentifier", - "src": "3817:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "3817:36:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3794:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3794:60:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3794:60:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3863:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3873:3:32", - "type": "", - "value": "384" - }, - "variables": [ - { - "name": "_6", - "nodeType": "YulTypedName", - "src": "3867:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3896:5:32" - }, - { - "name": "_6", - "nodeType": "YulIdentifier", - "src": "3903:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3892:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3892:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3925:9:32" - }, - { - "name": "_6", - "nodeType": "YulIdentifier", - "src": "3936:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3921:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3921:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "3908:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "3908:32:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3885:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3885:56:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3885:56:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3950:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3960:3:32", - "type": "", - "value": "416" - }, - "variables": [ - { - "name": "_7", - "nodeType": "YulTypedName", - "src": "3954:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3983:5:32" - }, - { - "name": "_7", - "nodeType": "YulIdentifier", - "src": "3990:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3979:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3979:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4017:9:32" - }, - { - "name": "_7", - "nodeType": "YulIdentifier", - "src": "4028:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4013:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4013:18:32" - } - ], - "functionName": { - "name": "abi_decode_uint32", - "nodeType": "YulIdentifier", - "src": "3995:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "3995:37:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3972:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3972:61:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3972:61:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "4042:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4052:3:32", - "type": "", - "value": "448" - }, - "variables": [ - { - "name": "_8", - "nodeType": "YulTypedName", - "src": "4046:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "4075:5:32" - }, - { - "name": "_8", - "nodeType": "YulIdentifier", - "src": "4082:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4071:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4071:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4109:9:32" - }, - { - "name": "_8", - "nodeType": "YulIdentifier", - "src": "4120:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4105:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4105:18:32" - } - ], - "functionName": { - "name": "abi_decode_uint32", - "nodeType": "YulIdentifier", - "src": "4087:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "4087:37:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4064:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4064:61:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4064:61:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "4134:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4144:3:32", - "type": "", - "value": "480" - }, - "variables": [ - { - "name": "_9", - "nodeType": "YulTypedName", - "src": "4138:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "4167:5:32" - }, - { - "name": "_9", - "nodeType": "YulIdentifier", - "src": "4174:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4163:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4163:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4201:9:32" - }, - { - "name": "_9", - "nodeType": "YulIdentifier", - "src": "4212:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4197:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4197:18:32" - } - ], - "functionName": { - "name": "abi_decode_uint32", - "nodeType": "YulIdentifier", - "src": "4179:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "4179:37:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4156:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4156:61:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4156:61:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "4226:14:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4237:3:32", - "type": "", - "value": "512" - }, - "variables": [ - { - "name": "_10", - "nodeType": "YulTypedName", - "src": "4230:3:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "4260:5:32" - }, - { - "name": "_10", - "nodeType": "YulIdentifier", - "src": "4267:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4256:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4256:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4295:9:32" - }, - { - "name": "_10", - "nodeType": "YulIdentifier", - "src": "4306:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4291:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4291:19:32" - } - ], - "functionName": { - "name": "abi_decode_uint16", - "nodeType": "YulIdentifier", - "src": "4273:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "4273:38:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4249:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4249:63:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4249:63:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "4321:14:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4332:3:32", - "type": "", - "value": "544" - }, - "variables": [ - { - "name": "_11", - "nodeType": "YulTypedName", - "src": "4325:3:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "4355:5:32" - }, - { - "name": "_11", - "nodeType": "YulIdentifier", - "src": "4362:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4351:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4351:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4388:9:32" - }, - { - "name": "_11", - "nodeType": "YulIdentifier", - "src": "4399:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4384:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4384:19:32" - } - ], - "functionName": { - "name": "abi_decode_bool", - "nodeType": "YulIdentifier", - "src": "4368:15:32" - }, - "nodeType": "YulFunctionCall", - "src": "4368:36:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4344:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4344:61:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4344:61:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "4414:14:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4425:3:32", - "type": "", - "value": "576" - }, - "variables": [ - { - "name": "_12", - "nodeType": "YulTypedName", - "src": "4418:3:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "4448:5:32" - }, - { - "name": "_12", - "nodeType": "YulIdentifier", - "src": "4455:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4444:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4444:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4478:9:32" - }, - { - "name": "_12", - "nodeType": "YulIdentifier", - "src": "4489:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4474:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4474:19:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "4461:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "4461:33:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4437:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4437:58:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4437:58:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "4504:14:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4515:3:32", - "type": "", - "value": "608" - }, - "variables": [ - { - "name": "_13", - "nodeType": "YulTypedName", - "src": "4508:3:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "4538:5:32" - }, - { - "name": "_13", - "nodeType": "YulIdentifier", - "src": "4545:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4534:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4534:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4568:9:32" - }, - { - "name": "_13", - "nodeType": "YulIdentifier", - "src": "4579:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4564:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4564:19:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "4551:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "4551:33:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4527:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4527:58:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4527:58:32" - } - ] - }, - "name": "abi_decode_struct_PeginQuote", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "2444:9:32", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "2455:3:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "2463:5:32", - "type": "" - } - ], - "src": "2406:2185:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4695:253:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "4741:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4750:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4753:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "4743:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4743:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4743:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "4716:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4725:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "4712:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4712:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4737:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "4708:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4708:32:32" - }, - "nodeType": "YulIf", - "src": "4705:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "4766:37:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4793:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "4780:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "4780:23:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "4770:6:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4846:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4855:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4858:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "4848:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4848:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4848:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "4818:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4834:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4838:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "4830:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4830:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4842:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "4826:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4826:18:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "4815:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "4815:30:32" - }, - "nodeType": "YulIf", - "src": "4812:50:32" - }, - { - "nodeType": "YulAssignment", - "src": "4871:71:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4914:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "4925:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4910:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4910:22:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "4934:7:32" - } - ], - "functionName": { - "name": "abi_decode_struct_PeginQuote", - "nodeType": "YulIdentifier", - "src": "4881:28:32" - }, - "nodeType": "YulFunctionCall", - "src": "4881:61:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "4871:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_struct$_PeginQuote_$11233_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "4661:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "4672:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "4684:6:32", - "type": "" - } - ], - "src": "4596:352:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5002:373:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "5012:26:32", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "5032:5:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "5026:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "5026:12:32" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "5016:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "5054:3:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "5059:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5047:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "5047:19:32" - }, - "nodeType": "YulExpressionStatement", - "src": "5047:19:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "5075:10:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5084:1:32", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "i", - "nodeType": "YulTypedName", - "src": "5079:1:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5146:110:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "5160:14:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5170:4:32", - "type": "", - "value": "0x20" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "5164:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "5202:3:32" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "5207:1:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5198:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5198:11:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "5211:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5194:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5194:20:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "5230:5:32" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "5237:1:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5226:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5226:13:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "5241:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5222:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5222:22:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "5216:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "5216:29:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5187:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "5187:59:32" - }, - "nodeType": "YulExpressionStatement", - "src": "5187:59:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "5105:1:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "5108:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "5102:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "5102:13:32" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "5116:21:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "5118:17:32", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "5127:1:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5130:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5123:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5123:12:32" - }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "5118:1:32" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "5098:3:32", - "statements": [] - }, - "src": "5094:162:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "5280:3:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "5285:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5276:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5276:16:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5294:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5272:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5272:27:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5301:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5265:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "5265:38:32" - }, - "nodeType": "YulExpressionStatement", - "src": "5265:38:32" - }, - { - "nodeType": "YulAssignment", - "src": "5312:57:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "5327:3:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "5340:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5348:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5336:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5336:15:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5357:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "5353:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5353:7:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "5332:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5332:29:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5323:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5323:39:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5364:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5319:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5319:50:32" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "5312:3:32" - } - ] - } - ] - }, - "name": "abi_encode_bytes", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "4979:5:32", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "4986:3:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "4994:3:32", - "type": "" - } - ], - "src": "4953:422:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5507:98:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5524:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5535:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5517:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "5517:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "5517:21:32" - }, - { - "nodeType": "YulAssignment", - "src": "5547:52:32", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "5572:6:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5584:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5595:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5580:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5580:18:32" - } - ], - "functionName": { - "name": "abi_encode_bytes", - "nodeType": "YulIdentifier", - "src": "5555:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "5555:44:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "5547:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_library_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "5476:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "5487:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "5498:4:32", - "type": "" - } - ], - "src": "5380:225:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5710:2101:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "5756:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5765:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5768:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "5758:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "5758:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "5758:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "5731:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5740:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "5727:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5727:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5752:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "5723:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5723:32:32" - }, - "nodeType": "YulIf", - "src": "5720:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "5781:37:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5808:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "5795:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "5795:23:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "5785:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "5827:28:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5845:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5849:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "5841:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5841:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5853:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "5837:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5837:18:32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "5831:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5882:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5891:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5894:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "5884:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "5884:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "5884:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "5870:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "5878:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "5867:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "5867:14:32" - }, - "nodeType": "YulIf", - "src": "5864:34:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "5907:32:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5921:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "5932:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5917:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5917:22:32" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "5911:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5981:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5990:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5993:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "5983:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "5983:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "5983:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "5959:7:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "5968:2:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "5955:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5955:16:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5973:6:32", - "type": "", - "value": "0x0260" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "5951:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "5951:29:32" - }, - "nodeType": "YulIf", - "src": "5948:49:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "6006:30:32", - "value": { - "arguments": [], - "functionName": { - "name": "allocate_memory", - "nodeType": "YulIdentifier", - "src": "6019:15:32" - }, - "nodeType": "YulFunctionCall", - "src": "6019:17:32" - }, - "variables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "6010:5:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "6052:5:32" - }, - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "6078:2:32" - } - ], - "functionName": { - "name": "abi_decode_address", - "nodeType": "YulIdentifier", - "src": "6059:18:32" - }, - "nodeType": "YulFunctionCall", - "src": "6059:22:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "6045:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "6045:37:32" - }, - "nodeType": "YulExpressionStatement", - "src": "6045:37:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "6102:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6109:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6098:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6098:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "6137:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6141:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6133:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6133:11:32" - } - ], - "functionName": { - "name": "abi_decode_address", - "nodeType": "YulIdentifier", - "src": "6114:18:32" - }, - "nodeType": "YulFunctionCall", - "src": "6114:31:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "6091:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "6091:55:32" - }, - "nodeType": "YulExpressionStatement", - "src": "6091:55:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "6155:41:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "6188:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6192:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6184:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6184:11:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "6171:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "6171:25:32" - }, - "variables": [ - { - "name": "offset_1", - "nodeType": "YulTypedName", - "src": "6159:8:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6225:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6234:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6237:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "6227:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "6227:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "6227:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "6211:8:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "6221:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "6208:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "6208:16:32" - }, - "nodeType": "YulIf", - "src": "6205:36:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "6261:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6268:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6257:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6257:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "6294:2:32" - }, - { - "name": "offset_1", - "nodeType": "YulIdentifier", - "src": "6298:8:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6290:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6290:17:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "6309:7:32" - } - ], - "functionName": { - "name": "abi_decode_bytes", - "nodeType": "YulIdentifier", - "src": "6273:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "6273:44:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "6250:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "6250:68:32" - }, - "nodeType": "YulExpressionStatement", - "src": "6250:68:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "6338:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6345:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6334:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6334:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "6373:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6377:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6369:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6369:11:32" - } - ], - "functionName": { - "name": "abi_decode_address", - "nodeType": "YulIdentifier", - "src": "6350:18:32" - }, - "nodeType": "YulFunctionCall", - "src": "6350:31:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "6327:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "6327:55:32" - }, - "nodeType": "YulExpressionStatement", - "src": "6327:55:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "6391:42:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "6424:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6428:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6420:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6420:12:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "6407:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "6407:26:32" - }, - "variables": [ - { - "name": "offset_2", - "nodeType": "YulTypedName", - "src": "6395:8:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6462:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6471:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6474:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "6464:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "6464:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "6464:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_2", - "nodeType": "YulIdentifier", - "src": "6448:8:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "6458:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "6445:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "6445:16:32" - }, - "nodeType": "YulIf", - "src": "6442:36:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "6498:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6505:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6494:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6494:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "6532:2:32" - }, - { - "name": "offset_2", - "nodeType": "YulIdentifier", - "src": "6536:8:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6528:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6528:17:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "6547:7:32" - } - ], - "functionName": { - "name": "abi_decode_bytes", - "nodeType": "YulIdentifier", - "src": "6511:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "6511:44:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "6487:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "6487:69:32" - }, - "nodeType": "YulExpressionStatement", - "src": "6487:69:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "6576:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6583:3:32", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6572:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6572:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "6606:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6610:3:32", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6602:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6602:12:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "6589:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "6589:26:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "6565:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "6565:51:32" - }, - "nodeType": "YulExpressionStatement", - "src": "6565:51:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "6636:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6643:3:32", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6632:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6632:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "6666:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6670:3:32", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6662:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6662:12:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "6649:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "6649:26:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "6625:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "6625:51:32" - }, - "nodeType": "YulExpressionStatement", - "src": "6625:51:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "6696:5:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6703:3:32", - "type": "", - "value": "224" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6692:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6692:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "6730:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6734:3:32", - "type": "", - "value": "224" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6726:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6726:12:32" - } - ], - "functionName": { - "name": "abi_decode_int64", - "nodeType": "YulIdentifier", - "src": "6709:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "6709:30:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "6685:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "6685:55:32" - }, - "nodeType": "YulExpressionStatement", - "src": "6685:55:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "6749:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6759:3:32", - "type": "", - "value": "256" - }, - "variables": [ - { - "name": "_3", - "nodeType": "YulTypedName", - "src": "6753:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "6771:41:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "6804:2:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "6808:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6800:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6800:11:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "6787:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "6787:25:32" - }, - "variables": [ - { - "name": "offset_3", - "nodeType": "YulTypedName", - "src": "6775:8:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6841:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6850:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6853:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "6843:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "6843:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "6843:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset_3", - "nodeType": "YulIdentifier", - "src": "6827:8:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "6837:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "6824:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "6824:16:32" - }, - "nodeType": "YulIf", - "src": "6821:36:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "6877:5:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "6884:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6873:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6873:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "6910:2:32" - }, - { - "name": "offset_3", - "nodeType": "YulIdentifier", - "src": "6914:8:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6906:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6906:17:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "6925:7:32" - } - ], - "functionName": { - "name": "abi_decode_bytes", - "nodeType": "YulIdentifier", - "src": "6889:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "6889:44:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "6866:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "6866:68:32" - }, - "nodeType": "YulExpressionStatement", - "src": "6866:68:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "6943:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6953:3:32", - "type": "", - "value": "288" - }, - "variables": [ - { - "name": "_4", - "nodeType": "YulTypedName", - "src": "6947:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "6976:5:32" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "6983:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6972:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "6972:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "7005:2:32" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "7009:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7001:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7001:11:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "6988:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "6988:25:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "6965:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "6965:49:32" - }, - "nodeType": "YulExpressionStatement", - "src": "6965:49:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "7023:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7033:3:32", - "type": "", - "value": "320" - }, - "variables": [ - { - "name": "_5", - "nodeType": "YulTypedName", - "src": "7027:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "7056:5:32" - }, - { - "name": "_5", - "nodeType": "YulIdentifier", - "src": "7063:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7052:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7052:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "7090:2:32" - }, - { - "name": "_5", - "nodeType": "YulIdentifier", - "src": "7094:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7086:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7086:11:32" - } - ], - "functionName": { - "name": "abi_decode_uint32", - "nodeType": "YulIdentifier", - "src": "7068:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "7068:30:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "7045:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "7045:54:32" - }, - "nodeType": "YulExpressionStatement", - "src": "7045:54:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "7108:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7118:3:32", - "type": "", - "value": "352" - }, - "variables": [ - { - "name": "_6", - "nodeType": "YulTypedName", - "src": "7112:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "7141:5:32" - }, - { - "name": "_6", - "nodeType": "YulIdentifier", - "src": "7148:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7137:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7137:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "7175:2:32" - }, - { - "name": "_6", - "nodeType": "YulIdentifier", - "src": "7179:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7171:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7171:11:32" - } - ], - "functionName": { - "name": "abi_decode_uint32", - "nodeType": "YulIdentifier", - "src": "7153:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "7153:30:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "7130:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "7130:54:32" - }, - "nodeType": "YulExpressionStatement", - "src": "7130:54:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "7193:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7203:3:32", - "type": "", - "value": "384" - }, - "variables": [ - { - "name": "_7", - "nodeType": "YulTypedName", - "src": "7197:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "7226:5:32" - }, - { - "name": "_7", - "nodeType": "YulIdentifier", - "src": "7233:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7222:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7222:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "7260:2:32" - }, - { - "name": "_7", - "nodeType": "YulIdentifier", - "src": "7264:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7256:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7256:11:32" - } - ], - "functionName": { - "name": "abi_decode_uint16", - "nodeType": "YulIdentifier", - "src": "7238:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "7238:30:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "7215:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "7215:54:32" - }, - "nodeType": "YulExpressionStatement", - "src": "7215:54:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "7278:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7288:3:32", - "type": "", - "value": "416" - }, - "variables": [ - { - "name": "_8", - "nodeType": "YulTypedName", - "src": "7282:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "7311:5:32" - }, - { - "name": "_8", - "nodeType": "YulIdentifier", - "src": "7318:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7307:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7307:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "7345:2:32" - }, - { - "name": "_8", - "nodeType": "YulIdentifier", - "src": "7349:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7341:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7341:11:32" - } - ], - "functionName": { - "name": "abi_decode_uint16", - "nodeType": "YulIdentifier", - "src": "7323:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "7323:30:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "7300:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "7300:54:32" - }, - "nodeType": "YulExpressionStatement", - "src": "7300:54:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "7363:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7373:3:32", - "type": "", - "value": "448" - }, - "variables": [ - { - "name": "_9", - "nodeType": "YulTypedName", - "src": "7367:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "7396:5:32" - }, - { - "name": "_9", - "nodeType": "YulIdentifier", - "src": "7403:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7392:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7392:14:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "7430:2:32" - }, - { - "name": "_9", - "nodeType": "YulIdentifier", - "src": "7434:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7426:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7426:11:32" - } - ], - "functionName": { - "name": "abi_decode_uint32", - "nodeType": "YulIdentifier", - "src": "7408:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "7408:30:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "7385:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "7385:54:32" - }, - "nodeType": "YulExpressionStatement", - "src": "7385:54:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "7448:14:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7459:3:32", - "type": "", - "value": "480" - }, - "variables": [ - { - "name": "_10", - "nodeType": "YulTypedName", - "src": "7452:3:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "7482:5:32" - }, - { - "name": "_10", - "nodeType": "YulIdentifier", - "src": "7489:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7478:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7478:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "7517:2:32" - }, - { - "name": "_10", - "nodeType": "YulIdentifier", - "src": "7521:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7513:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7513:12:32" - } - ], - "functionName": { - "name": "abi_decode_uint32", - "nodeType": "YulIdentifier", - "src": "7495:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "7495:31:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "7471:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "7471:56:32" - }, - "nodeType": "YulExpressionStatement", - "src": "7471:56:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "7536:14:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7547:3:32", - "type": "", - "value": "512" - }, - "variables": [ - { - "name": "_11", - "nodeType": "YulTypedName", - "src": "7540:3:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "7570:5:32" - }, - { - "name": "_11", - "nodeType": "YulIdentifier", - "src": "7577:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7566:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7566:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "7605:2:32" - }, - { - "name": "_11", - "nodeType": "YulIdentifier", - "src": "7609:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7601:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7601:12:32" - } - ], - "functionName": { - "name": "abi_decode_uint32", - "nodeType": "YulIdentifier", - "src": "7583:17:32" - }, - "nodeType": "YulFunctionCall", - "src": "7583:31:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "7559:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "7559:56:32" - }, - "nodeType": "YulExpressionStatement", - "src": "7559:56:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "7624:14:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7635:3:32", - "type": "", - "value": "544" - }, - "variables": [ - { - "name": "_12", - "nodeType": "YulTypedName", - "src": "7628:3:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "7658:5:32" - }, - { - "name": "_12", - "nodeType": "YulIdentifier", - "src": "7665:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7654:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7654:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "7688:2:32" - }, - { - "name": "_12", - "nodeType": "YulIdentifier", - "src": "7692:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7684:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7684:12:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "7671:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "7671:26:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "7647:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "7647:51:32" - }, - "nodeType": "YulExpressionStatement", - "src": "7647:51:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "7707:14:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7718:3:32", - "type": "", - "value": "576" - }, - "variables": [ - { - "name": "_13", - "nodeType": "YulTypedName", - "src": "7711:3:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "7741:5:32" - }, - { - "name": "_13", - "nodeType": "YulIdentifier", - "src": "7748:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7737:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7737:15:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "7771:2:32" - }, - { - "name": "_13", - "nodeType": "YulIdentifier", - "src": "7775:3:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7767:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7767:12:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "7754:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "7754:26:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "7730:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "7730:51:32" - }, - "nodeType": "YulExpressionStatement", - "src": "7730:51:32" - }, - { - "nodeType": "YulAssignment", - "src": "7790:15:32", - "value": { - "name": "value", - "nodeType": "YulIdentifier", - "src": "7800:5:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "7790:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_struct$_PegOutQuote_$11272_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "5676:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "5687:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "5699:6:32", - "type": "" - } - ], - "src": "5610:2201:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7932:304:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "7978:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7987:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7990:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "7980:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "7980:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "7980:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "7953:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7962:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "7949:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7949:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7974:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "7945:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "7945:32:32" - }, - "nodeType": "YulIf", - "src": "7942:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "8003:37:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8030:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "8017:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "8017:23:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "8007:6:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8083:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8092:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8095:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "8085:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "8085:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "8085:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "8055:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8071:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8075:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "8067:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8067:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8079:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "8063:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8063:18:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "8052:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "8052:30:32" - }, - "nodeType": "YulIf", - "src": "8049:50:32" - }, - { - "nodeType": "YulAssignment", - "src": "8108:71:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8151:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "8162:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8147:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8147:22:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "8171:7:32" - } - ], - "functionName": { - "name": "abi_decode_struct_PeginQuote", - "nodeType": "YulIdentifier", - "src": "8118:28:32" - }, - "nodeType": "YulFunctionCall", - "src": "8118:61:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "8108:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "8188:42:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8215:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8226:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8211:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8211:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "8198:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "8198:32:32" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "8188:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_struct$_PeginQuote_$11233_memory_ptrt_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "7890:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "7901:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "7913:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "7921:6:32", - "type": "" - } - ], - "src": "7816:420:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8406:212:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8423:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8434:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "8416:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "8416:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "8416:21:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "8446:58:32", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "8477:6:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8489:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8500:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8485:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8485:18:32" - } - ], - "functionName": { - "name": "abi_encode_bytes", - "nodeType": "YulIdentifier", - "src": "8460:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "8460:44:32" - }, - "variables": [ - { - "name": "tail_1", - "nodeType": "YulTypedName", - "src": "8450:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8524:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8535:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8520:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8520:18:32" - }, - { - "arguments": [ - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "8544:6:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8552:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "8540:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8540:22:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "8513:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "8513:50:32" - }, - "nodeType": "YulExpressionStatement", - "src": "8513:50:32" - }, - { - "nodeType": "YulAssignment", - "src": "8572:40:32", - "value": { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "8597:6:32" - }, - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "8605:6:32" - } - ], - "functionName": { - "name": "abi_encode_bytes", - "nodeType": "YulIdentifier", - "src": "8580:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "8580:32:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "8572:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_bytes_memory_ptr_t_bytes_memory_ptr__to_t_bytes_memory_ptr_t_bytes_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "8367:9:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "8378:6:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "8386:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "8397:4:32", - "type": "" - } - ], - "src": "8241:377:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8655:95:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8672:1:32", - "type": "", - "value": "0" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8679:3:32", - "type": "", - "value": "224" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8684:10:32", - "type": "", - "value": "0x4e487b71" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "8675:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8675:20:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "8665:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "8665:31:32" - }, - "nodeType": "YulExpressionStatement", - "src": "8665:31:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8712:1:32", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8715:4:32", - "type": "", - "value": "0x11" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "8705:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "8705:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "8705:15:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8736:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8739:4:32", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "8729:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "8729:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "8729:15:32" - } - ] - }, - "name": "panic_error_0x11", - "nodeType": "YulFunctionDefinition", - "src": "8623:127:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8803:77:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "8813:16:32", - "value": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "8824:1:32" - }, - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "8827:1:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8820:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8820:9:32" - }, - "variableNames": [ - { - "name": "sum", - "nodeType": "YulIdentifier", - "src": "8813:3:32" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8852:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x11", - "nodeType": "YulIdentifier", - "src": "8854:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "8854:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "8854:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "8844:1:32" - }, - { - "name": "sum", - "nodeType": "YulIdentifier", - "src": "8847:3:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "8841:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "8841:10:32" - }, - "nodeType": "YulIf", - "src": "8838:36:32" - } - ] - }, - "name": "checked_add_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "x", - "nodeType": "YulTypedName", - "src": "8786:1:32", - "type": "" - }, - { - "name": "y", - "nodeType": "YulTypedName", - "src": "8789:1:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "sum", - "nodeType": "YulTypedName", - "src": "8795:3:32", - "type": "" - } - ], - "src": "8755:125:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8931:171:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "8962:111:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8983:1:32", - "type": "", - "value": "0" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8990:3:32", - "type": "", - "value": "224" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8995:10:32", - "type": "", - "value": "0x4e487b71" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "8986:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "8986:20:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "8976:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "8976:31:32" - }, - "nodeType": "YulExpressionStatement", - "src": "8976:31:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9027:1:32", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9030:4:32", - "type": "", - "value": "0x12" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "9020:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "9020:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "9020:15:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9055:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9058:4:32", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "9048:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "9048:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "9048:15:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "8951:1:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "8944:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "8944:9:32" - }, - "nodeType": "YulIf", - "src": "8941:132:32" - }, - { - "nodeType": "YulAssignment", - "src": "9082:14:32", - "value": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "9091:1:32" - }, - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "9094:1:32" - } - ], - "functionName": { - "name": "div", - "nodeType": "YulIdentifier", - "src": "9087:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9087:9:32" - }, - "variableNames": [ - { - "name": "r", - "nodeType": "YulIdentifier", - "src": "9082:1:32" - } - ] - } - ] - }, - "name": "checked_div_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "x", - "nodeType": "YulTypedName", - "src": "8916:1:32", - "type": "" - }, - { - "name": "y", - "nodeType": "YulTypedName", - "src": "8919:1:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "r", - "nodeType": "YulTypedName", - "src": "8925:1:32", - "type": "" - } - ], - "src": "8885:217:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9156:79:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "9166:17:32", - "value": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "9178:1:32" - }, - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "9181:1:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "9174:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9174:9:32" - }, - "variableNames": [ - { - "name": "diff", - "nodeType": "YulIdentifier", - "src": "9166:4:32" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9207:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x11", - "nodeType": "YulIdentifier", - "src": "9209:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "9209:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "9209:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "diff", - "nodeType": "YulIdentifier", - "src": "9198:4:32" - }, - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "9204:1:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "9195:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "9195:11:32" - }, - "nodeType": "YulIf", - "src": "9192:37:32" - } - ] - }, - "name": "checked_sub_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "x", - "nodeType": "YulTypedName", - "src": "9138:1:32", - "type": "" - }, - { - "name": "y", - "nodeType": "YulTypedName", - "src": "9141:1:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "diff", - "nodeType": "YulTypedName", - "src": "9147:4:32", - "type": "" - } - ], - "src": "9107:128:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9414:155:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9431:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9442:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "9424:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "9424:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "9424:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9465:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9476:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9461:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9461:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9481:1:32", - "type": "", - "value": "6" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "9454:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "9454:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "9454:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9503:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9514:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9499:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9499:18:32" - }, - { - "hexValue": "4c4243303537", - "kind": "string", - "nodeType": "YulLiteral", - "src": "9519:8:32", - "type": "", - "value": "LBC057" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "9492:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "9492:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "9492:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "9537:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9549:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9560:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9545:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "9545:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "9537:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_edc8872f52a3fbd4c102c7239a16e50d62a454725123fb252e7131b6a2223277__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "9391:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "9405:4:32", - "type": "" - } - ], - "src": "9240:329:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9951:644:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "9961:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9971:3:32", - "type": "", - "value": "288" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "9965:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9990:9:32" - }, - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "10005:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10025:2:32", - "type": "", - "value": "96" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10029:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "10021:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10021:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10033:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "10017:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10017:18:32" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "10013:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10013:23:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "10001:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10001:36:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "9983:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "9983:55:32" - }, - "nodeType": "YulExpressionStatement", - "src": "9983:55:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "10047:29:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10065:3:32", - "type": "", - "value": "160" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10070:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "10061:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10061:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10074:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "10057:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10057:19:32" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "10051:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10096:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10107:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10092:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10092:18:32" - }, - { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "10116:6:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "10124:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "10112:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10112:15:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "10085:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "10085:43:32" - }, - "nodeType": "YulExpressionStatement", - "src": "10085:43:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10148:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10159:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10144:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10144:18:32" - }, - { - "arguments": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "10168:6:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "10176:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "10164:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10164:15:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "10137:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "10137:43:32" - }, - "nodeType": "YulExpressionStatement", - "src": "10137:43:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10200:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10211:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10196:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10196:18:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "10216:2:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "10189:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "10189:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "10189:30:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "10228:58:32", - "value": { - "arguments": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "10259:6:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10271:9:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "10282:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10267:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10267:18:32" - } - ], - "functionName": { - "name": "abi_encode_bytes", - "nodeType": "YulIdentifier", - "src": "10242:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "10242:44:32" - }, - "variables": [ - { - "name": "tail_1", - "nodeType": "YulTypedName", - "src": "10232:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10306:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10317:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10302:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10302:19:32" - }, - { - "arguments": [ - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "10327:6:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "10335:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "10323:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10323:15:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "10295:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "10295:44:32" - }, - "nodeType": "YulExpressionStatement", - "src": "10295:44:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10359:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10370:3:32", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10355:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10355:19:32" - }, - { - "arguments": [ - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "10380:6:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10388:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "10376:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10376:22:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "10348:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "10348:51:32" - }, - "nodeType": "YulExpressionStatement", - "src": "10348:51:32" - }, - { - "nodeType": "YulAssignment", - "src": "10408:40:32", - "value": { - "arguments": [ - { - "name": "value5", - "nodeType": "YulIdentifier", - "src": "10433:6:32" - }, - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "10441:6:32" - } - ], - "functionName": { - "name": "abi_encode_bytes", - "nodeType": "YulIdentifier", - "src": "10416:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "10416:32:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "10408:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10468:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10479:3:32", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10464:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10464:19:32" - }, - { - "name": "value6", - "nodeType": "YulIdentifier", - "src": "10485:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "10457:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "10457:35:32" - }, - "nodeType": "YulExpressionStatement", - "src": "10457:35:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10512:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10523:3:32", - "type": "", - "value": "224" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10508:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10508:19:32" - }, - { - "name": "value7", - "nodeType": "YulIdentifier", - "src": "10529:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "10501:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "10501:35:32" - }, - "nodeType": "YulExpressionStatement", - "src": "10501:35:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10556:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10567:3:32", - "type": "", - "value": "256" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10552:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10552:19:32" - }, - { - "arguments": [ - { - "name": "value8", - "nodeType": "YulIdentifier", - "src": "10577:6:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "10585:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "10573:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "10573:15:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "10545:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "10545:44:32" - }, - "nodeType": "YulExpressionStatement", - "src": "10545:44:32" - } - ] - }, - "name": "abi_encode_tuple_t_bytes20_t_address_t_address_t_bytes_memory_ptr_t_address_payable_t_bytes_memory_ptr_t_uint256_t_uint256_t_address__to_t_bytes20_t_address_t_address_t_bytes_memory_ptr_t_address_payable_t_bytes_memory_ptr_t_uint256_t_uint256_t_address__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "9856:9:32", - "type": "" - }, - { - "name": "value8", - "nodeType": "YulTypedName", - "src": "9867:6:32", - "type": "" - }, - { - "name": "value7", - "nodeType": "YulTypedName", - "src": "9875:6:32", - "type": "" - }, - { - "name": "value6", - "nodeType": "YulTypedName", - "src": "9883:6:32", - "type": "" - }, - { - "name": "value5", - "nodeType": "YulTypedName", - "src": "9891:6:32", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "9899:6:32", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "9907:6:32", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "9915:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "9923:6:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "9931:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "9942:4:32", - "type": "" - } - ], - "src": "9574:1021:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10980:667:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "10990:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11000:3:32", - "type": "", - "value": "352" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "10994:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11019:9:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "11030:2:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "11012:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "11012:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "11012:21:32" - }, - { - "nodeType": "YulAssignment", - "src": "11042:52:32", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "11067:6:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11079:9:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "11090:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11075:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11075:18:32" - } - ], - "functionName": { - "name": "abi_encode_bytes", - "nodeType": "YulIdentifier", - "src": "11050:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "11050:44:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "11042:4:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "11103:20:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11113:10:32", - "type": "", - "value": "0xffffffff" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "11107:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11143:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11154:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11139:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11139:18:32" - }, - { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "11163:6:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "11171:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "11159:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11159:15:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "11132:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "11132:43:32" - }, - "nodeType": "YulExpressionStatement", - "src": "11132:43:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11195:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11206:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11191:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11191:18:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11222:1:32", - "type": "", - "value": "7" - }, - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "11225:6:32" - } - ], - "functionName": { - "name": "signextend", - "nodeType": "YulIdentifier", - "src": "11211:10:32" - }, - "nodeType": "YulFunctionCall", - "src": "11211:21:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "11184:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "11184:49:32" - }, - "nodeType": "YulExpressionStatement", - "src": "11184:49:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11253:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11264:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11249:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11249:18:32" - }, - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "11269:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "11242:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "11242:34:32" - }, - "nodeType": "YulExpressionStatement", - "src": "11242:34:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11296:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11307:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11292:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11292:19:32" - }, - { - "arguments": [ - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "11317:6:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "11325:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "11313:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11313:15:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "11285:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "11285:44:32" - }, - "nodeType": "YulExpressionStatement", - "src": "11285:44:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11349:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11360:3:32", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11345:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11345:19:32" - }, - { - "arguments": [ - { - "name": "value5", - "nodeType": "YulIdentifier", - "src": "11370:6:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "11378:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "11366:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11366:15:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "11338:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "11338:44:32" - }, - "nodeType": "YulExpressionStatement", - "src": "11338:44:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11402:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11413:3:32", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11398:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11398:19:32" - }, - { - "arguments": [ - { - "name": "value6", - "nodeType": "YulIdentifier", - "src": "11423:6:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "11431:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "11419:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11419:15:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "11391:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "11391:44:32" - }, - "nodeType": "YulExpressionStatement", - "src": "11391:44:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11455:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11466:3:32", - "type": "", - "value": "224" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11451:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11451:19:32" - }, - { - "arguments": [ - { - "name": "value7", - "nodeType": "YulIdentifier", - "src": "11476:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11484:6:32", - "type": "", - "value": "0xffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "11472:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11472:19:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "11444:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "11444:48:32" - }, - "nodeType": "YulExpressionStatement", - "src": "11444:48:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11512:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11523:3:32", - "type": "", - "value": "256" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11508:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11508:19:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "value8", - "nodeType": "YulIdentifier", - "src": "11543:6:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "11536:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "11536:14:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "11529:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "11529:22:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "11501:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "11501:51:32" - }, - "nodeType": "YulExpressionStatement", - "src": "11501:51:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11572:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11583:3:32", - "type": "", - "value": "288" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11568:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11568:19:32" - }, - { - "name": "value9", - "nodeType": "YulIdentifier", - "src": "11589:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "11561:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "11561:35:32" - }, - "nodeType": "YulExpressionStatement", - "src": "11561:35:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11616:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11627:3:32", - "type": "", - "value": "320" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11612:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "11612:19:32" - }, - { - "name": "value10", - "nodeType": "YulIdentifier", - "src": "11633:7:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "11605:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "11605:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "11605:36:32" - } - ] - }, - "name": "abi_encode_tuple_t_bytes_memory_ptr_t_uint32_t_int64_t_uint256_t_uint32_t_uint32_t_uint32_t_uint16_t_bool_t_uint256_t_uint256__to_t_bytes_memory_ptr_t_uint32_t_int64_t_uint256_t_uint32_t_uint32_t_uint32_t_uint16_t_bool_t_uint256_t_uint256__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "10868:9:32", - "type": "" - }, - { - "name": "value10", - "nodeType": "YulTypedName", - "src": "10879:7:32", - "type": "" - }, - { - "name": "value9", - "nodeType": "YulTypedName", - "src": "10888:6:32", - "type": "" - }, - { - "name": "value8", - "nodeType": "YulTypedName", - "src": "10896:6:32", - "type": "" - }, - { - "name": "value7", - "nodeType": "YulTypedName", - "src": "10904:6:32", - "type": "" - }, - { - "name": "value6", - "nodeType": "YulTypedName", - "src": "10912:6:32", - "type": "" - }, - { - "name": "value5", - "nodeType": "YulTypedName", - "src": "10920:6:32", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "10928:6:32", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "10936:6:32", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "10944:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "10952:6:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "10960:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "10971:4:32", - "type": "" - } - ], - "src": "10600:1047:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12027:691:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "12037:13:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12047:3:32", - "type": "", - "value": "288" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "12041:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "12059:29:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12077:3:32", - "type": "", - "value": "160" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12082:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "12073:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12073:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12086:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "12069:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12069:19:32" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "12063:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12104:9:32" - }, - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "12119:6:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "12127:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "12115:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12115:15:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12097:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "12097:34:32" - }, - "nodeType": "YulExpressionStatement", - "src": "12097:34:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12151:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12162:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12147:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12147:18:32" - }, - { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "12171:6:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "12179:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "12167:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12167:15:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12140:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "12140:43:32" - }, - "nodeType": "YulExpressionStatement", - "src": "12140:43:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12203:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12214:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12199:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12199:18:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "12219:2:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12192:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "12192:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "12192:30:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "12231:58:32", - "value": { - "arguments": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "12262:6:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12274:9:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "12285:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12270:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12270:18:32" - } - ], - "functionName": { - "name": "abi_encode_bytes", - "nodeType": "YulIdentifier", - "src": "12245:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "12245:44:32" - }, - "variables": [ - { - "name": "tail_1", - "nodeType": "YulTypedName", - "src": "12235:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12309:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12320:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12305:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12305:18:32" - }, - { - "arguments": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "12329:6:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "12337:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "12325:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12325:15:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12298:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "12298:43:32" - }, - "nodeType": "YulExpressionStatement", - "src": "12298:43:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12361:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12372:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12357:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12357:19:32" - }, - { - "arguments": [ - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "12382:6:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12390:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "12378:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12378:22:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12350:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "12350:51:32" - }, - "nodeType": "YulExpressionStatement", - "src": "12350:51:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "12410:46:32", - "value": { - "arguments": [ - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "12441:6:32" - }, - { - "name": "tail_1", - "nodeType": "YulIdentifier", - "src": "12449:6:32" - } - ], - "functionName": { - "name": "abi_encode_bytes", - "nodeType": "YulIdentifier", - "src": "12424:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "12424:32:32" - }, - "variables": [ - { - "name": "tail_2", - "nodeType": "YulTypedName", - "src": "12414:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12476:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12487:3:32", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12472:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12472:19:32" - }, - { - "name": "value5", - "nodeType": "YulIdentifier", - "src": "12493:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12465:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "12465:35:32" - }, - "nodeType": "YulExpressionStatement", - "src": "12465:35:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12520:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12531:3:32", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12516:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12516:19:32" - }, - { - "name": "value6", - "nodeType": "YulIdentifier", - "src": "12537:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12509:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "12509:35:32" - }, - "nodeType": "YulExpressionStatement", - "src": "12509:35:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12564:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12575:3:32", - "type": "", - "value": "224" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12560:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12560:19:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12592:1:32", - "type": "", - "value": "7" - }, - { - "name": "value7", - "nodeType": "YulIdentifier", - "src": "12595:6:32" - } - ], - "functionName": { - "name": "signextend", - "nodeType": "YulIdentifier", - "src": "12581:10:32" - }, - "nodeType": "YulFunctionCall", - "src": "12581:21:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12553:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "12553:50:32" - }, - "nodeType": "YulExpressionStatement", - "src": "12553:50:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12623:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12634:3:32", - "type": "", - "value": "256" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12619:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12619:19:32" - }, - { - "arguments": [ - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "12644:6:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12652:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "12640:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "12640:22:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12612:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "12612:51:32" - }, - "nodeType": "YulExpressionStatement", - "src": "12612:51:32" - }, - { - "nodeType": "YulAssignment", - "src": "12672:40:32", - "value": { - "arguments": [ - { - "name": "value8", - "nodeType": "YulIdentifier", - "src": "12697:6:32" - }, - { - "name": "tail_2", - "nodeType": "YulIdentifier", - "src": "12705:6:32" - } - ], - "functionName": { - "name": "abi_encode_bytes", - "nodeType": "YulIdentifier", - "src": "12680:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "12680:32:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "12672:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_address_t_address_t_bytes_memory_ptr_t_address_t_bytes_memory_ptr_t_uint256_t_uint256_t_int64_t_bytes_memory_ptr__to_t_address_t_address_t_bytes_memory_ptr_t_address_t_bytes_memory_ptr_t_uint256_t_uint256_t_int64_t_bytes_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "11932:9:32", - "type": "" - }, - { - "name": "value8", - "nodeType": "YulTypedName", - "src": "11943:6:32", - "type": "" - }, - { - "name": "value7", - "nodeType": "YulTypedName", - "src": "11951:6:32", - "type": "" - }, - { - "name": "value6", - "nodeType": "YulTypedName", - "src": "11959:6:32", - "type": "" - }, - { - "name": "value5", - "nodeType": "YulTypedName", - "src": "11967:6:32", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "11975:6:32", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "11983:6:32", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "11991:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "11999:6:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "12007:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "12018:4:32", - "type": "" - } - ], - "src": "11652:1066:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "13062:587:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "13072:27:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "13084:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13095:3:32", - "type": "", - "value": "320" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13080:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13080:19:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "13072:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "13115:9:32" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "13126:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13108:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "13108:25:32" - }, - "nodeType": "YulExpressionStatement", - "src": "13108:25:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "13142:20:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13152:10:32", - "type": "", - "value": "0xffffffff" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "13146:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "13182:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13193:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13178:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13178:18:32" - }, - { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "13202:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "13210:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "13198:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13198:15:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13171:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "13171:43:32" - }, - "nodeType": "YulExpressionStatement", - "src": "13171:43:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "13234:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13245:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13230:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13230:18:32" - }, - { - "arguments": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "13254:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "13262:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "13250:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13250:15:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13223:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "13223:43:32" - }, - "nodeType": "YulExpressionStatement", - "src": "13223:43:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "13275:16:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13285:6:32", - "type": "", - "value": "0xffff" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "13279:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "13311:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13322:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13307:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13307:18:32" - }, - { - "arguments": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "13331:6:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "13339:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "13327:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13327:15:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13300:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "13300:43:32" - }, - "nodeType": "YulExpressionStatement", - "src": "13300:43:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "13363:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13374:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13359:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13359:19:32" - }, - { - "arguments": [ - { - "name": "value4", - "nodeType": "YulIdentifier", - "src": "13384:6:32" - }, - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "13392:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "13380:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13380:15:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13352:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "13352:44:32" - }, - "nodeType": "YulExpressionStatement", - "src": "13352:44:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "13416:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13427:3:32", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13412:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13412:19:32" - }, - { - "arguments": [ - { - "name": "value5", - "nodeType": "YulIdentifier", - "src": "13437:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "13445:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "13433:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13433:15:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13405:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "13405:44:32" - }, - "nodeType": "YulExpressionStatement", - "src": "13405:44:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "13469:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13480:3:32", - "type": "", - "value": "192" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13465:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13465:19:32" - }, - { - "arguments": [ - { - "name": "value6", - "nodeType": "YulIdentifier", - "src": "13490:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "13498:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "13486:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13486:15:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13458:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "13458:44:32" - }, - "nodeType": "YulExpressionStatement", - "src": "13458:44:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "13522:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13533:3:32", - "type": "", - "value": "224" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13518:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13518:19:32" - }, - { - "arguments": [ - { - "name": "value7", - "nodeType": "YulIdentifier", - "src": "13543:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "13551:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "13539:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13539:15:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13511:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "13511:44:32" - }, - "nodeType": "YulExpressionStatement", - "src": "13511:44:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "13575:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13586:3:32", - "type": "", - "value": "256" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13571:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13571:19:32" - }, - { - "name": "value8", - "nodeType": "YulIdentifier", - "src": "13592:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13564:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "13564:35:32" - }, - "nodeType": "YulExpressionStatement", - "src": "13564:35:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "13619:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13630:3:32", - "type": "", - "value": "288" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13615:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "13615:19:32" - }, - { - "name": "value9", - "nodeType": "YulIdentifier", - "src": "13636:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13608:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "13608:35:32" - }, - "nodeType": "YulExpressionStatement", - "src": "13608:35:32" - } - ] - }, - "name": "abi_encode_tuple_t_uint256_t_uint32_t_uint32_t_uint16_t_uint16_t_uint32_t_uint32_t_uint32_t_uint256_t_uint256__to_t_uint256_t_uint32_t_uint32_t_uint16_t_uint16_t_uint32_t_uint32_t_uint32_t_uint256_t_uint256__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "12959:9:32", - "type": "" - }, - { - "name": "value9", - "nodeType": "YulTypedName", - "src": "12970:6:32", - "type": "" - }, - { - "name": "value8", - "nodeType": "YulTypedName", - "src": "12978:6:32", - "type": "" - }, - { - "name": "value7", - "nodeType": "YulTypedName", - "src": "12986:6:32", - "type": "" - }, - { - "name": "value6", - "nodeType": "YulTypedName", - "src": "12994:6:32", - "type": "" - }, - { - "name": "value5", - "nodeType": "YulTypedName", - "src": "13002:6:32", - "type": "" - }, - { - "name": "value4", - "nodeType": "YulTypedName", - "src": "13010:6:32", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "13018:6:32", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "13026:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "13034:6:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "13042:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "13053:4:32", - "type": "" - } - ], - "src": "12723:926:32" - } - ] - }, - "contents": "{\n { }\n function panic_error_0x41()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n function allocate_memory_1569() -> memPtr\n {\n memPtr := mload(64)\n let newFreePtr := add(memPtr, 0x0280)\n if or(gt(newFreePtr, sub(shl(64, 1), 1)), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n function allocate_memory() -> memPtr\n {\n memPtr := mload(64)\n let newFreePtr := add(memPtr, 0x0260)\n if or(gt(newFreePtr, sub(shl(64, 1), 1)), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n function abi_decode_bytes20(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, not(sub(shl(96, 1), 1))))) { revert(0, 0) }\n }\n function abi_decode_address(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, sub(shl(160, 1), 1)))) { revert(0, 0) }\n }\n function abi_decode_bytes(offset, end) -> array\n {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n let _1 := calldataload(offset)\n let _2 := sub(shl(64, 1), 1)\n if gt(_1, _2) { panic_error_0x41() }\n let _3 := not(31)\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_uint32(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, 0xffffffff))) { revert(0, 0) }\n }\n function abi_decode_int64(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, signextend(7, value))) { revert(0, 0) }\n }\n function abi_decode_uint16(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, 0xffff))) { revert(0, 0) }\n }\n function abi_decode_bool(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, iszero(iszero(value)))) { revert(0, 0) }\n }\n function abi_decode_struct_PeginQuote(headStart, end) -> value\n {\n if slt(sub(end, headStart), 0x0280) { revert(0, 0) }\n value := allocate_memory_1569()\n mstore(value, abi_decode_bytes20(headStart))\n mstore(add(value, 32), abi_decode_address(add(headStart, 32)))\n mstore(add(value, 64), abi_decode_address(add(headStart, 64)))\n let offset := calldataload(add(headStart, 96))\n let _1 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n mstore(add(value, 96), abi_decode_bytes(add(headStart, offset), end))\n mstore(add(value, 128), abi_decode_address(add(headStart, 128)))\n let offset_1 := calldataload(add(headStart, 160))\n if gt(offset_1, _1) { revert(0, 0) }\n mstore(add(value, 160), abi_decode_bytes(add(headStart, offset_1), end))\n mstore(add(value, 192), calldataload(add(headStart, 192)))\n mstore(add(value, 224), calldataload(add(headStart, 224)))\n let _2 := 256\n mstore(add(value, _2), abi_decode_address(add(headStart, _2)))\n let _3 := 288\n let offset_2 := calldataload(add(headStart, _3))\n if gt(offset_2, _1) { revert(0, 0) }\n mstore(add(value, _3), abi_decode_bytes(add(headStart, offset_2), end))\n let _4 := 320\n mstore(add(value, _4), abi_decode_uint32(add(headStart, _4)))\n let _5 := 352\n mstore(add(value, _5), abi_decode_int64(add(headStart, _5)))\n let _6 := 384\n mstore(add(value, _6), calldataload(add(headStart, _6)))\n let _7 := 416\n mstore(add(value, _7), abi_decode_uint32(add(headStart, _7)))\n let _8 := 448\n mstore(add(value, _8), abi_decode_uint32(add(headStart, _8)))\n let _9 := 480\n mstore(add(value, _9), abi_decode_uint32(add(headStart, _9)))\n let _10 := 512\n mstore(add(value, _10), abi_decode_uint16(add(headStart, _10)))\n let _11 := 544\n mstore(add(value, _11), abi_decode_bool(add(headStart, _11)))\n let _12 := 576\n mstore(add(value, _12), calldataload(add(headStart, _12)))\n let _13 := 608\n mstore(add(value, _13), calldataload(add(headStart, _13)))\n }\n function abi_decode_tuple_t_struct$_PeginQuote_$11233_memory_ptr(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let offset := calldataload(headStart)\n if gt(offset, sub(shl(64, 1), 1)) { revert(0, 0) }\n value0 := abi_decode_struct_PeginQuote(add(headStart, offset), dataEnd)\n }\n function abi_encode_bytes(value, pos) -> end\n {\n let length := mload(value)\n mstore(pos, length)\n let i := 0\n for { } lt(i, length) { i := add(i, 0x20) }\n {\n let _1 := 0x20\n mstore(add(add(pos, i), _1), mload(add(add(value, i), _1)))\n }\n mstore(add(add(pos, length), 0x20), 0)\n end := add(add(pos, and(add(length, 31), not(31))), 0x20)\n }\n function abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_library_reversed(headStart, value0) -> tail\n {\n mstore(headStart, 32)\n tail := abi_encode_bytes(value0, add(headStart, 32))\n }\n function abi_decode_tuple_t_struct$_PegOutQuote_$11272_memory_ptr(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let offset := calldataload(headStart)\n let _1 := sub(shl(64, 1), 1)\n if gt(offset, _1) { revert(0, 0) }\n let _2 := add(headStart, offset)\n if slt(sub(dataEnd, _2), 0x0260) { revert(0, 0) }\n let value := allocate_memory()\n mstore(value, abi_decode_address(_2))\n mstore(add(value, 32), abi_decode_address(add(_2, 32)))\n let offset_1 := calldataload(add(_2, 64))\n if gt(offset_1, _1) { revert(0, 0) }\n mstore(add(value, 64), abi_decode_bytes(add(_2, offset_1), dataEnd))\n mstore(add(value, 96), abi_decode_address(add(_2, 96)))\n let offset_2 := calldataload(add(_2, 128))\n if gt(offset_2, _1) { revert(0, 0) }\n mstore(add(value, 128), abi_decode_bytes(add(_2, offset_2), dataEnd))\n mstore(add(value, 160), calldataload(add(_2, 160)))\n mstore(add(value, 192), calldataload(add(_2, 192)))\n mstore(add(value, 224), abi_decode_int64(add(_2, 224)))\n let _3 := 256\n let offset_3 := calldataload(add(_2, _3))\n if gt(offset_3, _1) { revert(0, 0) }\n mstore(add(value, _3), abi_decode_bytes(add(_2, offset_3), dataEnd))\n let _4 := 288\n mstore(add(value, _4), calldataload(add(_2, _4)))\n let _5 := 320\n mstore(add(value, _5), abi_decode_uint32(add(_2, _5)))\n let _6 := 352\n mstore(add(value, _6), abi_decode_uint32(add(_2, _6)))\n let _7 := 384\n mstore(add(value, _7), abi_decode_uint16(add(_2, _7)))\n let _8 := 416\n mstore(add(value, _8), abi_decode_uint16(add(_2, _8)))\n let _9 := 448\n mstore(add(value, _9), abi_decode_uint32(add(_2, _9)))\n let _10 := 480\n mstore(add(value, _10), abi_decode_uint32(add(_2, _10)))\n let _11 := 512\n mstore(add(value, _11), abi_decode_uint32(add(_2, _11)))\n let _12 := 544\n mstore(add(value, _12), calldataload(add(_2, _12)))\n let _13 := 576\n mstore(add(value, _13), calldataload(add(_2, _13)))\n value0 := value\n }\n function abi_decode_tuple_t_struct$_PeginQuote_$11233_memory_ptrt_uint256(headStart, dataEnd) -> value0, value1\n {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n let offset := calldataload(headStart)\n if gt(offset, sub(shl(64, 1), 1)) { revert(0, 0) }\n value0 := abi_decode_struct_PeginQuote(add(headStart, offset), dataEnd)\n value1 := calldataload(add(headStart, 32))\n }\n function abi_encode_tuple_t_bytes_memory_ptr_t_bytes_memory_ptr__to_t_bytes_memory_ptr_t_bytes_memory_ptr__fromStack_reversed(headStart, value1, value0) -> tail\n {\n mstore(headStart, 64)\n let tail_1 := abi_encode_bytes(value0, add(headStart, 64))\n mstore(add(headStart, 32), sub(tail_1, headStart))\n tail := abi_encode_bytes(value1, tail_1)\n }\n function panic_error_0x11()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x11)\n revert(0, 0x24)\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 checked_div_t_uint256(x, y) -> r\n {\n if iszero(y)\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x12)\n revert(0, 0x24)\n }\n r := div(x, y)\n }\n function checked_sub_t_uint256(x, y) -> diff\n {\n diff := sub(x, y)\n if gt(diff, x) { panic_error_0x11() }\n }\n function abi_encode_tuple_t_stringliteral_edc8872f52a3fbd4c102c7239a16e50d62a454725123fb252e7131b6a2223277__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 6)\n mstore(add(headStart, 64), \"LBC057\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_bytes20_t_address_t_address_t_bytes_memory_ptr_t_address_payable_t_bytes_memory_ptr_t_uint256_t_uint256_t_address__to_t_bytes20_t_address_t_address_t_bytes_memory_ptr_t_address_payable_t_bytes_memory_ptr_t_uint256_t_uint256_t_address__fromStack_reversed(headStart, value8, value7, value6, value5, value4, value3, value2, value1, value0) -> tail\n {\n let _1 := 288\n mstore(headStart, and(value0, not(sub(shl(96, 1), 1))))\n let _2 := sub(shl(160, 1), 1)\n mstore(add(headStart, 32), and(value1, _2))\n mstore(add(headStart, 64), and(value2, _2))\n mstore(add(headStart, 96), _1)\n let tail_1 := abi_encode_bytes(value3, add(headStart, _1))\n mstore(add(headStart, 128), and(value4, _2))\n mstore(add(headStart, 160), sub(tail_1, headStart))\n tail := abi_encode_bytes(value5, tail_1)\n mstore(add(headStart, 192), value6)\n mstore(add(headStart, 224), value7)\n mstore(add(headStart, 256), and(value8, _2))\n }\n function abi_encode_tuple_t_bytes_memory_ptr_t_uint32_t_int64_t_uint256_t_uint32_t_uint32_t_uint32_t_uint16_t_bool_t_uint256_t_uint256__to_t_bytes_memory_ptr_t_uint32_t_int64_t_uint256_t_uint32_t_uint32_t_uint32_t_uint16_t_bool_t_uint256_t_uint256__fromStack_reversed(headStart, value10, value9, value8, value7, value6, value5, value4, value3, value2, value1, value0) -> tail\n {\n let _1 := 352\n mstore(headStart, _1)\n tail := abi_encode_bytes(value0, add(headStart, _1))\n let _2 := 0xffffffff\n mstore(add(headStart, 32), and(value1, _2))\n mstore(add(headStart, 64), signextend(7, value2))\n mstore(add(headStart, 96), value3)\n mstore(add(headStart, 128), and(value4, _2))\n mstore(add(headStart, 160), and(value5, _2))\n mstore(add(headStart, 192), and(value6, _2))\n mstore(add(headStart, 224), and(value7, 0xffff))\n mstore(add(headStart, 256), iszero(iszero(value8)))\n mstore(add(headStart, 288), value9)\n mstore(add(headStart, 320), value10)\n }\n function abi_encode_tuple_t_address_t_address_t_bytes_memory_ptr_t_address_t_bytes_memory_ptr_t_uint256_t_uint256_t_int64_t_bytes_memory_ptr__to_t_address_t_address_t_bytes_memory_ptr_t_address_t_bytes_memory_ptr_t_uint256_t_uint256_t_int64_t_bytes_memory_ptr__fromStack_reversed(headStart, value8, value7, value6, value5, value4, value3, value2, value1, value0) -> tail\n {\n let _1 := 288\n let _2 := sub(shl(160, 1), 1)\n mstore(headStart, and(value0, _2))\n mstore(add(headStart, 32), and(value1, _2))\n mstore(add(headStart, 64), _1)\n let tail_1 := abi_encode_bytes(value2, add(headStart, _1))\n mstore(add(headStart, 96), and(value3, _2))\n mstore(add(headStart, 128), sub(tail_1, headStart))\n let tail_2 := abi_encode_bytes(value4, tail_1)\n mstore(add(headStart, 160), value5)\n mstore(add(headStart, 192), value6)\n mstore(add(headStart, 224), signextend(7, value7))\n mstore(add(headStart, 256), sub(tail_2, headStart))\n tail := abi_encode_bytes(value8, tail_2)\n }\n function abi_encode_tuple_t_uint256_t_uint32_t_uint32_t_uint16_t_uint16_t_uint32_t_uint32_t_uint32_t_uint256_t_uint256__to_t_uint256_t_uint32_t_uint32_t_uint16_t_uint16_t_uint32_t_uint32_t_uint32_t_uint256_t_uint256__fromStack_reversed(headStart, value9, value8, value7, value6, value5, value4, value3, value2, value1, value0) -> tail\n {\n tail := add(headStart, 320)\n mstore(headStart, value0)\n let _1 := 0xffffffff\n mstore(add(headStart, 32), and(value1, _1))\n mstore(add(headStart, 64), and(value2, _1))\n let _2 := 0xffff\n mstore(add(headStart, 96), and(value3, _2))\n mstore(add(headStart, 128), and(value4, _2))\n mstore(add(headStart, 160), and(value5, _1))\n mstore(add(headStart, 192), and(value6, _1))\n mstore(add(headStart, 224), and(value7, _1))\n mstore(add(headStart, 256), value8)\n mstore(add(headStart, 288), value9)\n }\n}", - "id": 32, - "language": "Yul", - "name": "#utility.yul" - } - ], - "sourceMap": "58:4493:28:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;58:4493:28;;;;;;;;;;;;;;;;;", - "deployedSourceMap": "58:4493:28:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1320:284;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1610:303;;;;;;:::i;:::-;;:::i;4014:534::-;;;;;;:::i;:::-;;:::i;:::-;;1320:284;1403:12;1558:18;1570:5;1558:11;:18::i;:::-;1578;1590:5;1578:11;:18::i;:::-;1547:50;;;;;;;;;:::i;:::-;;;;;;;;;;;;;1540:57;;1320:284;;;:::o;1610:303::-;1700:12;1855:24;1873:5;1855:17;:24::i;:::-;1881;1899:5;1881:17;:24::i;4014:534::-;4136:17;4237:5;:12;;;4212:5;:22;;;4196:5;:13;;;4182:5;:11;;;:27;;;;:::i;:::-;:52;;;;:::i;:::-;:67;;;;:::i;:::-;4167:82;-1:-1:-1;4261:10:28;4274:20;4289:5;4167:82;4274:20;:::i;:::-;4261:33;-1:-1:-1;4489:20:28;4261:33;4489:12;:20;:::i;:::-;4468:17;:41;;4447:94;;;;-1:-1:-1;;;4447:94:28;;9442:2:32;4447:94:28;;;9424:21:32;9481:1;9461:18;;;9454:29;-1:-1:-1;;;9499:18:32;;;9492:36;9545:18;;4447:94:28;;;;;;;;4126:422;;4014:534;;:::o;1919:513::-;2001:12;2072:5;:19;;;2109:5;:16;;;2143:5;:33;;;2194:5;:22;;;2234:5;:22;;;2274:5;:33;;;2325:5;:13;;;2356:5;:16;;;2390:5;:21;;;2044:381;;;;;;;;;;;;;;;;:::i;2438:538::-;2520:12;2591:5;:10;;;2619:5;:14;;;2651:5;:11;;;2680:5;:11;;;2709:5;:24;;;2751:5;:20;;;2789:5;:14;;;2821:5;:26;;;2865:5;:20;;;2903:5;:22;;;2943:5;:12;;;2563:406;;;;;;;;;;;;;;;;;;:::i;2982:482::-;3071:12;3142:5;:16;;;3176:5;:18;;;3212:5;:22;;;3252:5;:22;;;3292:5;:18;;;3328:5;:13;;;3359:5;:16;;;3393:5;:11;;;3422:5;:21;;;3114:343;;;;;;;;;;;;;;;;:::i;3470:538::-;3630:11;;;;;3659:24;;;;;3701:22;;;;;3741:26;;;;3785:27;;;;3830:18;;;;3866:16;;;;3900:17;;;;3935:22;;;;3975:12;;;;3602:399;;;;;;13108:25:32;;;;13152:10;13198:15;;;13178:18;;;13171:43;13250:15;;;3559:12:28;13230:18:32;;;13223:43;;;;13285:6;13327:15;;;13307:18;;;13300:43;13380:15;;;;13359:19;;;13352:44;13433:15;;;13412:19;;;13405:44;13486:15;;13465:19;;;13458:44;13539:15;;;;-1:-1:-1;13518:19:32;;13511:44;13571:19;;;13564:35;;;;13615:19;;;13608:35;13080:19;3602:399:28;12723:926:32;14:127;75:10;70:3;66:20;63:1;56:31;106:4;103:1;96:15;130:4;127:1;120:15;146:255;218:2;212:9;260:6;248:19;;-1:-1:-1;;;;;282:34:32;;318:22;;;279:62;276:88;;;344:18;;:::i;:::-;380:2;373:22;146:255;:::o;406:250::-;473:2;467:9;515:6;503:19;;-1:-1:-1;;;;;537:34:32;;573:22;;;534:62;531:88;;;599:18;;:::i;661:177::-;729:20;;-1:-1:-1;;;;;;778:35:32;;768:46;;758:74;;828:1;825;818:12;758:74;661:177;;;:::o;843:173::-;911:20;;-1:-1:-1;;;;;960:31:32;;950:42;;940:70;;1006:1;1003;996:12;1021:718;1063:5;1116:3;1109:4;1101:6;1097:17;1093:27;1083:55;;1134:1;1131;1124:12;1083:55;1157:20;;-1:-1:-1;;;;;1226:10:32;;;1223:36;;;1239:18;;:::i;:::-;1314:2;1308:9;1282:2;1368:13;;-1:-1:-1;;1364:22:32;;;1388:2;1360:31;1356:40;1344:53;;;1412:18;;;1432:22;;;1409:46;1406:72;;;1458:18;;:::i;:::-;1498:10;1494:2;1487:22;1533:2;1525:6;1518:18;1579:3;1572:4;1567:2;1559:6;1555:15;1551:26;1548:35;1545:55;;;1596:1;1593;1586:12;1545:55;1660:2;1653:4;1645:6;1641:17;1634:4;1626:6;1622:17;1609:54;1707:1;1700:4;1695:2;1687:6;1683:15;1679:26;1672:37;1727:6;1718:15;;;;;;1021:718;;;;:::o;1744:163::-;1811:20;;1871:10;1860:22;;1850:33;;1840:61;;1897:1;1894;1887:12;1912:160;1978:20;;2038:1;2027:20;;;2017:31;;2007:59;;2062:1;2059;2052:12;2077:159;2144:20;;2204:6;2193:18;;2183:29;;2173:57;;2226:1;2223;2216:12;2241:160;2306:20;;2362:13;;2355:21;2345:32;;2335:60;;2391:1;2388;2381:12;2406:2185;2463:5;2511:6;2499:9;2494:3;2490:19;2486:32;2483:52;;;2531:1;2528;2521:12;2483:52;2553:22;;:::i;:::-;2544:31;;2598:29;2617:9;2598:29;:::i;:::-;2591:5;2584:44;2660:38;2694:2;2683:9;2679:18;2660:38;:::i;:::-;2655:2;2648:5;2644:14;2637:62;2731:38;2765:2;2754:9;2750:18;2731:38;:::i;:::-;2726:2;2715:14;;2708:62;2821:2;2806:18;;2793:32;-1:-1:-1;;;;;2874:14:32;;;2871:34;;;2901:1;2898;2891:12;2871:34;2937:45;2978:3;2969:6;2958:9;2954:22;2937:45;:::i;:::-;2932:2;2925:5;2921:14;2914:69;3016:39;3050:3;3039:9;3035:19;3016:39;:::i;:::-;3010:3;3003:5;2999:15;2992:64;3109:3;3098:9;3094:19;3081:33;3065:49;;3139:2;3129:8;3126:16;3123:36;;;3155:1;3152;3145:12;3123:36;3192:47;3235:3;3224:8;3213:9;3209:24;3192:47;:::i;:::-;3186:3;3179:5;3175:15;3168:72;3301:3;3290:9;3286:19;3273:33;3267:3;3260:5;3256:15;3249:58;3368:3;3357:9;3353:19;3340:33;3334:3;3327:5;3323:15;3316:58;3393:3;3383:13;;3428:38;3462:2;3451:9;3447:18;3428:38;:::i;:::-;3423:2;3416:5;3412:14;3405:62;3486:3;3476:13;;3542:2;3531:9;3527:18;3514:32;3571:2;3561:8;3558:16;3555:36;;;3587:1;3584;3577:12;3555:36;3623:47;3666:3;3655:8;3644:9;3640:24;3623:47;:::i;:::-;3618:2;3611:5;3607:14;3600:71;;;;3690:3;3725:37;3758:2;3747:9;3743:18;3725:37;:::i;:::-;3709:14;;;3702:61;3782:3;3817:36;3834:18;;;3817:36;:::i;:::-;3801:14;;;3794:60;3873:3;3921:18;;;3908:32;3892:14;;;3885:56;3960:3;3995:37;4013:18;;;3995:37;:::i;:::-;3979:14;;;3972:61;4052:3;4087:37;4105:18;;;4087:37;:::i;:::-;4071:14;;;4064:61;4144:3;4179:37;4197:18;;;4179:37;:::i;:::-;4163:14;;;4156:61;4237:3;4273:38;4291:19;;;4273:38;:::i;:::-;4256:15;;;4249:63;4332:3;4368:36;4384:19;;;4368:36;:::i;:::-;4351:15;;;4344:61;4425:3;4474:19;;;4461:33;4444:15;;;4437:58;4515:3;4564:19;;;4551:33;4534:15;;;4527:58;;;;4355:5;2406:2185;-1:-1:-1;2406:2185:32:o;4596:352::-;4684:6;4737:2;4725:9;4716:7;4712:23;4708:32;4705:52;;;4753:1;4750;4743:12;4705:52;4780:23;;-1:-1:-1;;;;;4815:30:32;;4812:50;;;4858:1;4855;4848:12;4812:50;4881:61;4934:7;4925:6;4914:9;4910:22;4881:61;:::i;:::-;4871:71;4596:352;-1:-1:-1;;;;4596:352:32:o;4953:422::-;4994:3;5032:5;5026:12;5059:6;5054:3;5047:19;5084:1;5094:162;5108:6;5105:1;5102:13;5094:162;;;5170:4;5226:13;;;5222:22;;5216:29;5198:11;;;5194:20;;5187:59;5123:12;5094:162;;;5098:3;5301:1;5294:4;5285:6;5280:3;5276:16;5272:27;5265:38;5364:4;5357:2;5353:7;5348:2;5340:6;5336:15;5332:29;5327:3;5323:39;5319:50;5312:57;;;4953:422;;;;:::o;5380:225::-;5535:2;5524:9;5517:21;5498:4;5555:44;5595:2;5584:9;5580:18;5572:6;5555:44;:::i;:::-;5547:52;5380:225;-1:-1:-1;;;5380:225:32:o;5610:2201::-;5699:6;5752:2;5740:9;5731:7;5727:23;5723:32;5720:52;;;5768:1;5765;5758:12;5720:52;5795:23;;-1:-1:-1;;;;;5867:14:32;;;5864:34;;;5894:1;5891;5884:12;5864:34;5917:22;;;;5973:6;5955:16;;;5951:29;5948:49;;;5993:1;5990;5983:12;5948:49;6019:17;;:::i;:::-;6059:22;6078:2;6059:22;:::i;:::-;6052:5;6045:37;6114:31;6141:2;6137;6133:11;6114:31;:::i;:::-;6109:2;6102:5;6098:14;6091:55;6192:2;6188;6184:11;6171:25;6221:2;6211:8;6208:16;6205:36;;;6237:1;6234;6227:12;6205:36;6273:44;6309:7;6298:8;6294:2;6290:17;6273:44;:::i;:::-;6268:2;6261:5;6257:14;6250:68;;6350:31;6377:2;6373;6369:11;6350:31;:::i;:::-;6345:2;6338:5;6334:14;6327:55;6428:3;6424:2;6420:12;6407:26;6458:2;6448:8;6445:16;6442:36;;;6474:1;6471;6464:12;6442:36;6511:44;6547:7;6536:8;6532:2;6528:17;6511:44;:::i;:::-;6505:3;6498:5;6494:15;6487:69;;6610:3;6606:2;6602:12;6589:26;6583:3;6576:5;6572:15;6565:51;6670:3;6666:2;6662:12;6649:26;6643:3;6636:5;6632:15;6625:51;6709:30;6734:3;6730:2;6726:12;6709:30;:::i;:::-;6703:3;6696:5;6692:15;6685:55;6759:3;6808:2;6804;6800:11;6787:25;6837:2;6827:8;6824:16;6821:36;;;6853:1;6850;6843:12;6821:36;6889:44;6925:7;6914:8;6910:2;6906:17;6889:44;:::i;:::-;6884:2;6877:5;6873:14;6866:68;;;6953:3;6943:13;;7009:2;7005;7001:11;6988:25;6983:2;6976:5;6972:14;6965:49;7033:3;7023:13;;7068:30;7094:2;7090;7086:11;7068:30;:::i;:::-;7063:2;7056:5;7052:14;7045:54;7118:3;7108:13;;7153:30;7179:2;7175;7171:11;7153:30;:::i;:::-;7148:2;7141:5;7137:14;7130:54;7203:3;7193:13;;7238:30;7264:2;7260;7256:11;7238:30;:::i;:::-;7233:2;7226:5;7222:14;7215:54;7288:3;7278:13;;7323:30;7349:2;7345;7341:11;7323:30;:::i;:::-;7318:2;7311:5;7307:14;7300:54;7373:3;7363:13;;7408:30;7434:2;7430;7426:11;7408:30;:::i;:::-;7403:2;7396:5;7392:14;7385:54;7459:3;7448:14;;7495:31;7521:3;7517:2;7513:12;7495:31;:::i;:::-;7489:3;7482:5;7478:15;7471:56;7547:3;7536:14;;7583:31;7609:3;7605:2;7601:12;7583:31;:::i;:::-;7566:15;;;7559:56;;;;7635:3;7684:12;;;7671:26;7654:15;;;7647:51;7718:3;7767:12;;;7754:26;7737:15;;;7730:51;;;;7570:5;5610:2201;-1:-1:-1;;;5610:2201:32:o;7816:420::-;7913:6;7921;7974:2;7962:9;7953:7;7949:23;7945:32;7942:52;;;7990:1;7987;7980:12;7942:52;8017:23;;-1:-1:-1;;;;;8052:30:32;;8049:50;;;8095:1;8092;8085:12;8049:50;8118:61;8171:7;8162:6;8151:9;8147:22;8118:61;:::i;:::-;8108:71;8226:2;8211:18;;;;8198:32;;-1:-1:-1;;;;7816:420:32:o;8241:377::-;8434:2;8423:9;8416:21;8397:4;8460:44;8500:2;8489:9;8485:18;8477:6;8460:44;:::i;:::-;8552:9;8544:6;8540:22;8535:2;8524:9;8520:18;8513:50;8580:32;8605:6;8597;8580:32;:::i;:::-;8572:40;8241:377;-1:-1:-1;;;;;8241:377:32:o;8623:127::-;8684:10;8679:3;8675:20;8672:1;8665:31;8715:4;8712:1;8705:15;8739:4;8736:1;8729:15;8755:125;8820:9;;;8841:10;;;8838:36;;;8854:18;;:::i;:::-;8755:125;;;;:::o;8885:217::-;8925:1;8951;8941:132;;8995:10;8990:3;8986:20;8983:1;8976:31;9030:4;9027:1;9020:15;9058:4;9055:1;9048:15;8941:132;-1:-1:-1;9087:9:32;;8885:217::o;9107:128::-;9174:9;;;9195:11;;;9192:37;;;9209:18;;:::i;9574:1021::-;-1:-1:-1;;;;;;10001:36:32;;9983:55;;-1:-1:-1;;;;;10112:15:32;;;10107:2;10092:18;;10085:43;10164:15;;;10159:2;10144:18;;10137:43;9971:3;10025:2;10196:18;;10189:30;;;9942:4;;10242:44;10267:18;;;10259:6;10242:44;:::i;:::-;10228:58;;10335:2;10327:6;10323:15;10317:3;10306:9;10302:19;10295:44;10388:9;10380:6;10376:22;10370:3;10359:9;10355:19;10348:51;10416:32;10441:6;10433;10416:32;:::i;:::-;10479:3;10464:19;;10457:35;;;;10523:3;10508:19;;10501:35;;;;-1:-1:-1;;10573:15:32;;10567:3;10552:19;;;10545:44;10408:40;9574:1021;-1:-1:-1;;;;;;9574:1021:32:o;10600:1047::-;10971:4;11000:3;11030:2;11019:9;11012:21;11050:44;11090:2;11079:9;11075:18;11067:6;11050:44;:::i;:::-;11113:10;11159:15;;;11154:2;11139:18;;11132:43;11222:1;11211:21;;;;11206:2;11191:18;;11184:49;-1:-1:-1;;11264:2:32;11249:18;;11242:34;;;;11313:15;;;11307:3;11292:19;;11285:44;11366:15;;;11360:3;11345:19;;11338:44;11419:15;;;;11413:3;11398:19;;11391:44;11484:6;11472:19;;;11466:3;11451:19;;11444:48;11536:14;;11529:22;11523:3;11508:19;;11501:51;11583:3;11568:19;;11561:35;;;;11627:3;11612:19;11605:36;;;;11211:21;11042:52;-1:-1:-1;10600:1047:32:o;11652:1066::-;-1:-1:-1;;;;;12115:15:32;;;12097:34;;12167:15;;;12162:2;12147:18;;12140:43;12047:3;12214:2;12199:18;;12192:30;;;12018:4;;12245:44;12270:18;;;12262:6;12245:44;:::i;:::-;12325:15;;;12320:2;12305:18;;12298:43;12378:22;;;12372:3;12357:19;;12350:51;12231:58;-1:-1:-1;12424:32:32;12231:58;12441:6;12424:32;:::i;:::-;12410:46;;12493:6;12487:3;12476:9;12472:19;12465:35;12537:6;12531:3;12520:9;12516:19;12509:35;12595:6;12592:1;12581:21;12575:3;12564:9;12560:19;12553:50;12652:9;12644:6;12640:22;12634:3;12623:9;12619:19;12612:51;12680:32;12705:6;12697;12680:32;:::i;:::-;12672:40;11652:1066;-1:-1:-1;;;;;;;;;;;;11652:1066:32:o", - "source": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.18;\n\nlibrary QuotesV2 {\n struct PeginQuote {\n bytes20 fedBtcAddress;\n address lbcAddress;\n address liquidityProviderRskAddress;\n bytes btcRefundAddress;\n address payable rskRefundAddress;\n bytes liquidityProviderBtcAddress;\n uint256 callFee;\n uint256 penaltyFee;\n address contractAddress;\n bytes data;\n uint32 gasLimit;\n int64 nonce;\n uint256 value;\n uint32 agreementTimestamp;\n uint32 timeForDeposit;\n uint32 callTime;\n uint16 depositConfirmations;\n bool callOnRegister;\n uint256 productFeeAmount;\n uint256 gasFee;\n }\n\n struct PegOutQuote {\n address lbcAddress;\n address lpRskAddress;\n bytes btcRefundAddress;\n address rskRefundAddress;\n bytes lpBtcAddress;\n uint256 callFee;\n uint256 penaltyFee;\n int64 nonce;\n bytes deposityAddress;\n uint256 value;\n uint32 agreementTimestamp;\n uint32 depositDateLimit;\n uint16 depositConfirmations;\n uint16 transferConfirmations;\n uint32 transferTime;\n uint32 expireDate;\n uint32 expireBlock;\n uint256 productFeeAmount;\n uint256 gasFee;\n }\n\n function encodeQuote(\n PeginQuote memory quote\n ) external pure returns (bytes memory) {\n // Encode in two parts because abi.encode cannot take more than 12 parameters due to stack depth limits.\n return abi.encode(encodePart1(quote), encodePart2(quote));\n }\n\n function encodePegOutQuote(\n PegOutQuote memory quote\n ) external pure returns (bytes memory) {\n // Encode in two parts because abi.encode cannot take more than 12 parameters due to stack depth limits.\n return abi.encode(encodePegOutPart1(quote), encodePegOutPart2(quote));\n }\n\n function encodePart1(\n PeginQuote memory quote\n ) private pure returns (bytes memory) {\n return\n abi.encode(\n quote.fedBtcAddress,\n quote.lbcAddress,\n quote.liquidityProviderRskAddress,\n quote.btcRefundAddress,\n quote.rskRefundAddress,\n quote.liquidityProviderBtcAddress,\n quote.callFee,\n quote.penaltyFee,\n quote.contractAddress\n );\n }\n\n function encodePart2(\n PeginQuote memory quote\n ) private pure returns (bytes memory) {\n return\n abi.encode(\n quote.data,\n quote.gasLimit,\n quote.nonce,\n quote.value,\n quote.agreementTimestamp,\n quote.timeForDeposit,\n quote.callTime,\n quote.depositConfirmations,\n quote.callOnRegister,\n quote.productFeeAmount,\n quote.gasFee\n );\n }\n\n function encodePegOutPart1(\n PegOutQuote memory quote\n ) private pure returns (bytes memory) {\n return\n abi.encode(\n quote.lbcAddress,\n quote.lpRskAddress,\n quote.btcRefundAddress,\n quote.rskRefundAddress,\n quote.lpBtcAddress,\n quote.callFee,\n quote.penaltyFee,\n quote.nonce,\n quote.deposityAddress\n );\n }\n\n function encodePegOutPart2(\n PegOutQuote memory quote\n ) private pure returns (bytes memory) {\n return\n abi.encode(\n quote.value,\n quote.agreementTimestamp,\n quote.depositDateLimit,\n quote.depositConfirmations,\n quote.transferConfirmations,\n quote.transferTime,\n quote.expireDate,\n quote.expireBlock,\n quote.productFeeAmount,\n quote.gasFee\n );\n }\n\n function checkAgreedAmount(\n PeginQuote memory quote,\n uint transferredAmount\n ) external pure {\n uint agreedAmount = 0;\n agreedAmount = quote.value + quote.callFee + quote.productFeeAmount + quote.gasFee;\n\n\n uint delta = agreedAmount / 10000;\n // transferred amount should not be lower than (agreed amount - delta),\n // where delta is intended to tackle rounding problems\n require(\n transferredAmount >= agreedAmount - delta,\n \"LBC057\"\n );\n }\n\n}", - "sourcePath": "/Users/luischavez/iov/liquidity-bridge-contract/contracts/QuotesV2.sol", - "ast": { - "absolutePath": "project:/contracts/QuotesV2.sol", - "exportedSymbols": { - "QuotesV2": [ - 11483 - ] - }, - "id": 11484, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 11192, - "literals": [ - "solidity", - "^", - "0.8", - ".18" - ], - "nodeType": "PragmaDirective", - "src": "32:24:28" - }, - { - "abstract": false, - "baseContracts": [], - "canonicalName": "QuotesV2", - "contractDependencies": [], - "contractKind": "library", - "fullyImplemented": true, - "id": 11483, - "linearizedBaseContracts": [ - 11483 - ], - "name": "QuotesV2", - "nameLocation": "66:8:28", - "nodeType": "ContractDefinition", - "nodes": [ - { - "canonicalName": "QuotesV2.PeginQuote", - "id": 11233, - "members": [ - { - "constant": false, - "id": 11194, - "mutability": "mutable", - "name": "fedBtcAddress", - "nameLocation": "117:13:28", - "nodeType": "VariableDeclaration", - "scope": 11233, - "src": "109:21:28", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes20", - "typeString": "bytes20" - }, - "typeName": { - "id": 11193, - "name": "bytes20", - "nodeType": "ElementaryTypeName", - "src": "109:7:28", - "typeDescriptions": { - "typeIdentifier": "t_bytes20", - "typeString": "bytes20" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 11196, - "mutability": "mutable", - "name": "lbcAddress", - "nameLocation": "148:10:28", - "nodeType": "VariableDeclaration", - "scope": 11233, - "src": "140:18:28", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 11195, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "140:7:28", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 11198, - "mutability": "mutable", - "name": "liquidityProviderRskAddress", - "nameLocation": "176:27:28", - "nodeType": "VariableDeclaration", - "scope": 11233, - "src": "168:35:28", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 11197, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "168:7:28", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 11200, - "mutability": "mutable", - "name": "btcRefundAddress", - "nameLocation": "219:16:28", - "nodeType": "VariableDeclaration", - "scope": 11233, - "src": "213:22:28", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 11199, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "213:5:28", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 11202, - "mutability": "mutable", - "name": "rskRefundAddress", - "nameLocation": "261:16:28", - "nodeType": "VariableDeclaration", - "scope": 11233, - "src": "245:32:28", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - }, - "typeName": { - "id": 11201, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "245:15:28", - "stateMutability": "payable", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 11204, - "mutability": "mutable", - "name": "liquidityProviderBtcAddress", - "nameLocation": "293:27:28", - "nodeType": "VariableDeclaration", - "scope": 11233, - "src": "287:33:28", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 11203, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "287:5:28", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 11206, - "mutability": "mutable", - "name": "callFee", - "nameLocation": "338:7:28", - "nodeType": "VariableDeclaration", - "scope": 11233, - "src": "330:15:28", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 11205, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "330:7:28", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 11208, - "mutability": "mutable", - "name": "penaltyFee", - "nameLocation": "363:10:28", - "nodeType": "VariableDeclaration", - "scope": 11233, - "src": "355:18:28", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 11207, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "355:7:28", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 11210, - "mutability": "mutable", - "name": "contractAddress", - "nameLocation": "391:15:28", - "nodeType": "VariableDeclaration", - "scope": 11233, - "src": "383:23:28", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 11209, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "383:7:28", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 11212, - "mutability": "mutable", - "name": "data", - "nameLocation": "422:4:28", - "nodeType": "VariableDeclaration", - "scope": 11233, - "src": "416:10:28", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 11211, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "416:5:28", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 11214, - "mutability": "mutable", - "name": "gasLimit", - "nameLocation": "443:8:28", - "nodeType": "VariableDeclaration", - "scope": 11233, - "src": "436:15:28", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "typeName": { - "id": 11213, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "436:6:28", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 11216, - "mutability": "mutable", - "name": "nonce", - "nameLocation": "467:5:28", - "nodeType": "VariableDeclaration", - "scope": 11233, - "src": "461:11:28", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int64", - "typeString": "int64" - }, - "typeName": { - "id": 11215, - "name": "int64", - "nodeType": "ElementaryTypeName", - "src": "461:5:28", - "typeDescriptions": { - "typeIdentifier": "t_int64", - "typeString": "int64" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 11218, - "mutability": "mutable", - "name": "value", - "nameLocation": "490:5:28", - "nodeType": "VariableDeclaration", - "scope": 11233, - "src": "482:13:28", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 11217, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "482:7:28", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 11220, - "mutability": "mutable", - "name": "agreementTimestamp", - "nameLocation": "512:18:28", - "nodeType": "VariableDeclaration", - "scope": 11233, - "src": "505:25:28", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "typeName": { - "id": 11219, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "505:6:28", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 11222, - "mutability": "mutable", - "name": "timeForDeposit", - "nameLocation": "547:14:28", - "nodeType": "VariableDeclaration", - "scope": 11233, - "src": "540:21:28", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "typeName": { - "id": 11221, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "540:6:28", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 11224, - "mutability": "mutable", - "name": "callTime", - "nameLocation": "578:8:28", - "nodeType": "VariableDeclaration", - "scope": 11233, - "src": "571:15:28", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "typeName": { - "id": 11223, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "571:6:28", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 11226, - "mutability": "mutable", - "name": "depositConfirmations", - "nameLocation": "603:20:28", - "nodeType": "VariableDeclaration", - "scope": 11233, - "src": "596:27:28", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - }, - "typeName": { - "id": 11225, - "name": "uint16", - "nodeType": "ElementaryTypeName", - "src": "596:6:28", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 11228, - "mutability": "mutable", - "name": "callOnRegister", - "nameLocation": "638:14:28", - "nodeType": "VariableDeclaration", - "scope": 11233, - "src": "633:19:28", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 11227, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "633:4:28", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 11230, - "mutability": "mutable", - "name": "productFeeAmount", - "nameLocation": "670:16:28", - "nodeType": "VariableDeclaration", - "scope": 11233, - "src": "662:24:28", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 11229, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "662:7:28", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 11232, - "mutability": "mutable", - "name": "gasFee", - "nameLocation": "704:6:28", - "nodeType": "VariableDeclaration", - "scope": 11233, - "src": "696:14:28", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 11231, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "696:7:28", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "name": "PeginQuote", - "nameLocation": "88:10:28", - "nodeType": "StructDefinition", - "scope": 11483, - "src": "81:636:28", - "visibility": "public" - }, - { - "canonicalName": "QuotesV2.PegOutQuote", - "id": 11272, - "members": [ - { - "constant": false, - "id": 11235, - "mutability": "mutable", - "name": "lbcAddress", - "nameLocation": "760:10:28", - "nodeType": "VariableDeclaration", - "scope": 11272, - "src": "752:18:28", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 11234, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "752:7:28", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 11237, - "mutability": "mutable", - "name": "lpRskAddress", - "nameLocation": "788:12:28", - "nodeType": "VariableDeclaration", - "scope": 11272, - "src": "780:20:28", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 11236, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "780:7:28", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 11239, - "mutability": "mutable", - "name": "btcRefundAddress", - "nameLocation": "816:16:28", - "nodeType": "VariableDeclaration", - "scope": 11272, - "src": "810:22:28", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 11238, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "810:5:28", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 11241, - "mutability": "mutable", - "name": "rskRefundAddress", - "nameLocation": "850:16:28", - "nodeType": "VariableDeclaration", - "scope": 11272, - "src": "842:24:28", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 11240, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "842:7:28", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 11243, - "mutability": "mutable", - "name": "lpBtcAddress", - "nameLocation": "882:12:28", - "nodeType": "VariableDeclaration", - "scope": 11272, - "src": "876:18:28", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 11242, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "876:5:28", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 11245, - "mutability": "mutable", - "name": "callFee", - "nameLocation": "912:7:28", - "nodeType": "VariableDeclaration", - "scope": 11272, - "src": "904:15:28", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 11244, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "904:7:28", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 11247, - "mutability": "mutable", - "name": "penaltyFee", - "nameLocation": "937:10:28", - "nodeType": "VariableDeclaration", - "scope": 11272, - "src": "929:18:28", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 11246, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "929:7:28", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 11249, - "mutability": "mutable", - "name": "nonce", - "nameLocation": "963:5:28", - "nodeType": "VariableDeclaration", - "scope": 11272, - "src": "957:11:28", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_int64", - "typeString": "int64" - }, - "typeName": { - "id": 11248, - "name": "int64", - "nodeType": "ElementaryTypeName", - "src": "957:5:28", - "typeDescriptions": { - "typeIdentifier": "t_int64", - "typeString": "int64" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 11251, - "mutability": "mutable", - "name": "deposityAddress", - "nameLocation": "984:15:28", - "nodeType": "VariableDeclaration", - "scope": 11272, - "src": "978:21:28", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 11250, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "978:5:28", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 11253, - "mutability": "mutable", - "name": "value", - "nameLocation": "1017:5:28", - "nodeType": "VariableDeclaration", - "scope": 11272, - "src": "1009:13:28", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 11252, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1009:7:28", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 11255, - "mutability": "mutable", - "name": "agreementTimestamp", - "nameLocation": "1039:18:28", - "nodeType": "VariableDeclaration", - "scope": 11272, - "src": "1032:25:28", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "typeName": { - "id": 11254, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "1032:6:28", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 11257, - "mutability": "mutable", - "name": "depositDateLimit", - "nameLocation": "1074:16:28", - "nodeType": "VariableDeclaration", - "scope": 11272, - "src": "1067:23:28", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "typeName": { - "id": 11256, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "1067:6:28", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 11259, - "mutability": "mutable", - "name": "depositConfirmations", - "nameLocation": "1107:20:28", - "nodeType": "VariableDeclaration", - "scope": 11272, - "src": "1100:27:28", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - }, - "typeName": { - "id": 11258, - "name": "uint16", - "nodeType": "ElementaryTypeName", - "src": "1100:6:28", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 11261, - "mutability": "mutable", - "name": "transferConfirmations", - "nameLocation": "1144:21:28", - "nodeType": "VariableDeclaration", - "scope": 11272, - "src": "1137:28:28", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - }, - "typeName": { - "id": 11260, - "name": "uint16", - "nodeType": "ElementaryTypeName", - "src": "1137:6:28", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 11263, - "mutability": "mutable", - "name": "transferTime", - "nameLocation": "1182:12:28", - "nodeType": "VariableDeclaration", - "scope": 11272, - "src": "1175:19:28", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "typeName": { - "id": 11262, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "1175:6:28", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 11265, - "mutability": "mutable", - "name": "expireDate", - "nameLocation": "1211:10:28", - "nodeType": "VariableDeclaration", - "scope": 11272, - "src": "1204:17:28", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "typeName": { - "id": 11264, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "1204:6:28", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 11267, - "mutability": "mutable", - "name": "expireBlock", - "nameLocation": "1238:11:28", - "nodeType": "VariableDeclaration", - "scope": 11272, - "src": "1231:18:28", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - "typeName": { - "id": 11266, - "name": "uint32", - "nodeType": "ElementaryTypeName", - "src": "1231:6:28", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 11269, - "mutability": "mutable", - "name": "productFeeAmount", - "nameLocation": "1267:16:28", - "nodeType": "VariableDeclaration", - "scope": 11272, - "src": "1259:24:28", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 11268, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1259:7:28", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 11271, - "mutability": "mutable", - "name": "gasFee", - "nameLocation": "1301:6:28", - "nodeType": "VariableDeclaration", - "scope": 11272, - "src": "1293:14:28", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 11270, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1293:7:28", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "name": "PegOutQuote", - "nameLocation": "730:11:28", - "nodeType": "StructDefinition", - "scope": 11483, - "src": "723:591:28", - "visibility": "public" - }, - { - "body": { - "id": 11290, - "nodeType": "Block", - "src": "1417:187:28", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "id": 11283, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11275, - "src": "1570:5:28", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - ], - "id": 11282, - "name": "encodePart1", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11341, - "src": "1558:11:28", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_struct$_PeginQuote_$11233_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (struct QuotesV2.PeginQuote memory) pure returns (bytes memory)" - } - }, - "id": 11284, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1558:18:28", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "arguments": [ - { - "id": 11286, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11275, - "src": "1590:5:28", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - ], - "id": 11285, - "name": "encodePart2", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11376, - "src": "1578:11:28", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_struct$_PeginQuote_$11233_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (struct QuotesV2.PeginQuote memory) pure returns (bytes memory)" - } - }, - "id": 11287, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1578:18:28", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "id": 11280, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "1547:3:28", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 11281, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "1551:6:28", - "memberName": "encode", - "nodeType": "MemberAccess", - "src": "1547:10:28", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 11288, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1547:50:28", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 11279, - "id": 11289, - "nodeType": "Return", - "src": "1540:57:28" - } - ] - }, - "functionSelector": "00773b79", - "id": 11291, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "encodeQuote", - "nameLocation": "1329:11:28", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 11276, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 11275, - "mutability": "mutable", - "name": "quote", - "nameLocation": "1368:5:28", - "nodeType": "VariableDeclaration", - "scope": 11291, - "src": "1350:23:28", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote" - }, - "typeName": { - "id": 11274, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 11273, - "name": "PeginQuote", - "nameLocations": [ - "1350:10:28" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 11233, - "src": "1350:10:28" - }, - "referencedDeclaration": 11233, - "src": "1350:10:28", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_storage_ptr", - "typeString": "struct QuotesV2.PeginQuote" - } - }, - "visibility": "internal" - } - ], - "src": "1340:39:28" - }, - "returnParameters": { - "id": 11279, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 11278, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 11291, - "src": "1403:12:28", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 11277, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1403:5:28", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "1402:14:28" - }, - "scope": 11483, - "src": "1320:284:28", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 11309, - "nodeType": "Block", - "src": "1714:199:28", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "id": 11302, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11294, - "src": "1873:5:28", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_memory_ptr", - "typeString": "struct QuotesV2.PegOutQuote memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_memory_ptr", - "typeString": "struct QuotesV2.PegOutQuote memory" - } - ], - "id": 11301, - "name": "encodePegOutPart1", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11407, - "src": "1855:17:28", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_struct$_PegOutQuote_$11272_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (struct QuotesV2.PegOutQuote memory) pure returns (bytes memory)" - } - }, - "id": 11303, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1855:24:28", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "arguments": [ - { - "id": 11305, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11294, - "src": "1899:5:28", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_memory_ptr", - "typeString": "struct QuotesV2.PegOutQuote memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_memory_ptr", - "typeString": "struct QuotesV2.PegOutQuote memory" - } - ], - "id": 11304, - "name": "encodePegOutPart2", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11440, - "src": "1881:17:28", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_struct$_PegOutQuote_$11272_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (struct QuotesV2.PegOutQuote memory) pure returns (bytes memory)" - } - }, - "id": 11306, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1881:24:28", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "id": 11299, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "1844:3:28", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 11300, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "1848:6:28", - "memberName": "encode", - "nodeType": "MemberAccess", - "src": "1844:10:28", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 11307, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1844:62:28", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 11298, - "id": 11308, - "nodeType": "Return", - "src": "1837:69:28" - } - ] - }, - "functionSelector": "1280c738", - "id": 11310, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "encodePegOutQuote", - "nameLocation": "1619:17:28", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 11295, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 11294, - "mutability": "mutable", - "name": "quote", - "nameLocation": "1665:5:28", - "nodeType": "VariableDeclaration", - "scope": 11310, - "src": "1646:24:28", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_memory_ptr", - "typeString": "struct QuotesV2.PegOutQuote" - }, - "typeName": { - "id": 11293, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 11292, - "name": "PegOutQuote", - "nameLocations": [ - "1646:11:28" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 11272, - "src": "1646:11:28" - }, - "referencedDeclaration": 11272, - "src": "1646:11:28", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_storage_ptr", - "typeString": "struct QuotesV2.PegOutQuote" - } - }, - "visibility": "internal" - } - ], - "src": "1636:40:28" - }, - "returnParameters": { - "id": 11298, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 11297, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 11310, - "src": "1700:12:28", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 11296, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1700:5:28", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "1699:14:28" - }, - "scope": 11483, - "src": "1610:303:28", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 11340, - "nodeType": "Block", - "src": "2015:417:28", - "statements": [ - { - "expression": { - "arguments": [ - { - "expression": { - "id": 11320, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11313, - "src": "2072:5:28", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 11321, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "2078:13:28", - "memberName": "fedBtcAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 11194, - "src": "2072:19:28", - "typeDescriptions": { - "typeIdentifier": "t_bytes20", - "typeString": "bytes20" - } - }, - { - "expression": { - "id": 11322, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11313, - "src": "2109:5:28", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 11323, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "2115:10:28", - "memberName": "lbcAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 11196, - "src": "2109:16:28", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 11324, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11313, - "src": "2143:5:28", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 11325, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "2149:27:28", - "memberName": "liquidityProviderRskAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 11198, - "src": "2143:33:28", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 11326, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11313, - "src": "2194:5:28", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 11327, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "2200:16:28", - "memberName": "btcRefundAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 11200, - "src": "2194:22:28", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "expression": { - "id": 11328, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11313, - "src": "2234:5:28", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 11329, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "2240:16:28", - "memberName": "rskRefundAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 11202, - "src": "2234:22:28", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - { - "expression": { - "id": 11330, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11313, - "src": "2274:5:28", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 11331, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "2280:27:28", - "memberName": "liquidityProviderBtcAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 11204, - "src": "2274:33:28", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "expression": { - "id": 11332, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11313, - "src": "2325:5:28", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 11333, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "2331:7:28", - "memberName": "callFee", - "nodeType": "MemberAccess", - "referencedDeclaration": 11206, - "src": "2325:13:28", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "expression": { - "id": 11334, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11313, - "src": "2356:5:28", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 11335, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "2362:10:28", - "memberName": "penaltyFee", - "nodeType": "MemberAccess", - "referencedDeclaration": 11208, - "src": "2356:16:28", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "expression": { - "id": 11336, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11313, - "src": "2390:5:28", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 11337, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "2396:15:28", - "memberName": "contractAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 11210, - "src": "2390:21:28", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes20", - "typeString": "bytes20" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "expression": { - "id": 11318, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "2044:3:28", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 11319, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "2048:6:28", - "memberName": "encode", - "nodeType": "MemberAccess", - "src": "2044:10:28", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 11338, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2044:381:28", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 11317, - "id": 11339, - "nodeType": "Return", - "src": "2025:400:28" - } - ] - }, - "id": 11341, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "encodePart1", - "nameLocation": "1928:11:28", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 11314, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 11313, - "mutability": "mutable", - "name": "quote", - "nameLocation": "1967:5:28", - "nodeType": "VariableDeclaration", - "scope": 11341, - "src": "1949:23:28", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote" - }, - "typeName": { - "id": 11312, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 11311, - "name": "PeginQuote", - "nameLocations": [ - "1949:10:28" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 11233, - "src": "1949:10:28" - }, - "referencedDeclaration": 11233, - "src": "1949:10:28", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_storage_ptr", - "typeString": "struct QuotesV2.PeginQuote" - } - }, - "visibility": "internal" - } - ], - "src": "1939:39:28" - }, - "returnParameters": { - "id": 11317, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 11316, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 11341, - "src": "2001:12:28", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 11315, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "2001:5:28", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "2000:14:28" - }, - "scope": 11483, - "src": "1919:513:28", - "stateMutability": "pure", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 11375, - "nodeType": "Block", - "src": "2534:442:28", - "statements": [ - { - "expression": { - "arguments": [ - { - "expression": { - "id": 11351, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11344, - "src": "2591:5:28", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 11352, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "2597:4:28", - "memberName": "data", - "nodeType": "MemberAccess", - "referencedDeclaration": 11212, - "src": "2591:10:28", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "expression": { - "id": 11353, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11344, - "src": "2619:5:28", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 11354, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "2625:8:28", - "memberName": "gasLimit", - "nodeType": "MemberAccess", - "referencedDeclaration": 11214, - "src": "2619:14:28", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - { - "expression": { - "id": 11355, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11344, - "src": "2651:5:28", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 11356, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "2657:5:28", - "memberName": "nonce", - "nodeType": "MemberAccess", - "referencedDeclaration": 11216, - "src": "2651:11:28", - "typeDescriptions": { - "typeIdentifier": "t_int64", - "typeString": "int64" - } - }, - { - "expression": { - "id": 11357, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11344, - "src": "2680:5:28", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 11358, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "2686:5:28", - "memberName": "value", - "nodeType": "MemberAccess", - "referencedDeclaration": 11218, - "src": "2680:11:28", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "expression": { - "id": 11359, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11344, - "src": "2709:5:28", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 11360, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "2715:18:28", - "memberName": "agreementTimestamp", - "nodeType": "MemberAccess", - "referencedDeclaration": 11220, - "src": "2709:24:28", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - { - "expression": { - "id": 11361, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11344, - "src": "2751:5:28", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 11362, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "2757:14:28", - "memberName": "timeForDeposit", - "nodeType": "MemberAccess", - "referencedDeclaration": 11222, - "src": "2751:20:28", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - { - "expression": { - "id": 11363, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11344, - "src": "2789:5:28", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 11364, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "2795:8:28", - "memberName": "callTime", - "nodeType": "MemberAccess", - "referencedDeclaration": 11224, - "src": "2789:14:28", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - { - "expression": { - "id": 11365, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11344, - "src": "2821:5:28", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 11366, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "2827:20:28", - "memberName": "depositConfirmations", - "nodeType": "MemberAccess", - "referencedDeclaration": 11226, - "src": "2821:26:28", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - { - "expression": { - "id": 11367, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11344, - "src": "2865:5:28", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 11368, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "2871:14:28", - "memberName": "callOnRegister", - "nodeType": "MemberAccess", - "referencedDeclaration": 11228, - "src": "2865:20:28", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "expression": { - "id": 11369, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11344, - "src": "2903:5:28", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 11370, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "2909:16:28", - "memberName": "productFeeAmount", - "nodeType": "MemberAccess", - "referencedDeclaration": 11230, - "src": "2903:22:28", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "expression": { - "id": 11371, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11344, - "src": "2943:5:28", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 11372, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "2949:6:28", - "memberName": "gasFee", - "nodeType": "MemberAccess", - "referencedDeclaration": 11232, - "src": "2943:12:28", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - { - "typeIdentifier": "t_int64", - "typeString": "int64" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 11349, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "2563:3:28", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 11350, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "2567:6:28", - "memberName": "encode", - "nodeType": "MemberAccess", - "src": "2563:10:28", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 11373, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2563:406:28", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 11348, - "id": 11374, - "nodeType": "Return", - "src": "2544:425:28" - } - ] - }, - "id": 11376, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "encodePart2", - "nameLocation": "2447:11:28", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 11345, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 11344, - "mutability": "mutable", - "name": "quote", - "nameLocation": "2486:5:28", - "nodeType": "VariableDeclaration", - "scope": 11376, - "src": "2468:23:28", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote" - }, - "typeName": { - "id": 11343, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 11342, - "name": "PeginQuote", - "nameLocations": [ - "2468:10:28" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 11233, - "src": "2468:10:28" - }, - "referencedDeclaration": 11233, - "src": "2468:10:28", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_storage_ptr", - "typeString": "struct QuotesV2.PeginQuote" - } - }, - "visibility": "internal" - } - ], - "src": "2458:39:28" - }, - "returnParameters": { - "id": 11348, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 11347, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 11376, - "src": "2520:12:28", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 11346, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "2520:5:28", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "2519:14:28" - }, - "scope": 11483, - "src": "2438:538:28", - "stateMutability": "pure", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 11406, - "nodeType": "Block", - "src": "3085:379:28", - "statements": [ - { - "expression": { - "arguments": [ - { - "expression": { - "id": 11386, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11379, - "src": "3142:5:28", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_memory_ptr", - "typeString": "struct QuotesV2.PegOutQuote memory" - } - }, - "id": 11387, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "3148:10:28", - "memberName": "lbcAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 11235, - "src": "3142:16:28", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 11388, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11379, - "src": "3176:5:28", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_memory_ptr", - "typeString": "struct QuotesV2.PegOutQuote memory" - } - }, - "id": 11389, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "3182:12:28", - "memberName": "lpRskAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 11237, - "src": "3176:18:28", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 11390, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11379, - "src": "3212:5:28", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_memory_ptr", - "typeString": "struct QuotesV2.PegOutQuote memory" - } - }, - "id": 11391, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "3218:16:28", - "memberName": "btcRefundAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 11239, - "src": "3212:22:28", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "expression": { - "id": 11392, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11379, - "src": "3252:5:28", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_memory_ptr", - "typeString": "struct QuotesV2.PegOutQuote memory" - } - }, - "id": 11393, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "3258:16:28", - "memberName": "rskRefundAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 11241, - "src": "3252:22:28", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "id": 11394, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11379, - "src": "3292:5:28", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_memory_ptr", - "typeString": "struct QuotesV2.PegOutQuote memory" - } - }, - "id": 11395, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "3298:12:28", - "memberName": "lpBtcAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 11243, - "src": "3292:18:28", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "expression": { - "id": 11396, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11379, - "src": "3328:5:28", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_memory_ptr", - "typeString": "struct QuotesV2.PegOutQuote memory" - } - }, - "id": 11397, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "3334:7:28", - "memberName": "callFee", - "nodeType": "MemberAccess", - "referencedDeclaration": 11245, - "src": "3328:13:28", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "expression": { - "id": 11398, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11379, - "src": "3359:5:28", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_memory_ptr", - "typeString": "struct QuotesV2.PegOutQuote memory" - } - }, - "id": 11399, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "3365:10:28", - "memberName": "penaltyFee", - "nodeType": "MemberAccess", - "referencedDeclaration": 11247, - "src": "3359:16:28", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "expression": { - "id": 11400, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11379, - "src": "3393:5:28", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_memory_ptr", - "typeString": "struct QuotesV2.PegOutQuote memory" - } - }, - "id": 11401, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "3399:5:28", - "memberName": "nonce", - "nodeType": "MemberAccess", - "referencedDeclaration": 11249, - "src": "3393:11:28", - "typeDescriptions": { - "typeIdentifier": "t_int64", - "typeString": "int64" - } - }, - { - "expression": { - "id": 11402, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11379, - "src": "3422:5:28", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_memory_ptr", - "typeString": "struct QuotesV2.PegOutQuote memory" - } - }, - "id": 11403, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "3428:15:28", - "memberName": "deposityAddress", - "nodeType": "MemberAccess", - "referencedDeclaration": 11251, - "src": "3422:21:28", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_int64", - "typeString": "int64" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "id": 11384, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "3114:3:28", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 11385, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "3118:6:28", - "memberName": "encode", - "nodeType": "MemberAccess", - "src": "3114:10:28", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 11404, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "3114:343:28", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 11383, - "id": 11405, - "nodeType": "Return", - "src": "3095:362:28" - } - ] - }, - "id": 11407, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "encodePegOutPart1", - "nameLocation": "2991:17:28", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 11380, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 11379, - "mutability": "mutable", - "name": "quote", - "nameLocation": "3037:5:28", - "nodeType": "VariableDeclaration", - "scope": 11407, - "src": "3018:24:28", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_memory_ptr", - "typeString": "struct QuotesV2.PegOutQuote" - }, - "typeName": { - "id": 11378, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 11377, - "name": "PegOutQuote", - "nameLocations": [ - "3018:11:28" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 11272, - "src": "3018:11:28" - }, - "referencedDeclaration": 11272, - "src": "3018:11:28", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_storage_ptr", - "typeString": "struct QuotesV2.PegOutQuote" - } - }, - "visibility": "internal" - } - ], - "src": "3008:40:28" - }, - "returnParameters": { - "id": 11383, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 11382, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 11407, - "src": "3071:12:28", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 11381, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "3071:5:28", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "3070:14:28" - }, - "scope": 11483, - "src": "2982:482:28", - "stateMutability": "pure", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 11439, - "nodeType": "Block", - "src": "3573:435:28", - "statements": [ - { - "expression": { - "arguments": [ - { - "expression": { - "id": 11417, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11410, - "src": "3630:5:28", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_memory_ptr", - "typeString": "struct QuotesV2.PegOutQuote memory" - } - }, - "id": 11418, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "3636:5:28", - "memberName": "value", - "nodeType": "MemberAccess", - "referencedDeclaration": 11253, - "src": "3630:11:28", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "expression": { - "id": 11419, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11410, - "src": "3659:5:28", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_memory_ptr", - "typeString": "struct QuotesV2.PegOutQuote memory" - } - }, - "id": 11420, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "3665:18:28", - "memberName": "agreementTimestamp", - "nodeType": "MemberAccess", - "referencedDeclaration": 11255, - "src": "3659:24:28", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - { - "expression": { - "id": 11421, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11410, - "src": "3701:5:28", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_memory_ptr", - "typeString": "struct QuotesV2.PegOutQuote memory" - } - }, - "id": 11422, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "3707:16:28", - "memberName": "depositDateLimit", - "nodeType": "MemberAccess", - "referencedDeclaration": 11257, - "src": "3701:22:28", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - { - "expression": { - "id": 11423, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11410, - "src": "3741:5:28", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_memory_ptr", - "typeString": "struct QuotesV2.PegOutQuote memory" - } - }, - "id": 11424, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "3747:20:28", - "memberName": "depositConfirmations", - "nodeType": "MemberAccess", - "referencedDeclaration": 11259, - "src": "3741:26:28", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - { - "expression": { - "id": 11425, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11410, - "src": "3785:5:28", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_memory_ptr", - "typeString": "struct QuotesV2.PegOutQuote memory" - } - }, - "id": 11426, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "3791:21:28", - "memberName": "transferConfirmations", - "nodeType": "MemberAccess", - "referencedDeclaration": 11261, - "src": "3785:27:28", - "typeDescriptions": { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - } - }, - { - "expression": { - "id": 11427, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11410, - "src": "3830:5:28", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_memory_ptr", - "typeString": "struct QuotesV2.PegOutQuote memory" - } - }, - "id": 11428, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "3836:12:28", - "memberName": "transferTime", - "nodeType": "MemberAccess", - "referencedDeclaration": 11263, - "src": "3830:18:28", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - { - "expression": { - "id": 11429, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11410, - "src": "3866:5:28", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_memory_ptr", - "typeString": "struct QuotesV2.PegOutQuote memory" - } - }, - "id": 11430, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "3872:10:28", - "memberName": "expireDate", - "nodeType": "MemberAccess", - "referencedDeclaration": 11265, - "src": "3866:16:28", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - { - "expression": { - "id": 11431, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11410, - "src": "3900:5:28", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_memory_ptr", - "typeString": "struct QuotesV2.PegOutQuote memory" - } - }, - "id": 11432, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "3906:11:28", - "memberName": "expireBlock", - "nodeType": "MemberAccess", - "referencedDeclaration": 11267, - "src": "3900:17:28", - "typeDescriptions": { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - } - }, - { - "expression": { - "id": 11433, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11410, - "src": "3935:5:28", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_memory_ptr", - "typeString": "struct QuotesV2.PegOutQuote memory" - } - }, - "id": 11434, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "3941:16:28", - "memberName": "productFeeAmount", - "nodeType": "MemberAccess", - "referencedDeclaration": 11269, - "src": "3935:22:28", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "expression": { - "id": 11435, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11410, - "src": "3975:5:28", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_memory_ptr", - "typeString": "struct QuotesV2.PegOutQuote memory" - } - }, - "id": 11436, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "3981:6:28", - "memberName": "gasFee", - "nodeType": "MemberAccess", - "referencedDeclaration": 11271, - "src": "3975:12:28", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - }, - { - "typeIdentifier": "t_uint16", - "typeString": "uint16" - }, - { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - { - "typeIdentifier": "t_uint32", - "typeString": "uint32" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 11415, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "3602:3:28", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 11416, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "3606:6:28", - "memberName": "encode", - "nodeType": "MemberAccess", - "src": "3602:10:28", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 11437, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "3602:399:28", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 11414, - "id": 11438, - "nodeType": "Return", - "src": "3583:418:28" - } - ] - }, - "id": 11440, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "encodePegOutPart2", - "nameLocation": "3479:17:28", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 11411, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 11410, - "mutability": "mutable", - "name": "quote", - "nameLocation": "3525:5:28", - "nodeType": "VariableDeclaration", - "scope": 11440, - "src": "3506:24:28", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_memory_ptr", - "typeString": "struct QuotesV2.PegOutQuote" - }, - "typeName": { - "id": 11409, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 11408, - "name": "PegOutQuote", - "nameLocations": [ - "3506:11:28" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 11272, - "src": "3506:11:28" - }, - "referencedDeclaration": 11272, - "src": "3506:11:28", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PegOutQuote_$11272_storage_ptr", - "typeString": "struct QuotesV2.PegOutQuote" - } - }, - "visibility": "internal" - } - ], - "src": "3496:40:28" - }, - "returnParameters": { - "id": 11414, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 11413, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 11440, - "src": "3559:12:28", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 11412, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "3559:5:28", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "3558:14:28" - }, - "scope": 11483, - "src": "3470:538:28", - "stateMutability": "pure", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 11481, - "nodeType": "Block", - "src": "4126:422:28", - "statements": [ - { - "assignments": [ - 11449 - ], - "declarations": [ - { - "constant": false, - "id": 11449, - "mutability": "mutable", - "name": "agreedAmount", - "nameLocation": "4141:12:28", - "nodeType": "VariableDeclaration", - "scope": 11481, - "src": "4136:17:28", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 11448, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "4136:4:28", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 11451, - "initialValue": { - "hexValue": "30", - "id": 11450, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4156:1:28", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "4136:21:28" - }, - { - "expression": { - "id": 11464, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 11452, - "name": "agreedAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11449, - "src": "4167:12:28", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 11463, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 11460, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 11457, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 11453, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11443, - "src": "4182:5:28", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 11454, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "4188:5:28", - "memberName": "value", - "nodeType": "MemberAccess", - "referencedDeclaration": 11218, - "src": "4182:11:28", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "expression": { - "id": 11455, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11443, - "src": "4196:5:28", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 11456, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "4202:7:28", - "memberName": "callFee", - "nodeType": "MemberAccess", - "referencedDeclaration": 11206, - "src": "4196:13:28", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "4182:27:28", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "expression": { - "id": 11458, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11443, - "src": "4212:5:28", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 11459, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "4218:16:28", - "memberName": "productFeeAmount", - "nodeType": "MemberAccess", - "referencedDeclaration": 11230, - "src": "4212:22:28", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "4182:52:28", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "expression": { - "id": 11461, - "name": "quote", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11443, - "src": "4237:5:28", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote memory" - } - }, - "id": 11462, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "4243:6:28", - "memberName": "gasFee", - "nodeType": "MemberAccess", - "referencedDeclaration": 11232, - "src": "4237:12:28", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "4182:67:28", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "4167:82:28", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 11465, - "nodeType": "ExpressionStatement", - "src": "4167:82:28" - }, - { - "assignments": [ - 11467 - ], - "declarations": [ - { - "constant": false, - "id": 11467, - "mutability": "mutable", - "name": "delta", - "nameLocation": "4266:5:28", - "nodeType": "VariableDeclaration", - "scope": 11481, - "src": "4261:10:28", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 11466, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "4261:4:28", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 11471, - "initialValue": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 11470, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 11468, - "name": "agreedAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11449, - "src": "4274:12:28", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "/", - "rightExpression": { - "hexValue": "3130303030", - "id": 11469, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4289:5:28", - "typeDescriptions": { - "typeIdentifier": "t_rational_10000_by_1", - "typeString": "int_const 10000" - }, - "value": "10000" - }, - "src": "4274:20:28", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "4261:33:28" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 11477, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 11473, - "name": "transferredAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11445, - "src": "4468:17:28", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 11476, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 11474, - "name": "agreedAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11449, - "src": "4489:12:28", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "id": 11475, - "name": "delta", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11467, - "src": "4504:5:28", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "4489:20:28", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "4468:41:28", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4c4243303537", - "id": 11478, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4523:8:28", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_edc8872f52a3fbd4c102c7239a16e50d62a454725123fb252e7131b6a2223277", - "typeString": "literal_string \"LBC057\"" - }, - "value": "LBC057" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_edc8872f52a3fbd4c102c7239a16e50d62a454725123fb252e7131b6a2223277", - "typeString": "literal_string \"LBC057\"" - } - ], - "id": 11472, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "4447:7:28", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 11479, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4447:94:28", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 11480, - "nodeType": "ExpressionStatement", - "src": "4447:94:28" - } - ] - }, - "functionSelector": "fa6ea3e7", - "id": 11482, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "checkAgreedAmount", - "nameLocation": "4023:17:28", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 11446, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 11443, - "mutability": "mutable", - "name": "quote", - "nameLocation": "4068:5:28", - "nodeType": "VariableDeclaration", - "scope": 11482, - "src": "4050:23:28", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_memory_ptr", - "typeString": "struct QuotesV2.PeginQuote" - }, - "typeName": { - "id": 11442, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 11441, - "name": "PeginQuote", - "nameLocations": [ - "4050:10:28" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 11233, - "src": "4050:10:28" - }, - "referencedDeclaration": 11233, - "src": "4050:10:28", - "typeDescriptions": { - "typeIdentifier": "t_struct$_PeginQuote_$11233_storage_ptr", - "typeString": "struct QuotesV2.PeginQuote" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 11445, - "mutability": "mutable", - "name": "transferredAmount", - "nameLocation": "4088:17:28", - "nodeType": "VariableDeclaration", - "scope": 11482, - "src": "4083:22:28", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 11444, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "4083:4:28", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "4040:71:28" - }, - "returnParameters": { - "id": 11447, - "nodeType": "ParameterList", - "parameters": [], - "src": "4126:0:28" - }, - "scope": 11483, - "src": "4014:534:28", - "stateMutability": "pure", - "virtual": false, - "visibility": "external" - } - ], - "scope": 11484, - "src": "58:4493:28", - "usedErrors": [] - } - ], - "src": "32:4519:28" - }, - "compiler": { - "name": "solc", - "version": "0.8.18+commit.87f61d96.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "3.4.13", - "updatedAt": "2024-12-10T18:55:01.638Z", - "networkType": "ethereum", - "devdoc": { - "kind": "dev", - "methods": {}, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } -} \ No newline at end of file diff --git a/build/contracts/ReentrancyGuardUpgradeable.json b/build/contracts/ReentrancyGuardUpgradeable.json deleted file mode 100644 index 64cd339..0000000 --- a/build/contracts/ReentrancyGuardUpgradeable.json +++ /dev/null @@ -1,981 +0,0 @@ -{ - "contractName": "ReentrancyGuardUpgradeable", - "abi": [ - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint8", - "name": "version", - "type": "uint8" - } - ], - "name": "Initialized", - "type": "event" - } - ], - "metadata": "{\"compiler\":{\"version\":\"0.8.18+commit.87f61d96\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"}],\"devdoc\":{\"details\":\"Contract module that helps prevent reentrant calls to a function. Inheriting from `ReentrancyGuard` will make the {nonReentrant} modifier available, which can be applied to functions to make sure there are no nested (reentrant) calls to them. Note that because there is a single `nonReentrant` guard, functions marked as `nonReentrant` may not call one another. This can be worked around by making those functions `private`, and then adding `external` `nonReentrant` entry points to them. TIP: If you would like to learn more about reentrancy and alternative ways to protect against it, check out our blog post https://blog.openzeppelin.com/reentrancy-after-istanbul/[Reentrancy After Istanbul].\",\"events\":{\"Initialized(uint8)\":{\"details\":\"Triggered when the contract has been initialized or reinitialized.\"}},\"kind\":\"dev\",\"methods\":{},\"stateVariables\":{\"__gap\":{\"details\":\"This empty reserved space is put in place to allow future versions to add new variables without shifting down storage in the inheritance chain. See https://docs.openzeppelin.com/contracts/4.x/upgradeable#storage_gaps\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.sol\":\"ReentrancyGuardUpgradeable\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":1},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.sol\":{\"keccak256\":\"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f\",\"dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC\"]},\"@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]}},\"version\":1}", - "bytecode": "0x", - "deployedBytecode": "0x", - "immutableReferences": {}, - "generatedSources": [], - "deployedGeneratedSources": [], - "sourceMap": "", - "deployedSourceMap": "", - "source": "// SPDX-License-Identifier: MIT\n// OpenZeppelin Contracts (last updated v4.9.0) (security/ReentrancyGuard.sol)\n\npragma solidity ^0.8.0;\nimport {Initializable} from \"../proxy/utils/Initializable.sol\";\n\n/**\n * @dev Contract module that helps prevent reentrant calls to a function.\n *\n * Inheriting from `ReentrancyGuard` will make the {nonReentrant} modifier\n * available, which can be applied to functions to make sure there are no nested\n * (reentrant) calls to them.\n *\n * Note that because there is a single `nonReentrant` guard, functions marked as\n * `nonReentrant` may not call one another. This can be worked around by making\n * those functions `private`, and then adding `external` `nonReentrant` entry\n * points to them.\n *\n * TIP: If you would like to learn more about reentrancy and alternative ways\n * to protect against it, check out our blog post\n * https://blog.openzeppelin.com/reentrancy-after-istanbul/[Reentrancy After Istanbul].\n */\nabstract contract ReentrancyGuardUpgradeable is Initializable {\n // Booleans are more expensive than uint256 or any type that takes up a full\n // word because each write operation emits an extra SLOAD to first read the\n // slot's contents, replace the bits taken up by the boolean, and then write\n // back. This is the compiler's defense against contract upgrades and\n // pointer aliasing, and it cannot be disabled.\n\n // The values being non-zero value makes deployment a bit more expensive,\n // but in exchange the refund on every call to nonReentrant will be lower in\n // amount. Since refunds are capped to a percentage of the total\n // transaction's gas, it is best to keep them low in cases like this one, to\n // increase the likelihood of the full refund coming into effect.\n uint256 private constant _NOT_ENTERED = 1;\n uint256 private constant _ENTERED = 2;\n\n uint256 private _status;\n\n function __ReentrancyGuard_init() internal onlyInitializing {\n __ReentrancyGuard_init_unchained();\n }\n\n function __ReentrancyGuard_init_unchained() internal onlyInitializing {\n _status = _NOT_ENTERED;\n }\n\n /**\n * @dev Prevents a contract from calling itself, directly or indirectly.\n * Calling a `nonReentrant` function from another `nonReentrant`\n * function is not supported. It is possible to prevent this from happening\n * by making the `nonReentrant` function external, and making it call a\n * `private` function that does the actual work.\n */\n modifier nonReentrant() {\n _nonReentrantBefore();\n _;\n _nonReentrantAfter();\n }\n\n function _nonReentrantBefore() private {\n // On the first call to nonReentrant, _status will be _NOT_ENTERED\n require(_status != _ENTERED, \"ReentrancyGuard: reentrant call\");\n\n // Any calls to nonReentrant after this point will fail\n _status = _ENTERED;\n }\n\n function _nonReentrantAfter() private {\n // By storing the original value once again, a refund is triggered (see\n // https://eips.ethereum.org/EIPS/eip-2200)\n _status = _NOT_ENTERED;\n }\n\n /**\n * @dev Returns true if the reentrancy guard is currently set to \"entered\", which indicates there is a\n * `nonReentrant` function in the call stack.\n */\n function _reentrancyGuardEntered() internal view returns (bool) {\n return _status == _ENTERED;\n }\n\n /**\n * @dev This empty reserved space is put in place to allow future versions to add new\n * variables without shifting down storage in the inheritance chain.\n * See https://docs.openzeppelin.com/contracts/4.x/upgradeable#storage_gaps\n */\n uint256[49] private __gap;\n}\n", - "sourcePath": "@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.sol", - "ast": { - "absolutePath": "@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.sol", - "exportedSymbols": { - "Initializable": [ - 301 - ], - "ReentrancyGuardUpgradeable": [ - 386 - ] - }, - "id": 387, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 303, - "literals": [ - "solidity", - "^", - "0.8", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "112:23:2" - }, - { - "absolutePath": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol", - "file": "../proxy/utils/Initializable.sol", - "id": 305, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 387, - "sourceUnit": 302, - "src": "136:63:2", - "symbolAliases": [ - { - "foreign": { - "id": 304, - "name": "Initializable", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 301, - "src": "144:13:2", - "typeDescriptions": {} - }, - "nameLocation": "-1:-1:-1" - } - ], - "unitAlias": "" - }, - { - "abstract": true, - "baseContracts": [ - { - "baseName": { - "id": 307, - "name": "Initializable", - "nameLocations": [ - "1000:13:2" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 301, - "src": "1000:13:2" - }, - "id": 308, - "nodeType": "InheritanceSpecifier", - "src": "1000:13:2" - } - ], - "canonicalName": "ReentrancyGuardUpgradeable", - "contractDependencies": [], - "contractKind": "contract", - "documentation": { - "id": 306, - "nodeType": "StructuredDocumentation", - "src": "201:750:2", - "text": " @dev Contract module that helps prevent reentrant calls to a function.\n Inheriting from `ReentrancyGuard` will make the {nonReentrant} modifier\n available, which can be applied to functions to make sure there are no nested\n (reentrant) calls to them.\n Note that because there is a single `nonReentrant` guard, functions marked as\n `nonReentrant` may not call one another. This can be worked around by making\n those functions `private`, and then adding `external` `nonReentrant` entry\n points to them.\n TIP: If you would like to learn more about reentrancy and alternative ways\n to protect against it, check out our blog post\n https://blog.openzeppelin.com/reentrancy-after-istanbul/[Reentrancy After Istanbul]." - }, - "fullyImplemented": true, - "id": 386, - "linearizedBaseContracts": [ - 386, - 301 - ], - "name": "ReentrancyGuardUpgradeable", - "nameLocation": "970:26:2", - "nodeType": "ContractDefinition", - "nodes": [ - { - "constant": true, - "id": 311, - "mutability": "constant", - "name": "_NOT_ENTERED", - "nameLocation": "1793:12:2", - "nodeType": "VariableDeclaration", - "scope": 386, - "src": "1768:41:2", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 309, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1768:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": { - "hexValue": "31", - "id": 310, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1808:1:2", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "visibility": "private" - }, - { - "constant": true, - "id": 314, - "mutability": "constant", - "name": "_ENTERED", - "nameLocation": "1840:8:2", - "nodeType": "VariableDeclaration", - "scope": 386, - "src": "1815:37:2", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 312, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1815:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": { - "hexValue": "32", - "id": 313, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1851:1:2", - "typeDescriptions": { - "typeIdentifier": "t_rational_2_by_1", - "typeString": "int_const 2" - }, - "value": "2" - }, - "visibility": "private" - }, - { - "constant": false, - "id": 316, - "mutability": "mutable", - "name": "_status", - "nameLocation": "1875:7:2", - "nodeType": "VariableDeclaration", - "scope": 386, - "src": "1859:23:2", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 315, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1859:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "private" - }, - { - "body": { - "id": 324, - "nodeType": "Block", - "src": "1949:51:2", - "statements": [ - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 321, - "name": "__ReentrancyGuard_init_unchained", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 335, - "src": "1959:32:2", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", - "typeString": "function ()" - } - }, - "id": 322, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "1959:34:2", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 323, - "nodeType": "ExpressionStatement", - "src": "1959:34:2" - } - ] - }, - "id": 325, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "id": 319, - "kind": "modifierInvocation", - "modifierName": { - "id": 318, - "name": "onlyInitializing", - "nameLocations": [ - "1932:16:2" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 246, - "src": "1932:16:2" - }, - "nodeType": "ModifierInvocation", - "src": "1932:16:2" - } - ], - "name": "__ReentrancyGuard_init", - "nameLocation": "1898:22:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 317, - "nodeType": "ParameterList", - "parameters": [], - "src": "1920:2:2" - }, - "returnParameters": { - "id": 320, - "nodeType": "ParameterList", - "parameters": [], - "src": "1949:0:2" - }, - "scope": 386, - "src": "1889:111:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 334, - "nodeType": "Block", - "src": "2076:39:2", - "statements": [ - { - "expression": { - "id": 332, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 330, - "name": "_status", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 316, - "src": "2086:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 331, - "name": "_NOT_ENTERED", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 311, - "src": "2096:12:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2086:22:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 333, - "nodeType": "ExpressionStatement", - "src": "2086:22:2" - } - ] - }, - "id": 335, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "id": 328, - "kind": "modifierInvocation", - "modifierName": { - "id": 327, - "name": "onlyInitializing", - "nameLocations": [ - "2059:16:2" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 246, - "src": "2059:16:2" - }, - "nodeType": "ModifierInvocation", - "src": "2059:16:2" - } - ], - "name": "__ReentrancyGuard_init_unchained", - "nameLocation": "2015:32:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 326, - "nodeType": "ParameterList", - "parameters": [], - "src": "2047:2:2" - }, - "returnParameters": { - "id": 329, - "nodeType": "ParameterList", - "parameters": [], - "src": "2076:0:2" - }, - "scope": 386, - "src": "2006:109:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 345, - "nodeType": "Block", - "src": "2516:79:2", - "statements": [ - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 338, - "name": "_nonReentrantBefore", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 361, - "src": "2526:19:2", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", - "typeString": "function ()" - } - }, - "id": 339, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2526:21:2", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 340, - "nodeType": "ExpressionStatement", - "src": "2526:21:2" - }, - { - "id": 341, - "nodeType": "PlaceholderStatement", - "src": "2557:1:2" - }, - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 342, - "name": "_nonReentrantAfter", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 369, - "src": "2568:18:2", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", - "typeString": "function ()" - } - }, - "id": 343, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2568:20:2", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 344, - "nodeType": "ExpressionStatement", - "src": "2568:20:2" - } - ] - }, - "documentation": { - "id": 336, - "nodeType": "StructuredDocumentation", - "src": "2121:366:2", - "text": " @dev Prevents a contract from calling itself, directly or indirectly.\n Calling a `nonReentrant` function from another `nonReentrant`\n function is not supported. It is possible to prevent this from happening\n by making the `nonReentrant` function external, and making it call a\n `private` function that does the actual work." - }, - "id": 346, - "name": "nonReentrant", - "nameLocation": "2501:12:2", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 337, - "nodeType": "ParameterList", - "parameters": [], - "src": "2513:2:2" - }, - "src": "2492:103:2", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 360, - "nodeType": "Block", - "src": "2640:248:2", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 352, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 350, - "name": "_status", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 316, - "src": "2733:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "id": 351, - "name": "_ENTERED", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 314, - "src": "2744:8:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2733:19:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "5265656e7472616e637947756172643a207265656e7472616e742063616c6c", - "id": 353, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2754:33:2", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_ebf73bba305590e4764d5cb53b69bffd6d4d092d1a67551cb346f8cfcdab8619", - "typeString": "literal_string \"ReentrancyGuard: reentrant call\"" - }, - "value": "ReentrancyGuard: reentrant call" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_ebf73bba305590e4764d5cb53b69bffd6d4d092d1a67551cb346f8cfcdab8619", - "typeString": "literal_string \"ReentrancyGuard: reentrant call\"" - } - ], - "id": 349, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "2725:7:2", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 354, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "2725:63:2", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 355, - "nodeType": "ExpressionStatement", - "src": "2725:63:2" - }, - { - "expression": { - "id": 358, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 356, - "name": "_status", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 316, - "src": "2863:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 357, - "name": "_ENTERED", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 314, - "src": "2873:8:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2863:18:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 359, - "nodeType": "ExpressionStatement", - "src": "2863:18:2" - } - ] - }, - "id": 361, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_nonReentrantBefore", - "nameLocation": "2610:19:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 347, - "nodeType": "ParameterList", - "parameters": [], - "src": "2629:2:2" - }, - "returnParameters": { - "id": 348, - "nodeType": "ParameterList", - "parameters": [], - "src": "2640:0:2" - }, - "scope": 386, - "src": "2601:287:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 368, - "nodeType": "Block", - "src": "2932:171:2", - "statements": [ - { - "expression": { - "id": 366, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 364, - "name": "_status", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 316, - "src": "3074:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 365, - "name": "_NOT_ENTERED", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 311, - "src": "3084:12:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "3074:22:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 367, - "nodeType": "ExpressionStatement", - "src": "3074:22:2" - } - ] - }, - "id": 369, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_nonReentrantAfter", - "nameLocation": "2903:18:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 362, - "nodeType": "ParameterList", - "parameters": [], - "src": "2921:2:2" - }, - "returnParameters": { - "id": 363, - "nodeType": "ParameterList", - "parameters": [], - "src": "2932:0:2" - }, - "scope": 386, - "src": "2894:209:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 379, - "nodeType": "Block", - "src": "3346:43:2", - "statements": [ - { - "expression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 377, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 375, - "name": "_status", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 316, - "src": "3363:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "id": 376, - "name": "_ENTERED", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 314, - "src": "3374:8:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "3363:19:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 374, - "id": 378, - "nodeType": "Return", - "src": "3356:26:2" - } - ] - }, - "documentation": { - "id": 370, - "nodeType": "StructuredDocumentation", - "src": "3109:168:2", - "text": " @dev Returns true if the reentrancy guard is currently set to \"entered\", which indicates there is a\n `nonReentrant` function in the call stack." - }, - "id": 380, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_reentrancyGuardEntered", - "nameLocation": "3291:23:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 371, - "nodeType": "ParameterList", - "parameters": [], - "src": "3314:2:2" - }, - "returnParameters": { - "id": 374, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 373, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 380, - "src": "3340:4:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 372, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "3340:4:2", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "3339:6:2" - }, - "scope": 386, - "src": "3282:107:2", - "stateMutability": "view", - "virtual": false, - "visibility": "internal" - }, - { - "constant": false, - "documentation": { - "id": 381, - "nodeType": "StructuredDocumentation", - "src": "3395:254:2", - "text": " @dev This empty reserved space is put in place to allow future versions to add new\n variables without shifting down storage in the inheritance chain.\n See https://docs.openzeppelin.com/contracts/4.x/upgradeable#storage_gaps" - }, - "id": 385, - "mutability": "mutable", - "name": "__gap", - "nameLocation": "3674:5:2", - "nodeType": "VariableDeclaration", - "scope": 386, - "src": "3654:25:2", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$49_storage", - "typeString": "uint256[49]" - }, - "typeName": { - "baseType": { - "id": 382, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3654:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 384, - "length": { - "hexValue": "3439", - "id": 383, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3662:2:2", - "typeDescriptions": { - "typeIdentifier": "t_rational_49_by_1", - "typeString": "int_const 49" - }, - "value": "49" - }, - "nodeType": "ArrayTypeName", - "src": "3654:11:2", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_uint256_$49_storage_ptr", - "typeString": "uint256[49]" - } - }, - "visibility": "private" - } - ], - "scope": 387, - "src": "952:2730:2", - "usedErrors": [] - } - ], - "src": "112:3571:2" - }, - "compiler": { - "name": "solc", - "version": "0.8.18+commit.87f61d96.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "3.4.13", - "updatedAt": "2024-12-10T18:52:58.842Z", - "devdoc": { - "details": "Contract module that helps prevent reentrant calls to a function. Inheriting from `ReentrancyGuard` will make the {nonReentrant} modifier available, which can be applied to functions to make sure there are no nested (reentrant) calls to them. Note that because there is a single `nonReentrant` guard, functions marked as `nonReentrant` may not call one another. This can be worked around by making those functions `private`, and then adding `external` `nonReentrant` entry points to them. TIP: If you would like to learn more about reentrancy and alternative ways to protect against it, check out our blog post https://blog.openzeppelin.com/reentrancy-after-istanbul/[Reentrancy After Istanbul].", - "events": { - "Initialized(uint8)": { - "details": "Triggered when the contract has been initialized or reinitialized." - } - }, - "kind": "dev", - "methods": {}, - "stateVariables": { - "__gap": { - "details": "This empty reserved space is put in place to allow future versions to add new variables without shifting down storage in the inheritance chain. See https://docs.openzeppelin.com/contracts/4.x/upgradeable#storage_gaps" - } - }, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } -} \ No newline at end of file diff --git a/build/contracts/SignatureValidator.json b/build/contracts/SignatureValidator.json deleted file mode 100644 index b3a68e4..0000000 --- a/build/contracts/SignatureValidator.json +++ /dev/null @@ -1,2996 +0,0 @@ -{ - "contractName": "SignatureValidator", - "abi": [ - { - "inputs": [ - { - "internalType": "address", - "name": "addr", - "type": "address" - }, - { - "internalType": "bytes32", - "name": "quoteHash", - "type": "bytes32" - }, - { - "internalType": "bytes", - "name": "signature", - "type": "bytes" - } - ], - "name": "verify", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "pure", - "type": "function", - "constant": true - } - ], - "metadata": "{\"compiler\":{\"version\":\"0.8.18+commit.87f61d96\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"quoteHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"signature\",\"type\":\"bytes\"}],\"name\":\"verify\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"verify(address,bytes32,bytes)\":{\"details\":\"Verfies signature against address\",\"params\":{\"addr\":\"The signing address\",\"quoteHash\":\"The hash of the signed data\",\"signature\":\"The signature containing v, r and s\"},\"returns\":{\"_0\":\"True if the signature is valid, false otherwise.\"}}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"project:/contracts/SignatureValidator.sol\":\"SignatureValidator\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":1},\"remappings\":[]},\"sources\":{\"project:/contracts/SignatureValidator.sol\":{\"keccak256\":\"0x9d72920dd5ff2891c8dd3b3a814c1b108e82fcc6dfd849c96842e88c01d25b2c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8df1167e9def35ced4a620e3fa1e6d148bc7c1fb995378bf12dabef250b3be65\",\"dweb:/ipfs/QmZJJchWvzUeMb68VPHFGnMXBx7aMhK5GqJy8ECDx2rf58\"]}},\"version\":1}", - "bytecode": "0x6102a761003a600b82828239805160001a60731461002d57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600436106100355760003560e01c80631a86b5501461003a575b600080fd5b61004d610048366004610167565b610061565b604051901515815260200160405180910390f35b602081810151604080840151606085015182518084018452601c81527b0ca2ba3432b932bab69029b4b3b732b21026b2b9b9b0b3b29d05199960211b818701529251600095929391861a9286916100bc9184918b910161023f565b60408051601f1981840301815282825280516020918201206000845290830180835281905260ff861691830191909152606082018790526080820186905291506001600160a01b038a169060019060a0016020604051602081039080840390855afa15801561012f573d6000803e3d6000fd5b505050602060405103516001600160a01b031614955050505050509392505050565b634e487b7160e01b600052604160045260246000fd5b60008060006060848603121561017c57600080fd5b83356001600160a01b038116811461019357600080fd5b92506020840135915060408401356001600160401b03808211156101b657600080fd5b818601915086601f8301126101ca57600080fd5b8135818111156101dc576101dc610151565b604051601f8201601f19908116603f0116810190838211818310171561020457610204610151565b8160405282815289602084870101111561021d57600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000835160005b818110156102605760208187018101518583015201610246565b50919091019182525060200191905056fea2646970667358221220bd792db21283d5ed4492d5be672e9a8834e6b553884e74f28cebb69a03b1527e64736f6c63430008120033", - "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600436106100355760003560e01c80631a86b5501461003a575b600080fd5b61004d610048366004610167565b610061565b604051901515815260200160405180910390f35b602081810151604080840151606085015182518084018452601c81527b0ca2ba3432b932bab69029b4b3b732b21026b2b9b9b0b3b29d05199960211b818701529251600095929391861a9286916100bc9184918b910161023f565b60408051601f1981840301815282825280516020918201206000845290830180835281905260ff861691830191909152606082018790526080820186905291506001600160a01b038a169060019060a0016020604051602081039080840390855afa15801561012f573d6000803e3d6000fd5b505050602060405103516001600160a01b031614955050505050509392505050565b634e487b7160e01b600052604160045260246000fd5b60008060006060848603121561017c57600080fd5b83356001600160a01b038116811461019357600080fd5b92506020840135915060408401356001600160401b03808211156101b657600080fd5b818601915086601f8301126101ca57600080fd5b8135818111156101dc576101dc610151565b604051601f8201601f19908116603f0116810190838211818310171561020457610204610151565b8160405282815289602084870101111561021d57600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000835160005b818110156102605760208187018101518583015201610246565b50919091019182525060200191905056fea2646970667358221220bd792db21283d5ed4492d5be672e9a8834e6b553884e74f28cebb69a03b1527e64736f6c63430008120033", - "immutableReferences": {}, - "generatedSources": [], - "deployedGeneratedSources": [ - { - "ast": { - "nodeType": "YulBlock", - "src": "0:2375:32", - "statements": [ - { - "nodeType": "YulBlock", - "src": "6:3:32", - "statements": [] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "46:95:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "63:1:32", - "type": "", - "value": "0" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "70:3:32", - "type": "", - "value": "224" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "75:10:32", - "type": "", - "value": "0x4e487b71" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "66:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "66:20:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "56:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "56:31:32" - }, - "nodeType": "YulExpressionStatement", - "src": "56:31:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "103:1:32", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "106:4:32", - "type": "", - "value": "0x41" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "96:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "96:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "96:15:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "127:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "130:4:32", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "120:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "120:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "120:15:32" - } - ] - }, - "name": "panic_error_0x41", - "nodeType": "YulFunctionDefinition", - "src": "14:127:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "259:1050:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "305:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "314:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "317:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "307:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "307:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "307:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "280:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "289:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "276:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "276:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "301:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "272:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "272:32:32" - }, - "nodeType": "YulIf", - "src": "269:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "330:36:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "356:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "343:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "343:23:32" - }, - "variables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "334:5:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "429:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "438:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "441:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "431:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "431:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "431:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "388:5:32" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "399:5:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "414:3:32", - "type": "", - "value": "160" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "419:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "410:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "410:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "423:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "406:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "406:19:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "395:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "395:31:32" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "385:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "385:42:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "378:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "378:50:32" - }, - "nodeType": "YulIf", - "src": "375:70:32" - }, - { - "nodeType": "YulAssignment", - "src": "454:15:32", - "value": { - "name": "value", - "nodeType": "YulIdentifier", - "src": "464:5:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "454:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "478:42:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "505:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "516:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "501:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "501:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "488:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "488:32:32" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "478:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "529:46:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "560:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "571:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "556:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "556:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "543:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "543:32:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "533:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "584:28:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "602:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "606:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "598:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "598:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "610:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "594:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "594:18:32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "588:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "639:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "648:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "651:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "641:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "641:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "641:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "627:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "635:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "624:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "624:14:32" - }, - "nodeType": "YulIf", - "src": "621:34:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "664:32:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "678:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "689:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "674:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "674:22:32" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "668:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "744:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "753:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "756:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "746:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "746:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "746:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "723:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "727:4:32", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "719:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "719:13:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "734:7:32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "715:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "715:27:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "708:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "708:35:32" - }, - "nodeType": "YulIf", - "src": "705:55:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "769:26:32", - "value": { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "792:2:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "779:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "779:16:32" - }, - "variables": [ - { - "name": "_3", - "nodeType": "YulTypedName", - "src": "773:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "818:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "820:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "820:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "820:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "810:2:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "814:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "807:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "807:10:32" - }, - "nodeType": "YulIf", - "src": "804:36:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "849:17:32", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "863:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "859:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "859:7:32" - }, - "variables": [ - { - "name": "_4", - "nodeType": "YulTypedName", - "src": "853:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "875:23:32", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "895:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "889:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "889:9:32" - }, - "variables": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "879:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "907:71:32", - "value": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "929:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "953:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "957:4:32", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "949:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "949:13:32" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "964:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "945:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "945:22:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "969:2:32", - "type": "", - "value": "63" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "941:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "941:31:32" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "974:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "937:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "937:40:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "925:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "925:53:32" - }, - "variables": [ - { - "name": "newFreePtr", - "nodeType": "YulTypedName", - "src": "911:10:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1037:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "1039:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "1039:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1039:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "996:10:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1008:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "993:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "993:18:32" - }, - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "1016:10:32" - }, - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1028:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "1013:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "1013:22:32" - } - ], - "functionName": { - "name": "or", - "nodeType": "YulIdentifier", - "src": "990:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "990:46:32" - }, - "nodeType": "YulIf", - "src": "987:72:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1075:2:32", - "type": "", - "value": "64" - }, - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "1079:10:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1068:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1068:22:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1068:22:32" - }, - { - "expression": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1106:6:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "1114:2:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1099:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1099:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1099:18:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1163:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1172:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1175:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1165:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1165:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1165:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "1140:2:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "1144:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1136:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1136:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1149:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1132:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1132:20:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "1154:7:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1129:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "1129:33:32" - }, - "nodeType": "YulIf", - "src": "1126:53:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1205:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1213:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1201:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1201:15:32" - }, - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "1222:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1226:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1218:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1218:11:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "1231:2:32" - } - ], - "functionName": { - "name": "calldatacopy", - "nodeType": "YulIdentifier", - "src": "1188:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "1188:46:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1188:46:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1258:6:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "1266:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1254:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1254:15:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1271:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1250:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1250:24:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1276:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1243:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1243:35:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1243:35:32" - }, - { - "nodeType": "YulAssignment", - "src": "1287:16:32", - "value": { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1297:6:32" - }, - "variableNames": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "1287:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_addresst_bytes32t_bytes_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "209:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "220:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "232:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "240:6:32", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "248:6:32", - "type": "" - } - ], - "src": "146:1163:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1417:92:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "1427:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1439:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1450:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1435:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1435:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "1427:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1469:9:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "1494:6:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "1487:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1487:14:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "1480:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1480:22:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1462:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1462:41:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1462:41:32" - } - ] - }, - "name": "abi_encode_tuple_t_bool__to_t_bool__fromStack_library_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "1386:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "1397:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "1408:4:32", - "type": "" - } - ], - "src": "1314:195:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1679:291:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "1689:27:32", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "1709:6:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "1703:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "1703:13:32" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "1693:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1725:10:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1734:1:32", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "i", - "nodeType": "YulTypedName", - "src": "1729:1:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1796:77:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "1821:3:32" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "1826:1:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1817:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1817:11:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "1844:6:32" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "1852:1:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1840:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1840:14:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1856:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1836:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1836:25:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "1830:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "1830:32:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1810:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1810:53:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1810:53:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "1755:1:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "1758:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "1752:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "1752:13:32" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "1766:21:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "1768:17:32", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "1777:1:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1780:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1773:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1773:12:32" - }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "1768:1:32" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "1748:3:32", - "statements": [] - }, - "src": "1744:129:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1882:26:32", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "1896:3:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "1901:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1892:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1892:16:32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "1886:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1924:2:32" - }, - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "1928:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1917:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1917:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1917:18:32" - }, - { - "nodeType": "YulAssignment", - "src": "1944:20:32", - "value": { - "arguments": [ - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1955:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1959:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1951:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1951:13:32" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "1944:3:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_packed_t_bytes_memory_ptr_t_bytes32__to_t_bytes_memory_ptr_t_bytes32__nonPadded_inplace_fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "1647:3:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "1652:6:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "1660:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "1671:3:32", - "type": "" - } - ], - "src": "1514:456:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2156:217:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "2166:27:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2178:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2189:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2174:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2174:19:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "2166:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2209:9:32" - }, - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "2220:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2202:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2202:25:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2202:25:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2247:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2258:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2243:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2243:18:32" - }, - { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "2267:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2275:4:32", - "type": "", - "value": "0xff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "2263:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2263:17:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2236:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2236:45:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2236:45:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2301:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2312:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2297:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2297:18:32" - }, - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "2317:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2290:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2290:34:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2290:34:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2344:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2355:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2340:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2340:18:32" - }, - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "2360:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2333:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2333:34:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2333:34:32" - } - ] - }, - "name": "abi_encode_tuple_t_bytes32_t_uint8_t_bytes32_t_bytes32__to_t_bytes32_t_uint8_t_bytes32_t_bytes32__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "2101:9:32", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "2112:6:32", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "2120:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "2128:6:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "2136:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "2147:4:32", - "type": "" - } - ], - "src": "1975:398:32" - } - ] - }, - "contents": "{\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_bytes32t_bytes_memory_ptr(headStart, dataEnd) -> value0, value1, value2\n {\n if slt(sub(dataEnd, headStart), 96) { revert(0, 0) }\n let value := calldataload(headStart)\n if iszero(eq(value, and(value, sub(shl(160, 1), 1)))) { revert(0, 0) }\n value0 := value\n value1 := calldataload(add(headStart, 32))\n let offset := calldataload(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 := calldataload(_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 calldatacopy(add(memPtr, 32), add(_2, 32), _3)\n mstore(add(add(memPtr, _3), 32), 0)\n value2 := memPtr\n }\n function abi_encode_tuple_t_bool__to_t_bool__fromStack_library_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, iszero(iszero(value0)))\n }\n function abi_encode_tuple_packed_t_bytes_memory_ptr_t_bytes32__to_t_bytes_memory_ptr_t_bytes32__nonPadded_inplace_fromStack_reversed(pos, value1, value0) -> end\n {\n let length := mload(value0)\n let i := 0\n for { } lt(i, length) { i := add(i, 0x20) }\n {\n mstore(add(pos, i), mload(add(add(value0, i), 0x20)))\n }\n let _1 := add(pos, length)\n mstore(_1, value1)\n end := add(_1, 0x20)\n }\n function abi_encode_tuple_t_bytes32_t_uint8_t_bytes32_t_bytes32__to_t_bytes32_t_uint8_t_bytes32_t_bytes32__fromStack_reversed(headStart, value3, value2, value1, value0) -> tail\n {\n tail := add(headStart, 128)\n mstore(headStart, value0)\n mstore(add(headStart, 32), and(value1, 0xff))\n mstore(add(headStart, 64), value2)\n mstore(add(headStart, 96), value3)\n }\n}", - "id": 32, - "language": "Yul", - "name": "#utility.yul" - } - ], - "sourceMap": "58:913:29:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;58:913:29;;;;;;;;;;;;;;;;;", - "deployedSourceMap": "58:913:29:-:0;;;;;;;;;;;;;;;;;;;;;;;;373:596;;;;;;:::i;:::-;;:::i;:::-;;;1487:14:32;;1480:22;1462:41;;1450:2;1435:18;373:596:29;;;;;;;;593:4;578:20;;;572:27;638:4;623:20;;;617:27;691:4;676:20;;670:27;770:56;;;;;;;;;;-1:-1:-1;;;770:56:29;;;;869:35;;467:4;;617:27;;662:36;;;;467:4;;869:35;;770:56;;894:9;;869:35;;:::i;:::-;;;;-1:-1:-1;;869:35:29;;;;;;;;;859:46;;869:35;859:46;;;;922:32;;;;;;;;;2202:25:32;;;2275:4;2263:17;;2243:18;;;2236:45;;;;2297:18;;;2290:34;;;2340:18;;;2333:34;;;859:46:29;-1:-1:-1;;;;;;922:40:29;;;:32;;2174:19:32;;922:32:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;922:40:29;;915:47;;;;;;;373:596;;;;;:::o;14:127:32:-;75:10;70:3;66:20;63:1;56:31;106:4;103:1;96:15;130:4;127:1;120:15;146:1163;232:6;240;248;301:2;289:9;280:7;276:23;272:32;269:52;;;317:1;314;307:12;269:52;343:23;;-1:-1:-1;;;;;395:31:32;;385:42;;375:70;;441:1;438;431:12;375:70;464:5;-1:-1:-1;516:2:32;501:18;;488:32;;-1:-1:-1;571:2:32;556:18;;543:32;-1:-1:-1;;;;;624:14:32;;;621:34;;;651:1;648;641:12;621:34;689:6;678:9;674:22;664:32;;734:7;727:4;723:2;719:13;715:27;705:55;;756:1;753;746:12;705:55;792:2;779:16;814:2;810;807:10;804:36;;;820:18;;:::i;:::-;895:2;889:9;863:2;949:13;;-1:-1:-1;;945:22:32;;;969:2;941:31;937:40;925:53;;;993:18;;;1013:22;;;990:46;987:72;;;1039:18;;:::i;:::-;1079:10;1075:2;1068:22;1114:2;1106:6;1099:18;1154:7;1149:2;1144;1140;1136:11;1132:20;1129:33;1126:53;;;1175:1;1172;1165:12;1126:53;1231:2;1226;1222;1218:11;1213:2;1205:6;1201:15;1188:46;1276:1;1271:2;1266;1258:6;1254:15;1250:24;1243:35;1297:6;1287:16;;;;;;;146:1163;;;;;:::o;1514:456::-;1671:3;1709:6;1703:13;1734:1;1744:129;1758:6;1755:1;1752:13;1744:129;;;1856:4;1840:14;;;1836:25;;1830:32;1817:11;;;1810:53;1773:12;1744:129;;;-1:-1:-1;1892:16:32;;;;1917:18;;;-1:-1:-1;1959:4:32;1951:13;;1514:456;-1:-1:-1;1514:456:32:o", - "source": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.18;\n\nlibrary SignatureValidator {\n /**\n @dev Verfies signature against address\n @param addr The signing address\n @param quoteHash The hash of the signed data\n @param signature The signature containing v, r and s\n @return True if the signature is valid, false otherwise.\n */\n function verify(address addr, bytes32 quoteHash, bytes memory signature) public pure returns (bool) {\n bytes32 r;\n bytes32 s;\n uint8 v;\n \n assembly {\n r := mload(add(signature, 0x20))\n s := mload(add(signature, 0x40))\n v := byte(0, mload(add(signature, 0x60)))\n }\n // TODO use EIP712 compatible format instead\n bytes memory prefix = \"\\x19Ethereum Signed Message:\\n32\";\n bytes32 prefixedHash = keccak256(abi.encodePacked(prefix, quoteHash));\n return ecrecover(prefixedHash, v, r, s) == addr;\n }\n}\n", - "sourcePath": "/Users/luischavez/iov/liquidity-bridge-contract/contracts/SignatureValidator.sol", - "ast": { - "absolutePath": "project:/contracts/SignatureValidator.sol", - "exportedSymbols": { - "SignatureValidator": [ - 11532 - ] - }, - "id": 11533, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 11485, - "literals": [ - "solidity", - "^", - "0.8", - ".18" - ], - "nodeType": "PragmaDirective", - "src": "32:24:29" - }, - { - "abstract": false, - "baseContracts": [], - "canonicalName": "SignatureValidator", - "contractDependencies": [], - "contractKind": "library", - "fullyImplemented": true, - "id": 11532, - "linearizedBaseContracts": [ - 11532 - ], - "name": "SignatureValidator", - "nameLocation": "66:18:29", - "nodeType": "ContractDefinition", - "nodes": [ - { - "body": { - "id": 11530, - "nodeType": "Block", - "src": "473:496:29", - "statements": [ - { - "assignments": [ - 11498 - ], - "declarations": [ - { - "constant": false, - "id": 11498, - "mutability": "mutable", - "name": "r", - "nameLocation": "491:1:29", - "nodeType": "VariableDeclaration", - "scope": 11530, - "src": "483:9:29", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 11497, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "483:7:29", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "id": 11499, - "nodeType": "VariableDeclarationStatement", - "src": "483:9:29" - }, - { - "assignments": [ - 11501 - ], - "declarations": [ - { - "constant": false, - "id": 11501, - "mutability": "mutable", - "name": "s", - "nameLocation": "510:1:29", - "nodeType": "VariableDeclaration", - "scope": 11530, - "src": "502:9:29", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 11500, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "502:7:29", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "id": 11502, - "nodeType": "VariableDeclarationStatement", - "src": "502:9:29" - }, - { - "assignments": [ - 11504 - ], - "declarations": [ - { - "constant": false, - "id": 11504, - "mutability": "mutable", - "name": "v", - "nameLocation": "527:1:29", - "nodeType": "VariableDeclaration", - "scope": 11530, - "src": "521:7:29", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "typeName": { - "id": 11503, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "521:5:29", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "visibility": "internal" - } - ], - "id": 11505, - "nodeType": "VariableDeclarationStatement", - "src": "521:7:29" - }, - { - "AST": { - "nodeType": "YulBlock", - "src": "553:155:29", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "567:32:29", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "signature", - "nodeType": "YulIdentifier", - "src": "582:9:29" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "593:4:29", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "578:3:29" - }, - "nodeType": "YulFunctionCall", - "src": "578:20:29" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "572:5:29" - }, - "nodeType": "YulFunctionCall", - "src": "572:27:29" - }, - "variableNames": [ - { - "name": "r", - "nodeType": "YulIdentifier", - "src": "567:1:29" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "612:32:29", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "signature", - "nodeType": "YulIdentifier", - "src": "627:9:29" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "638:4:29", - "type": "", - "value": "0x40" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "623:3:29" - }, - "nodeType": "YulFunctionCall", - "src": "623:20:29" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "617:5:29" - }, - "nodeType": "YulFunctionCall", - "src": "617:27:29" - }, - "variableNames": [ - { - "name": "s", - "nodeType": "YulIdentifier", - "src": "612:1:29" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "657:41:29", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "667:1:29", - "type": "", - "value": "0" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "signature", - "nodeType": "YulIdentifier", - "src": "680:9:29" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "691:4:29", - "type": "", - "value": "0x60" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "676:3:29" - }, - "nodeType": "YulFunctionCall", - "src": "676:20:29" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "670:5:29" - }, - "nodeType": "YulFunctionCall", - "src": "670:27:29" - } - ], - "functionName": { - "name": "byte", - "nodeType": "YulIdentifier", - "src": "662:4:29" - }, - "nodeType": "YulFunctionCall", - "src": "662:36:29" - }, - "variableNames": [ - { - "name": "v", - "nodeType": "YulIdentifier", - "src": "657:1:29" - } - ] - } - ] - }, - "evmVersion": "paris", - "externalReferences": [ - { - "declaration": 11498, - "isOffset": false, - "isSlot": false, - "src": "567:1:29", - "valueSize": 1 - }, - { - "declaration": 11501, - "isOffset": false, - "isSlot": false, - "src": "612:1:29", - "valueSize": 1 - }, - { - "declaration": 11492, - "isOffset": false, - "isSlot": false, - "src": "582:9:29", - "valueSize": 1 - }, - { - "declaration": 11492, - "isOffset": false, - "isSlot": false, - "src": "627:9:29", - "valueSize": 1 - }, - { - "declaration": 11492, - "isOffset": false, - "isSlot": false, - "src": "680:9:29", - "valueSize": 1 - }, - { - "declaration": 11504, - "isOffset": false, - "isSlot": false, - "src": "657:1:29", - "valueSize": 1 - } - ], - "id": 11506, - "nodeType": "InlineAssembly", - "src": "544:164:29" - }, - { - "assignments": [ - 11508 - ], - "declarations": [ - { - "constant": false, - "id": 11508, - "mutability": "mutable", - "name": "prefix", - "nameLocation": "783:6:29", - "nodeType": "VariableDeclaration", - "scope": 11530, - "src": "770:19:29", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 11507, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "770:5:29", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 11510, - "initialValue": { - "hexValue": "19457468657265756d205369676e6564204d6573736167653a0a3332", - "id": 11509, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "792:34:29", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_178a2411ab6fbc1ba11064408972259c558d0e82fd48b0aba3ad81d14f065e73", - "typeString": "literal_string hex\"19457468657265756d205369676e6564204d6573736167653a0a3332\"" - }, - "value": "\u0019Ethereum Signed Message:\n32" - }, - "nodeType": "VariableDeclarationStatement", - "src": "770:56:29" - }, - { - "assignments": [ - 11512 - ], - "declarations": [ - { - "constant": false, - "id": 11512, - "mutability": "mutable", - "name": "prefixedHash", - "nameLocation": "844:12:29", - "nodeType": "VariableDeclaration", - "scope": 11530, - "src": "836:20:29", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 11511, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "836:7:29", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "id": 11520, - "initialValue": { - "arguments": [ - { - "arguments": [ - { - "id": 11516, - "name": "prefix", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11508, - "src": "886:6:29", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "id": 11517, - "name": "quoteHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11490, - "src": "894:9:29", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "expression": { - "id": 11514, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "869:3:29", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 11515, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "873:12:29", - "memberName": "encodePacked", - "nodeType": "MemberAccess", - "src": "869:16:29", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 11518, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "869:35:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 11513, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967288, - "src": "859:9:29", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 11519, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "859:46:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "836:69:29" - }, - { - "expression": { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 11528, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "id": 11522, - "name": "prefixedHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11512, - "src": "932:12:29", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 11523, - "name": "v", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11504, - "src": "946:1:29", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - { - "id": 11524, - "name": "r", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11498, - "src": "949:1:29", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "id": 11525, - "name": "s", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11501, - "src": "952:1:29", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - ], - "id": 11521, - "name": "ecrecover", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967290, - "src": "922:9:29", - "typeDescriptions": { - "typeIdentifier": "t_function_ecrecover_pure$_t_bytes32_$_t_uint8_$_t_bytes32_$_t_bytes32_$returns$_t_address_$", - "typeString": "function (bytes32,uint8,bytes32,bytes32) pure returns (address)" - } - }, - "id": 11526, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "922:32:29", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "id": 11527, - "name": "addr", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11488, - "src": "958:4:29", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "922:40:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 11496, - "id": 11529, - "nodeType": "Return", - "src": "915:47:29" - } - ] - }, - "documentation": { - "id": 11486, - "nodeType": "StructuredDocumentation", - "src": "91:277:29", - "text": "@dev Verfies signature against address\n@param addr The signing address\n@param quoteHash The hash of the signed data\n@param signature The signature containing v, r and s\n@return True if the signature is valid, false otherwise." - }, - "functionSelector": "1a86b550", - "id": 11531, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "verify", - "nameLocation": "382:6:29", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 11493, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 11488, - "mutability": "mutable", - "name": "addr", - "nameLocation": "397:4:29", - "nodeType": "VariableDeclaration", - "scope": 11531, - "src": "389:12:29", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 11487, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "389:7:29", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 11490, - "mutability": "mutable", - "name": "quoteHash", - "nameLocation": "411:9:29", - "nodeType": "VariableDeclaration", - "scope": 11531, - "src": "403:17:29", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 11489, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "403:7:29", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 11492, - "mutability": "mutable", - "name": "signature", - "nameLocation": "435:9:29", - "nodeType": "VariableDeclaration", - "scope": 11531, - "src": "422:22:29", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 11491, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "422:5:29", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "388:57:29" - }, - "returnParameters": { - "id": 11496, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 11495, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 11531, - "src": "467:4:29", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 11494, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "467:4:29", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "466:6:29" - }, - "scope": 11532, - "src": "373:596:29", - "stateMutability": "pure", - "virtual": false, - "visibility": "public" - } - ], - "scope": 11533, - "src": "58:913:29", - "usedErrors": [] - } - ], - "src": "32:940:29" - }, - "compiler": { - "name": "solc", - "version": "0.8.18+commit.87f61d96.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "3.4.13", - "updatedAt": "2024-12-10T18:55:01.632Z", - "networkType": "ethereum", - "devdoc": { - "kind": "dev", - "methods": { - "verify(address,bytes32,bytes)": { - "details": "Verfies signature against address", - "params": { - "addr": "The signing address", - "quoteHash": "The hash of the signed data", - "signature": "The signature containing v, r and s" - }, - "returns": { - "_0": "True if the signature is valid, false otherwise." - } - } - }, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } -} \ No newline at end of file diff --git a/build/contracts/SignatureValidatorMock.json b/build/contracts/SignatureValidatorMock.json deleted file mode 100644 index 70310b3..0000000 --- a/build/contracts/SignatureValidatorMock.json +++ /dev/null @@ -1,1742 +0,0 @@ -{ - "contractName": "SignatureValidatorMock", - "abi": [ - { - "inputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - }, - { - "internalType": "bytes32", - "name": "", - "type": "bytes32" - }, - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "name": "verify", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "pure", - "type": "function" - } - ], - "metadata": "{\"compiler\":{\"version\":\"0.8.18+commit.87f61d96\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"verify\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"project:/contracts/SignatureValidatorMock.sol\":\"SignatureValidatorMock\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":1},\"remappings\":[]},\"sources\":{\"project:/contracts/SignatureValidatorMock.sol\":{\"keccak256\":\"0xdae40197493025b24e196016a0649564db23687885dc51bd49b23bfff3bd0adc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://00532eef3ea356a7295b6fd397275db628afd80bd07441c147a7eafee88500ad\",\"dweb:/ipfs/QmQm3NHuXseNGMfUL1XJ6q1JmLkQXpFRLHx6cPkWsGno9X\"]}},\"version\":1}", - "bytecode": "0x61018961003a600b82828239805160001a60731461002d57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600436106100355760003560e01c80631a86b5501461003a575b600080fd5b61005161004836600461007b565b60019392505050565b604051901515815260200160405180910390f35b634e487b7160e01b600052604160045260246000fd5b60008060006060848603121561009057600080fd5b83356001600160a01b03811681146100a757600080fd5b92506020840135915060408401356001600160401b03808211156100ca57600080fd5b818601915086601f8301126100de57600080fd5b8135818111156100f0576100f0610065565b604051601f8201601f19908116603f0116810190838211818310171561011857610118610065565b8160405282815289602084870101111561013157600080fd5b826020860160208301376000602084830101528095505050505050925092509256fea2646970667358221220c7f239fba0fa301a5066a08440683e23556f9a2cb825a3deae8bbe3d6180752d64736f6c63430008120033", - "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600436106100355760003560e01c80631a86b5501461003a575b600080fd5b61005161004836600461007b565b60019392505050565b604051901515815260200160405180910390f35b634e487b7160e01b600052604160045260246000fd5b60008060006060848603121561009057600080fd5b83356001600160a01b03811681146100a757600080fd5b92506020840135915060408401356001600160401b03808211156100ca57600080fd5b818601915086601f8301126100de57600080fd5b8135818111156100f0576100f0610065565b604051601f8201601f19908116603f0116810190838211818310171561011857610118610065565b8160405282815289602084870101111561013157600080fd5b826020860160208301376000602084830101528095505050505050925092509256fea2646970667358221220c7f239fba0fa301a5066a08440683e23556f9a2cb825a3deae8bbe3d6180752d64736f6c63430008120033", - "immutableReferences": {}, - "generatedSources": [], - "deployedGeneratedSources": [ - { - "ast": { - "nodeType": "YulBlock", - "src": "0:1511:32", - "statements": [ - { - "nodeType": "YulBlock", - "src": "6:3:32", - "statements": [] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "46:95:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "63:1:32", - "type": "", - "value": "0" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "70:3:32", - "type": "", - "value": "224" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "75:10:32", - "type": "", - "value": "0x4e487b71" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "66:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "66:20:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "56:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "56:31:32" - }, - "nodeType": "YulExpressionStatement", - "src": "56:31:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "103:1:32", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "106:4:32", - "type": "", - "value": "0x41" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "96:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "96:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "96:15:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "127:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "130:4:32", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "120:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "120:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "120:15:32" - } - ] - }, - "name": "panic_error_0x41", - "nodeType": "YulFunctionDefinition", - "src": "14:127:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "259:1050:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "305:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "314:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "317:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "307:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "307:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "307:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "280:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "289:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "276:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "276:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "301:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "272:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "272:32:32" - }, - "nodeType": "YulIf", - "src": "269:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "330:36:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "356:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "343:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "343:23:32" - }, - "variables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "334:5:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "429:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "438:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "441:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "431:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "431:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "431:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "388:5:32" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "399:5:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "414:3:32", - "type": "", - "value": "160" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "419:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "410:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "410:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "423:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "406:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "406:19:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "395:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "395:31:32" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "385:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "385:42:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "378:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "378:50:32" - }, - "nodeType": "YulIf", - "src": "375:70:32" - }, - { - "nodeType": "YulAssignment", - "src": "454:15:32", - "value": { - "name": "value", - "nodeType": "YulIdentifier", - "src": "464:5:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "454:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "478:42:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "505:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "516:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "501:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "501:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "488:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "488:32:32" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "478:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "529:46:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "560:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "571:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "556:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "556:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "543:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "543:32:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "533:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "584:28:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "602:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "606:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "598:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "598:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "610:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "594:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "594:18:32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "588:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "639:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "648:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "651:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "641:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "641:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "641:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "627:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "635:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "624:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "624:14:32" - }, - "nodeType": "YulIf", - "src": "621:34:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "664:32:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "678:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "689:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "674:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "674:22:32" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "668:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "744:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "753:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "756:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "746:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "746:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "746:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "723:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "727:4:32", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "719:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "719:13:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "734:7:32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "715:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "715:27:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "708:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "708:35:32" - }, - "nodeType": "YulIf", - "src": "705:55:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "769:26:32", - "value": { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "792:2:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "779:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "779:16:32" - }, - "variables": [ - { - "name": "_3", - "nodeType": "YulTypedName", - "src": "773:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "818:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "820:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "820:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "820:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "810:2:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "814:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "807:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "807:10:32" - }, - "nodeType": "YulIf", - "src": "804:36:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "849:17:32", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "863:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "859:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "859:7:32" - }, - "variables": [ - { - "name": "_4", - "nodeType": "YulTypedName", - "src": "853:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "875:23:32", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "895:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "889:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "889:9:32" - }, - "variables": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "879:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "907:71:32", - "value": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "929:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "953:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "957:4:32", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "949:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "949:13:32" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "964:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "945:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "945:22:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "969:2:32", - "type": "", - "value": "63" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "941:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "941:31:32" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "974:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "937:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "937:40:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "925:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "925:53:32" - }, - "variables": [ - { - "name": "newFreePtr", - "nodeType": "YulTypedName", - "src": "911:10:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1037:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "1039:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "1039:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1039:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "996:10:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1008:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "993:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "993:18:32" - }, - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "1016:10:32" - }, - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1028:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "1013:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "1013:22:32" - } - ], - "functionName": { - "name": "or", - "nodeType": "YulIdentifier", - "src": "990:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "990:46:32" - }, - "nodeType": "YulIf", - "src": "987:72:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1075:2:32", - "type": "", - "value": "64" - }, - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "1079:10:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1068:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1068:22:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1068:22:32" - }, - { - "expression": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1106:6:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "1114:2:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1099:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1099:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1099:18:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1163:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1172:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1175:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1165:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1165:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1165:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "1140:2:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "1144:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1136:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1136:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1149:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1132:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1132:20:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "1154:7:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1129:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "1129:33:32" - }, - "nodeType": "YulIf", - "src": "1126:53:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1205:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1213:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1201:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1201:15:32" - }, - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "1222:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1226:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1218:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1218:11:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "1231:2:32" - } - ], - "functionName": { - "name": "calldatacopy", - "nodeType": "YulIdentifier", - "src": "1188:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "1188:46:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1188:46:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1258:6:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "1266:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1254:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1254:15:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1271:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1250:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1250:24:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1276:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1243:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1243:35:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1243:35:32" - }, - { - "nodeType": "YulAssignment", - "src": "1287:16:32", - "value": { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1297:6:32" - }, - "variableNames": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "1287:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_addresst_bytes32t_bytes_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "209:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "220:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "232:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "240:6:32", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "248:6:32", - "type": "" - } - ], - "src": "146:1163:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1417:92:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "1427:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1439:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1450:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1435:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1435:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "1427:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1469:9:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "1494:6:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "1487:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1487:14:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "1480:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1480:22:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1462:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1462:41:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1462:41:32" - } - ] - }, - "name": "abi_encode_tuple_t_bool__to_t_bool__fromStack_library_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "1386:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "1397:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "1408:4:32", - "type": "" - } - ], - "src": "1314:195:32" - } - ] - }, - "contents": "{\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_bytes32t_bytes_memory_ptr(headStart, dataEnd) -> value0, value1, value2\n {\n if slt(sub(dataEnd, headStart), 96) { revert(0, 0) }\n let value := calldataload(headStart)\n if iszero(eq(value, and(value, sub(shl(160, 1), 1)))) { revert(0, 0) }\n value0 := value\n value1 := calldataload(add(headStart, 32))\n let offset := calldataload(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 := calldataload(_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 calldatacopy(add(memPtr, 32), add(_2, 32), _3)\n mstore(add(add(memPtr, _3), 32), 0)\n value2 := memPtr\n }\n function abi_encode_tuple_t_bool__to_t_bool__fromStack_library_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, iszero(iszero(value0)))\n }\n}", - "id": 32, - "language": "Yul", - "name": "#utility.yul" - } - ], - "sourceMap": "58:427:30:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;58:427:30;;;;;;;;;;;;;;;;;", - "deployedSourceMap": "58:427:30:-:0;;;;;;;;;;;;;;;;;;;;;;;;95:388;;;;;;:::i;:::-;472:4;95:388;;;;;;;;;1487:14:32;;1480:22;1462:41;;1450:2;1435:18;95:388:30;;;;;;;14:127:32;75:10;70:3;66:20;63:1;56:31;106:4;103:1;96:15;130:4;127:1;120:15;146:1163;232:6;240;248;301:2;289:9;280:7;276:23;272:32;269:52;;;317:1;314;307:12;269:52;343:23;;-1:-1:-1;;;;;395:31:32;;385:42;;375:70;;441:1;438;431:12;375:70;464:5;-1:-1:-1;516:2:32;501:18;;488:32;;-1:-1:-1;571:2:32;556:18;;543:32;-1:-1:-1;;;;;624:14:32;;;621:34;;;651:1;648;641:12;621:34;689:6;678:9;674:22;664:32;;734:7;727:4;723:2;719:13;715:27;705:55;;756:1;753;746:12;705:55;792:2;779:16;814:2;810;807:10;804:36;;;820:18;;:::i;:::-;895:2;889:9;863:2;949:13;;-1:-1:-1;;945:22:32;;;969:2;941:31;937:40;925:53;;;993:18;;;1013:22;;;990:46;987:72;;;1039:18;;:::i;:::-;1079:10;1075:2;1068:22;1114:2;1106:6;1099:18;1154:7;1149:2;1144;1140;1136:11;1132:20;1129:33;1126:53;;;1175:1;1172;1165:12;1126:53;1231:2;1226;1222;1218:11;1213:2;1205:6;1201:15;1188:46;1276:1;1271:2;1266;1258:6;1254:15;1250:24;1243:35;1297:6;1287:16;;;;;;;146:1163;;;;;:::o", - "source": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.18;\n\nlibrary SignatureValidatorMock {\n function verify(address , bytes32 , bytes memory) public pure returns (bool) {\n // This is mocked due to an issue with truffle evm that makes the\n // ecrecover function to return address 0x000...0 as the signer\n // when executing against RSK the issue doesn't happen, so the actual implementation\n // uses the class and not this mock\n return true;\n }\n}\n", - "sourcePath": "/Users/luischavez/iov/liquidity-bridge-contract/contracts/SignatureValidatorMock.sol", - "ast": { - "absolutePath": "project:/contracts/SignatureValidatorMock.sol", - "exportedSymbols": { - "SignatureValidatorMock": [ - 11549 - ] - }, - "id": 11550, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 11534, - "literals": [ - "solidity", - "^", - "0.8", - ".18" - ], - "nodeType": "PragmaDirective", - "src": "32:24:30" - }, - { - "abstract": false, - "baseContracts": [], - "canonicalName": "SignatureValidatorMock", - "contractDependencies": [], - "contractKind": "library", - "fullyImplemented": true, - "id": 11549, - "linearizedBaseContracts": [ - 11549 - ], - "name": "SignatureValidatorMock", - "nameLocation": "66:22:30", - "nodeType": "ContractDefinition", - "nodes": [ - { - "body": { - "id": 11547, - "nodeType": "Block", - "src": "172:311:30", - "statements": [ - { - "expression": { - "hexValue": "74727565", - "id": 11545, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "472:4:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "functionReturnParameters": 11544, - "id": 11546, - "nodeType": "Return", - "src": "465:11:30" - } - ] - }, - "functionSelector": "1a86b550", - "id": 11548, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "verify", - "nameLocation": "104:6:30", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 11541, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 11536, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 11548, - "src": "111:7:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 11535, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "111:7:30", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 11538, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 11548, - "src": "121:7:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 11537, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "121:7:30", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 11540, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 11548, - "src": "131:12:30", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 11539, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "131:5:30", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "110:34:30" - }, - "returnParameters": { - "id": 11544, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 11543, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 11548, - "src": "166:4:30", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 11542, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "166:4:30", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "165:6:30" - }, - "scope": 11549, - "src": "95:388:30", - "stateMutability": "pure", - "virtual": false, - "visibility": "public" - } - ], - "scope": 11550, - "src": "58:427:30", - "usedErrors": [] - } - ], - "src": "32:454:30" - }, - "compiler": { - "name": "solc", - "version": "0.8.18+commit.87f61d96.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "3.4.13", - "updatedAt": "2024-12-10T18:53:54.135Z", - "networkType": "ethereum", - "devdoc": { - "kind": "dev", - "methods": {}, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } -} \ No newline at end of file diff --git a/build/contracts/StorageSlot.json b/build/contracts/StorageSlot.json deleted file mode 100644 index 2c144a3..0000000 --- a/build/contracts/StorageSlot.json +++ /dev/null @@ -1,1528 +0,0 @@ -{ - "contractName": "StorageSlot", - "abi": [], - "metadata": "{\"compiler\":{\"version\":\"0.8.18+commit.87f61d96\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"details\":\"Library for reading and writing primitive types to specific storage slots. Storage slots are often used to avoid storage conflict when dealing with upgradeable contracts. This library helps with reading and writing to such slots without the need for inline assembly. The functions in this library return Slot structs that contain a `value` member that can be used to read or write. Example usage to set ERC1967 implementation slot: ```solidity contract ERC1967 { bytes32 internal constant _IMPLEMENTATION_SLOT = 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc; function _getImplementation() internal view returns (address) { return StorageSlot.getAddressSlot(_IMPLEMENTATION_SLOT).value; } function _setImplementation(address newImplementation) internal { require(Address.isContract(newImplementation), \\\"ERC1967: new implementation is not a contract\\\"); StorageSlot.getAddressSlot(_IMPLEMENTATION_SLOT).value = newImplementation; } } ``` _Available since v4.1 for `address`, `bool`, `bytes32`, `uint256`._ _Available since v4.9 for `string`, `bytes`._\",\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@openzeppelin/contracts/utils/StorageSlot.sol\":\"StorageSlot\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":1},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts/utils/StorageSlot.sol\":{\"keccak256\":\"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da\",\"dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q\"]}},\"version\":1}", - "bytecode": "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212205168065b7c07e3fe6dfd2bbde55b13517747f97e3cf75771bfcc693a4a4d919364736f6c63430008120033", - "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212205168065b7c07e3fe6dfd2bbde55b13517747f97e3cf75771bfcc693a4a4d919364736f6c63430008120033", - "immutableReferences": {}, - "generatedSources": [], - "deployedGeneratedSources": [], - "sourceMap": "1420:2685:16:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;1420:2685:16;;;;;;;;;;;;;;;;;", - "deployedSourceMap": "1420:2685:16:-:0;;;;;;;;", - "source": "// SPDX-License-Identifier: MIT\n// OpenZeppelin Contracts (last updated v4.9.0) (utils/StorageSlot.sol)\n// This file was procedurally generated from scripts/generate/templates/StorageSlot.js.\n\npragma solidity ^0.8.0;\n\n/**\n * @dev Library for reading and writing primitive types to specific storage slots.\n *\n * Storage slots are often used to avoid storage conflict when dealing with upgradeable contracts.\n * This library helps with reading and writing to such slots without the need for inline assembly.\n *\n * The functions in this library return Slot structs that contain a `value` member that can be used to read or write.\n *\n * Example usage to set ERC1967 implementation slot:\n * ```solidity\n * contract ERC1967 {\n * bytes32 internal constant _IMPLEMENTATION_SLOT = 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc;\n *\n * function _getImplementation() internal view returns (address) {\n * return StorageSlot.getAddressSlot(_IMPLEMENTATION_SLOT).value;\n * }\n *\n * function _setImplementation(address newImplementation) internal {\n * require(Address.isContract(newImplementation), \"ERC1967: new implementation is not a contract\");\n * StorageSlot.getAddressSlot(_IMPLEMENTATION_SLOT).value = newImplementation;\n * }\n * }\n * ```\n *\n * _Available since v4.1 for `address`, `bool`, `bytes32`, `uint256`._\n * _Available since v4.9 for `string`, `bytes`._\n */\nlibrary StorageSlot {\n struct AddressSlot {\n address value;\n }\n\n struct BooleanSlot {\n bool value;\n }\n\n struct Bytes32Slot {\n bytes32 value;\n }\n\n struct Uint256Slot {\n uint256 value;\n }\n\n struct StringSlot {\n string value;\n }\n\n struct BytesSlot {\n bytes value;\n }\n\n /**\n * @dev Returns an `AddressSlot` with member `value` located at `slot`.\n */\n function getAddressSlot(bytes32 slot) internal pure returns (AddressSlot storage r) {\n /// @solidity memory-safe-assembly\n assembly {\n r.slot := slot\n }\n }\n\n /**\n * @dev Returns an `BooleanSlot` with member `value` located at `slot`.\n */\n function getBooleanSlot(bytes32 slot) internal pure returns (BooleanSlot storage r) {\n /// @solidity memory-safe-assembly\n assembly {\n r.slot := slot\n }\n }\n\n /**\n * @dev Returns an `Bytes32Slot` with member `value` located at `slot`.\n */\n function getBytes32Slot(bytes32 slot) internal pure returns (Bytes32Slot storage r) {\n /// @solidity memory-safe-assembly\n assembly {\n r.slot := slot\n }\n }\n\n /**\n * @dev Returns an `Uint256Slot` with member `value` located at `slot`.\n */\n function getUint256Slot(bytes32 slot) internal pure returns (Uint256Slot storage r) {\n /// @solidity memory-safe-assembly\n assembly {\n r.slot := slot\n }\n }\n\n /**\n * @dev Returns an `StringSlot` with member `value` located at `slot`.\n */\n function getStringSlot(bytes32 slot) internal pure returns (StringSlot storage r) {\n /// @solidity memory-safe-assembly\n assembly {\n r.slot := slot\n }\n }\n\n /**\n * @dev Returns an `StringSlot` representation of the string storage pointer `store`.\n */\n function getStringSlot(string storage store) internal pure returns (StringSlot storage r) {\n /// @solidity memory-safe-assembly\n assembly {\n r.slot := store.slot\n }\n }\n\n /**\n * @dev Returns an `BytesSlot` with member `value` located at `slot`.\n */\n function getBytesSlot(bytes32 slot) internal pure returns (BytesSlot storage r) {\n /// @solidity memory-safe-assembly\n assembly {\n r.slot := slot\n }\n }\n\n /**\n * @dev Returns an `BytesSlot` representation of the bytes storage pointer `store`.\n */\n function getBytesSlot(bytes storage store) internal pure returns (BytesSlot storage r) {\n /// @solidity memory-safe-assembly\n assembly {\n r.slot := store.slot\n }\n }\n}\n", - "sourcePath": "@openzeppelin/contracts/utils/StorageSlot.sol", - "ast": { - "absolutePath": "@openzeppelin/contracts/utils/StorageSlot.sol", - "exportedSymbols": { - "StorageSlot": [ - 2243 - ] - }, - "id": 2244, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 2135, - "literals": [ - "solidity", - "^", - "0.8", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "193:23:16" - }, - { - "abstract": false, - "baseContracts": [], - "canonicalName": "StorageSlot", - "contractDependencies": [], - "contractKind": "library", - "documentation": { - "id": 2136, - "nodeType": "StructuredDocumentation", - "src": "218:1201:16", - "text": " @dev Library for reading and writing primitive types to specific storage slots.\n Storage slots are often used to avoid storage conflict when dealing with upgradeable contracts.\n This library helps with reading and writing to such slots without the need for inline assembly.\n The functions in this library return Slot structs that contain a `value` member that can be used to read or write.\n Example usage to set ERC1967 implementation slot:\n ```solidity\n contract ERC1967 {\n bytes32 internal constant _IMPLEMENTATION_SLOT = 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc;\n function _getImplementation() internal view returns (address) {\n return StorageSlot.getAddressSlot(_IMPLEMENTATION_SLOT).value;\n }\n function _setImplementation(address newImplementation) internal {\n require(Address.isContract(newImplementation), \"ERC1967: new implementation is not a contract\");\n StorageSlot.getAddressSlot(_IMPLEMENTATION_SLOT).value = newImplementation;\n }\n }\n ```\n _Available since v4.1 for `address`, `bool`, `bytes32`, `uint256`._\n _Available since v4.9 for `string`, `bytes`._" - }, - "fullyImplemented": true, - "id": 2243, - "linearizedBaseContracts": [ - 2243 - ], - "name": "StorageSlot", - "nameLocation": "1428:11:16", - "nodeType": "ContractDefinition", - "nodes": [ - { - "canonicalName": "StorageSlot.AddressSlot", - "id": 2139, - "members": [ - { - "constant": false, - "id": 2138, - "mutability": "mutable", - "name": "value", - "nameLocation": "1483:5:16", - "nodeType": "VariableDeclaration", - "scope": 2139, - "src": "1475:13:16", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 2137, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1475:7:16", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "name": "AddressSlot", - "nameLocation": "1453:11:16", - "nodeType": "StructDefinition", - "scope": 2243, - "src": "1446:49:16", - "visibility": "public" - }, - { - "canonicalName": "StorageSlot.BooleanSlot", - "id": 2142, - "members": [ - { - "constant": false, - "id": 2141, - "mutability": "mutable", - "name": "value", - "nameLocation": "1535:5:16", - "nodeType": "VariableDeclaration", - "scope": 2142, - "src": "1530:10:16", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 2140, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1530:4:16", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "name": "BooleanSlot", - "nameLocation": "1508:11:16", - "nodeType": "StructDefinition", - "scope": 2243, - "src": "1501:46:16", - "visibility": "public" - }, - { - "canonicalName": "StorageSlot.Bytes32Slot", - "id": 2145, - "members": [ - { - "constant": false, - "id": 2144, - "mutability": "mutable", - "name": "value", - "nameLocation": "1590:5:16", - "nodeType": "VariableDeclaration", - "scope": 2145, - "src": "1582:13:16", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 2143, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1582:7:16", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "name": "Bytes32Slot", - "nameLocation": "1560:11:16", - "nodeType": "StructDefinition", - "scope": 2243, - "src": "1553:49:16", - "visibility": "public" - }, - { - "canonicalName": "StorageSlot.Uint256Slot", - "id": 2148, - "members": [ - { - "constant": false, - "id": 2147, - "mutability": "mutable", - "name": "value", - "nameLocation": "1645:5:16", - "nodeType": "VariableDeclaration", - "scope": 2148, - "src": "1637:13:16", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 2146, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1637:7:16", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "name": "Uint256Slot", - "nameLocation": "1615:11:16", - "nodeType": "StructDefinition", - "scope": 2243, - "src": "1608:49:16", - "visibility": "public" - }, - { - "canonicalName": "StorageSlot.StringSlot", - "id": 2151, - "members": [ - { - "constant": false, - "id": 2150, - "mutability": "mutable", - "name": "value", - "nameLocation": "1698:5:16", - "nodeType": "VariableDeclaration", - "scope": 2151, - "src": "1691:12:16", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2149, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1691:6:16", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "name": "StringSlot", - "nameLocation": "1670:10:16", - "nodeType": "StructDefinition", - "scope": 2243, - "src": "1663:47:16", - "visibility": "public" - }, - { - "canonicalName": "StorageSlot.BytesSlot", - "id": 2154, - "members": [ - { - "constant": false, - "id": 2153, - "mutability": "mutable", - "name": "value", - "nameLocation": "1749:5:16", - "nodeType": "VariableDeclaration", - "scope": 2154, - "src": "1743:11:16", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2152, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1743:5:16", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "name": "BytesSlot", - "nameLocation": "1723:9:16", - "nodeType": "StructDefinition", - "scope": 2243, - "src": "1716:45:16", - "visibility": "public" - }, - { - "body": { - "id": 2164, - "nodeType": "Block", - "src": "1943:106:16", - "statements": [ - { - "AST": { - "nodeType": "YulBlock", - "src": "2005:38:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "2019:14:16", - "value": { - "name": "slot", - "nodeType": "YulIdentifier", - "src": "2029:4:16" - }, - "variableNames": [ - { - "name": "r.slot", - "nodeType": "YulIdentifier", - "src": "2019:6:16" - } - ] - } - ] - }, - "documentation": "@solidity memory-safe-assembly", - "evmVersion": "paris", - "externalReferences": [ - { - "declaration": 2161, - "isOffset": false, - "isSlot": true, - "src": "2019:6:16", - "suffix": "slot", - "valueSize": 1 - }, - { - "declaration": 2157, - "isOffset": false, - "isSlot": false, - "src": "2029:4:16", - "valueSize": 1 - } - ], - "id": 2163, - "nodeType": "InlineAssembly", - "src": "1996:47:16" - } - ] - }, - "documentation": { - "id": 2155, - "nodeType": "StructuredDocumentation", - "src": "1767:87:16", - "text": " @dev Returns an `AddressSlot` with member `value` located at `slot`." - }, - "id": 2165, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getAddressSlot", - "nameLocation": "1868:14:16", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2158, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2157, - "mutability": "mutable", - "name": "slot", - "nameLocation": "1891:4:16", - "nodeType": "VariableDeclaration", - "scope": 2165, - "src": "1883:12:16", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 2156, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "1883:7:16", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "1882:14:16" - }, - "returnParameters": { - "id": 2162, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2161, - "mutability": "mutable", - "name": "r", - "nameLocation": "1940:1:16", - "nodeType": "VariableDeclaration", - "scope": 2165, - "src": "1920:21:16", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AddressSlot_$2139_storage_ptr", - "typeString": "struct StorageSlot.AddressSlot" - }, - "typeName": { - "id": 2160, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 2159, - "name": "AddressSlot", - "nameLocations": [ - "1920:11:16" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 2139, - "src": "1920:11:16" - }, - "referencedDeclaration": 2139, - "src": "1920:11:16", - "typeDescriptions": { - "typeIdentifier": "t_struct$_AddressSlot_$2139_storage_ptr", - "typeString": "struct StorageSlot.AddressSlot" - } - }, - "visibility": "internal" - } - ], - "src": "1919:23:16" - }, - "scope": 2243, - "src": "1859:190:16", - "stateMutability": "pure", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 2175, - "nodeType": "Block", - "src": "2231:106:16", - "statements": [ - { - "AST": { - "nodeType": "YulBlock", - "src": "2293:38:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "2307:14:16", - "value": { - "name": "slot", - "nodeType": "YulIdentifier", - "src": "2317:4:16" - }, - "variableNames": [ - { - "name": "r.slot", - "nodeType": "YulIdentifier", - "src": "2307:6:16" - } - ] - } - ] - }, - "documentation": "@solidity memory-safe-assembly", - "evmVersion": "paris", - "externalReferences": [ - { - "declaration": 2172, - "isOffset": false, - "isSlot": true, - "src": "2307:6:16", - "suffix": "slot", - "valueSize": 1 - }, - { - "declaration": 2168, - "isOffset": false, - "isSlot": false, - "src": "2317:4:16", - "valueSize": 1 - } - ], - "id": 2174, - "nodeType": "InlineAssembly", - "src": "2284:47:16" - } - ] - }, - "documentation": { - "id": 2166, - "nodeType": "StructuredDocumentation", - "src": "2055:87:16", - "text": " @dev Returns an `BooleanSlot` with member `value` located at `slot`." - }, - "id": 2176, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getBooleanSlot", - "nameLocation": "2156:14:16", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2169, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2168, - "mutability": "mutable", - "name": "slot", - "nameLocation": "2179:4:16", - "nodeType": "VariableDeclaration", - "scope": 2176, - "src": "2171:12:16", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 2167, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "2171:7:16", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "2170:14:16" - }, - "returnParameters": { - "id": 2173, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2172, - "mutability": "mutable", - "name": "r", - "nameLocation": "2228:1:16", - "nodeType": "VariableDeclaration", - "scope": 2176, - "src": "2208:21:16", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BooleanSlot_$2142_storage_ptr", - "typeString": "struct StorageSlot.BooleanSlot" - }, - "typeName": { - "id": 2171, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 2170, - "name": "BooleanSlot", - "nameLocations": [ - "2208:11:16" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 2142, - "src": "2208:11:16" - }, - "referencedDeclaration": 2142, - "src": "2208:11:16", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BooleanSlot_$2142_storage_ptr", - "typeString": "struct StorageSlot.BooleanSlot" - } - }, - "visibility": "internal" - } - ], - "src": "2207:23:16" - }, - "scope": 2243, - "src": "2147:190:16", - "stateMutability": "pure", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 2186, - "nodeType": "Block", - "src": "2519:106:16", - "statements": [ - { - "AST": { - "nodeType": "YulBlock", - "src": "2581:38:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "2595:14:16", - "value": { - "name": "slot", - "nodeType": "YulIdentifier", - "src": "2605:4:16" - }, - "variableNames": [ - { - "name": "r.slot", - "nodeType": "YulIdentifier", - "src": "2595:6:16" - } - ] - } - ] - }, - "documentation": "@solidity memory-safe-assembly", - "evmVersion": "paris", - "externalReferences": [ - { - "declaration": 2183, - "isOffset": false, - "isSlot": true, - "src": "2595:6:16", - "suffix": "slot", - "valueSize": 1 - }, - { - "declaration": 2179, - "isOffset": false, - "isSlot": false, - "src": "2605:4:16", - "valueSize": 1 - } - ], - "id": 2185, - "nodeType": "InlineAssembly", - "src": "2572:47:16" - } - ] - }, - "documentation": { - "id": 2177, - "nodeType": "StructuredDocumentation", - "src": "2343:87:16", - "text": " @dev Returns an `Bytes32Slot` with member `value` located at `slot`." - }, - "id": 2187, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getBytes32Slot", - "nameLocation": "2444:14:16", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2180, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2179, - "mutability": "mutable", - "name": "slot", - "nameLocation": "2467:4:16", - "nodeType": "VariableDeclaration", - "scope": 2187, - "src": "2459:12:16", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 2178, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "2459:7:16", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "2458:14:16" - }, - "returnParameters": { - "id": 2184, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2183, - "mutability": "mutable", - "name": "r", - "nameLocation": "2516:1:16", - "nodeType": "VariableDeclaration", - "scope": 2187, - "src": "2496:21:16", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Bytes32Slot_$2145_storage_ptr", - "typeString": "struct StorageSlot.Bytes32Slot" - }, - "typeName": { - "id": 2182, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 2181, - "name": "Bytes32Slot", - "nameLocations": [ - "2496:11:16" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 2145, - "src": "2496:11:16" - }, - "referencedDeclaration": 2145, - "src": "2496:11:16", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Bytes32Slot_$2145_storage_ptr", - "typeString": "struct StorageSlot.Bytes32Slot" - } - }, - "visibility": "internal" - } - ], - "src": "2495:23:16" - }, - "scope": 2243, - "src": "2435:190:16", - "stateMutability": "pure", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 2197, - "nodeType": "Block", - "src": "2807:106:16", - "statements": [ - { - "AST": { - "nodeType": "YulBlock", - "src": "2869:38:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "2883:14:16", - "value": { - "name": "slot", - "nodeType": "YulIdentifier", - "src": "2893:4:16" - }, - "variableNames": [ - { - "name": "r.slot", - "nodeType": "YulIdentifier", - "src": "2883:6:16" - } - ] - } - ] - }, - "documentation": "@solidity memory-safe-assembly", - "evmVersion": "paris", - "externalReferences": [ - { - "declaration": 2194, - "isOffset": false, - "isSlot": true, - "src": "2883:6:16", - "suffix": "slot", - "valueSize": 1 - }, - { - "declaration": 2190, - "isOffset": false, - "isSlot": false, - "src": "2893:4:16", - "valueSize": 1 - } - ], - "id": 2196, - "nodeType": "InlineAssembly", - "src": "2860:47:16" - } - ] - }, - "documentation": { - "id": 2188, - "nodeType": "StructuredDocumentation", - "src": "2631:87:16", - "text": " @dev Returns an `Uint256Slot` with member `value` located at `slot`." - }, - "id": 2198, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getUint256Slot", - "nameLocation": "2732:14:16", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2191, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2190, - "mutability": "mutable", - "name": "slot", - "nameLocation": "2755:4:16", - "nodeType": "VariableDeclaration", - "scope": 2198, - "src": "2747:12:16", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 2189, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "2747:7:16", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "2746:14:16" - }, - "returnParameters": { - "id": 2195, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2194, - "mutability": "mutable", - "name": "r", - "nameLocation": "2804:1:16", - "nodeType": "VariableDeclaration", - "scope": 2198, - "src": "2784:21:16", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Uint256Slot_$2148_storage_ptr", - "typeString": "struct StorageSlot.Uint256Slot" - }, - "typeName": { - "id": 2193, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 2192, - "name": "Uint256Slot", - "nameLocations": [ - "2784:11:16" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 2148, - "src": "2784:11:16" - }, - "referencedDeclaration": 2148, - "src": "2784:11:16", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Uint256Slot_$2148_storage_ptr", - "typeString": "struct StorageSlot.Uint256Slot" - } - }, - "visibility": "internal" - } - ], - "src": "2783:23:16" - }, - "scope": 2243, - "src": "2723:190:16", - "stateMutability": "pure", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 2208, - "nodeType": "Block", - "src": "3092:106:16", - "statements": [ - { - "AST": { - "nodeType": "YulBlock", - "src": "3154:38:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "3168:14:16", - "value": { - "name": "slot", - "nodeType": "YulIdentifier", - "src": "3178:4:16" - }, - "variableNames": [ - { - "name": "r.slot", - "nodeType": "YulIdentifier", - "src": "3168:6:16" - } - ] - } - ] - }, - "documentation": "@solidity memory-safe-assembly", - "evmVersion": "paris", - "externalReferences": [ - { - "declaration": 2205, - "isOffset": false, - "isSlot": true, - "src": "3168:6:16", - "suffix": "slot", - "valueSize": 1 - }, - { - "declaration": 2201, - "isOffset": false, - "isSlot": false, - "src": "3178:4:16", - "valueSize": 1 - } - ], - "id": 2207, - "nodeType": "InlineAssembly", - "src": "3145:47:16" - } - ] - }, - "documentation": { - "id": 2199, - "nodeType": "StructuredDocumentation", - "src": "2919:86:16", - "text": " @dev Returns an `StringSlot` with member `value` located at `slot`." - }, - "id": 2209, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getStringSlot", - "nameLocation": "3019:13:16", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2202, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2201, - "mutability": "mutable", - "name": "slot", - "nameLocation": "3041:4:16", - "nodeType": "VariableDeclaration", - "scope": 2209, - "src": "3033:12:16", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 2200, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "3033:7:16", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "3032:14:16" - }, - "returnParameters": { - "id": 2206, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2205, - "mutability": "mutable", - "name": "r", - "nameLocation": "3089:1:16", - "nodeType": "VariableDeclaration", - "scope": 2209, - "src": "3070:20:16", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_StringSlot_$2151_storage_ptr", - "typeString": "struct StorageSlot.StringSlot" - }, - "typeName": { - "id": 2204, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 2203, - "name": "StringSlot", - "nameLocations": [ - "3070:10:16" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 2151, - "src": "3070:10:16" - }, - "referencedDeclaration": 2151, - "src": "3070:10:16", - "typeDescriptions": { - "typeIdentifier": "t_struct$_StringSlot_$2151_storage_ptr", - "typeString": "struct StorageSlot.StringSlot" - } - }, - "visibility": "internal" - } - ], - "src": "3069:22:16" - }, - "scope": 2243, - "src": "3010:188:16", - "stateMutability": "pure", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 2219, - "nodeType": "Block", - "src": "3400:112:16", - "statements": [ - { - "AST": { - "nodeType": "YulBlock", - "src": "3462:44:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "3476:20:16", - "value": { - "name": "store.slot", - "nodeType": "YulIdentifier", - "src": "3486:10:16" - }, - "variableNames": [ - { - "name": "r.slot", - "nodeType": "YulIdentifier", - "src": "3476:6:16" - } - ] - } - ] - }, - "documentation": "@solidity memory-safe-assembly", - "evmVersion": "paris", - "externalReferences": [ - { - "declaration": 2216, - "isOffset": false, - "isSlot": true, - "src": "3476:6:16", - "suffix": "slot", - "valueSize": 1 - }, - { - "declaration": 2212, - "isOffset": false, - "isSlot": true, - "src": "3486:10:16", - "suffix": "slot", - "valueSize": 1 - } - ], - "id": 2218, - "nodeType": "InlineAssembly", - "src": "3453:53:16" - } - ] - }, - "documentation": { - "id": 2210, - "nodeType": "StructuredDocumentation", - "src": "3204:101:16", - "text": " @dev Returns an `StringSlot` representation of the string storage pointer `store`." - }, - "id": 2220, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getStringSlot", - "nameLocation": "3319:13:16", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2213, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2212, - "mutability": "mutable", - "name": "store", - "nameLocation": "3348:5:16", - "nodeType": "VariableDeclaration", - "scope": 2220, - "src": "3333:20:16", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - }, - "typeName": { - "id": 2211, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3333:6:16", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "3332:22:16" - }, - "returnParameters": { - "id": 2217, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2216, - "mutability": "mutable", - "name": "r", - "nameLocation": "3397:1:16", - "nodeType": "VariableDeclaration", - "scope": 2220, - "src": "3378:20:16", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_StringSlot_$2151_storage_ptr", - "typeString": "struct StorageSlot.StringSlot" - }, - "typeName": { - "id": 2215, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 2214, - "name": "StringSlot", - "nameLocations": [ - "3378:10:16" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 2151, - "src": "3378:10:16" - }, - "referencedDeclaration": 2151, - "src": "3378:10:16", - "typeDescriptions": { - "typeIdentifier": "t_struct$_StringSlot_$2151_storage_ptr", - "typeString": "struct StorageSlot.StringSlot" - } - }, - "visibility": "internal" - } - ], - "src": "3377:22:16" - }, - "scope": 2243, - "src": "3310:202:16", - "stateMutability": "pure", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 2230, - "nodeType": "Block", - "src": "3688:106:16", - "statements": [ - { - "AST": { - "nodeType": "YulBlock", - "src": "3750:38:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "3764:14:16", - "value": { - "name": "slot", - "nodeType": "YulIdentifier", - "src": "3774:4:16" - }, - "variableNames": [ - { - "name": "r.slot", - "nodeType": "YulIdentifier", - "src": "3764:6:16" - } - ] - } - ] - }, - "documentation": "@solidity memory-safe-assembly", - "evmVersion": "paris", - "externalReferences": [ - { - "declaration": 2227, - "isOffset": false, - "isSlot": true, - "src": "3764:6:16", - "suffix": "slot", - "valueSize": 1 - }, - { - "declaration": 2223, - "isOffset": false, - "isSlot": false, - "src": "3774:4:16", - "valueSize": 1 - } - ], - "id": 2229, - "nodeType": "InlineAssembly", - "src": "3741:47:16" - } - ] - }, - "documentation": { - "id": 2221, - "nodeType": "StructuredDocumentation", - "src": "3518:85:16", - "text": " @dev Returns an `BytesSlot` with member `value` located at `slot`." - }, - "id": 2231, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getBytesSlot", - "nameLocation": "3617:12:16", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2224, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2223, - "mutability": "mutable", - "name": "slot", - "nameLocation": "3638:4:16", - "nodeType": "VariableDeclaration", - "scope": 2231, - "src": "3630:12:16", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "typeName": { - "id": 2222, - "name": "bytes32", - "nodeType": "ElementaryTypeName", - "src": "3630:7:16", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "visibility": "internal" - } - ], - "src": "3629:14:16" - }, - "returnParameters": { - "id": 2228, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2227, - "mutability": "mutable", - "name": "r", - "nameLocation": "3685:1:16", - "nodeType": "VariableDeclaration", - "scope": 2231, - "src": "3667:19:16", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BytesSlot_$2154_storage_ptr", - "typeString": "struct StorageSlot.BytesSlot" - }, - "typeName": { - "id": 2226, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 2225, - "name": "BytesSlot", - "nameLocations": [ - "3667:9:16" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 2154, - "src": "3667:9:16" - }, - "referencedDeclaration": 2154, - "src": "3667:9:16", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BytesSlot_$2154_storage_ptr", - "typeString": "struct StorageSlot.BytesSlot" - } - }, - "visibility": "internal" - } - ], - "src": "3666:21:16" - }, - "scope": 2243, - "src": "3608:186:16", - "stateMutability": "pure", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 2241, - "nodeType": "Block", - "src": "3991:112:16", - "statements": [ - { - "AST": { - "nodeType": "YulBlock", - "src": "4053:44:16", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "4067:20:16", - "value": { - "name": "store.slot", - "nodeType": "YulIdentifier", - "src": "4077:10:16" - }, - "variableNames": [ - { - "name": "r.slot", - "nodeType": "YulIdentifier", - "src": "4067:6:16" - } - ] - } - ] - }, - "documentation": "@solidity memory-safe-assembly", - "evmVersion": "paris", - "externalReferences": [ - { - "declaration": 2238, - "isOffset": false, - "isSlot": true, - "src": "4067:6:16", - "suffix": "slot", - "valueSize": 1 - }, - { - "declaration": 2234, - "isOffset": false, - "isSlot": true, - "src": "4077:10:16", - "suffix": "slot", - "valueSize": 1 - } - ], - "id": 2240, - "nodeType": "InlineAssembly", - "src": "4044:53:16" - } - ] - }, - "documentation": { - "id": 2232, - "nodeType": "StructuredDocumentation", - "src": "3800:99:16", - "text": " @dev Returns an `BytesSlot` representation of the bytes storage pointer `store`." - }, - "id": 2242, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getBytesSlot", - "nameLocation": "3913:12:16", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 2235, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2234, - "mutability": "mutable", - "name": "store", - "nameLocation": "3940:5:16", - "nodeType": "VariableDeclaration", - "scope": 2242, - "src": "3926:19:16", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 2233, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "3926:5:16", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "3925:21:16" - }, - "returnParameters": { - "id": 2239, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 2238, - "mutability": "mutable", - "name": "r", - "nameLocation": "3988:1:16", - "nodeType": "VariableDeclaration", - "scope": 2242, - "src": "3970:19:16", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BytesSlot_$2154_storage_ptr", - "typeString": "struct StorageSlot.BytesSlot" - }, - "typeName": { - "id": 2237, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 2236, - "name": "BytesSlot", - "nameLocations": [ - "3970:9:16" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 2154, - "src": "3970:9:16" - }, - "referencedDeclaration": 2154, - "src": "3970:9:16", - "typeDescriptions": { - "typeIdentifier": "t_struct$_BytesSlot_$2154_storage_ptr", - "typeString": "struct StorageSlot.BytesSlot" - } - }, - "visibility": "internal" - } - ], - "src": "3969:21:16" - }, - "scope": 2243, - "src": "3904:199:16", - "stateMutability": "pure", - "virtual": false, - "visibility": "internal" - } - ], - "scope": 2244, - "src": "1420:2685:16", - "usedErrors": [] - } - ], - "src": "193:3913:16" - }, - "compiler": { - "name": "solc", - "version": "0.8.18+commit.87f61d96.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "3.4.13", - "updatedAt": "2024-12-10T18:52:58.863Z", - "devdoc": { - "details": "Library for reading and writing primitive types to specific storage slots. Storage slots are often used to avoid storage conflict when dealing with upgradeable contracts. This library helps with reading and writing to such slots without the need for inline assembly. The functions in this library return Slot structs that contain a `value` member that can be used to read or write. Example usage to set ERC1967 implementation slot: ```solidity contract ERC1967 { bytes32 internal constant _IMPLEMENTATION_SLOT = 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc; function _getImplementation() internal view returns (address) { return StorageSlot.getAddressSlot(_IMPLEMENTATION_SLOT).value; } function _setImplementation(address newImplementation) internal { require(Address.isContract(newImplementation), \"ERC1967: new implementation is not a contract\"); StorageSlot.getAddressSlot(_IMPLEMENTATION_SLOT).value = newImplementation; } } ``` _Available since v4.1 for `address`, `bool`, `bytes32`, `uint256`._ _Available since v4.9 for `string`, `bytes`._", - "kind": "dev", - "methods": {}, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } -} \ No newline at end of file diff --git a/build/contracts/TransparentUpgradeableProxy.json b/build/contracts/TransparentUpgradeableProxy.json deleted file mode 100644 index 32f0c88..0000000 --- a/build/contracts/TransparentUpgradeableProxy.json +++ /dev/null @@ -1,10631 +0,0 @@ -{ - "contractName": "TransparentUpgradeableProxy", - "abi": [ - { - "inputs": [ - { - "internalType": "address", - "name": "_logic", - "type": "address" - }, - { - "internalType": "address", - "name": "admin_", - "type": "address" - }, - { - "internalType": "bytes", - "name": "_data", - "type": "bytes" - } - ], - "stateMutability": "payable", - "type": "constructor" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "previousAdmin", - "type": "address" - }, - { - "indexed": false, - "internalType": "address", - "name": "newAdmin", - "type": "address" - } - ], - "name": "AdminChanged", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "beacon", - "type": "address" - } - ], - "name": "BeaconUpgraded", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "implementation", - "type": "address" - } - ], - "name": "Upgraded", - "type": "event" - }, - { - "stateMutability": "payable", - "type": "fallback" - }, - { - "stateMutability": "payable", - "type": "receive" - } - ], - "metadata": "{\"compiler\":{\"version\":\"0.8.18+commit.87f61d96\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_logic\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"admin_\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"}],\"stateMutability\":\"payable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"previousAdmin\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newAdmin\",\"type\":\"address\"}],\"name\":\"AdminChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"beacon\",\"type\":\"address\"}],\"name\":\"BeaconUpgraded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"implementation\",\"type\":\"address\"}],\"name\":\"Upgraded\",\"type\":\"event\"},{\"stateMutability\":\"payable\",\"type\":\"fallback\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}],\"devdoc\":{\"details\":\"This contract implements a proxy that is upgradeable by an admin. To avoid https://medium.com/nomic-labs-blog/malicious-backdoors-in-ethereum-proxies-62629adf3357[proxy selector clashing], which can potentially be used in an attack, this contract uses the https://blog.openzeppelin.com/the-transparent-proxy-pattern/[transparent proxy pattern]. This pattern implies two things that go hand in hand: 1. If any account other than the admin calls the proxy, the call will be forwarded to the implementation, even if that call matches one of the admin functions exposed by the proxy itself. 2. If the admin calls the proxy, it can access the admin functions, but its calls will never be forwarded to the implementation. If the admin tries to call a function on the implementation it will fail with an error that says \\\"admin cannot fallback to proxy target\\\". These properties mean that the admin account can only be used for admin actions like upgrading the proxy or changing the admin, so it's best if it's a dedicated account that is not used for anything else. This will avoid headaches due to sudden errors when trying to call a function from the proxy implementation. Our recommendation is for the dedicated account to be an instance of the {ProxyAdmin} contract. If set up this way, you should think of the `ProxyAdmin` instance as the real administrative interface of your proxy. NOTE: The real interface of this proxy is that defined in `ITransparentUpgradeableProxy`. This contract does not inherit from that interface, and instead the admin functions are implicitly implemented using a custom dispatch mechanism in `_fallback`. Consequently, the compiler will not produce an ABI for this contract. This is necessary to fully implement transparency without decoding reverts caused by selector clashes between the proxy and the implementation. WARNING: It is not recommended to extend this contract to add additional external functions. If you do so, the compiler will not check that there are no selector conflicts, due to the note above. A selector clash between any new function and the functions declared in {ITransparentUpgradeableProxy} will be resolved in favor of the new one. This could render the admin operations inaccessible, which could prevent upgradeability. Transparency may also be compromised.\",\"events\":{\"AdminChanged(address,address)\":{\"details\":\"Emitted when the admin account has changed.\"},\"BeaconUpgraded(address)\":{\"details\":\"Emitted when the beacon is changed.\"},\"Upgraded(address)\":{\"details\":\"Emitted when the implementation is upgraded.\"}},\"kind\":\"dev\",\"methods\":{\"constructor\":{\"details\":\"Initializes an upgradeable proxy managed by `_admin`, backed by the implementation at `_logic`, and optionally initialized with `_data` as explained in {ERC1967Proxy-constructor}.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol\":\"TransparentUpgradeableProxy\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":1},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts/interfaces/IERC1967.sol\":{\"keccak256\":\"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263\",\"dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE\"]},\"@openzeppelin/contracts/interfaces/draft-IERC1822.sol\":{\"keccak256\":\"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688\",\"dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr\"]},\"@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol\":{\"keccak256\":\"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5\",\"dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn\"]},\"@openzeppelin/contracts/proxy/ERC1967/ERC1967Upgrade.sol\":{\"keccak256\":\"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2\",\"dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82\"]},\"@openzeppelin/contracts/proxy/Proxy.sol\":{\"keccak256\":\"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472\",\"dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN\"]},\"@openzeppelin/contracts/proxy/beacon/IBeacon.sol\":{\"keccak256\":\"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354\",\"dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce\"]},\"@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol\":{\"keccak256\":\"0x168e36d7e616bd41f6abab4a83009da64513ae9e638aa6d5980066e2a92db689\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a45c64b97311fabbcbe8dad7e94fa89e06a7f96060d5565326ef706f5f239017\",\"dweb:/ipfs/QmeU2jiBGbHhz9DqRotjbpAx5s2xExDSRQtSD5ENjuHzDq\"]},\"@openzeppelin/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]},\"@openzeppelin/contracts/utils/StorageSlot.sol\":{\"keccak256\":\"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da\",\"dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q\"]}},\"version\":1}", - "bytecode": "0x608060405260405162000eb238038062000eb2833981016040819052620000269162000497565b828162000036828260006200004d565b50620000449050826200008a565b505050620005ca565b6200005883620000e5565b600082511180620000665750805b1562000085576200008383836200012760201b620001691760201c565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f620000b562000156565b604080516001600160a01b03928316815291841660208301520160405180910390a1620000e2816200018f565b50565b620000f08162000244565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606200014f838360405180606001604052806027815260200162000e8b60279139620002f8565b9392505050565b60006200018060008051602062000e6b83398151915260001b6200037760201b620001951760201c565b546001600160a01b0316919050565b6001600160a01b038116620001fa5760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b806200022360008051602062000e6b83398151915260001b6200037760201b620001951760201c565b80546001600160a01b0319166001600160a01b039290921691909117905550565b6200025a816200037a60201b620001981760201c565b620002be5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401620001f1565b80620002237f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc60001b6200037760201b620001951760201c565b6060600080856001600160a01b03168560405162000317919062000577565b600060405180830381855af49150503d806000811462000354576040519150601f19603f3d011682016040523d82523d6000602084013e62000359565b606091505b5090925090506200036d8683838762000389565b9695505050505050565b90565b6001600160a01b03163b151590565b60608315620003fd578251600003620003f557620003a7856200037a565b620003f55760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401620001f1565b508162000409565b62000409838362000411565b949350505050565b815115620004225781518083602001fd5b8060405162461bcd60e51b8152600401620001f1919062000595565b80516001600160a01b03811681146200045657600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b838110156200048e57818101518382015260200162000474565b50506000910152565b600080600060608486031215620004ad57600080fd5b620004b8846200043e565b9250620004c8602085016200043e565b60408501519092506001600160401b0380821115620004e657600080fd5b818601915086601f830112620004fb57600080fd5b8151818111156200051057620005106200045b565b604051601f8201601f19908116603f011681019083821181831017156200053b576200053b6200045b565b816040528281528960208487010111156200055557600080fd5b6200056883602083016020880162000471565b80955050505050509250925092565b600082516200058b81846020870162000471565b9190910192915050565b6020815260008251806020840152620005b681604085016020870162000471565b601f01601f19169190910160400192915050565b61089180620005da6000396000f3fe60806040523661001357610011610017565b005b6100115b61001f6101a7565b6001600160a01b0316330361015f5760606001600160e01b0319600035166364d3180d60e11b810161005a576100536101c8565b9150610157565b63587086bd60e11b6001600160e01b031982160161007a5761005361021f565b63070d7c6960e41b6001600160e01b031982160161009a57610053610265565b621eb96f60e61b6001600160e01b03198216016100b957610053610296565b63a39f25e560e01b6001600160e01b03198216016100d9576100536102d6565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b6101676102ea565b565b606061018e8383604051806060016040528060278152602001610835602791396102fa565b9392505050565b90565b6001600160a01b03163b151590565b60006000805160206107f58339815191525b546001600160a01b0316919050565b60606101d2610372565b60006101e13660048184610649565b8101906101ee919061068f565b905061020b8160405180602001604052806000815250600061037d565b505060408051602081019091526000815290565b60606000806102313660048184610649565b81019061023e91906106c0565b9150915061024e8282600161037d565b604051806020016040528060008152509250505090565b606061026f610372565b600061027e3660048184610649565b81019061028b919061068f565b905061020b816103a9565b60606102a0610372565b60006102aa6101a7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b60606102e0610372565b60006102aa610400565b6101676102f5610400565b61040f565b6060600080856001600160a01b03168560405161031791906107a5565b600060405180830381855af49150503d8060008114610352576040519150601f19603f3d011682016040523d82523d6000602084013e610357565b606091505b509150915061036886838387610433565b9695505050505050565b341561016757600080fd5b610386836104b2565b6000825111806103935750805b156103a4576103a28383610169565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103d26101a7565b604080516001600160a01b03928316815291841660208301520160405180910390a16103fd816104f2565b50565b600061040a610589565b905090565b3660008037600080366000845af43d6000803e80801561042e573d6000f35b3d6000fd5b606083156104a05782516000036104995761044d85610198565b6104995760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161014e565b50816104aa565b6104aa838361059f565b949350505050565b6104bb816105c9565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105575760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161014e565b806000805160206107f58339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b60006000805160206108158339815191526101b9565b8151156105af5781518083602001fd5b8060405162461bcd60e51b815260040161014e91906107c1565b6105d281610198565b6106345760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161014e565b80600080516020610815833981519152610568565b6000808585111561065957600080fd5b8386111561066657600080fd5b5050820193919092039150565b80356001600160a01b038116811461068a57600080fd5b919050565b6000602082840312156106a157600080fd5b61018e82610673565b634e487b7160e01b600052604160045260246000fd5b600080604083850312156106d357600080fd5b6106dc83610673565b915060208301356001600160401b03808211156106f857600080fd5b818501915085601f83011261070c57600080fd5b81358181111561071e5761071e6106aa565b604051601f8201601f19908116603f01168101908382118183101715610746576107466106aa565b8160405282815288602084870101111561075f57600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b8381101561079c578181015183820152602001610784565b50506000910152565b600082516107b7818460208701610781565b9190910192915050565b60208152600082518060208401526107e0816040850160208701610781565b601f01601f1916919091016040019291505056feb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220913bf75fa879968196a61873a9e9115f6dad65f3f36ab5a32d4ce34ffcc269e364736f6c63430008120033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564", - "deployedBytecode": "0x60806040523661001357610011610017565b005b6100115b61001f6101a7565b6001600160a01b0316330361015f5760606001600160e01b0319600035166364d3180d60e11b810161005a576100536101c8565b9150610157565b63587086bd60e11b6001600160e01b031982160161007a5761005361021f565b63070d7c6960e41b6001600160e01b031982160161009a57610053610265565b621eb96f60e61b6001600160e01b03198216016100b957610053610296565b63a39f25e560e01b6001600160e01b03198216016100d9576100536102d6565b60405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b815160208301f35b6101676102ea565b565b606061018e8383604051806060016040528060278152602001610835602791396102fa565b9392505050565b90565b6001600160a01b03163b151590565b60006000805160206107f58339815191525b546001600160a01b0316919050565b60606101d2610372565b60006101e13660048184610649565b8101906101ee919061068f565b905061020b8160405180602001604052806000815250600061037d565b505060408051602081019091526000815290565b60606000806102313660048184610649565b81019061023e91906106c0565b9150915061024e8282600161037d565b604051806020016040528060008152509250505090565b606061026f610372565b600061027e3660048184610649565b81019061028b919061068f565b905061020b816103a9565b60606102a0610372565b60006102aa6101a7565b604080516001600160a01b03831660208201529192500160405160208183030381529060405291505090565b60606102e0610372565b60006102aa610400565b6101676102f5610400565b61040f565b6060600080856001600160a01b03168560405161031791906107a5565b600060405180830381855af49150503d8060008114610352576040519150601f19603f3d011682016040523d82523d6000602084013e610357565b606091505b509150915061036886838387610433565b9695505050505050565b341561016757600080fd5b610386836104b2565b6000825111806103935750805b156103a4576103a28383610169565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103d26101a7565b604080516001600160a01b03928316815291841660208301520160405180910390a16103fd816104f2565b50565b600061040a610589565b905090565b3660008037600080366000845af43d6000803e80801561042e573d6000f35b3d6000fd5b606083156104a05782516000036104995761044d85610198565b6104995760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161014e565b50816104aa565b6104aa838361059f565b949350505050565b6104bb816105c9565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105575760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840161014e565b806000805160206107f58339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b60006000805160206108158339815191526101b9565b8151156105af5781518083602001fd5b8060405162461bcd60e51b815260040161014e91906107c1565b6105d281610198565b6106345760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161014e565b80600080516020610815833981519152610568565b6000808585111561065957600080fd5b8386111561066657600080fd5b5050820193919092039150565b80356001600160a01b038116811461068a57600080fd5b919050565b6000602082840312156106a157600080fd5b61018e82610673565b634e487b7160e01b600052604160045260246000fd5b600080604083850312156106d357600080fd5b6106dc83610673565b915060208301356001600160401b03808211156106f857600080fd5b818501915085601f83011261070c57600080fd5b81358181111561071e5761071e6106aa565b604051601f8201601f19908116603f01168101908382118183101715610746576107466106aa565b8160405282815288602084870101111561075f57600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b8381101561079c578181015183820152602001610784565b50506000910152565b600082516107b7818460208701610781565b9190910192915050565b60208152600082518060208401526107e0816040850160208701610781565b601f01601f1916919091016040019291505056feb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220913bf75fa879968196a61873a9e9115f6dad65f3f36ab5a32d4ce34ffcc269e364736f6c63430008120033", - "immutableReferences": {}, - "generatedSources": [ - { - "ast": { - "nodeType": "YulBlock", - "src": "0:3832:32", - "statements": [ - { - "nodeType": "YulBlock", - "src": "6:3:32", - "statements": [] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "74:117:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "84:22:32", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "99:6:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "93:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "93:13:32" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "84:5:32" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "169:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "178:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "181:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "171:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "171:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "171:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "128:5:32" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "139:5:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "154:3:32", - "type": "", - "value": "160" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "159:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "150:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "150:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "163:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "146:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "146:19:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "135:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "135:31:32" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "125:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "125:42:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "118:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "118:50:32" - }, - "nodeType": "YulIf", - "src": "115:70:32" - } - ] - }, - "name": "abi_decode_address_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "53:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "64:5:32", - "type": "" - } - ], - "src": "14:177:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "228:95:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "245:1:32", - "type": "", - "value": "0" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "252:3:32", - "type": "", - "value": "224" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "257:10:32", - "type": "", - "value": "0x4e487b71" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "248:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "248:20:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "238:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "238:31:32" - }, - "nodeType": "YulExpressionStatement", - "src": "238:31:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "285:1:32", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "288:4:32", - "type": "", - "value": "0x41" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "278:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "278:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "278:15:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "309:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "312:4:32", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "302:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "302:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "302:15:32" - } - ] - }, - "name": "panic_error_0x41", - "nodeType": "YulFunctionDefinition", - "src": "196:127:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "394:184:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "404:10:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "413:1:32", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "i", - "nodeType": "YulTypedName", - "src": "408:1:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "473:63:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "498:3:32" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "503:1:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "494:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "494:11:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "517:3:32" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "522:1:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "513:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "513:11:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "507:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "507:18:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "487:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "487:39:32" - }, - "nodeType": "YulExpressionStatement", - "src": "487:39:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "434:1:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "437:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "431:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "431:13:32" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "445:19:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "447:15:32", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "456:1:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "459:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "452:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "452:10:32" - }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "447:1:32" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "427:3:32", - "statements": [] - }, - "src": "423:113:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "556:3:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "561:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "552:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "552:16:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "570:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "545:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "545:27:32" - }, - "nodeType": "YulExpressionStatement", - "src": "545:27:32" - } - ] - }, - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "src", - "nodeType": "YulTypedName", - "src": "372:3:32", - "type": "" - }, - { - "name": "dst", - "nodeType": "YulTypedName", - "src": "377:3:32", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "382:6:32", - "type": "" - } - ], - "src": "328:250:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "707:942:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "753:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "762:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "765:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "755:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "755:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "755:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "728:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "737:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "724:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "724:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "749:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "720:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "720:32:32" - }, - "nodeType": "YulIf", - "src": "717:52:32" - }, - { - "nodeType": "YulAssignment", - "src": "778:50:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "818:9:32" - } - ], - "functionName": { - "name": "abi_decode_address_fromMemory", - "nodeType": "YulIdentifier", - "src": "788:29:32" - }, - "nodeType": "YulFunctionCall", - "src": "788:40:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "778:6:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "837:59:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "881:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "892:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "877:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "877:18:32" - } - ], - "functionName": { - "name": "abi_decode_address_fromMemory", - "nodeType": "YulIdentifier", - "src": "847:29:32" - }, - "nodeType": "YulFunctionCall", - "src": "847:49:32" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "837:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "905:39:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "929:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "940:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "925:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "925:18:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "919:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "919:25:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "909:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "953:28:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "971:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "975:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "967:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "967:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "979:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "963:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "963:18:32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "957:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1008:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1017:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1020:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1010:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1010:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1010:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "996:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1004:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "993:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "993:14:32" - }, - "nodeType": "YulIf", - "src": "990:34:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1033:32:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1047:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1058:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1043:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1043:22:32" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "1037:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1113:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1122:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1125:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1115:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1115:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1115:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "1092:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1096:4:32", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1088:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1088:13:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "1103:7:32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "1084:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1084:27:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "1077:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1077:35:32" - }, - "nodeType": "YulIf", - "src": "1074:55:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1138:19:32", - "value": { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "1154:2:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "1148:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "1148:9:32" - }, - "variables": [ - { - "name": "_3", - "nodeType": "YulTypedName", - "src": "1142:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1180:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "1182:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "1182:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1182:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "1172:2:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1176:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1169:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "1169:10:32" - }, - "nodeType": "YulIf", - "src": "1166:36:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1211:17:32", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1225:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "1221:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1221:7:32" - }, - "variables": [ - { - "name": "_4", - "nodeType": "YulTypedName", - "src": "1215:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1237:23:32", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1257:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "1251:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "1251:9:32" - }, - "variables": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "1241:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1269:71:32", - "value": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1291:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "1315:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1319:4:32", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1311:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1311:13:32" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "1326:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "1307:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1307:22:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1331:2:32", - "type": "", - "value": "63" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1303:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1303:31:32" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "1336:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "1299:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1299:40:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1287:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1287:53:32" - }, - "variables": [ - { - "name": "newFreePtr", - "nodeType": "YulTypedName", - "src": "1273:10:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1399:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "1401:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "1401:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1401:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "1358:10:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1370:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1355:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "1355:18:32" - }, - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "1378:10:32" - }, - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1390:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "1375:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "1375:22:32" - } - ], - "functionName": { - "name": "or", - "nodeType": "YulIdentifier", - "src": "1352:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "1352:46:32" - }, - "nodeType": "YulIf", - "src": "1349:72:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1437:2:32", - "type": "", - "value": "64" - }, - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "1441:10:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1430:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1430:22:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1430:22:32" - }, - { - "expression": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1468:6:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "1476:2:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1461:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1461:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1461:18:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1525:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1534:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1537:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1527:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1527:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1527:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "1502:2:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "1506:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1498:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1498:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1511:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1494:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1494:20:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "1516:7:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1491:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "1491:33:32" - }, - "nodeType": "YulIf", - "src": "1488:53:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "1589:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1593:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1585:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1585:11:32" - }, - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1602:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1610:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1598:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1598:15:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "1615:2:32" - } - ], - "functionName": { - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulIdentifier", - "src": "1550:34:32" - }, - "nodeType": "YulFunctionCall", - "src": "1550:68:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1550:68:32" - }, - { - "nodeType": "YulAssignment", - "src": "1627:16:32", - "value": { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1637:6:32" - }, - "variableNames": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "1627:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_addresst_addresst_bytes_memory_ptr_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "657:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "668:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "680:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "688:6:32", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "696:6:32", - "type": "" - } - ], - "src": "583:1066:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1783:175:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "1793:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1805:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1816:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1801:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1801:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "1793:4:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1828:29:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1846:3:32", - "type": "", - "value": "160" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1851:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "1842:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1842:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1855:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "1838:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1838:19:32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "1832:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1873:9:32" - }, - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "1888:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1896:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "1884:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1884:15:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1866:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1866:34:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1866:34:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1920:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1931:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1916:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1916:18:32" - }, - { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "1940:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1948:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "1936:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1936:15:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1909:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1909:43:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1909:43:32" - } - ] - }, - "name": "abi_encode_tuple_t_address_t_address__to_t_address_t_address__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "1744:9:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "1755:6:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "1763:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "1774:4:32", - "type": "" - } - ], - "src": "1654:304:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2137:228:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2154:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2165:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2147:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2147:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2147:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2188:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2199:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2184:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2184:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2204:2:32", - "type": "", - "value": "38" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2177:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2177:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2177:30:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2227:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2238:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2223:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2223:18:32" - }, - { - "hexValue": "455243313936373a206e65772061646d696e20697320746865207a65726f2061", - "kind": "string", - "nodeType": "YulLiteral", - "src": "2243:34:32", - "type": "", - "value": "ERC1967: new admin is the zero a" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2216:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2216:62:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2216:62:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2298:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2309:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2294:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2294:18:32" - }, - { - "hexValue": "646472657373", - "kind": "string", - "nodeType": "YulLiteral", - "src": "2314:8:32", - "type": "", - "value": "ddress" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2287:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2287:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2287:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "2332:27:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2344:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2355:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2340:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2340:19:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "2332:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_3820e16891102c1360a787e6e648431097d92537f969d458f5c94b56f8318be5__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "2114:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "2128:4:32", - "type": "" - } - ], - "src": "1963:402:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2544:235:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2561:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2572:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2554:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2554:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2554:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2595:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2606:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2591:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2591:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2611:2:32", - "type": "", - "value": "45" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2584:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2584:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2584:30:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2634:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2645:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2630:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2630:18:32" - }, - { - "hexValue": "455243313936373a206e657720696d706c656d656e746174696f6e206973206e", - "kind": "string", - "nodeType": "YulLiteral", - "src": "2650:34:32", - "type": "", - "value": "ERC1967: new implementation is n" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2623:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2623:62:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2623:62:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2705:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2716:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2701:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2701:18:32" - }, - { - "hexValue": "6f74206120636f6e7472616374", - "kind": "string", - "nodeType": "YulLiteral", - "src": "2721:15:32", - "type": "", - "value": "ot a contract" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2694:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2694:43:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2694:43:32" - }, - { - "nodeType": "YulAssignment", - "src": "2746:27:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2758:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2769:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2754:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2754:19:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "2746:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_972b7028e8de0bff0d553b3264eba2312ec98a552add05e58853b313f9f4ac65__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "2521:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "2535:4:32", - "type": "" - } - ], - "src": "2370:409:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2921:150:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "2931:27:32", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "2951:6:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "2945:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "2945:13:32" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "2935:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "3006:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3014:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3002:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3002:17:32" - }, - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "3021:3:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "3026:6:32" - } - ], - "functionName": { - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulIdentifier", - "src": "2967:34:32" - }, - "nodeType": "YulFunctionCall", - "src": "2967:66:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2967:66:32" - }, - { - "nodeType": "YulAssignment", - "src": "3042:23:32", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "3053:3:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "3058:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3049:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3049:16:32" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "3042:3:32" - } - ] - } - ] - }, - "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": "2897:3:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "2902:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "2913:3:32", - "type": "" - } - ], - "src": "2784:287:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3250:179:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3267:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3278:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3260:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3260:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3260:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3301:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3312:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3297:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3297:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3317:2:32", - "type": "", - "value": "29" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3290:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3290:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3290:30:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3340:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3351:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3336:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3336:18:32" - }, - { - "hexValue": "416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374", - "kind": "string", - "nodeType": "YulLiteral", - "src": "3356:31:32", - "type": "", - "value": "Address: call to non-contract" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3329:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3329:59:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3329:59:32" - }, - { - "nodeType": "YulAssignment", - "src": "3397:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3409:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3420:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3405:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3405:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "3397:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_cc2e4e38850b7c0a3e942cfed89b71c77302df25bcb2ec297a0c4ff9ff6b90ad__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "3227:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "3241:4:32", - "type": "" - } - ], - "src": "3076:353:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3555:275:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3572:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3583:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3565:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3565:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3565:21:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3595:27:32", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "3615:6:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "3609:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "3609:13:32" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "3599:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3642:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3653:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3638:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3638:18:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "3658:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3631:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3631:34:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3631:34:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "3713:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3721:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3709:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3709:15:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3730:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3741:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3726:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3726:18:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "3746:6:32" - } - ], - "functionName": { - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulIdentifier", - "src": "3674:34:32" - }, - "nodeType": "YulFunctionCall", - "src": "3674:79:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3674:79:32" - }, - { - "nodeType": "YulAssignment", - "src": "3762:62:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3778:9:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "3797:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3805:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3793:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3793:15:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3814:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "3810:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3810:7:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "3789:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3789:29:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3774:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3774:45:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3821:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3770:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3770:54:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "3762:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "3524:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "3535:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "3546:4:32", - "type": "" - } - ], - "src": "3434:396:32" - } - ] - }, - "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_bytes_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 abi_encode_tuple_t_address_t_address__to_t_address_t_address__fromStack_reversed(headStart, value1, value0) -> tail\n {\n tail := add(headStart, 64)\n let _1 := sub(shl(160, 1), 1)\n mstore(headStart, and(value0, _1))\n mstore(add(headStart, 32), and(value1, _1))\n }\n function abi_encode_tuple_t_stringliteral_3820e16891102c1360a787e6e648431097d92537f969d458f5c94b56f8318be5__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 38)\n mstore(add(headStart, 64), \"ERC1967: new admin is the zero a\")\n mstore(add(headStart, 96), \"ddress\")\n tail := add(headStart, 128)\n }\n function abi_encode_tuple_t_stringliteral_972b7028e8de0bff0d553b3264eba2312ec98a552add05e58853b313f9f4ac65__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 45)\n mstore(add(headStart, 64), \"ERC1967: new implementation is n\")\n mstore(add(headStart, 96), \"ot a contract\")\n tail := add(headStart, 128)\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_cc2e4e38850b7c0a3e942cfed89b71c77302df25bcb2ec297a0c4ff9ff6b90ad__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 29)\n mstore(add(headStart, 64), \"Address: call to non-contract\")\n tail := add(headStart, 96)\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 let length := mload(value0)\n mstore(add(headStart, 32), length)\n copy_memory_to_memory_with_cleanup(add(value0, 32), add(headStart, 64), length)\n tail := add(add(headStart, and(add(length, 31), not(31))), 64)\n }\n}", - "id": 32, - "language": "Yul", - "name": "#utility.yul" - } - ], - "deployedGeneratedSources": [ - { - "ast": { - "nodeType": "YulBlock", - "src": "0:5007:32", - "statements": [ - { - "nodeType": "YulBlock", - "src": "6:3:32", - "statements": [] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "188:296:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "205:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "216:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "198:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "198:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "198:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "239:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "250:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "235:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "235:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "255:2:32", - "type": "", - "value": "66" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "228:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "228:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "228:30:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "278:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "289:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "274:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "274:18:32" - }, - { - "hexValue": "5472616e73706172656e745570677261646561626c6550726f78793a2061646d", - "kind": "string", - "nodeType": "YulLiteral", - "src": "294:34:32", - "type": "", - "value": "TransparentUpgradeableProxy: adm" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "267:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "267:62:32" - }, - "nodeType": "YulExpressionStatement", - "src": "267:62:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "349:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "360:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "345:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "345:18:32" - }, - { - "hexValue": "696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267", - "kind": "string", - "nodeType": "YulLiteral", - "src": "365:34:32", - "type": "", - "value": "in cannot fallback to proxy targ" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "338:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "338:62:32" - }, - "nodeType": "YulExpressionStatement", - "src": "338:62:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "420:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "431:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "416:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "416:19:32" - }, - { - "hexValue": "6574", - "kind": "string", - "nodeType": "YulLiteral", - "src": "437:4:32", - "type": "", - "value": "et" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "409:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "409:33:32" - }, - "nodeType": "YulExpressionStatement", - "src": "409:33:32" - }, - { - "nodeType": "YulAssignment", - "src": "451:27:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "463:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "474:3:32", - "type": "", - "value": "160" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "459:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "459:19:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "451:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_f5d2ea39d7e6c7d19dc32ccc2bd7ca26b7aa4a603ef4aa6f2b205c93c3ffe43d__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "165:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "179:4:32", - "type": "" - } - ], - "src": "14:470:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "619:201:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "657:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "666:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "669:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "659:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "659:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "659:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "startIndex", - "nodeType": "YulIdentifier", - "src": "635:10:32" - }, - { - "name": "endIndex", - "nodeType": "YulIdentifier", - "src": "647:8:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "632:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "632:24:32" - }, - "nodeType": "YulIf", - "src": "629:44:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "706:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "715:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "718:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "708:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "708:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "708:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "endIndex", - "nodeType": "YulIdentifier", - "src": "688:8:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "698:6:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "685:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "685:20:32" - }, - "nodeType": "YulIf", - "src": "682:40:32" - }, - { - "nodeType": "YulAssignment", - "src": "731:36:32", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "748:6:32" - }, - { - "name": "startIndex", - "nodeType": "YulIdentifier", - "src": "756:10:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "744:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "744:23:32" - }, - "variableNames": [ - { - "name": "offsetOut", - "nodeType": "YulIdentifier", - "src": "731:9:32" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "776:38:32", - "value": { - "arguments": [ - { - "name": "endIndex", - "nodeType": "YulIdentifier", - "src": "793:8:32" - }, - { - "name": "startIndex", - "nodeType": "YulIdentifier", - "src": "803:10:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "789:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "789:25:32" - }, - "variableNames": [ - { - "name": "lengthOut", - "nodeType": "YulIdentifier", - "src": "776:9:32" - } - ] - } - ] - }, - "name": "calldata_array_index_range_access_t_bytes_calldata_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "553:6:32", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "561:6:32", - "type": "" - }, - { - "name": "startIndex", - "nodeType": "YulTypedName", - "src": "569:10:32", - "type": "" - }, - { - "name": "endIndex", - "nodeType": "YulTypedName", - "src": "581:8:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "offsetOut", - "nodeType": "YulTypedName", - "src": "594:9:32", - "type": "" - }, - { - "name": "lengthOut", - "nodeType": "YulTypedName", - "src": "605:9:32", - "type": "" - } - ], - "src": "489:331:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "882:124:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "892:29:32", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "914:6:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "901:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "901:20:32" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "892:5:32" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "984:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "993:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "996:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "986:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "986:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "986:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "943:5:32" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "954:5:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "969:3:32", - "type": "", - "value": "160" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "974:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "965:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "965:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "978:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "961:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "961:19:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "950:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "950:31:32" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "940:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "940:42:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "933:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "933:50:32" - }, - "nodeType": "YulIf", - "src": "930:70:32" - } - ] - }, - "name": "abi_decode_address_payable", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "861:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "872:5:32", - "type": "" - } - ], - "src": "825:181:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1089:124:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "1135:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1144:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1147:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1137:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1137:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1137:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "1110:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1119:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "1106:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1106:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1131:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "1102:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1102:32:32" - }, - "nodeType": "YulIf", - "src": "1099:52:32" - }, - { - "nodeType": "YulAssignment", - "src": "1160:47:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1197:9:32" - } - ], - "functionName": { - "name": "abi_decode_address_payable", - "nodeType": "YulIdentifier", - "src": "1170:26:32" - }, - "nodeType": "YulFunctionCall", - "src": "1170:37:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "1160:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_address_payable", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "1055:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "1066:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "1078:6:32", - "type": "" - } - ], - "src": "1011:202:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1250:95:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1267:1:32", - "type": "", - "value": "0" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1274:3:32", - "type": "", - "value": "224" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1279:10:32", - "type": "", - "value": "0x4e487b71" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "1270:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1270:20:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1260:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1260:31:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1260:31:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1307:1:32", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1310:4:32", - "type": "", - "value": "0x41" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1300:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1300:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1300:15:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1331:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1334:4:32", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1324:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1324:15:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1324:15:32" - } - ] - }, - "name": "panic_error_0x41", - "nodeType": "YulFunctionDefinition", - "src": "1218:127:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1454:907:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "1500:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1509:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1512:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1502:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1502:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1502:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "1475:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1484:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "1471:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1471:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1496:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "1467:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1467:32:32" - }, - "nodeType": "YulIf", - "src": "1464:52:32" - }, - { - "nodeType": "YulAssignment", - "src": "1525:47:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1562:9:32" - } - ], - "functionName": { - "name": "abi_decode_address_payable", - "nodeType": "YulIdentifier", - "src": "1535:26:32" - }, - "nodeType": "YulFunctionCall", - "src": "1535:37:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "1525:6:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1581:46:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1612:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1623:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1608:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1608:18:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "1595:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "1595:32:32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "1585:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1636:28:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1654:2:32", - "type": "", - "value": "64" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1658:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "1650:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1650:10:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1662:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "1646:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1646:18:32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "1640:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1691:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1700:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1703:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1693:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1693:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1693:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1679:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1687:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1676:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "1676:14:32" - }, - "nodeType": "YulIf", - "src": "1673:34:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1716:32:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1730:9:32" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1741:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1726:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1726:22:32" - }, - "variables": [ - { - "name": "_2", - "nodeType": "YulTypedName", - "src": "1720:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1796:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1805:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1808:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "1798:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1798:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1798:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "1775:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1779:4:32", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1771:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1771:13:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "1786:7:32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "1767:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1767:27:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "1760:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "1760:35:32" - }, - "nodeType": "YulIf", - "src": "1757:55:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1821:26:32", - "value": { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "1844:2:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "1831:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "1831:16:32" - }, - "variables": [ - { - "name": "_3", - "nodeType": "YulTypedName", - "src": "1825:2:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1870:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "1872:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "1872:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "1872:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "1862:2:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "1866:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1859:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "1859:10:32" - }, - "nodeType": "YulIf", - "src": "1856:36:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1901:17:32", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1915:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "1911:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1911:7:32" - }, - "variables": [ - { - "name": "_4", - "nodeType": "YulTypedName", - "src": "1905:2:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1927:23:32", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1947:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "1941:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "1941:9:32" - }, - "variables": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "1931:6:32", - "type": "" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "1959:71:32", - "value": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1981:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "2005:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2009:4:32", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2001:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2001:13:32" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "2016:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "1997:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1997:22:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2021:2:32", - "type": "", - "value": "63" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1993:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1993:31:32" - }, - { - "name": "_4", - "nodeType": "YulIdentifier", - "src": "2026:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "1989:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1989:40:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1977:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "1977:53:32" - }, - "variables": [ - { - "name": "newFreePtr", - "nodeType": "YulTypedName", - "src": "1963:10:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2089:22:32", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "2091:16:32" - }, - "nodeType": "YulFunctionCall", - "src": "2091:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2091:18:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "2048:10:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "2060:2:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "2045:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "2045:18:32" - }, - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "2068:10:32" - }, - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "2080:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "2065:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "2065:22:32" - } - ], - "functionName": { - "name": "or", - "nodeType": "YulIdentifier", - "src": "2042:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "2042:46:32" - }, - "nodeType": "YulIf", - "src": "2039:72:32" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2127:2:32", - "type": "", - "value": "64" - }, - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "2131:10:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2120:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2120:22:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2120:22:32" - }, - { - "expression": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "2158:6:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "2166:2:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2151:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2151:18:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2151:18:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2215:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2224:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2227:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "2217:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2217:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2217:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "2192:2:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "2196:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2188:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2188:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2201:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2184:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2184:20:32" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "2206:7:32" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "2181:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "2181:33:32" - }, - "nodeType": "YulIf", - "src": "2178:53:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "2257:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2265:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2253:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2253:15:32" - }, - { - "arguments": [ - { - "name": "_2", - "nodeType": "YulIdentifier", - "src": "2274:2:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2278:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2270:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2270:11:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "2283:2:32" - } - ], - "functionName": { - "name": "calldatacopy", - "nodeType": "YulIdentifier", - "src": "2240:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "2240:46:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2240:46:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "2310:6:32" - }, - { - "name": "_3", - "nodeType": "YulIdentifier", - "src": "2318:2:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2306:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2306:15:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2323:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2302:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2302:24:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2328:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2295:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2295:35:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2295:35:32" - }, - { - "nodeType": "YulAssignment", - "src": "2339:16:32", - "value": { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "2349:6:32" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "2339:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_address_payablet_bytes_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "1412:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "1423:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "1435:6:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "1443:6:32", - "type": "" - } - ], - "src": "1350:1011:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2467:102:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "2477:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2489:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2500:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2485:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2485:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "2477:4:32" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2519:9:32" - }, - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "2534:6:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2550:3:32", - "type": "", - "value": "160" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2555:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "2546:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2546:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2559:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "2542:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2542:19:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "2530:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2530:32:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2512:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2512:51:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2512:51:32" - } - ] - }, - "name": "abi_encode_tuple_t_address__to_t_address__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "2436:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "2447:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "2458:4:32", - "type": "" - } - ], - "src": "2366:203:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2640:184:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "2650:10:32", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2659:1:32", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "i", - "nodeType": "YulTypedName", - "src": "2654:1:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2719:63:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "2744:3:32" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "2749:1:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2740:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2740:11:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "2763:3:32" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "2768:1:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2759:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2759:11:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "2753:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "2753:18:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2733:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2733:39:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2733:39:32" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "2680:1:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "2683:6:32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "2677:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "2677:13:32" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "2691:19:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "2693:15:32", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "2702:1:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2705:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2698:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2698:10:32" - }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "2693:1:32" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "2673:3:32", - "statements": [] - }, - "src": "2669:113:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "2802:3:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "2807:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2798:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "2798:16:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2816:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2791:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "2791:27:32" - }, - "nodeType": "YulExpressionStatement", - "src": "2791:27:32" - } - ] - }, - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "src", - "nodeType": "YulTypedName", - "src": "2618:3:32", - "type": "" - }, - { - "name": "dst", - "nodeType": "YulTypedName", - "src": "2623:3:32", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "2628:6:32", - "type": "" - } - ], - "src": "2574:250:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2966:150:32", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "2976:27:32", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "2996:6:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "2990:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "2990:13:32" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "2980:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "3051:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3059:4:32", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3047:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3047:17:32" - }, - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "3066:3:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "3071:6:32" - } - ], - "functionName": { - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulIdentifier", - "src": "3012:34:32" - }, - "nodeType": "YulFunctionCall", - "src": "3012:66:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3012:66:32" - }, - { - "nodeType": "YulAssignment", - "src": "3087:23:32", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "3098:3:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "3103:6:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3094:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3094:16:32" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "3087:3:32" - } - ] - } - ] - }, - "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": "2942:3:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "2947:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "2958:3:32", - "type": "" - } - ], - "src": "2829:287:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3250:175:32", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "3260:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3272:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3283:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3268:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3268:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "3260:4:32" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3295:29:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3313:3:32", - "type": "", - "value": "160" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3318:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "shl", - "nodeType": "YulIdentifier", - "src": "3309:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3309:11:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3322:1:32", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "3305:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3305:19:32" - }, - "variables": [ - { - "name": "_1", - "nodeType": "YulTypedName", - "src": "3299:2:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3340:9:32" - }, - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "3355:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "3363:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "3351:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3351:15:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3333:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3333:34:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3333:34:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3387:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3398:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3383:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3383:18:32" - }, - { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "3407:6:32" - }, - { - "name": "_1", - "nodeType": "YulIdentifier", - "src": "3415:2:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "3403:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3403:15:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3376:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3376:43:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3376:43:32" - } - ] - }, - "name": "abi_encode_tuple_t_address_t_address__to_t_address_t_address__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "3211:9:32", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "3222:6:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "3230:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "3241:4:32", - "type": "" - } - ], - "src": "3121:304:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3604:179:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3621:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3632:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3614:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3614:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3614:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3655:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3666:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3651:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3651:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3671:2:32", - "type": "", - "value": "29" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3644:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3644:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3644:30:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3694:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3705:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3690:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3690:18:32" - }, - { - "hexValue": "416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374", - "kind": "string", - "nodeType": "YulLiteral", - "src": "3710:31:32", - "type": "", - "value": "Address: call to non-contract" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3683:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3683:59:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3683:59:32" - }, - { - "nodeType": "YulAssignment", - "src": "3751:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3763:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3774:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3759:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "3759:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "3751:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_cc2e4e38850b7c0a3e942cfed89b71c77302df25bcb2ec297a0c4ff9ff6b90ad__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "3581:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "3595:4:32", - "type": "" - } - ], - "src": "3430:353:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3962:228:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3979:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3990:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3972:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "3972:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "3972:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4013:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4024:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4009:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4009:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4029:2:32", - "type": "", - "value": "38" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4002:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4002:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4002:30:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4052:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4063:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4048:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4048:18:32" - }, - { - "hexValue": "455243313936373a206e65772061646d696e20697320746865207a65726f2061", - "kind": "string", - "nodeType": "YulLiteral", - "src": "4068:34:32", - "type": "", - "value": "ERC1967: new admin is the zero a" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4041:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4041:62:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4041:62:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4123:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4134:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4119:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4119:18:32" - }, - { - "hexValue": "646472657373", - "kind": "string", - "nodeType": "YulLiteral", - "src": "4139:8:32", - "type": "", - "value": "ddress" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4112:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4112:36:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4112:36:32" - }, - { - "nodeType": "YulAssignment", - "src": "4157:27:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4169:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4180:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4165:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4165:19:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "4157:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_3820e16891102c1360a787e6e648431097d92537f969d458f5c94b56f8318be5__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "3939:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "3953:4:32", - "type": "" - } - ], - "src": "3788:402:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4316:275:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4333:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4344:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4326:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4326:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4326:21:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "4356:27:32", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "4376:6:32" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "4370:5:32" - }, - "nodeType": "YulFunctionCall", - "src": "4370:13:32" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "4360:6:32", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4403:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4414:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4399:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4399:18:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "4419:6:32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4392:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4392:34:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4392:34:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "4474:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4482:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4470:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4470:15:32" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4491:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4502:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4487:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4487:18:32" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "4507:6:32" - } - ], - "functionName": { - "name": "copy_memory_to_memory_with_cleanup", - "nodeType": "YulIdentifier", - "src": "4435:34:32" - }, - "nodeType": "YulFunctionCall", - "src": "4435:79:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4435:79:32" - }, - { - "nodeType": "YulAssignment", - "src": "4523:62:32", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4539:9:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "4558:6:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4566:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4554:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4554:15:32" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4575:2:32", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "4571:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4571:7:32" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "4550:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4550:29:32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4535:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4535:45:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4582:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4531:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4531:54:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "4523:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "4285:9:32", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "4296:6:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "4307:4:32", - "type": "" - } - ], - "src": "4195:396:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4770:235:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4787:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4798:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4780:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4780:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4780:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4821:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4832:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4817:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4817:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4837:2:32", - "type": "", - "value": "45" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4810:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4810:30:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4810:30:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4860:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4871:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4856:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4856:18:32" - }, - { - "hexValue": "455243313936373a206e657720696d706c656d656e746174696f6e206973206e", - "kind": "string", - "nodeType": "YulLiteral", - "src": "4876:34:32", - "type": "", - "value": "ERC1967: new implementation is n" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4849:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4849:62:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4849:62:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4931:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4942:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4927:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4927:18:32" - }, - { - "hexValue": "6f74206120636f6e7472616374", - "kind": "string", - "nodeType": "YulLiteral", - "src": "4947:15:32", - "type": "", - "value": "ot a contract" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "4920:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "4920:43:32" - }, - "nodeType": "YulExpressionStatement", - "src": "4920:43:32" - }, - { - "nodeType": "YulAssignment", - "src": "4972:27:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4984:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4995:3:32", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4980:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "4980:19:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "4972:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_972b7028e8de0bff0d553b3264eba2312ec98a552add05e58853b313f9f4ac65__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "4747:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "4761:4:32", - "type": "" - } - ], - "src": "4596:409:32" - } - ] - }, - "contents": "{\n { }\n function abi_encode_tuple_t_stringliteral_f5d2ea39d7e6c7d19dc32ccc2bd7ca26b7aa4a603ef4aa6f2b205c93c3ffe43d__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 66)\n mstore(add(headStart, 64), \"TransparentUpgradeableProxy: adm\")\n mstore(add(headStart, 96), \"in cannot fallback to proxy targ\")\n mstore(add(headStart, 128), \"et\")\n tail := add(headStart, 160)\n }\n function calldata_array_index_range_access_t_bytes_calldata_ptr(offset, length, startIndex, endIndex) -> offsetOut, lengthOut\n {\n if gt(startIndex, endIndex) { revert(0, 0) }\n if gt(endIndex, length) { revert(0, 0) }\n offsetOut := add(offset, startIndex)\n lengthOut := sub(endIndex, startIndex)\n }\n function abi_decode_address_payable(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, sub(shl(160, 1), 1)))) { revert(0, 0) }\n }\n function abi_decode_tuple_t_address_payable(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := abi_decode_address_payable(headStart)\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_address_payablet_bytes_memory_ptr(headStart, dataEnd) -> value0, value1\n {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n value0 := abi_decode_address_payable(headStart)\n let offset := calldataload(add(headStart, 32))\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 := calldataload(_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 calldatacopy(add(memPtr, 32), add(_2, 32), _3)\n mstore(add(add(memPtr, _3), 32), 0)\n value1 := 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, sub(shl(160, 1), 1)))\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_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_address_t_address__to_t_address_t_address__fromStack_reversed(headStart, value1, value0) -> tail\n {\n tail := add(headStart, 64)\n let _1 := sub(shl(160, 1), 1)\n mstore(headStart, and(value0, _1))\n mstore(add(headStart, 32), and(value1, _1))\n }\n function abi_encode_tuple_t_stringliteral_cc2e4e38850b7c0a3e942cfed89b71c77302df25bcb2ec297a0c4ff9ff6b90ad__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 29)\n mstore(add(headStart, 64), \"Address: call to non-contract\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_3820e16891102c1360a787e6e648431097d92537f969d458f5c94b56f8318be5__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 38)\n mstore(add(headStart, 64), \"ERC1967: new admin is the zero a\")\n mstore(add(headStart, 96), \"ddress\")\n tail := add(headStart, 128)\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 let length := mload(value0)\n mstore(add(headStart, 32), length)\n copy_memory_to_memory_with_cleanup(add(value0, 32), add(headStart, 64), length)\n tail := add(add(headStart, and(add(length, 31), not(31))), 64)\n }\n function abi_encode_tuple_t_stringliteral_972b7028e8de0bff0d553b3264eba2312ec98a552add05e58853b313f9f4ac65__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 45)\n mstore(add(headStart, 64), \"ERC1967: new implementation is n\")\n mstore(add(headStart, 96), \"ot a contract\")\n tail := add(headStart, 128)\n }\n}", - "id": 32, - "language": "Yul", - "name": "#utility.yul" - } - ], - "sourceMap": "3389:4951:13:-:0;;;3663:137;;;;;;;;;;;;;;;;;;:::i;:::-;3748:6;3756:5;1024:39:8;3748:6:13;3756:5;1057::8;1024:17;:39::i;:::-;-1:-1:-1;3773:20:13::1;::::0;-1:-1:-1;3786:6:13;3773:12:::1;:20::i;:::-;3663:137:::0;;;3389:4951;;2057:265:9;2165:29;2176:17;2165:10;:29::i;:::-;2222:1;2208:4;:11;:15;:28;;;;2227:9;2208:28;2204:112;;;2252:53;2281:17;2300:4;2252:28;;;;;:53;;:::i;:::-;;2204:112;2057:265;;;:::o;4300:135::-;4364:35;4377:11;:9;:11::i;:::-;4364:35;;;-1:-1:-1;;;;;1884:15:32;;;1866:34;;1936:15;;;1931:2;1916:18;;1909:43;1801:18;4364:35:9;;;;;;;4409:19;4419:8;4409:9;:19::i;:::-;4300:135;:::o;1771:152::-;1837:37;1856:17;1837:18;:37::i;:::-;1889:27;;-1:-1:-1;;;;;1889:27:9;;;;;;;;1771:152;:::o;6674:198:14:-;6757:12;6788:77;6809:6;6817:4;6788:77;;;;;;;;;;;;;;;;;:20;:77::i;:::-;6781:84;6674:198;-1:-1:-1;;;6674:198:14:o;3784:122:9:-;3828:7;3854:39;-1:-1:-1;;;;;;;;;;;3881:11:9;;3854:26;;;;;:39;;:::i;:::-;:45;-1:-1:-1;;;;;3854:45:9;;3784:122;-1:-1:-1;3784:122:9:o;3988:201::-;-1:-1:-1;;;;;4051:22:9;;4043:73;;;;-1:-1:-1;;;4043:73:9;;2165:2:32;4043:73:9;;;2147:21:32;2204:2;2184:18;;;2177:30;2243:34;2223:18;;;2216:62;-1:-1:-1;;;2294:18:32;;;2287:36;2340:19;;4043:73:9;;;;;;;;;4174:8;4126:39;-1:-1:-1;;;;;;;;;;;4153:11:9;;4126:26;;;;;:39;;:::i;:::-;:56;;-1:-1:-1;;;;;;4126:56:9;-1:-1:-1;;;;;4126:56:9;;;;;;;;;;-1:-1:-1;3988:201:9:o;1406:259::-;1487:37;1506:17;1487:18;;;;;:37;;:::i;:::-;1479:95;;;;-1:-1:-1;;;1479:95:9;;2572:2:32;1479:95:9;;;2554:21:32;2611:2;2591:18;;;2584:30;2650:34;2630:18;;;2623:62;-1:-1:-1;;;2701:18:32;;;2694:43;2754:19;;1479:95:9;2370:409:32;1479:95:9;1641:17;1584:48;1030:66;1611:20;;1584:26;;;;;:48;;:::i;7058:325:14:-;7199:12;7224;7238:23;7265:6;-1:-1:-1;;;;;7265:19:14;7285:4;7265:25;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;7223:67:14;;-1:-1:-1;7223:67:14;-1:-1:-1;7307:69:14;7334:6;7223:67;;7363:12;7307:26;:69::i;:::-;7300:76;7058:325;-1:-1:-1;;;;;;7058:325:14:o;1859:190:16:-;2029:4;1859:190::o;1412:320:14:-;-1:-1:-1;;;;;1702:19:14;;:23;;;1412:320::o;7671:628::-;7851:12;7879:7;7875:418;;;7906:10;:17;7927:1;7906:22;7902:286;;8121:18;8132:6;8121:10;:18::i;:::-;8113:60;;;;-1:-1:-1;;;8113:60:14;;3278:2:32;8113:60:14;;;3260:21:32;3317:2;3297:18;;;3290:30;3356:31;3336:18;;;3329:59;3405:18;;8113:60:14;3076:353:32;8113:60:14;-1:-1:-1;8208:10:14;8201:17;;7875:418;8249:33;8257:10;8269:12;8249:7;:33::i;:::-;7671:628;;;;;;:::o;8821:540::-;8980:17;;:21;8976:379;;9208:10;9202:17;9264:15;9251:10;9247:2;9243:19;9236:44;8976:379;9331:12;9324:20;;-1:-1:-1;;;9324:20:14;;;;;;;;:::i;14:177:32:-;93:13;;-1:-1:-1;;;;;135:31:32;;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:32;552:16;;545:27;328:250::o;583:1066::-;680:6;688;696;749:2;737:9;728:7;724:23;720:32;717:52;;;765:1;762;755:12;717:52;788:40;818:9;788:40;:::i;:::-;778:50;;847:49;892:2;881:9;877:18;847:49;:::i;:::-;940:2;925:18;;919:25;837:59;;-1:-1:-1;;;;;;993:14:32;;;990:34;;;1020:1;1017;1010:12;990:34;1058:6;1047:9;1043:22;1033:32;;1103:7;1096:4;1092:2;1088:13;1084:27;1074:55;;1125:1;1122;1115:12;1074:55;1154:2;1148:9;1176:2;1172;1169:10;1166:36;;;1182:18;;:::i;:::-;1257:2;1251:9;1225:2;1311:13;;-1:-1:-1;;1307:22:32;;;1331:2;1303:31;1299:40;1287:53;;;1355:18;;;1375:22;;;1352:46;1349:72;;;1401:18;;:::i;:::-;1441:10;1437:2;1430:22;1476:2;1468:6;1461:18;1516:7;1511:2;1506;1502;1498:11;1494:20;1491:33;1488:53;;;1537:1;1534;1527:12;1488:53;1550:68;1615:2;1610;1602:6;1598:15;1593:2;1589;1585:11;1550:68;:::i;:::-;1637:6;1627:16;;;;;;;583:1066;;;;;:::o;2784:287::-;2913:3;2951:6;2945:13;2967:66;3026:6;3021:3;3014:4;3006:6;3002:17;2967:66;:::i;:::-;3049:16;;;;;2784:287;-1:-1:-1;;2784:287:32:o;3434:396::-;3583:2;3572:9;3565:21;3546:4;3615:6;3609:13;3658:6;3653:2;3642:9;3638:18;3631:34;3674:79;3746:6;3741:2;3730:9;3726:18;3721:2;3713:6;3709:15;3674:79;:::i;:::-;3814:2;3793:15;-1:-1:-1;;3789:29:32;3774:45;;;;3821:2;3770:54;;3434:396;-1:-1:-1;;3434:396:32:o;:::-;3389:4951:13;;;;;;", - "deployedSourceMap": "3389:4951:13:-:0;;;;;;2898:11:10;:9;:11::i;:::-;3389:4951:13;;2675:11:10;4407:1102:13;4482:11;:9;:11::i;:::-;-1:-1:-1;;;;;4468:25:13;:10;:25;4464:1039;;4509:16;-1:-1:-1;;;;;;4539:15:13;4557:7;;-1:-1:-1;;;4582:59:13;;4578:779;;4667:20;:18;:20::i;:::-;4661:26;;4578:779;;;-1:-1:-1;;;;;;;;;4712:66:13;;;4708:649;;4804:27;:25;:27::i;4708:649::-;-1:-1:-1;;;;;;;;;4856:61:13;;;4852:505;;4943:22;:20;:22::i;4852:505::-;-1:-1:-1;;;;;;;;;4990:55:13;;;4986:371;;5071:16;:14;:16::i;4986:371::-;-1:-1:-1;;;;;;;;;5112:64:13;;;5108:249;;5202:25;:23;:25::i;5108:249::-;5266:76;;-1:-1:-1;;;5266:76:13;;216:2:32;5266:76:13;;;198:21:32;255:2;235:18;;;228:30;294:34;274:18;;;267:62;365:34;345:18;;;338:62;-1:-1:-1;;;416:19:32;;;409:33;459:19;;5266:76:13;;;;;;;;5108:249;5426:3;5420:10;5413:4;5408:3;5404:14;5397:34;4464:1039;5475:17;:15;:17::i;:::-;4407:1102::o;6674:198:14:-;6757:12;6788:77;6809:6;6817:4;6788:77;;;;;;;;;;;;;;;;;:20;:77::i;:::-;6781:84;6674:198;-1:-1:-1;;;6674:198:14:o;1859:190:16:-;2029:4;1859:190::o;1412:320:14:-;-1:-1:-1;;;;;1702:19:14;;:23;;;1412:320::o;3784:122:9:-;3828:7;-1:-1:-1;;;;;;;;;;;3854:39:9;:45;-1:-1:-1;;;;;3854:45:9;;3784:122;-1:-1:-1;3784:122:9:o;6985:255:13:-;7032:12;7056:19;:17;:19::i;:::-;7086:25;7125:12;:8;7134:1;7125:8;7086:25;7125:12;:::i;:::-;7114:35;;;;;;;:::i;:::-;7086:63;;7159:54;7177:17;7196:9;;;;;;;;;;;;7207:5;7159:17;:54::i;:::-;-1:-1:-1;;7224:9:13;;;;;;;;;-1:-1:-1;7224:9:13;;;6985:255::o;7524:254::-;7578:12;7603:25;;7662:12;:8;7671:1;7662:8;7603:25;7662:12;:::i;:::-;7651:42;;;;;;;:::i;:::-;7602:91;;;;7703:48;7721:17;7740:4;7746;7703:17;:48::i;:::-;7762:9;;;;;;;;;;;;;;;;7524:254;:::o;6694:216::-;6743:12;6767:19;:17;:19::i;:::-;6797:16;6827:12;:8;6836:1;6827:8;6797:16;6827:12;:::i;:::-;6816:35;;;;;;;:::i;:::-;6797:54;;6861:22;6874:8;6861:12;:22::i;5860:165::-;5903:12;5927:19;:17;:19::i;:::-;5957:13;5973:11;:9;:11::i;:::-;6001:17;;;-1:-1:-1;;;;;2530:32:32;;6001:17:13;;;2512:51:32;5957:27:13;;-1:-1:-1;2485:18:32;6001:17:13;;;;;;;;;;;;5994:24;;;5860:165;:::o;6385:198::-;6437:12;6461:19;:17;:19::i;:::-;6491:22;6516:17;:15;:17::i;2322:110:10:-;2397:28;2407:17;:15;:17::i;:::-;2397:9;:28::i;7058:325:14:-;7199:12;7224;7238:23;7265:6;-1:-1:-1;;;;;7265:19:14;7285:4;7265:25;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7223:67;;;;7307:69;7334:6;7342:7;7351:10;7363:12;7307:26;:69::i;:::-;7300:76;7058:325;-1:-1:-1;;;;;;7058:325:14:o;8261:77:13:-;8316:9;:14;8308:23;;;;;2057:265:9;2165:29;2176:17;2165:10;:29::i;:::-;2222:1;2208:4;:11;:15;:28;;;;2227:9;2208:28;2204:112;;;2252:53;2281:17;2300:4;2252:28;:53::i;:::-;;2204:112;2057:265;;;:::o;4300:135::-;4364:35;4377:11;:9;:11::i;:::-;4364:35;;;-1:-1:-1;;;;;3351:15:32;;;3333:34;;3403:15;;;3398:2;3383:18;;3376:43;3268:18;4364:35:9;;;;;;;4409:19;4419:8;4409:9;:19::i;:::-;4300:135;:::o;1148:140:8:-;1215:12;1246:35;:33;:35::i;:::-;1239:42;;1148:140;:::o;948:895:10:-;1286:14;1283:1;1280;1267:34;1500:1;1497;1481:14;1478:1;1462:14;1455:5;1442:60;1576:16;1573:1;1570;1555:38;1614:6;1681:66;;;;1796:16;1793:1;1786:27;1681:66;1716:16;1713:1;1706:27;7671:628:14;7851:12;7879:7;7875:418;;;7906:10;:17;7927:1;7906:22;7902:286;;8121:18;8132:6;8121:10;:18::i;:::-;8113:60;;;;-1:-1:-1;;;8113:60:14;;3632:2:32;8113:60:14;;;3614:21:32;3671:2;3651:18;;;3644:30;3710:31;3690:18;;;3683:59;3759:18;;8113:60:14;3430:353:32;8113:60:14;-1:-1:-1;8208:10:14;8201:17;;7875:418;8249:33;8257:10;8269:12;8249:7;:33::i;:::-;7671:628;;;;;;:::o;1771:152:9:-;1837:37;1856:17;1837:18;:37::i;:::-;1889:27;;-1:-1:-1;;;;;1889:27:9;;;;;;;;1771:152;:::o;3988:201::-;-1:-1:-1;;;;;4051:22:9;;4043:73;;;;-1:-1:-1;;;4043:73:9;;3990:2:32;4043:73:9;;;3972:21:32;4029:2;4009:18;;;4002:30;4068:34;4048:18;;;4041:62;-1:-1:-1;;;4119:18:32;;;4112:36;4165:19;;4043:73:9;3788:402:32;4043:73:9;4174:8;-1:-1:-1;;;;;;;;;;;4126:39:9;:56;;-1:-1:-1;;;;;;4126:56:9;-1:-1:-1;;;;;4126:56:9;;;;;;;;;;-1:-1:-1;3988:201:9:o;1175:140::-;1228:7;-1:-1:-1;;;;;;;;;;;1254:48:9;1859:190:16;8821:540:14;8980:17;;:21;8976:379;;9208:10;9202:17;9264:15;9251:10;9247:2;9243:19;9236:44;8976:379;9331:12;9324:20;;-1:-1:-1;;;9324:20:14;;;;;;;;:::i;1406:259:9:-;1487:37;1506:17;1487:18;:37::i;:::-;1479:95;;;;-1:-1:-1;;;1479:95:9;;4798:2:32;1479:95:9;;;4780:21:32;4837:2;4817:18;;;4810:30;4876:34;4856:18;;;4849:62;-1:-1:-1;;;4927:18:32;;;4920:43;4980:19;;1479:95:9;4596:409:32;1479:95:9;1641:17;-1:-1:-1;;;;;;;;;;;1584:48:9;1859:190:16;489:331:32;594:9;605;647:8;635:10;632:24;629:44;;;669:1;666;659:12;629:44;698:6;688:8;685:20;682:40;;;718:1;715;708:12;682:40;-1:-1:-1;;744:23:32;;;789:25;;;;;-1:-1:-1;489:331:32:o;825:181::-;901:20;;-1:-1:-1;;;;;950:31:32;;940:42;;930:70;;996:1;993;986:12;930:70;825:181;;;:::o;1011:202::-;1078:6;1131:2;1119:9;1110:7;1106:23;1102:32;1099:52;;;1147:1;1144;1137:12;1099:52;1170:37;1197:9;1170:37;:::i;1218:127::-;1279:10;1274:3;1270:20;1267:1;1260:31;1310:4;1307:1;1300:15;1334:4;1331:1;1324:15;1350:1011;1435:6;1443;1496:2;1484:9;1475:7;1471:23;1467:32;1464:52;;;1512:1;1509;1502:12;1464:52;1535:37;1562:9;1535:37;:::i;:::-;1525:47;-1:-1:-1;1623:2:32;1608:18;;1595:32;-1:-1:-1;;;;;1676:14:32;;;1673:34;;;1703:1;1700;1693:12;1673:34;1741:6;1730:9;1726:22;1716:32;;1786:7;1779:4;1775:2;1771:13;1767:27;1757:55;;1808:1;1805;1798:12;1757:55;1844:2;1831:16;1866:2;1862;1859:10;1856:36;;;1872:18;;:::i;:::-;1947:2;1941:9;1915:2;2001:13;;-1:-1:-1;;1997:22:32;;;2021:2;1993:31;1989:40;1977:53;;;2045:18;;;2065:22;;;2042:46;2039:72;;;2091:18;;:::i;:::-;2131:10;2127:2;2120:22;2166:2;2158:6;2151:18;2206:7;2201:2;2196;2192;2188:11;2184:20;2181:33;2178:53;;;2227:1;2224;2217:12;2178:53;2283:2;2278;2274;2270:11;2265:2;2257:6;2253:15;2240:46;2328:1;2323:2;2318;2310:6;2306:15;2302:24;2295:35;2349:6;2339:16;;;;;;;1350:1011;;;;;:::o;2574:250::-;2659:1;2669:113;2683:6;2680:1;2677:13;2669:113;;;2759:11;;;2753:18;2740:11;;;2733:39;2705:2;2698:10;2669:113;;;-1:-1:-1;;2816:1:32;2798:16;;2791:27;2574:250::o;2829:287::-;2958:3;2996:6;2990:13;3012:66;3071:6;3066:3;3059:4;3051:6;3047:17;3012:66;:::i;:::-;3094:16;;;;;2829:287;-1:-1:-1;;2829:287:32:o;4195:396::-;4344:2;4333:9;4326:21;4307:4;4376:6;4370:13;4419:6;4414:2;4403:9;4399:18;4392:34;4435:79;4507:6;4502:2;4491:9;4487:18;4482:2;4474:6;4470:15;4435:79;:::i;:::-;4575:2;4554:15;-1:-1:-1;;4550:29:32;4535:45;;;;4582:2;4531:54;;4195:396;-1:-1:-1;;4195:396:32:o", - "source": "// SPDX-License-Identifier: MIT\n// OpenZeppelin Contracts (last updated v4.9.0) (proxy/transparent/TransparentUpgradeableProxy.sol)\n\npragma solidity ^0.8.0;\n\nimport \"../ERC1967/ERC1967Proxy.sol\";\n\n/**\n * @dev Interface for {TransparentUpgradeableProxy}. In order to implement transparency, {TransparentUpgradeableProxy}\n * does not implement this interface directly, and some of its functions are implemented by an internal dispatch\n * mechanism. The compiler is unaware that these functions are implemented by {TransparentUpgradeableProxy} and will not\n * include them in the ABI so this interface must be used to interact with it.\n */\ninterface ITransparentUpgradeableProxy is IERC1967 {\n function admin() external view returns (address);\n\n function implementation() external view returns (address);\n\n function changeAdmin(address) external;\n\n function upgradeTo(address) external;\n\n function upgradeToAndCall(address, bytes memory) external payable;\n}\n\n/**\n * @dev This contract implements a proxy that is upgradeable by an admin.\n *\n * To avoid https://medium.com/nomic-labs-blog/malicious-backdoors-in-ethereum-proxies-62629adf3357[proxy selector\n * clashing], which can potentially be used in an attack, this contract uses the\n * https://blog.openzeppelin.com/the-transparent-proxy-pattern/[transparent proxy pattern]. This pattern implies two\n * things that go hand in hand:\n *\n * 1. If any account other than the admin calls the proxy, the call will be forwarded to the implementation, even if\n * that call matches one of the admin functions exposed by the proxy itself.\n * 2. If the admin calls the proxy, it can access the admin functions, but its calls will never be forwarded to the\n * implementation. If the admin tries to call a function on the implementation it will fail with an error that says\n * \"admin cannot fallback to proxy target\".\n *\n * These properties mean that the admin account can only be used for admin actions like upgrading the proxy or changing\n * the admin, so it's best if it's a dedicated account that is not used for anything else. This will avoid headaches due\n * to sudden errors when trying to call a function from the proxy implementation.\n *\n * Our recommendation is for the dedicated account to be an instance of the {ProxyAdmin} contract. If set up this way,\n * you should think of the `ProxyAdmin` instance as the real administrative interface of your proxy.\n *\n * NOTE: The real interface of this proxy is that defined in `ITransparentUpgradeableProxy`. This contract does not\n * inherit from that interface, and instead the admin functions are implicitly implemented using a custom dispatch\n * mechanism in `_fallback`. Consequently, the compiler will not produce an ABI for this contract. This is necessary to\n * fully implement transparency without decoding reverts caused by selector clashes between the proxy and the\n * implementation.\n *\n * WARNING: It is not recommended to extend this contract to add additional external functions. If you do so, the compiler\n * will not check that there are no selector conflicts, due to the note above. A selector clash between any new function\n * and the functions declared in {ITransparentUpgradeableProxy} will be resolved in favor of the new one. This could\n * render the admin operations inaccessible, which could prevent upgradeability. Transparency may also be compromised.\n */\ncontract TransparentUpgradeableProxy is ERC1967Proxy {\n /**\n * @dev Initializes an upgradeable proxy managed by `_admin`, backed by the implementation at `_logic`, and\n * optionally initialized with `_data` as explained in {ERC1967Proxy-constructor}.\n */\n constructor(address _logic, address admin_, bytes memory _data) payable ERC1967Proxy(_logic, _data) {\n _changeAdmin(admin_);\n }\n\n /**\n * @dev Modifier used internally that will delegate the call to the implementation unless the sender is the admin.\n *\n * CAUTION: This modifier is deprecated, as it could cause issues if the modified function has arguments, and the\n * implementation provides a function with the same selector.\n */\n modifier ifAdmin() {\n if (msg.sender == _getAdmin()) {\n _;\n } else {\n _fallback();\n }\n }\n\n /**\n * @dev If caller is the admin process the call internally, otherwise transparently fallback to the proxy behavior\n */\n function _fallback() internal virtual override {\n if (msg.sender == _getAdmin()) {\n bytes memory ret;\n bytes4 selector = msg.sig;\n if (selector == ITransparentUpgradeableProxy.upgradeTo.selector) {\n ret = _dispatchUpgradeTo();\n } else if (selector == ITransparentUpgradeableProxy.upgradeToAndCall.selector) {\n ret = _dispatchUpgradeToAndCall();\n } else if (selector == ITransparentUpgradeableProxy.changeAdmin.selector) {\n ret = _dispatchChangeAdmin();\n } else if (selector == ITransparentUpgradeableProxy.admin.selector) {\n ret = _dispatchAdmin();\n } else if (selector == ITransparentUpgradeableProxy.implementation.selector) {\n ret = _dispatchImplementation();\n } else {\n revert(\"TransparentUpgradeableProxy: admin cannot fallback to proxy target\");\n }\n assembly {\n return(add(ret, 0x20), mload(ret))\n }\n } else {\n super._fallback();\n }\n }\n\n /**\n * @dev Returns the current admin.\n *\n * TIP: To get this value clients can read directly from the storage slot shown below (specified by EIP1967) using the\n * https://eth.wiki/json-rpc/API#eth_getstorageat[`eth_getStorageAt`] RPC call.\n * `0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103`\n */\n function _dispatchAdmin() private returns (bytes memory) {\n _requireZeroValue();\n\n address admin = _getAdmin();\n return abi.encode(admin);\n }\n\n /**\n * @dev Returns the current implementation.\n *\n * TIP: To get this value clients can read directly from the storage slot shown below (specified by EIP1967) using the\n * https://eth.wiki/json-rpc/API#eth_getstorageat[`eth_getStorageAt`] RPC call.\n * `0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc`\n */\n function _dispatchImplementation() private returns (bytes memory) {\n _requireZeroValue();\n\n address implementation = _implementation();\n return abi.encode(implementation);\n }\n\n /**\n * @dev Changes the admin of the proxy.\n *\n * Emits an {AdminChanged} event.\n */\n function _dispatchChangeAdmin() private returns (bytes memory) {\n _requireZeroValue();\n\n address newAdmin = abi.decode(msg.data[4:], (address));\n _changeAdmin(newAdmin);\n\n return \"\";\n }\n\n /**\n * @dev Upgrade the implementation of the proxy.\n */\n function _dispatchUpgradeTo() private returns (bytes memory) {\n _requireZeroValue();\n\n address newImplementation = abi.decode(msg.data[4:], (address));\n _upgradeToAndCall(newImplementation, bytes(\"\"), false);\n\n return \"\";\n }\n\n /**\n * @dev Upgrade the implementation of the proxy, and then call a function from the new implementation as specified\n * by `data`, which should be an encoded function call. This is useful to initialize new storage variables in the\n * proxied contract.\n */\n function _dispatchUpgradeToAndCall() private returns (bytes memory) {\n (address newImplementation, bytes memory data) = abi.decode(msg.data[4:], (address, bytes));\n _upgradeToAndCall(newImplementation, data, true);\n\n return \"\";\n }\n\n /**\n * @dev Returns the current admin.\n *\n * CAUTION: This function is deprecated. Use {ERC1967Upgrade-_getAdmin} instead.\n */\n function _admin() internal view virtual returns (address) {\n return _getAdmin();\n }\n\n /**\n * @dev To keep this contract fully transparent, all `ifAdmin` functions must be payable. This helper is here to\n * emulate some proxy functions being non-payable while still allowing value to pass through.\n */\n function _requireZeroValue() private {\n require(msg.value == 0);\n }\n}\n", - "sourcePath": "@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", - "ast": { - "absolutePath": "@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol", - "exportedSymbols": { - "Address": [ - 2103 - ], - "ERC1967Proxy": [ - 948 - ], - "ERC1967Upgrade": [ - 1252 - ], - "IBeacon": [ - 1314 - ], - "IERC1822Proxiable": [ - 911 - ], - "IERC1967": [ - 901 - ], - "ITransparentUpgradeableProxy": [ - 1484 - ], - "Proxy": [ - 1304 - ], - "StorageSlot": [ - 2243 - ], - "TransparentUpgradeableProxy": [ - 1773 - ] - }, - "id": 1774, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1452, - "literals": [ - "solidity", - "^", - "0.8", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "133:23:13" - }, - { - "absolutePath": "@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol", - "file": "../ERC1967/ERC1967Proxy.sol", - "id": 1453, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 1774, - "sourceUnit": 949, - "src": "158:37:13", - "symbolAliases": [], - "unitAlias": "" - }, - { - "abstract": false, - "baseContracts": [ - { - "baseName": { - "id": 1455, - "name": "IERC1967", - "nameLocations": [ - "679:8:13" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 901, - "src": "679:8:13" - }, - "id": 1456, - "nodeType": "InheritanceSpecifier", - "src": "679:8:13" - } - ], - "canonicalName": "ITransparentUpgradeableProxy", - "contractDependencies": [], - "contractKind": "interface", - "documentation": { - "id": 1454, - "nodeType": "StructuredDocumentation", - "src": "197:439:13", - "text": " @dev Interface for {TransparentUpgradeableProxy}. In order to implement transparency, {TransparentUpgradeableProxy}\n does not implement this interface directly, and some of its functions are implemented by an internal dispatch\n mechanism. The compiler is unaware that these functions are implemented by {TransparentUpgradeableProxy} and will not\n include them in the ABI so this interface must be used to interact with it." - }, - "fullyImplemented": false, - "id": 1484, - "linearizedBaseContracts": [ - 1484, - 901 - ], - "name": "ITransparentUpgradeableProxy", - "nameLocation": "647:28:13", - "nodeType": "ContractDefinition", - "nodes": [ - { - "functionSelector": "f851a440", - "id": 1461, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "admin", - "nameLocation": "703:5:13", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1457, - "nodeType": "ParameterList", - "parameters": [], - "src": "708:2:13" - }, - "returnParameters": { - "id": 1460, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1459, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1461, - "src": "734:7:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1458, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "734:7:13", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "733:9:13" - }, - "scope": 1484, - "src": "694:49:13", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "5c60da1b", - "id": 1466, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "implementation", - "nameLocation": "758:14:13", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1462, - "nodeType": "ParameterList", - "parameters": [], - "src": "772:2:13" - }, - "returnParameters": { - "id": 1465, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1464, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1466, - "src": "798:7:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1463, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "798:7:13", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "797:9:13" - }, - "scope": 1484, - "src": "749:58:13", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "8f283970", - "id": 1471, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "changeAdmin", - "nameLocation": "822:11:13", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1469, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1468, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1471, - "src": "834:7:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1467, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "834:7:13", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "833:9:13" - }, - "returnParameters": { - "id": 1470, - "nodeType": "ParameterList", - "parameters": [], - "src": "851:0:13" - }, - "scope": 1484, - "src": "813:39:13", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "3659cfe6", - "id": 1476, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "upgradeTo", - "nameLocation": "867:9:13", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1474, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1473, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1476, - "src": "877:7:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1472, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "877:7:13", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "876:9:13" - }, - "returnParameters": { - "id": 1475, - "nodeType": "ParameterList", - "parameters": [], - "src": "894:0:13" - }, - "scope": 1484, - "src": "858:37:13", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "functionSelector": "4f1ef286", - "id": 1483, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "upgradeToAndCall", - "nameLocation": "910:16:13", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1481, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1478, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1483, - "src": "927:7:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1477, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "927:7:13", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1480, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1483, - "src": "936:12:13", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1479, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "936:5:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "926:23:13" - }, - "returnParameters": { - "id": 1482, - "nodeType": "ParameterList", - "parameters": [], - "src": "966:0:13" - }, - "scope": 1484, - "src": "901:66:13", - "stateMutability": "payable", - "virtual": false, - "visibility": "external" - } - ], - "scope": 1774, - "src": "637:332:13", - "usedErrors": [] - }, - { - "abstract": false, - "baseContracts": [ - { - "baseName": { - "id": 1486, - "name": "ERC1967Proxy", - "nameLocations": [ - "3429:12:13" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 948, - "src": "3429:12:13" - }, - "id": 1487, - "nodeType": "InheritanceSpecifier", - "src": "3429:12:13" - } - ], - "canonicalName": "TransparentUpgradeableProxy", - "contractDependencies": [], - "contractKind": "contract", - "documentation": { - "id": 1485, - "nodeType": "StructuredDocumentation", - "src": "971:2417:13", - "text": " @dev This contract implements a proxy that is upgradeable by an admin.\n To avoid https://medium.com/nomic-labs-blog/malicious-backdoors-in-ethereum-proxies-62629adf3357[proxy selector\n clashing], which can potentially be used in an attack, this contract uses the\n https://blog.openzeppelin.com/the-transparent-proxy-pattern/[transparent proxy pattern]. This pattern implies two\n things that go hand in hand:\n 1. If any account other than the admin calls the proxy, the call will be forwarded to the implementation, even if\n that call matches one of the admin functions exposed by the proxy itself.\n 2. If the admin calls the proxy, it can access the admin functions, but its calls will never be forwarded to the\n implementation. If the admin tries to call a function on the implementation it will fail with an error that says\n \"admin cannot fallback to proxy target\".\n These properties mean that the admin account can only be used for admin actions like upgrading the proxy or changing\n the admin, so it's best if it's a dedicated account that is not used for anything else. This will avoid headaches due\n to sudden errors when trying to call a function from the proxy implementation.\n Our recommendation is for the dedicated account to be an instance of the {ProxyAdmin} contract. If set up this way,\n you should think of the `ProxyAdmin` instance as the real administrative interface of your proxy.\n NOTE: The real interface of this proxy is that defined in `ITransparentUpgradeableProxy`. This contract does not\n inherit from that interface, and instead the admin functions are implicitly implemented using a custom dispatch\n mechanism in `_fallback`. Consequently, the compiler will not produce an ABI for this contract. This is necessary to\n fully implement transparency without decoding reverts caused by selector clashes between the proxy and the\n implementation.\n WARNING: It is not recommended to extend this contract to add additional external functions. If you do so, the compiler\n will not check that there are no selector conflicts, due to the note above. A selector clash between any new function\n and the functions declared in {ITransparentUpgradeableProxy} will be resolved in favor of the new one. This could\n render the admin operations inaccessible, which could prevent upgradeability. Transparency may also be compromised." - }, - "fullyImplemented": true, - "id": 1773, - "linearizedBaseContracts": [ - 1773, - 948, - 1252, - 901, - 1304 - ], - "name": "TransparentUpgradeableProxy", - "nameLocation": "3398:27:13", - "nodeType": "ContractDefinition", - "nodes": [ - { - "body": { - "id": 1505, - "nodeType": "Block", - "src": "3763:37:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 1502, - "name": "admin_", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1492, - "src": "3786:6:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 1501, - "name": "_changeAdmin", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1160, - "src": "3773:12:13", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$__$", - "typeString": "function (address)" - } - }, - "id": 1503, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "3773:20:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1504, - "nodeType": "ExpressionStatement", - "src": "3773:20:13" - } - ] - }, - "documentation": { - "id": 1488, - "nodeType": "StructuredDocumentation", - "src": "3448:210:13", - "text": " @dev Initializes an upgradeable proxy managed by `_admin`, backed by the implementation at `_logic`, and\n optionally initialized with `_data` as explained in {ERC1967Proxy-constructor}." - }, - "id": 1506, - "implemented": true, - "kind": "constructor", - "modifiers": [ - { - "arguments": [ - { - "id": 1497, - "name": "_logic", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1490, - "src": "3748:6:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 1498, - "name": "_data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1494, - "src": "3756:5:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "id": 1499, - "kind": "baseConstructorSpecifier", - "modifierName": { - "id": 1496, - "name": "ERC1967Proxy", - "nameLocations": [ - "3735:12:13" - ], - "nodeType": "IdentifierPath", - "referencedDeclaration": 948, - "src": "3735:12:13" - }, - "nodeType": "ModifierInvocation", - "src": "3735:27:13" - } - ], - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1495, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1490, - "mutability": "mutable", - "name": "_logic", - "nameLocation": "3683:6:13", - "nodeType": "VariableDeclaration", - "scope": 1506, - "src": "3675:14:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1489, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3675:7:13", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1492, - "mutability": "mutable", - "name": "admin_", - "nameLocation": "3699:6:13", - "nodeType": "VariableDeclaration", - "scope": 1506, - "src": "3691:14:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1491, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3691:7:13", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1494, - "mutability": "mutable", - "name": "_data", - "nameLocation": "3720:5:13", - "nodeType": "VariableDeclaration", - "scope": 1506, - "src": "3707:18:13", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1493, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "3707:5:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "3674:52:13" - }, - "returnParameters": { - "id": 1500, - "nodeType": "ParameterList", - "parameters": [], - "src": "3763:0:13" - }, - "scope": 1773, - "src": "3663:137:13", - "stateMutability": "payable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 1521, - "nodeType": "Block", - "src": "4151:115:13", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 1513, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 1509, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "4165:3:13", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1510, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "4169:6:13", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "4165:10:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1511, - "name": "_getAdmin", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1117, - "src": "4179:9:13", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", - "typeString": "function () view returns (address)" - } - }, - "id": 1512, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4179:11:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "4165:25:13", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 1519, - "nodeType": "Block", - "src": "4224:36:13", - "statements": [ - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1516, - "name": "_fallback", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 1615 - ], - "referencedDeclaration": 1615, - "src": "4238:9:13", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", - "typeString": "function ()" - } - }, - "id": 1517, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4238:11:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1518, - "nodeType": "ExpressionStatement", - "src": "4238:11:13" - } - ] - }, - "id": 1520, - "nodeType": "IfStatement", - "src": "4161:99:13", - "trueBody": { - "id": 1515, - "nodeType": "Block", - "src": "4192:26:13", - "statements": [ - { - "id": 1514, - "nodeType": "PlaceholderStatement", - "src": "4206:1:13" - } - ] - } - } - ] - }, - "documentation": { - "id": 1507, - "nodeType": "StructuredDocumentation", - "src": "3806:321:13", - "text": " @dev Modifier used internally that will delegate the call to the implementation unless the sender is the admin.\n CAUTION: This modifier is deprecated, as it could cause issues if the modified function has arguments, and the\n implementation provides a function with the same selector." - }, - "id": 1522, - "name": "ifAdmin", - "nameLocation": "4141:7:13", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 1508, - "nodeType": "ParameterList", - "parameters": [], - "src": "4148:2:13" - }, - "src": "4132:134:13", - "virtual": false, - "visibility": "internal" - }, - { - "baseFunctions": [ - 1282 - ], - "body": { - "id": 1614, - "nodeType": "Block", - "src": "4454:1055:13", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 1531, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 1527, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "4468:3:13", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1528, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "4472:6:13", - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "4468:10:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1529, - "name": "_getAdmin", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1117, - "src": "4482:9:13", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", - "typeString": "function () view returns (address)" - } - }, - "id": 1530, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4482:11:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "4468:25:13", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 1612, - "nodeType": "Block", - "src": "5461:42:13", - "statements": [ - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "expression": { - "id": 1607, - "name": "super", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967271, - "src": "5475:5:13", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_super$_TransparentUpgradeableProxy_$1773_$", - "typeString": "type(contract super TransparentUpgradeableProxy)" - } - }, - "id": 1609, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "5481:9:13", - "memberName": "_fallback", - "nodeType": "MemberAccess", - "referencedDeclaration": 1282, - "src": "5475:15:13", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", - "typeString": "function ()" - } - }, - "id": 1610, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5475:17:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1611, - "nodeType": "ExpressionStatement", - "src": "5475:17:13" - } - ] - }, - "id": 1613, - "nodeType": "IfStatement", - "src": "4464:1039:13", - "trueBody": { - "id": 1606, - "nodeType": "Block", - "src": "4495:960:13", - "statements": [ - { - "assignments": [ - 1533 - ], - "declarations": [ - { - "constant": false, - "id": 1533, - "mutability": "mutable", - "name": "ret", - "nameLocation": "4522:3:13", - "nodeType": "VariableDeclaration", - "scope": 1606, - "src": "4509:16:13", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1532, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "4509:5:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 1534, - "nodeType": "VariableDeclarationStatement", - "src": "4509:16:13" - }, - { - "assignments": [ - 1536 - ], - "declarations": [ - { - "constant": false, - "id": 1536, - "mutability": "mutable", - "name": "selector", - "nameLocation": "4546:8:13", - "nodeType": "VariableDeclaration", - "scope": 1606, - "src": "4539:15:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "typeName": { - "id": 1535, - "name": "bytes4", - "nodeType": "ElementaryTypeName", - "src": "4539:6:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "visibility": "internal" - } - ], - "id": 1539, - "initialValue": { - "expression": { - "id": 1537, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "4557:3:13", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1538, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "4561:3:13", - "memberName": "sig", - "nodeType": "MemberAccess", - "src": "4557:7:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "4539:25:13" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1544, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1540, - "name": "selector", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1536, - "src": "4582:8:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1541, - "name": "ITransparentUpgradeableProxy", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1484, - "src": "4594:28:13", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ITransparentUpgradeableProxy_$1484_$", - "typeString": "type(contract ITransparentUpgradeableProxy)" - } - }, - "id": 1542, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "4623:9:13", - "memberName": "upgradeTo", - "nodeType": "MemberAccess", - "referencedDeclaration": 1476, - "src": "4594:38:13", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$returns$__$", - "typeString": "function ITransparentUpgradeableProxy.upgradeTo(address)" - } - }, - "id": 1543, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "4633:8:13", - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "4594:47:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "4582:59:13", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "condition": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1555, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1551, - "name": "selector", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1536, - "src": "4712:8:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1552, - "name": "ITransparentUpgradeableProxy", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1484, - "src": "4724:28:13", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ITransparentUpgradeableProxy_$1484_$", - "typeString": "type(contract ITransparentUpgradeableProxy)" - } - }, - "id": 1553, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "4753:16:13", - "memberName": "upgradeToAndCall", - "nodeType": "MemberAccess", - "referencedDeclaration": 1483, - "src": "4724:45:13", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_payable$_t_address_$_t_bytes_memory_ptr_$returns$__$", - "typeString": "function ITransparentUpgradeableProxy.upgradeToAndCall(address,bytes memory) payable" - } - }, - "id": 1554, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "4770:8:13", - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "4724:54:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "4712:66:13", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "condition": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1566, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1562, - "name": "selector", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1536, - "src": "4856:8:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1563, - "name": "ITransparentUpgradeableProxy", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1484, - "src": "4868:28:13", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ITransparentUpgradeableProxy_$1484_$", - "typeString": "type(contract ITransparentUpgradeableProxy)" - } - }, - "id": 1564, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "4897:11:13", - "memberName": "changeAdmin", - "nodeType": "MemberAccess", - "referencedDeclaration": 1471, - "src": "4868:40:13", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$returns$__$", - "typeString": "function ITransparentUpgradeableProxy.changeAdmin(address)" - } - }, - "id": 1565, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "4909:8:13", - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "4868:49:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "4856:61:13", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "condition": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1577, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1573, - "name": "selector", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1536, - "src": "4990:8:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1574, - "name": "ITransparentUpgradeableProxy", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1484, - "src": "5002:28:13", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ITransparentUpgradeableProxy_$1484_$", - "typeString": "type(contract ITransparentUpgradeableProxy)" - } - }, - "id": 1575, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "5031:5:13", - "memberName": "admin", - "nodeType": "MemberAccess", - "referencedDeclaration": 1461, - "src": "5002:34:13", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_view$__$returns$_t_address_$", - "typeString": "function ITransparentUpgradeableProxy.admin() view returns (address)" - } - }, - "id": 1576, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "5037:8:13", - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "5002:43:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "4990:55:13", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "condition": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1588, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1584, - "name": "selector", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1536, - "src": "5112:8:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 1585, - "name": "ITransparentUpgradeableProxy", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1484, - "src": "5124:28:13", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ITransparentUpgradeableProxy_$1484_$", - "typeString": "type(contract ITransparentUpgradeableProxy)" - } - }, - "id": 1586, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "5153:14:13", - "memberName": "implementation", - "nodeType": "MemberAccess", - "referencedDeclaration": 1466, - "src": "5124:43:13", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_view$__$returns$_t_address_$", - "typeString": "function ITransparentUpgradeableProxy.implementation() view returns (address)" - } - }, - "id": 1587, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "5168:8:13", - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "5124:52:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "5112:64:13", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 1599, - "nodeType": "Block", - "src": "5248:109:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "hexValue": "5472616e73706172656e745570677261646561626c6550726f78793a2061646d696e2063616e6e6f742066616c6c6261636b20746f2070726f787920746172676574", - "id": 1596, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5273:68:13", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_f5d2ea39d7e6c7d19dc32ccc2bd7ca26b7aa4a603ef4aa6f2b205c93c3ffe43d", - "typeString": "literal_string \"TransparentUpgradeableProxy: admin cannot fallback to proxy target\"" - }, - "value": "TransparentUpgradeableProxy: admin cannot fallback to proxy target" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_f5d2ea39d7e6c7d19dc32ccc2bd7ca26b7aa4a603ef4aa6f2b205c93c3ffe43d", - "typeString": "literal_string \"TransparentUpgradeableProxy: admin cannot fallback to proxy target\"" - } - ], - "id": 1595, - "name": "revert", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967277, - 4294967277 - ], - "referencedDeclaration": 4294967277, - "src": "5266:6:13", - "typeDescriptions": { - "typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory) pure" - } - }, - "id": 1597, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5266:76:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1598, - "nodeType": "ExpressionStatement", - "src": "5266:76:13" - } - ] - }, - "id": 1600, - "nodeType": "IfStatement", - "src": "5108:249:13", - "trueBody": { - "id": 1594, - "nodeType": "Block", - "src": "5178:64:13", - "statements": [ - { - "expression": { - "id": 1592, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1589, - "name": "ret", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1533, - "src": "5196:3:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1590, - "name": "_dispatchImplementation", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1655, - "src": "5202:23:13", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () returns (bytes memory)" - } - }, - "id": 1591, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5202:25:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "src": "5196:31:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 1593, - "nodeType": "ExpressionStatement", - "src": "5196:31:13" - } - ] - } - }, - "id": 1601, - "nodeType": "IfStatement", - "src": "4986:371:13", - "trueBody": { - "id": 1583, - "nodeType": "Block", - "src": "5047:55:13", - "statements": [ - { - "expression": { - "id": 1581, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1578, - "name": "ret", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1533, - "src": "5065:3:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1579, - "name": "_dispatchAdmin", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1635, - "src": "5071:14:13", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () returns (bytes memory)" - } - }, - "id": 1580, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5071:16:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "src": "5065:22:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 1582, - "nodeType": "ExpressionStatement", - "src": "5065:22:13" - } - ] - } - }, - "id": 1602, - "nodeType": "IfStatement", - "src": "4852:505:13", - "trueBody": { - "id": 1572, - "nodeType": "Block", - "src": "4919:61:13", - "statements": [ - { - "expression": { - "id": 1570, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1567, - "name": "ret", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1533, - "src": "4937:3:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1568, - "name": "_dispatchChangeAdmin", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1684, - "src": "4943:20:13", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () returns (bytes memory)" - } - }, - "id": 1569, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4943:22:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "src": "4937:28:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 1571, - "nodeType": "ExpressionStatement", - "src": "4937:28:13" - } - ] - } - }, - "id": 1603, - "nodeType": "IfStatement", - "src": "4708:649:13", - "trueBody": { - "id": 1561, - "nodeType": "Block", - "src": "4780:66:13", - "statements": [ - { - "expression": { - "id": 1559, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1556, - "name": "ret", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1533, - "src": "4798:3:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1557, - "name": "_dispatchUpgradeToAndCall", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1750, - "src": "4804:25:13", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () returns (bytes memory)" - } - }, - "id": 1558, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4804:27:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "src": "4798:33:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 1560, - "nodeType": "ExpressionStatement", - "src": "4798:33:13" - } - ] - } - }, - "id": 1604, - "nodeType": "IfStatement", - "src": "4578:779:13", - "trueBody": { - "id": 1550, - "nodeType": "Block", - "src": "4643:59:13", - "statements": [ - { - "expression": { - "id": 1548, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1545, - "name": "ret", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1533, - "src": "4661:3:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1546, - "name": "_dispatchUpgradeTo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1718, - "src": "4667:18:13", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () returns (bytes memory)" - } - }, - "id": 1547, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "4667:20:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "src": "4661:26:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 1549, - "nodeType": "ExpressionStatement", - "src": "4661:26:13" - } - ] - } - }, - { - "AST": { - "nodeType": "YulBlock", - "src": "5379:66:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "ret", - "nodeType": "YulIdentifier", - "src": "5408:3:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5413:4:13", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5404:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "5404:14:13" - }, - { - "arguments": [ - { - "name": "ret", - "nodeType": "YulIdentifier", - "src": "5426:3:13" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "5420:5:13" - }, - "nodeType": "YulFunctionCall", - "src": "5420:10:13" - } - ], - "functionName": { - "name": "return", - "nodeType": "YulIdentifier", - "src": "5397:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "5397:34:13" - }, - "nodeType": "YulExpressionStatement", - "src": "5397:34:13" - } - ] - }, - "evmVersion": "paris", - "externalReferences": [ - { - "declaration": 1533, - "isOffset": false, - "isSlot": false, - "src": "5408:3:13", - "valueSize": 1 - }, - { - "declaration": 1533, - "isOffset": false, - "isSlot": false, - "src": "5426:3:13", - "valueSize": 1 - } - ], - "id": 1605, - "nodeType": "InlineAssembly", - "src": "5370:75:13" - } - ] - } - } - ] - }, - "documentation": { - "id": 1523, - "nodeType": "StructuredDocumentation", - "src": "4272:130:13", - "text": " @dev If caller is the admin process the call internally, otherwise transparently fallback to the proxy behavior" - }, - "id": 1615, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_fallback", - "nameLocation": "4416:9:13", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 1525, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "4445:8:13" - }, - "parameters": { - "id": 1524, - "nodeType": "ParameterList", - "parameters": [], - "src": "4425:2:13" - }, - "returnParameters": { - "id": 1526, - "nodeType": "ParameterList", - "parameters": [], - "src": "4454:0:13" - }, - "scope": 1773, - "src": "4407:1102:13", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "internal" - }, - { - "body": { - "id": 1634, - "nodeType": "Block", - "src": "5917:108:13", - "statements": [ - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1621, - "name": "_requireZeroValue", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1772, - "src": "5927:17:13", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", - "typeString": "function ()" - } - }, - "id": 1622, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5927:19:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1623, - "nodeType": "ExpressionStatement", - "src": "5927:19:13" - }, - { - "assignments": [ - 1625 - ], - "declarations": [ - { - "constant": false, - "id": 1625, - "mutability": "mutable", - "name": "admin", - "nameLocation": "5965:5:13", - "nodeType": "VariableDeclaration", - "scope": 1634, - "src": "5957:13:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1624, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "5957:7:13", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "id": 1628, - "initialValue": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1626, - "name": "_getAdmin", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1117, - "src": "5973:9:13", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", - "typeString": "function () view returns (address)" - } - }, - "id": 1627, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5973:11:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "5957:27:13" - }, - { - "expression": { - "arguments": [ - { - "id": 1631, - "name": "admin", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1625, - "src": "6012:5:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "expression": { - "id": 1629, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "6001:3:13", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 1630, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "6005:6:13", - "memberName": "encode", - "nodeType": "MemberAccess", - "src": "6001:10:13", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 1632, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "6001:17:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 1620, - "id": 1633, - "nodeType": "Return", - "src": "5994:24:13" - } - ] - }, - "documentation": { - "id": 1616, - "nodeType": "StructuredDocumentation", - "src": "5515:340:13", - "text": " @dev Returns the current admin.\n TIP: To get this value clients can read directly from the storage slot shown below (specified by EIP1967) using the\n https://eth.wiki/json-rpc/API#eth_getstorageat[`eth_getStorageAt`] RPC call.\n `0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103`" - }, - "id": 1635, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_dispatchAdmin", - "nameLocation": "5869:14:13", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1617, - "nodeType": "ParameterList", - "parameters": [], - "src": "5883:2:13" - }, - "returnParameters": { - "id": 1620, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1619, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1635, - "src": "5903:12:13", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1618, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "5903:5:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "5902:14:13" - }, - "scope": 1773, - "src": "5860:165:13", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 1654, - "nodeType": "Block", - "src": "6451:132:13", - "statements": [ - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1641, - "name": "_requireZeroValue", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1772, - "src": "6461:17:13", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", - "typeString": "function ()" - } - }, - "id": 1642, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "6461:19:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1643, - "nodeType": "ExpressionStatement", - "src": "6461:19:13" - }, - { - "assignments": [ - 1645 - ], - "declarations": [ - { - "constant": false, - "id": 1645, - "mutability": "mutable", - "name": "implementation", - "nameLocation": "6499:14:13", - "nodeType": "VariableDeclaration", - "scope": 1654, - "src": "6491:22:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1644, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "6491:7:13", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "id": 1648, - "initialValue": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1646, - "name": "_implementation", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 947 - ], - "referencedDeclaration": 947, - "src": "6516:15:13", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", - "typeString": "function () view returns (address)" - } - }, - "id": 1647, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "6516:17:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "6491:42:13" - }, - { - "expression": { - "arguments": [ - { - "id": 1651, - "name": "implementation", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1645, - "src": "6561:14:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "expression": { - "id": 1649, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "6550:3:13", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 1650, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "6554:6:13", - "memberName": "encode", - "nodeType": "MemberAccess", - "src": "6550:10:13", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 1652, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "6550:26:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 1640, - "id": 1653, - "nodeType": "Return", - "src": "6543:33:13" - } - ] - }, - "documentation": { - "id": 1636, - "nodeType": "StructuredDocumentation", - "src": "6031:349:13", - "text": " @dev Returns the current implementation.\n TIP: To get this value clients can read directly from the storage slot shown below (specified by EIP1967) using the\n https://eth.wiki/json-rpc/API#eth_getstorageat[`eth_getStorageAt`] RPC call.\n `0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc`" - }, - "id": 1655, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_dispatchImplementation", - "nameLocation": "6394:23:13", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1637, - "nodeType": "ParameterList", - "parameters": [], - "src": "6417:2:13" - }, - "returnParameters": { - "id": 1640, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1639, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1655, - "src": "6437:12:13", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1638, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "6437:5:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "6436:14:13" - }, - "scope": 1773, - "src": "6385:198:13", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 1683, - "nodeType": "Block", - "src": "6757:153:13", - "statements": [ - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1661, - "name": "_requireZeroValue", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1772, - "src": "6767:17:13", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", - "typeString": "function ()" - } - }, - "id": 1662, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "6767:19:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1663, - "nodeType": "ExpressionStatement", - "src": "6767:19:13" - }, - { - "assignments": [ - 1665 - ], - "declarations": [ - { - "constant": false, - "id": 1665, - "mutability": "mutable", - "name": "newAdmin", - "nameLocation": "6805:8:13", - "nodeType": "VariableDeclaration", - "scope": 1683, - "src": "6797:16:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1664, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "6797:7:13", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "id": 1676, - "initialValue": { - "arguments": [ - { - "baseExpression": { - "expression": { - "id": 1668, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "6827:3:13", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1669, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "6831:4:13", - "memberName": "data", - "nodeType": "MemberAccess", - "src": "6827:8:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "id": 1671, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexRangeAccess", - "src": "6827:12:13", - "startExpression": { - "hexValue": "34", - "id": 1670, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6836:1:13", - "typeDescriptions": { - "typeIdentifier": "t_rational_4_by_1", - "typeString": "int_const 4" - }, - "value": "4" - }, - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr_slice", - "typeString": "bytes calldata slice" - } - }, - { - "components": [ - { - "id": 1673, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "6842:7:13", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 1672, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "6842:7:13", - "typeDescriptions": {} - } - } - ], - "id": 1674, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "6841:9:13", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_calldata_ptr_slice", - "typeString": "bytes calldata slice" - }, - { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - } - ], - "expression": { - "id": 1666, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "6816:3:13", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 1667, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "6820:6:13", - "memberName": "decode", - "nodeType": "MemberAccess", - "src": "6816:10:13", - "typeDescriptions": { - "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 1675, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "6816:35:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "6797:54:13" - }, - { - "expression": { - "arguments": [ - { - "id": 1678, - "name": "newAdmin", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1665, - "src": "6874:8:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 1677, - "name": "_changeAdmin", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1160, - "src": "6861:12:13", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$__$", - "typeString": "function (address)" - } - }, - "id": 1679, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "6861:22:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1680, - "nodeType": "ExpressionStatement", - "src": "6861:22:13" - }, - { - "expression": { - "hexValue": "", - "id": 1681, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6901:2:13", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - }, - "value": "" - }, - "functionReturnParameters": 1660, - "id": 1682, - "nodeType": "Return", - "src": "6894:9:13" - } - ] - }, - "documentation": { - "id": 1656, - "nodeType": "StructuredDocumentation", - "src": "6589:100:13", - "text": " @dev Changes the admin of the proxy.\n Emits an {AdminChanged} event." - }, - "id": 1684, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_dispatchChangeAdmin", - "nameLocation": "6703:20:13", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1657, - "nodeType": "ParameterList", - "parameters": [], - "src": "6723:2:13" - }, - "returnParameters": { - "id": 1660, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1659, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1684, - "src": "6743:12:13", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1658, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "6743:5:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "6742:14:13" - }, - "scope": 1773, - "src": "6694:216:13", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 1717, - "nodeType": "Block", - "src": "7046:194:13", - "statements": [ - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1690, - "name": "_requireZeroValue", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1772, - "src": "7056:17:13", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", - "typeString": "function ()" - } - }, - "id": 1691, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "7056:19:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1692, - "nodeType": "ExpressionStatement", - "src": "7056:19:13" - }, - { - "assignments": [ - 1694 - ], - "declarations": [ - { - "constant": false, - "id": 1694, - "mutability": "mutable", - "name": "newImplementation", - "nameLocation": "7094:17:13", - "nodeType": "VariableDeclaration", - "scope": 1717, - "src": "7086:25:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1693, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "7086:7:13", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "id": 1705, - "initialValue": { - "arguments": [ - { - "baseExpression": { - "expression": { - "id": 1697, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "7125:3:13", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1698, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "7129:4:13", - "memberName": "data", - "nodeType": "MemberAccess", - "src": "7125:8:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "id": 1700, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexRangeAccess", - "src": "7125:12:13", - "startExpression": { - "hexValue": "34", - "id": 1699, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7134:1:13", - "typeDescriptions": { - "typeIdentifier": "t_rational_4_by_1", - "typeString": "int_const 4" - }, - "value": "4" - }, - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr_slice", - "typeString": "bytes calldata slice" - } - }, - { - "components": [ - { - "id": 1702, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "7140:7:13", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 1701, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "7140:7:13", - "typeDescriptions": {} - } - } - ], - "id": 1703, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "7139:9:13", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_calldata_ptr_slice", - "typeString": "bytes calldata slice" - }, - { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - } - ], - "expression": { - "id": 1695, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "7114:3:13", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 1696, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "7118:6:13", - "memberName": "decode", - "nodeType": "MemberAccess", - "src": "7114:10:13", - "typeDescriptions": { - "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 1704, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "7114:35:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "7086:63:13" - }, - { - "expression": { - "arguments": [ - { - "id": 1707, - "name": "newImplementation", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1694, - "src": "7177:17:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "arguments": [ - { - "hexValue": "", - "id": 1710, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7202:2:13", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - }, - "value": "" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - } - ], - "id": 1709, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "7196:5:13", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": { - "id": 1708, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "7196:5:13", - "typeDescriptions": {} - } - }, - "id": 1711, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "7196:9:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "hexValue": "66616c7365", - "id": 1712, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7207:5:13", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "false" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 1706, - "name": "_upgradeToAndCall", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1047, - "src": "7159:17:13", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_bytes_memory_ptr_$_t_bool_$returns$__$", - "typeString": "function (address,bytes memory,bool)" - } - }, - "id": 1713, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "7159:54:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1714, - "nodeType": "ExpressionStatement", - "src": "7159:54:13" - }, - { - "expression": { - "hexValue": "", - "id": 1715, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7231:2:13", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - }, - "value": "" - }, - "functionReturnParameters": 1689, - "id": 1716, - "nodeType": "Return", - "src": "7224:9:13" - } - ] - }, - "documentation": { - "id": 1685, - "nodeType": "StructuredDocumentation", - "src": "6916:64:13", - "text": " @dev Upgrade the implementation of the proxy." - }, - "id": 1718, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_dispatchUpgradeTo", - "nameLocation": "6994:18:13", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1686, - "nodeType": "ParameterList", - "parameters": [], - "src": "7012:2:13" - }, - "returnParameters": { - "id": 1689, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1688, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1718, - "src": "7032:12:13", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1687, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "7032:5:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "7031:14:13" - }, - "scope": 1773, - "src": "6985:255:13", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 1749, - "nodeType": "Block", - "src": "7592:186:13", - "statements": [ - { - "assignments": [ - 1725, - 1727 - ], - "declarations": [ - { - "constant": false, - "id": 1725, - "mutability": "mutable", - "name": "newImplementation", - "nameLocation": "7611:17:13", - "nodeType": "VariableDeclaration", - "scope": 1749, - "src": "7603:25:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1724, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "7603:7:13", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1727, - "mutability": "mutable", - "name": "data", - "nameLocation": "7643:4:13", - "nodeType": "VariableDeclaration", - "scope": 1749, - "src": "7630:17:13", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1726, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "7630:5:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 1740, - "initialValue": { - "arguments": [ - { - "baseExpression": { - "expression": { - "id": 1730, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "7662:3:13", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1731, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "7666:4:13", - "memberName": "data", - "nodeType": "MemberAccess", - "src": "7662:8:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "id": 1733, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexRangeAccess", - "src": "7662:12:13", - "startExpression": { - "hexValue": "34", - "id": 1732, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7671:1:13", - "typeDescriptions": { - "typeIdentifier": "t_rational_4_by_1", - "typeString": "int_const 4" - }, - "value": "4" - }, - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr_slice", - "typeString": "bytes calldata slice" - } - }, - { - "components": [ - { - "id": 1735, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "7677:7:13", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 1734, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "7677:7:13", - "typeDescriptions": {} - } - }, - { - "id": 1737, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "7686:5:13", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": { - "id": 1736, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "7686:5:13", - "typeDescriptions": {} - } - } - ], - "id": 1738, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "7676:16:13", - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_type$_t_address_$_$_t_type$_t_bytes_storage_ptr_$_$", - "typeString": "tuple(type(address),type(bytes storage pointer))" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_calldata_ptr_slice", - "typeString": "bytes calldata slice" - }, - { - "typeIdentifier": "t_tuple$_t_type$_t_address_$_$_t_type$_t_bytes_storage_ptr_$_$", - "typeString": "tuple(type(address),type(bytes storage pointer))" - } - ], - "expression": { - "id": 1728, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "7651:3:13", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 1729, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberLocation": "7655:6:13", - "memberName": "decode", - "nodeType": "MemberAccess", - "src": "7651:10:13", - "typeDescriptions": { - "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 1739, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "7651:42:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_address_payable_$_t_bytes_memory_ptr_$", - "typeString": "tuple(address payable,bytes memory)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "7602:91:13" - }, - { - "expression": { - "arguments": [ - { - "id": 1742, - "name": "newImplementation", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1725, - "src": "7721:17:13", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 1743, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1727, - "src": "7740:4:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "hexValue": "74727565", - "id": 1744, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7746:4:13", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 1741, - "name": "_upgradeToAndCall", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1047, - "src": "7703:17:13", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_bytes_memory_ptr_$_t_bool_$returns$__$", - "typeString": "function (address,bytes memory,bool)" - } - }, - "id": 1745, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "7703:48:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1746, - "nodeType": "ExpressionStatement", - "src": "7703:48:13" - }, - { - "expression": { - "hexValue": "", - "id": 1747, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7769:2:13", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - }, - "value": "" - }, - "functionReturnParameters": 1723, - "id": 1748, - "nodeType": "Return", - "src": "7762:9:13" - } - ] - }, - "documentation": { - "id": 1719, - "nodeType": "StructuredDocumentation", - "src": "7246:273:13", - "text": " @dev Upgrade the implementation of the proxy, and then call a function from the new implementation as specified\n by `data`, which should be an encoded function call. This is useful to initialize new storage variables in the\n proxied contract." - }, - "id": 1750, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_dispatchUpgradeToAndCall", - "nameLocation": "7533:25:13", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1720, - "nodeType": "ParameterList", - "parameters": [], - "src": "7558:2:13" - }, - "returnParameters": { - "id": 1723, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1722, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1750, - "src": "7578:12:13", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1721, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "7578:5:13", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "7577:14:13" - }, - "scope": 1773, - "src": "7524:254:13", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 1759, - "nodeType": "Block", - "src": "7989:35:13", - "statements": [ - { - "expression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1756, - "name": "_getAdmin", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1117, - "src": "8006:9:13", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", - "typeString": "function () view returns (address)" - } - }, - "id": 1757, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "8006:11:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "functionReturnParameters": 1755, - "id": 1758, - "nodeType": "Return", - "src": "7999:18:13" - } - ] - }, - "documentation": { - "id": 1751, - "nodeType": "StructuredDocumentation", - "src": "7784:142:13", - "text": " @dev Returns the current admin.\n CAUTION: This function is deprecated. Use {ERC1967Upgrade-_getAdmin} instead." - }, - "id": 1760, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_admin", - "nameLocation": "7940:6:13", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1752, - "nodeType": "ParameterList", - "parameters": [], - "src": "7946:2:13" - }, - "returnParameters": { - "id": 1755, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1754, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1760, - "src": "7980:7:13", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1753, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "7980:7:13", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "7979:9:13" - }, - "scope": 1773, - "src": "7931:93:13", - "stateMutability": "view", - "virtual": true, - "visibility": "internal" - }, - { - "body": { - "id": 1771, - "nodeType": "Block", - "src": "8298:40:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1768, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 1765, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "8316:3:13", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1766, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "8320:5:13", - "memberName": "value", - "nodeType": "MemberAccess", - "src": "8316:9:13", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 1767, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "8329:1:13", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "8316:14:13", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 1764, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "8308:7:13", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 1769, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "8308:23:13", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1770, - "nodeType": "ExpressionStatement", - "src": "8308:23:13" - } - ] - }, - "documentation": { - "id": 1761, - "nodeType": "StructuredDocumentation", - "src": "8030:226:13", - "text": " @dev To keep this contract fully transparent, all `ifAdmin` functions must be payable. This helper is here to\n emulate some proxy functions being non-payable while still allowing value to pass through." - }, - "id": 1772, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_requireZeroValue", - "nameLocation": "8270:17:13", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1762, - "nodeType": "ParameterList", - "parameters": [], - "src": "8287:2:13" - }, - "returnParameters": { - "id": 1763, - "nodeType": "ParameterList", - "parameters": [], - "src": "8298:0:13" - }, - "scope": 1773, - "src": "8261:77:13", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "private" - } - ], - "scope": 1774, - "src": "3389:4951:13", - "usedErrors": [] - } - ], - "src": "133:8208:13" - }, - "compiler": { - "name": "solc", - "version": "0.8.18+commit.87f61d96.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "3.4.13", - "updatedAt": "2024-12-10T18:52:58.851Z", - "devdoc": { - "details": "This contract implements a proxy that is upgradeable by an admin. To avoid https://medium.com/nomic-labs-blog/malicious-backdoors-in-ethereum-proxies-62629adf3357[proxy selector clashing], which can potentially be used in an attack, this contract uses the https://blog.openzeppelin.com/the-transparent-proxy-pattern/[transparent proxy pattern]. This pattern implies two things that go hand in hand: 1. If any account other than the admin calls the proxy, the call will be forwarded to the implementation, even if that call matches one of the admin functions exposed by the proxy itself. 2. If the admin calls the proxy, it can access the admin functions, but its calls will never be forwarded to the implementation. If the admin tries to call a function on the implementation it will fail with an error that says \"admin cannot fallback to proxy target\". These properties mean that the admin account can only be used for admin actions like upgrading the proxy or changing the admin, so it's best if it's a dedicated account that is not used for anything else. This will avoid headaches due to sudden errors when trying to call a function from the proxy implementation. Our recommendation is for the dedicated account to be an instance of the {ProxyAdmin} contract. If set up this way, you should think of the `ProxyAdmin` instance as the real administrative interface of your proxy. NOTE: The real interface of this proxy is that defined in `ITransparentUpgradeableProxy`. This contract does not inherit from that interface, and instead the admin functions are implicitly implemented using a custom dispatch mechanism in `_fallback`. Consequently, the compiler will not produce an ABI for this contract. This is necessary to fully implement transparency without decoding reverts caused by selector clashes between the proxy and the implementation. WARNING: It is not recommended to extend this contract to add additional external functions. If you do so, the compiler will not check that there are no selector conflicts, due to the note above. A selector clash between any new function and the functions declared in {ITransparentUpgradeableProxy} will be resolved in favor of the new one. This could render the admin operations inaccessible, which could prevent upgradeability. Transparency may also be compromised.", - "events": { - "AdminChanged(address,address)": { - "details": "Emitted when the admin account has changed." - }, - "BeaconUpgraded(address)": { - "details": "Emitted when the beacon is changed." - }, - "Upgraded(address)": { - "details": "Emitted when the implementation is upgraded." - } - }, - "kind": "dev", - "methods": { - "constructor": { - "details": "Initializes an upgradeable proxy managed by `_admin`, backed by the implementation at `_logic`, and optionally initialized with `_data` as explained in {ERC1967Proxy-constructor}." - } - }, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } -} \ No newline at end of file diff --git a/build/contracts/WalletMock.json b/build/contracts/WalletMock.json deleted file mode 100644 index 3e5757c..0000000 --- a/build/contracts/WalletMock.json +++ /dev/null @@ -1,796 +0,0 @@ -{ - "contractName": "WalletMock", - "abi": [ - { - "stateMutability": "payable", - "type": "receive" - }, - { - "inputs": [ - { - "internalType": "bool", - "name": "val", - "type": "bool" - } - ], - "name": "setRejectFunds", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - } - ], - "metadata": "{\"compiler\":{\"version\":\"0.8.18+commit.87f61d96\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"bool\",\"name\":\"val\",\"type\":\"bool\"}],\"name\":\"setRejectFunds\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"project:/contracts/WalletMock.sol\":\"WalletMock\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":1},\"remappings\":[]},\"sources\":{\"project:/contracts/WalletMock.sol\":{\"keccak256\":\"0x2ab64db1dfce6bdaf8b46f7758d2a67a5d580797da091533b180bd4e720dbe7e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://720efcdac41407684cf6966d1d7a0d1bfa31ca343f7091977c9b3878cebe4cd7\",\"dweb:/ipfs/QmXHeVjWv8AU3xa2Qb6YkaZscLTpmRHUQ4yRsmPvz7SyPC\"]}},\"version\":1}", - "bytecode": "0x608060405234801561001057600080fd5b5060f38061001f6000396000f3fe60806040526004361060205760003560e01c80633eb9f75314606c57600080fd5b3660675760005460ff161560655760405162461bcd60e51b81526020600482015260086024820152671c995a9958dd195960c21b604482015260640160405180910390fd5b005b600080fd5b348015607757600080fd5b50606560833660046096565b6000805460ff1916911515919091179055565b60006020828403121560a757600080fd5b8135801515811460b657600080fd5b939250505056fea2646970667358221220452fad9c49b69bc0150bf3f6ec99aae045bd177597615fde00db38246c5b0ad364736f6c63430008120033", - "deployedBytecode": "0x60806040526004361060205760003560e01c80633eb9f75314606c57600080fd5b3660675760005460ff161560655760405162461bcd60e51b81526020600482015260086024820152671c995a9958dd195960c21b604482015260640160405180910390fd5b005b600080fd5b348015607757600080fd5b50606560833660046096565b6000805460ff1916911515919091179055565b60006020828403121560a757600080fd5b8135801515811460b657600080fd5b939250505056fea2646970667358221220452fad9c49b69bc0150bf3f6ec99aae045bd177597615fde00db38246c5b0ad364736f6c63430008120033", - "immutableReferences": {}, - "generatedSources": [], - "deployedGeneratedSources": [ - { - "ast": { - "nodeType": "YulBlock", - "src": "0:625:32", - "statements": [ - { - "nodeType": "YulBlock", - "src": "6:3:32", - "statements": [] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "188:157:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "205:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "216:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "198:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "198:21:32" - }, - "nodeType": "YulExpressionStatement", - "src": "198:21:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "239:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "250:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "235:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "235:18:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "255:1:32", - "type": "", - "value": "8" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "228:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "228:29:32" - }, - "nodeType": "YulExpressionStatement", - "src": "228:29:32" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "277:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "288:2:32", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "273:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "273:18:32" - }, - { - "hexValue": "72656a6563746564", - "kind": "string", - "nodeType": "YulLiteral", - "src": "293:10:32", - "type": "", - "value": "rejected" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "266:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "266:38:32" - }, - "nodeType": "YulExpressionStatement", - "src": "266:38:32" - }, - { - "nodeType": "YulAssignment", - "src": "313:26:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "325:9:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "336:2:32", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "321:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "321:18:32" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "313:4:32" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_5e679716a01be890d854f2c1c5cb5336603215e65ff238044a5b11c586f61c1d__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "165:9:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "179:4:32", - "type": "" - } - ], - "src": "14:331:32" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "417:206:32", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "463:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "472:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "475:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "465:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "465:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "465:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "438:7:32" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "447:9:32" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "434:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "434:23:32" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "459:2:32", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "430:3:32" - }, - "nodeType": "YulFunctionCall", - "src": "430:32:32" - }, - "nodeType": "YulIf", - "src": "427:52:32" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "488:36:32", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "514:9:32" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "501:12:32" - }, - "nodeType": "YulFunctionCall", - "src": "501:23:32" - }, - "variables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "492:5:32", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "577:16:32", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "586:1:32", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "589:1:32", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "579:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "579:12:32" - }, - "nodeType": "YulExpressionStatement", - "src": "579:12:32" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "546:5:32" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "567:5:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "560:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "560:13:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "553:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "553:21:32" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "543:2:32" - }, - "nodeType": "YulFunctionCall", - "src": "543:32:32" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "536:6:32" - }, - "nodeType": "YulFunctionCall", - "src": "536:40:32" - }, - "nodeType": "YulIf", - "src": "533:60:32" - }, - { - "nodeType": "YulAssignment", - "src": "602:15:32", - "value": { - "name": "value", - "nodeType": "YulIdentifier", - "src": "612:5:32" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "602:6:32" - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bool", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "383:9:32", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "394:7:32", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "406:6:32", - "type": "" - } - ], - "src": "350:273:32" - } - ] - }, - "contents": "{\n { }\n function abi_encode_tuple_t_stringliteral_5e679716a01be890d854f2c1c5cb5336603215e65ff238044a5b11c586f61c1d__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 8)\n mstore(add(headStart, 64), \"rejected\")\n tail := add(headStart, 96)\n }\n function abi_decode_tuple_t_bool(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let value := calldataload(headStart)\n if iszero(eq(value, iszero(iszero(value)))) { revert(0, 0) }\n value0 := value\n }\n}", - "id": 32, - "language": "Yul", - "name": "#utility.yul" - } - ], - "sourceMap": "58:220:31:-:0;;;;;;;;;;;;;;;;;;;", - "deployedSourceMap": "58:220:31:-:0;;;;;;;;;;;;;;;;;;;;;;;;245:11;;;;244:12;236:33;;;;-1:-1:-1;;;236:33:31;;216:2:32;236:33:31;;;198:21:32;255:1;235:18;;;228:29;-1:-1:-1;;;273:18:32;;;266:38;321:18;;236:33:31;;;;;;;;58:220;;;;;116:77;;;;;;;;;;-1:-1:-1;116:77:31;;;;;:::i;:::-;169:11;:17;;-1:-1:-1;;169:17:31;;;;;;;;;;116:77;350:273:32;406:6;459:2;447:9;438:7;434:23;430:32;427:52;;;475:1;472;465:12;427:52;514:9;501:23;567:5;560:13;553:21;546:5;543:32;533:60;;589:1;586;579:12;533:60;612:5;350:273;-1:-1:-1;;;350:273:32:o", - "source": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.18;\n\ncontract WalletMock {\n\n bool private rejectFunds;\n\n function setRejectFunds(bool val) external {\n rejectFunds = val;\n }\n\n receive() external payable {\n require(!rejectFunds, \"rejected\");\n }\n}\n", - "sourcePath": "/Users/luischavez/iov/liquidity-bridge-contract/contracts/WalletMock.sol", - "ast": { - "absolutePath": "project:/contracts/WalletMock.sol", - "exportedSymbols": { - "WalletMock": [ - 11574 - ] - }, - "id": 11575, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 11551, - "literals": [ - "solidity", - "^", - "0.8", - ".18" - ], - "nodeType": "PragmaDirective", - "src": "32:24:31" - }, - { - "abstract": false, - "baseContracts": [], - "canonicalName": "WalletMock", - "contractDependencies": [], - "contractKind": "contract", - "fullyImplemented": true, - "id": 11574, - "linearizedBaseContracts": [ - 11574 - ], - "name": "WalletMock", - "nameLocation": "67:10:31", - "nodeType": "ContractDefinition", - "nodes": [ - { - "constant": false, - "id": 11553, - "mutability": "mutable", - "name": "rejectFunds", - "nameLocation": "98:11:31", - "nodeType": "VariableDeclaration", - "scope": 11574, - "src": "85:24:31", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 11552, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "85:4:31", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "private" - }, - { - "body": { - "id": 11562, - "nodeType": "Block", - "src": "159:34:31", - "statements": [ - { - "expression": { - "id": 11560, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 11558, - "name": "rejectFunds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11553, - "src": "169:11:31", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 11559, - "name": "val", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11555, - "src": "183:3:31", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "169:17:31", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 11561, - "nodeType": "ExpressionStatement", - "src": "169:17:31" - } - ] - }, - "functionSelector": "3eb9f753", - "id": 11563, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "setRejectFunds", - "nameLocation": "125:14:31", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 11556, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 11555, - "mutability": "mutable", - "name": "val", - "nameLocation": "145:3:31", - "nodeType": "VariableDeclaration", - "scope": 11563, - "src": "140:8:31", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 11554, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "140:4:31", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "139:10:31" - }, - "returnParameters": { - "id": 11557, - "nodeType": "ParameterList", - "parameters": [], - "src": "159:0:31" - }, - "scope": 11574, - "src": "116:77:31", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "body": { - "id": 11572, - "nodeType": "Block", - "src": "226:50:31", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 11568, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "!", - "prefix": true, - "src": "244:12:31", - "subExpression": { - "id": 11567, - "name": "rejectFunds", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 11553, - "src": "245:11:31", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "72656a6563746564", - "id": 11569, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "258:10:31", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_5e679716a01be890d854f2c1c5cb5336603215e65ff238044a5b11c586f61c1d", - "typeString": "literal_string \"rejected\"" - }, - "value": "rejected" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_5e679716a01be890d854f2c1c5cb5336603215e65ff238044a5b11c586f61c1d", - "typeString": "literal_string \"rejected\"" - } - ], - "id": 11566, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "236:7:31", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 11570, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "236:33:31", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 11571, - "nodeType": "ExpressionStatement", - "src": "236:33:31" - } - ] - }, - "id": 11573, - "implemented": true, - "kind": "receive", - "modifiers": [], - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 11564, - "nodeType": "ParameterList", - "parameters": [], - "src": "206:2:31" - }, - "returnParameters": { - "id": 11565, - "nodeType": "ParameterList", - "parameters": [], - "src": "226:0:31" - }, - "scope": 11574, - "src": "199:77:31", - "stateMutability": "payable", - "virtual": false, - "visibility": "external" - } - ], - "scope": 11575, - "src": "58:220:31", - "usedErrors": [] - } - ], - "src": "32:247:31" - }, - "compiler": { - "name": "solc", - "version": "0.8.18+commit.87f61d96.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "3.4.13", - "updatedAt": "2024-12-10T18:52:58.916Z", - "devdoc": { - "kind": "dev", - "methods": {}, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } -} \ No newline at end of file diff --git a/config.js b/config.js deleted file mode 100644 index fe1797f..0000000 --- a/config.js +++ /dev/null @@ -1,40 +0,0 @@ -const fs = require('fs'); -const testConfig = { test: {} }; -exports.read = () => Object.keys(testConfig.test).length > 0 ? testConfig : JSON.parse(fs.readFileSync('config.json').toString()); -exports.write = (newConfig) => { - const oldConfig = this.read(); - fs.writeFileSync('config.json', JSON.stringify({ ...oldConfig, ...newConfig }, null, 2)); -}; - - - - -exports.deploy = async (name, network, act) => { - const oldConfig = this.read(); - - if (!oldConfig[network]) { - oldConfig[network] = {}; - } - - if (!oldConfig[network][name]) { - oldConfig[network][name] = {}; - } - - if (network === 'test') { - testConfig.test[name] = {}; - await act(testConfig.test[name]); - return testConfig; - } - - if (!oldConfig[network][name].deployed || network === "rskRegtest") { - await act(oldConfig[network][name]); - oldConfig[network][name].deployed = true; - this.write(oldConfig) - } else { - console.warn(`${name} has already be deployed [address: ${oldConfig[network][name].address}]. If you want to deploy it, please set deployed attribute to false on config.json file.`) - } - return this.read(); -} - - - diff --git a/deploy.sh b/deploy.sh new file mode 100755 index 0000000..b759d68 --- /dev/null +++ b/deploy.sh @@ -0,0 +1,9 @@ +#!/bin/bash + +npm config set //npm.pkg.github.com/:_authToken "$GITHUB_TOKEN" + +npx hardhat run scripts/deployment/deploy-lbc.ts --network "$NETWORK_NAME" +npx hardhat run scripts/deployment/upgrade-lbc.ts --network "$NETWORK_NAME" + +LBC_ADDRESS=$(jq -r '.rskRegtest.LiquidityBridgeContract.address' ./addresses.json) +echo "LBC_ADDRESS=$LBC_ADDRESS" diff --git a/eslint.config.mjs b/eslint.config.mjs new file mode 100644 index 0000000..f109346 --- /dev/null +++ b/eslint.config.mjs @@ -0,0 +1,35 @@ +import globals from "globals"; +import pluginJs from "@eslint/js"; +import tseslint from "typescript-eslint"; + +/** @type {import('eslint').Linter.Config[]} */ +export default [ + { files: ["**/*.{js,mjs,cjs,ts}"] }, + { languageOptions: { globals: globals.node } }, + { + ignores: [ + "eslint.config.mjs", + "typechain-types/*", + "node_modules/*", + "artifacts/*", + "cache/*", + "coverage/*", + ], + }, + pluginJs.configs.recommended, + ...tseslint.configs.strictTypeChecked, + ...tseslint.configs.stylisticTypeChecked, + { + rules: { + "@typescript-eslint/no-non-null-assertion": "off", + }, + }, + { + languageOptions: { + parserOptions: { + projectService: true, + tsconfigRootDir: import.meta.dirname, + }, + }, + }, +]; diff --git a/example.env b/example.env index 0fe7564..26c3532 100644 --- a/example.env +++ b/example.env @@ -1,6 +1,9 @@ -ALPHANET_RPC_URL=http://127.0.0.1:4444 MAINNET_RPC_URL=https://public-node.rsk.co TESTNET_RPC_URL=https://public-node.testnet.rsk.co +REGTEST_RPC_URL=http://localhost:4444 MAINNET_SIGNER_PRIVATE_KEY= TESTNET_SIGNER_PRIVATE_KEY= -DEV_SIGNER_PRIVATE_KEY= \ No newline at end of file +DEV_SIGNER_PRIVATE_KEY= +MAINNET_MNEMONIC= +TESTNET_MNEMONIC= +DEV_MNEMONIC= diff --git a/hardhat.config.ts b/hardhat.config.ts new file mode 100644 index 0000000..996e3d8 --- /dev/null +++ b/hardhat.config.ts @@ -0,0 +1,119 @@ +import dotenv from "dotenv"; +import { HardhatUserConfig } from "hardhat/config"; +import "@nomicfoundation/hardhat-toolbox"; +import "@openzeppelin/hardhat-upgrades"; +import "hardhat-contract-sizer"; +import "./tasks/get-versions"; +import "./tasks/btc-best-height"; +import "./tasks/hash-quote"; +import "./tasks/refund-user-pegout"; +import "./tasks/register-pegin"; + +dotenv.config(); + +const { + MAINNET_RPC_URL, + TESTNET_RPC_URL, + REGTEST_RPC_URL, + MAINNET_SIGNER_PRIVATE_KEY, + MAINNET_MNEMONIC, + TESTNET_SIGNER_PRIVATE_KEY, + TESTNET_MNEMONIC, + DEV_SIGNER_PRIVATE_KEY, + DEV_MNEMONIC, +} = process.env; + +const rskMainnetDerivationPath = "m/44'/137'/0'/0/0"; +const rskTestnetDerivationPath = "m/44'/37310'/0'/0/0"; + +const rpcDefaultTimeout = 3 * 60 * 1000; // 3 minutes + +const config: HardhatUserConfig = { + networks: { + rskRegtest: { + url: REGTEST_RPC_URL ?? "http://localhost:4444", + chainId: 33, + }, + rskDevelopment: { + url: TESTNET_RPC_URL ?? "https://public-node.testnet.rsk.co", + timeout: rpcDefaultTimeout, + chainId: 31, + accounts: getAccounts("development"), + }, + rskTestnet: { + url: TESTNET_RPC_URL ?? "https://public-node.testnet.rsk.co", + timeout: rpcDefaultTimeout, + chainId: 31, + accounts: getAccounts("testnet"), + }, + rskMainnet: { + url: MAINNET_RPC_URL ?? "https://public-node.rsk.co", + timeout: rpcDefaultTimeout, + chainId: 30, + accounts: getAccounts("mainnet"), + }, + }, + solidity: { + version: "0.8.18", + settings: { + optimizer: { + enabled: true, + runs: 1, + }, + }, + }, +}; + +export default config; + +function getAccounts(network: "mainnet" | "testnet" | "development") { + switch (network) { + case "mainnet": + return getMainnetAccounts(); + case "testnet": + return getTestnetAccounts(); + case "development": + return getDevAccounts(); + default: + return undefined; + } +} + +function getMainnetAccounts() { + if (MAINNET_MNEMONIC) { + return { + mnemonic: MAINNET_MNEMONIC, + path: rskMainnetDerivationPath, + }; + } else if (MAINNET_SIGNER_PRIVATE_KEY) { + return [MAINNET_SIGNER_PRIVATE_KEY]; + } else { + return undefined; + } +} + +function getTestnetAccounts() { + if (TESTNET_MNEMONIC) { + return { + mnemonic: TESTNET_MNEMONIC, + path: rskTestnetDerivationPath, + }; + } else if (TESTNET_SIGNER_PRIVATE_KEY) { + return [TESTNET_SIGNER_PRIVATE_KEY]; + } else { + return undefined; + } +} + +function getDevAccounts() { + if (DEV_MNEMONIC) { + return { + mnemonic: DEV_MNEMONIC, + path: rskTestnetDerivationPath, + }; + } else if (DEV_SIGNER_PRIVATE_KEY) { + return [DEV_SIGNER_PRIVATE_KEY]; + } else { + return undefined; + } +} diff --git a/integration-test/Readme.md b/integration-test/Readme.md index e0abee9..41ce8e5 100644 --- a/integration-test/Readme.md +++ b/integration-test/Readme.md @@ -1,8 +1,11 @@ # Integration test + The purpose of this test is to validate that the basic flow of the pegin and pegout works in a particular network ## Configuration + To run the test you need to have a file named `test.config.json` with the same format as `test.config.example.json`. The fields are the following: + - **pollingIntervalInSeconds**: number of seconds that the test is going to wait to check again during long lasting operations. E. g. waiting for bitcoin transaction confirmations - **lbcAddress**: the address of the `LiquidityBridgeContract` in the network where the test is running - **btcUtilsAddress**: the address of the `BtcUtils` library in the network where the test is running @@ -13,12 +16,14 @@ To run the test you need to have a file named `test.config.json` with the same f - **btc**: url, user and password of the bitcoin rpc server that is going to be used to perform the bitcoin transactions ## How to run + 1. Register the liquidity provider address in the `LiquidityBridgeContract` 2. Complete the config file fields 3. Add the network to `truffe-config.js` file 4. Run `npm run test:integration ` ## Constraints + - The LP address that is set on config file must be registered as LP in the contract - The ABI files in `build` folder need to correspond with the contract that is being tested -- Timeout must be disabled \ No newline at end of file +- Timeout must be disabled diff --git a/integration-test/common.js b/integration-test/common.js deleted file mode 100644 index 742f3f2..0000000 --- a/integration-test/common.js +++ /dev/null @@ -1,107 +0,0 @@ -const { readFile } = require('fs').promises - -const sleep = ms => new Promise(resolve => setTimeout(resolve, ms)) -const formatHex = hexString => hexString.startsWith('0x') ? hexString : '0x' + hexString - -async function sendFromAccount({ account, value, call, additionalGasLimit }) { - const gasPrice = await web3.eth.getGasPrice().then(price => { - return parseInt(price) + parseInt(web3.utils.toWei('1', 'gwei')) - }) - const tx = { - from: account.address, - gasPrice, - to: call._parent.options.address, - value: value?.toString(), - data: call.encodeABI() - }; - const gasLimit = await call.estimateGas(tx).then(gas => additionalGasLimit? gas + additionalGasLimit : gas) - tx.gasLimit = gasLimit - const signedTx = await account.signTransaction(tx) - return web3.eth.sendSignedTransaction(signedTx.rawTransaction) -} - -function decodeLogs({ abi, receipt }) { - const logs = receipt.logs; - const parsedReceipt = {} - - for (const log of logs) { - const event = abi.filter(e => e.type === "event" && e.signature === log.topics[0])[0] - if (event) { - const topics = event.anonymous? log.topics : log.topics.slice(1) - const decodedLog = web3.eth.abi.decodeLog(event.inputs, log.data, topics) - parsedReceipt[event.name] = decodedLog - } - } - return parsedReceipt -} - -function getBitcoinRpcCaller({ url, user, pass }, debug = false) { - const headers = new Headers(); - headers.append("content-type", "application/json"); - const token = Buffer.from(`${user}:${pass}`).toString('base64') - headers.append("Authorization", "Basic "+token); - - return async function (method, ...args) { - const body = JSON.stringify({ - jsonrpc: "1.0", - method: method.toLowerCase(), - params: typeof args[0] === 'object' ? args[0] : args - }) - const requestOptions = { method: 'POST', headers, body } - if (debug) { - console.log(body) - } - return fetch(url, requestOptions) - .then(response => response.json()) - .then(response => { - if (response.error) { - throw response.error - } - return response.result - }) - } -} - -async function loadConfig() { - const buffer = await readFile('integration-test/test.config.json') - return JSON.parse(buffer.toString()) -} -async function sendBtc({ toAddress, amountInBtc, rpc, data }) { - const outputs = [ { [toAddress]: amountInBtc.toString() } ] - const fundOptions = { fee_rate: 25 } - if (data) { - outputs.push({ data }) - fundOptions.changePosition = 2 - } - const rawSendTx = await rpc("createrawtransaction", { - inputs: [], - outputs - }) - const fundedSendTx = await rpc("fundrawtransaction", rawSendTx, fundOptions) - const signedSendTx = await rpc("signrawtransactionwithwallet", fundedSendTx.hex) - return rpc("sendrawtransaction", signedSendTx.hex) -} - -async function waitForBtcTransaction({ rpc, hash, confirmations, interval }) { - let tx - while (!tx?.confirmations || confirmations > tx.confirmations) { - tx = await rpc("gettransaction", hash) - if (confirmations > tx.confirmations) { - console.log(`Waiting for transaction ${hash} (${tx.confirmations} confirmations)`) - await sleep(interval) - } - } - console.log("Transaction confirmed") - return tx -} - -module.exports = { - sleep, - formatHex, - sendFromAccount, - decodeLogs, - getBitcoinRpcCaller, - loadConfig, - sendBtc, - waitForBtcTransaction -} \ No newline at end of file diff --git a/integration-test/common.ts b/integration-test/common.ts new file mode 100644 index 0000000..4fa7061 --- /dev/null +++ b/integration-test/common.ts @@ -0,0 +1,123 @@ +import { BytesLike } from "ethers"; +import { readFile } from "fs/promises"; + +export interface IntegrationTestConfig { + pollingIntervalInSeconds: number; + lbcAddress: string; + btcUtilsAddress: string; + lpPrivateKey: string; + lpBtcAddress: string; + userPrivateKey: string; + userBtcAddress: string; + btc: { + url: string; + user: string; + pass: string; + walletName: string; + walletPassphrase: string; + txFee: number; + }; +} + +export const INTEGRATION_TEST_TIMEOUT = 1000 * 60 * 60 * 3; // 3 hours +export type BtcCaller = (method: string, ...args: unknown[]) => Promise; + +export const sleep: (ms: number) => Promise = (ms) => + new Promise((resolve) => setTimeout(resolve, ms)); +export const formatHex = (hex: string) => + hex.startsWith("0x") ? hex : "0x" + hex; + +export async function loadConfig(): Promise { + const buffer = await readFile("integration-test/test.config.json"); + return JSON.parse(buffer.toString()) as IntegrationTestConfig; +} + +export function getBitcoinRpcCaller( + args: IntegrationTestConfig["btc"], + debug = false +): BtcCaller { + const { url, user, pass, walletName } = args; + const headers = new Headers(); + headers.append("content-type", "application/json"); + const token = Buffer.from(`${user}:${pass}`).toString("base64"); + headers.append("Authorization", "Basic " + token); + + return async function (method: string, ...args: unknown[]): Promise { + const body = JSON.stringify({ + jsonrpc: "1.0", + method: method.toLowerCase(), + params: typeof args[0] === "object" ? args[0] : args, + }); + const requestOptions = { method: "POST", headers, body }; + if (debug) { + console.debug(body); + } + const parsedUrl = new URL(url); + parsedUrl.pathname = "/wallet/" + walletName; + return fetch(parsedUrl.toString(), requestOptions) + .then((response) => { + if (!response.ok) { + throw new Error(response.statusText); + } + return response.json(); + }) + .then((response: { result: T; error?: Error }) => { + if (response.error) { + throw response.error; + } + return response.result satisfies T; + }); + }; +} + +export async function sendBtc(args: { + toAddress: string; + amountInBtc: number | string; + rpc: BtcCaller; + data?: string; +}) { + const { toAddress, amountInBtc, rpc, data } = args; + const outputs = [{ [toAddress]: amountInBtc.toString() }]; + const fundOptions: { fee_rate: number; changePosition?: number } = { + fee_rate: 25, + }; + if (data) { + outputs.push({ data }); + fundOptions.changePosition = 2; + } + const rawSendTx = await rpc("createrawtransaction", { + inputs: [], + outputs, + }); + const fundedSendTx = await rpc<{ hex: string }>( + "fundrawtransaction", + rawSendTx, + fundOptions + ); + const signedSendTx = await rpc<{ hex: string }>( + "signrawtransactionwithwallet", + fundedSendTx.hex + ); + return rpc("sendrawtransaction", signedSendTx.hex); +} + +export async function waitForBtcTransaction(args: { + rpc: BtcCaller; + hash: BytesLike; + confirmations: number; + interval: number; +}) { + const { rpc, hash, confirmations, interval } = args; + let tx: { confirmations: number; blockhash: string; hex: string } | undefined; + while (!tx?.confirmations || confirmations > tx.confirmations) { + tx = await rpc("gettransaction", hash); + if (tx && confirmations > tx.confirmations) { + console.info( + `Waiting for transaction ${hash.toString()} (${tx.confirmations.toString()} confirmations)` + ); + await sleep(interval); + } + } + console.info("Transaction confirmed"); + return tx; +} diff --git a/integration-test/pegin.test.js b/integration-test/pegin.test.js deleted file mode 100644 index 5563189..0000000 --- a/integration-test/pegin.test.js +++ /dev/null @@ -1,183 +0,0 @@ -const { expect } = require('chai') - -const LiquidityBridgeContract = artifacts.require("LiquidityBridgeContractV2") -const BtcUtils = artifacts.require("BtcUtils") -const bs58check = require('bs58check') -const bs58 = require('bs58') -const pmtBuilder = require("@rsksmart/pmt-builder") - -const { - sleep, - formatHex, - sendFromAccount, - decodeLogs, - getBitcoinRpcCaller, - loadConfig, - sendBtc, - waitForBtcTransaction -} = require('./common') - -describe('Flyover pegin process should', () => { - let lbc - let btcUtils - let bitcoinRpc - - let quote - let quoteHash - let signedQuote - - let lpAccount - let interval - - let config - - before(async () => { - config = await loadConfig() - interval = config.pollingIntervalInSeconds * 1000 - lpAccount = web3.eth.accounts.privateKeyToAccount(config.lpPrivateKey) - const userAccount = web3.eth.accounts.privateKeyToAccount(config.userPrivateKey) - - const lpBtcAddress = bs58check.decode(config.lpBtcAddress) - const lpAddress = lpAccount.address - const userBtcAddress = bs58check.decode(config.userBtcAddress) - const userAddress = userAccount.address - - lbc = new web3.eth.Contract(LiquidityBridgeContract.abi, config.lbcAddress) - btcUtils = new web3.eth.Contract(BtcUtils.abi, config.btcUtilsAddress) - bitcoinRpc = getBitcoinRpcCaller(config.btc); - - const timestamp = Math.floor(Date.now() / 1000) - const transferTime = 1800 - const gasLimit = await web3.eth.estimateGas({ to: userAddress, data: '0x' }) - const gasPrice = await web3.eth.getGasPrice() - const cfuGasCost = gasPrice * gasLimit - const fedAddress = await web3.eth.call({ - to: '0x0000000000000000000000000000000001000006', - data: web3.eth.abi.encodeFunctionSignature('getFederationAddress()') - }) - .then(fed => { - const decodeResult = web3.eth.abi.decodeParameters(['string'], fed) - return bs58check.decode(decodeResult[0]).slice(1) - }) - const nonce = Math.floor(Math.random() * Number.MAX_SAFE_INTEGER) - - const productFeePercentage = await lbc.methods.productFeePercentage().call() - const value = BigInt(600000000000000000) // 0.6 eth - const productFee = (BigInt(productFeePercentage) * value) / BigInt(100) - const daoAddress = await lbc.methods.daoFeeCollectorAddress().call() - const daoGas = await web3.eth.estimateGas({ to: daoAddress, value: productFee.toString() }) - const daoGasCost = gasPrice * daoGas - - quote = { - fedBtcAddress: fedAddress, - lbcAddress: config.lbcAddress, - liquidityProviderRskAddress: lpAddress, - btcRefundAddress: userBtcAddress, - rskRefundAddress: userAddress, - liquidityProviderBtcAddress: lpBtcAddress, - callFee: BigInt(10000000000000000), // fee is 0.01 eth - penaltyFee: 1000000, - contractAddress: userAddress, - data: '0x', - gasLimit: gasLimit, - nonce: nonce, - value: value, - agreementTimestamp: timestamp, - timeForDeposit: transferTime, - callTime: transferTime * 2, - depositConfirmations: 1, - callOnRegister: false, - productFeeAmount: productFee, - gasFee: cfuGasCost + daoGasCost - } - - - quoteHash = await lbc.methods.hashQuote(quote).call() - signedQuote = lpAccount.sign(quoteHash) - }) - - it('execute callForUser', async () => { - const cfuExtraGas = 180000 - const receipt = await sendFromAccount({ - account: lpAccount, - value: quote.callFee + quote.value, - call: lbc.methods.callForUser(quote), - additionalGasLimit: quote.gasLimit + cfuExtraGas - }) - const parsedReceipt = decodeLogs({ abi: LiquidityBridgeContract.abi, receipt }) - expect(parsedReceipt.CallForUser?.success).to.be.true - }) - - it('execute registerPegIn', async () => { - const derivationAddress = await getDervivationAddress({ quote, quoteHash, btcUtilsInstance: btcUtils, lbc}) - const total = web3.utils.toBN(quote.value.toString()) - .add(web3.utils.toBN(quote.callFee.toString())) - .add(web3.utils.toBN(quote.gasFee.toString())) - .add(web3.utils.toBN(quote.productFeeAmount.toString())); - const amountInBtc = web3.utils.fromWei(total, 'ether') - - if (config.btc.walletPassphrase) { - await bitcoinRpc('walletpassphrase', { - passphrase: config.btc.walletPassphrase, - timeout: 60 - }) - } - const txHash = await sendBtc({ rpc: bitcoinRpc, amountInBtc, toAddress: derivationAddress }) - const tx = await waitForBtcTransaction({ rpc: bitcoinRpc, hash: txHash, confirmations: quote.depositConfirmations, interval }) - - const block = await bitcoinRpc("getblock", tx.blockhash) - const rawTx = await bitcoinRpc("getrawtransaction", txHash) - const pmt = pmtBuilder.buildPMT(block.tx, txHash) - let receipt, waitingForValidations = false - do { - try { - receipt = await sendFromAccount({ - account: lpAccount, - call: lbc.methods.registerPegIn( - quote, - signedQuote.signature, - formatHex(rawTx), - formatHex(pmt.hex), - block.height - ) - }) - waitingForValidations = false - } catch (e) { - waitingForValidations = e.message.includes('LBC031') - if (!waitingForValidations) { - throw e - } - console.log('Waiting for bridge validations...') - await sleep(interval) - } - } while (waitingForValidations) - - expect(Boolean(receipt.status)).to.be.true - }) -}) - -async function getDervivationAddress({ quote, quoteHash, btcUtilsInstance }) { - const derivationAddress = web3.utils.soliditySha3( - { type: 'bytes32', value: formatHex(quoteHash) }, - { type: 'bytes', value: web3.utils.bytesToHex(quote.btcRefundAddress) }, - { type: 'address', value: quote.lbcAddress }, - { type: 'bytes', value: web3.utils.bytesToHex(quote.liquidityProviderBtcAddress) } - ); - let redeemScript = web3.utils.hexToBytes(derivationAddress) - redeemScript.unshift(32) // 0x20 - redeemScript.push(117) // 0x75 - const powpegRedeemScript = await web3.eth.call({ - to: '0x0000000000000000000000000000000001000006', - data: web3.eth.abi.encodeFunctionSignature('getActivePowpegRedeemScript()') - }).then(script => { - const result = web3.eth.abi.decodeParameters(['bytes'], script)[0] - return web3.utils.hexToBytes(result) - }) - redeemScript = redeemScript.concat(powpegRedeemScript) - - const derivationAddressBytes = await btcUtilsInstance.methods.getP2SHAddressFromScript( - web3.utils.bytesToHex(redeemScript), - false - ).call() - return bs58.encode(web3.utils.hexToBytes(derivationAddressBytes)) -} \ No newline at end of file diff --git a/integration-test/pegin.test.ts b/integration-test/pegin.test.ts new file mode 100644 index 0000000..9d76b7a --- /dev/null +++ b/integration-test/pegin.test.ts @@ -0,0 +1,237 @@ +import { + BrowserProvider, + BytesLike, + concat, + ContractTransactionReceipt, + formatEther, + getBytes, + hexlify, + keccak256, + parseEther, + Wallet, +} from "ethers"; +import { + BtcCaller, + formatHex, + getBitcoinRpcCaller, + INTEGRATION_TEST_TIMEOUT, + IntegrationTestConfig, + loadConfig, + sendBtc, + sleep, + waitForBtcTransaction, +} from "./common"; +import * as bs58check from "bs58check"; +import { + Bridge, + BtcUtils, + LiquidityBridgeContractV2, + QuotesV2, +} from "../typechain-types"; +import hre, { ethers } from "hardhat"; +import { expect } from "chai"; +import bs58 from "bs58"; +import { totalValue } from "../test/utils/quotes"; +import { buildPMT } from "@rsksmart/pmt-builder"; + +describe("Flyover pegin process should", function () { + this.timeout(INTEGRATION_TEST_TIMEOUT); + let config: IntegrationTestConfig; + let interval: number; + let lpAccount: Wallet; + + let lbc: LiquidityBridgeContractV2; + let btcUtils: BtcUtils; + let bridge: Bridge; + + let bitcoinRpc: BtcCaller; + + let quote: QuotesV2.PeginQuoteStruct; + let quoteHash: BytesLike; + let signedQuote: BytesLike; + + before(async () => { + const provider = new BrowserProvider(hre.network.provider); + config = await loadConfig(); + interval = config.pollingIntervalInSeconds * 1000; + lpAccount = new Wallet(config.lpPrivateKey, provider); + const userAccount = new Wallet(config.userPrivateKey, provider); + + const lpBtcAddress = bs58check.decode(config.lpBtcAddress); + const userBtcAddress = bs58check.decode(config.userBtcAddress); + + lbc = await ethers.getContractAt( + "LiquidityBridgeContractV2", + config.lbcAddress + ); + btcUtils = await ethers.getContractAt("BtcUtils", config.btcUtilsAddress); + bridge = await ethers.getContractAt( + "Bridge", + "0x0000000000000000000000000000000001000006" + ); + bitcoinRpc = getBitcoinRpcCaller(config.btc); + + const timestamp = Math.floor(Date.now() / 1000); + const transferTime = 1800; + const gasLimit = await provider.estimateGas({ + to: userAccount.address, + data: "0x", + }); + const gasPrice = await provider + .getFeeData() + .then((result) => result.gasPrice!); + const cfuGasCost = gasPrice * gasLimit; + const fedAddress = await bridge + .getFederationAddress() + .then((fed) => bs58check.decode(fed).slice(1)); + const nonce = Math.floor(Math.random() * Number.MAX_SAFE_INTEGER); + + const productFeePercentage = await lbc.productFeePercentage(); + const value = parseEther("0.7"); + const productFee = (BigInt(productFeePercentage) * value) / BigInt(100); + const daoAddress = await lbc.daoFeeCollectorAddress(); + const daoGas = await provider.estimateGas({ + to: daoAddress, + value: productFee.toString(), + }); + const daoGasCost = gasPrice * daoGas; + + quote = { + fedBtcAddress: fedAddress, + lbcAddress: config.lbcAddress, + liquidityProviderRskAddress: lpAccount.address, + btcRefundAddress: userBtcAddress, + rskRefundAddress: userAccount.address, + liquidityProviderBtcAddress: lpBtcAddress, + callFee: parseEther("0.01"), + penaltyFee: 1000000, + contractAddress: userAccount.address, + data: "0x", + gasLimit: gasLimit, + nonce: nonce, + value: value, + agreementTimestamp: timestamp, + timeForDeposit: transferTime, + callTime: transferTime * 2, + depositConfirmations: 1, + callOnRegister: false, + productFeeAmount: productFee, + gasFee: cfuGasCost + daoGasCost, + }; + + quoteHash = await lbc.hashQuote(quote).then((hash) => getBytes(hash)); + signedQuote = await lpAccount.signMessage(quoteHash); + }); + + it("execute callForUser", async () => { + const cfuExtraGas = 180000n; + lbc = lbc.connect(lpAccount); + const tx = await lbc.callForUser(quote, { + gasLimit: BigInt(quote.gasLimit) + cfuExtraGas, + value: totalValue(quote), + }); + await expect(tx) + .to.emit(lbc, "CallForUser") + .withArgs( + lpAccount.address, + quote.contractAddress, + quote.gasLimit, + quote.value, + quote.data, + true, + quoteHash + ); + }); + + it("execute registerPegIn", async () => { + const derivationAddress = await getDervivationAddress({ + quote, + quoteHash, + btcUtils, + bridge, + }); + const total = totalValue(quote); + const amountInBtc = formatEther(total); + + if (config.btc.walletPassphrase) { + await bitcoinRpc("walletpassphrase", { + passphrase: config.btc.walletPassphrase, + timeout: 60, + }); + } + const txHash = await sendBtc({ + rpc: bitcoinRpc, + amountInBtc, + toAddress: derivationAddress, + }); + const tx = await waitForBtcTransaction({ + rpc: bitcoinRpc, + hash: txHash, + confirmations: Number(quote.depositConfirmations), + interval, + }); + + const block = await bitcoinRpc<{ tx: string[]; height: number }>( + "getblock", + tx.blockhash + ); + const rawTx = await bitcoinRpc("getrawtransaction", txHash); + const pmt = buildPMT(block.tx, txHash); + let receipt: ContractTransactionReceipt | null = null; + let waitingForValidations = false; + lbc = lbc.connect(lpAccount); + do { + try { + const tx = await lbc.registerPegIn( + quote, + signedQuote, + formatHex(rawTx), + formatHex(pmt.hex), + block.height + ); + receipt = await tx.wait(); + waitingForValidations = false; + } catch (e: unknown) { + waitingForValidations = (e as Error).message.includes("LBC031"); + if (!waitingForValidations) { + throw e; + } + console.info("Waiting for bridge validations..."); + await sleep(interval); + } + } while (waitingForValidations); + + await expect(receipt) + .to.emit(lbc, "PegInRegistered") + .withArgs(quoteHash, parseEther(amountInBtc)); + }); +}); + +async function getDervivationAddress(ags: { + quote: QuotesV2.PeginQuoteStruct; + quoteHash: BytesLike; + btcUtils: BtcUtils; + bridge: Bridge; +}) { + const { quote, quoteHash, btcUtils, bridge } = ags; + const derivationAddress = keccak256( + concat([ + quoteHash, + quote.btcRefundAddress, + quote.lbcAddress as BytesLike, + quote.liquidityProviderBtcAddress, + ]) + ); + const redeemScript = [...getBytes(derivationAddress)]; // to convert from UInt8Array to array + redeemScript.unshift(0x20); + redeemScript.push(0x75); + const powpegRedeemScript = await bridge + .getActivePowpegRedeemScript() + .then((result) => getBytes(result)); + redeemScript.push(...powpegRedeemScript); + + const derivationAddressBytes = await btcUtils + .getP2SHAddressFromScript(hexlify(new Uint8Array(redeemScript)), false) + .then((result) => getBytes(result)); + return bs58.encode(derivationAddressBytes); +} diff --git a/integration-test/pegout.test.js b/integration-test/pegout.test.js deleted file mode 100644 index 5594f95..0000000 --- a/integration-test/pegout.test.js +++ /dev/null @@ -1,175 +0,0 @@ -const { expect } = require('chai') - -const LiquidityBridgeContract = artifacts.require("LiquidityBridgeContractV2") -const bs58check = require('bs58check') -const pmtBuilder = require("@rsksmart/pmt-builder") - -const { - sleep, - formatHex, - sendFromAccount, - decodeLogs, - getBitcoinRpcCaller, - loadConfig, - sendBtc, - waitForBtcTransaction -} = require('./common') - -describe('Flyover pegout process should', () => { - - let lbc - let bitcoinRpc - - let quote - let quoteHash - let signedQuote - - let lpAccount - let userAccount - let interval - let userBtcEncodedAddress - - let config - - before(async () => { - config = await loadConfig() - interval = config.pollingIntervalInSeconds * 1000 - lpAccount = web3.eth.accounts.privateKeyToAccount(config.lpPrivateKey) - userAccount = web3.eth.accounts.privateKeyToAccount(config.userPrivateKey) - - const lpBtcAddress = bs58check.decode(config.lpBtcAddress) - const lpAddress = lpAccount.address - userBtcEncodedAddress = config.userBtcAddress - const userBtcAddress = bs58check.decode(config.userBtcAddress) - const userAddress = userAccount.address - - lbc = new web3.eth.Contract(LiquidityBridgeContract.abi, config.lbcAddress) - bitcoinRpc = getBitcoinRpcCaller(config.btc); - - const timestamp = Math.floor(Date.now() / 1000) - const transferTime = 1800, expireDate = 3600 - const nonce = Math.floor(Math.random() * Number.MAX_SAFE_INTEGER) - const height = await web3.eth.getBlock("latest").then(block => block.number); - - const productFeePercentage = await lbc.methods.productFeePercentage().call() - const value = BigInt(600000000000000000) // 0.6 eth - const productFee = (BigInt(productFeePercentage) * value) / BigInt(100) - const daoAddress = await lbc.methods.daoFeeCollectorAddress().call() - const daoGas = await web3.eth.estimateGas({ to: daoAddress, value: productFee.toString() }) - const gasPrice = await web3.eth.getGasPrice() - const daoGasCost = gasPrice * daoGas - const btcNetworkFee = 0.00006700 * 10**18 - - quote = { - lbcAddress: config.lbcAddress, - lpRskAddress: lpAddress, - btcRefundAddress: userBtcAddress, - rskRefundAddress: userAddress, - lpBtcAddress: lpBtcAddress, - callFee: BigInt(100000000000000), // fee is 0.0001 eth - penaltyFee: 1000000, - nonce: nonce, - deposityAddress: userBtcAddress, - value: BigInt(6000000000000000), // 0.006 eth - agreementTimestamp: timestamp, - depositDateLimit: timestamp + transferTime, - depositConfirmations: 1, - transferConfirmations: 1, - transferTime: transferTime, - expireDate: timestamp + expireDate, - expireBlock: height + 50, - productFeeAmount: productFee, - gasFee: daoGasCost + btcNetworkFee - } - - quoteHash = await lbc.methods.hashPegoutQuote(quote).call() - signedQuote = lpAccount.sign(quoteHash) - }) - - it('execute depositPegout', async () => { - const receipt = await sendFromAccount({ - account: userAccount, - value: quote.callFee + quote.value + quote.productFeeAmount + BigInt(quote.gasFee), - call: lbc.methods.depositPegout(quote, signedQuote.signature) - }) - const parsedReceipt = decodeLogs({ abi: LiquidityBridgeContract.abi, receipt }) - expect(parsedReceipt.PegOutDeposit?.quoteHash).eq(quoteHash) - }) - - it('execute refundPegOut', async () => { - const amountInSatoshi = (quote.value + quote.callFee) / BigInt(10**10) - const amountInBtc = Number(amountInSatoshi) / 10**8 - if (config.btc.walletPassphrase) { - await bitcoinRpc('walletpassphrase', { - passphrase: config.btc.walletPassphrase, - timeout: 60 - }) - } - const txHash = await sendBtc({ - rpc: bitcoinRpc, - amountInBtc, - toAddress: userBtcEncodedAddress, - data: quoteHash.slice(2) - }) - const tx = await waitForBtcTransaction({ - rpc: bitcoinRpc, - hash: txHash, - confirmations: quote.depositConfirmations, - interval - }) - const block = await bitcoinRpc("getblock", tx.blockhash) - const txIndex = block.tx.findIndex(txId => txId === txHash) - const mb = buildMerkleBranch(block.tx, txHash, txIndex) - - let receipt, waitingForValidations = false - do { - try { - receipt = await sendFromAccount({ - account: lpAccount, - call: lbc.methods.refundPegOut( - quoteHash, - formatHex(tx.hex), - formatHex(tx.blockhash), - mb.path, - mb.hashes.map(hash => formatHex(hash)) - ), - additionalGasLimit: 5000 - }) - waitingForValidations = false - } catch (e) { - waitingForValidations = e.message.includes('LBC049') - if (!waitingForValidations) { - throw e - } - console.log('Waiting for bridge validations...') - await sleep(interval) - } - } while (waitingForValidations) - const parsedReceipt = decodeLogs({ abi: LiquidityBridgeContract.abi, receipt }) - expect(parsedReceipt.PegOutRefunded?.quoteHash).eq(quoteHash) - }) -}) - -function buildMerkleBranch(transactions, txHash, txIndex) { - const hashes = [] - const pmt = pmtBuilder.buildPMT(transactions, txHash) - - let path = 0, pathIndex = 0, levelOffset = 0 - let currentNodeOffset = txIndex - let targetOffset - for (let levelSize = transactions.length; levelSize > 1; levelSize = Math.floor((levelSize + 1) / 2)) { - if (currentNodeOffset % 2 == 0) { - targetOffset = Math.min(currentNodeOffset+1, levelSize-1) - } else { - targetOffset = currentNodeOffset - 1 - path = path + (1 << pathIndex) - } - hashes.push(pmt.hashes[levelOffset+targetOffset]) - - levelOffset += levelSize - currentNodeOffset = currentNodeOffset / 2 - pathIndex++ - } - - return { hashes, path } -} \ No newline at end of file diff --git a/integration-test/pegout.test.ts b/integration-test/pegout.test.ts new file mode 100644 index 0000000..03968c7 --- /dev/null +++ b/integration-test/pegout.test.ts @@ -0,0 +1,218 @@ +import { + BrowserProvider, + BytesLike, + ContractTransactionReceipt, + getBytes, + hexlify, + parseEther, + Wallet, +} from "ethers"; +import { + BtcCaller, + formatHex, + getBitcoinRpcCaller, + INTEGRATION_TEST_TIMEOUT, + IntegrationTestConfig, + loadConfig, + sendBtc, + sleep, + waitForBtcTransaction, +} from "./common"; +import { LiquidityBridgeContractV2, QuotesV2 } from "../typechain-types"; +import { parseBtcAddress } from "../tasks/utils/quote"; +import hre, { ethers } from "hardhat"; +import * as bs58check from "bs58check"; +import { totalValue } from "../test/utils/quotes"; +import { expect } from "chai"; +import { weiToSat } from "../test/utils/btc"; +import { buildPMT } from "@rsksmart/pmt-builder"; + +describe("Flyover pegout process should", function () { + this.timeout(INTEGRATION_TEST_TIMEOUT); + let config: IntegrationTestConfig; + let interval: number; + let lpAccount: Wallet; + let userAccount: Wallet; + let userBtcEncodedAddress: string; + + let lbc: LiquidityBridgeContractV2; + let bitcoinRpc: BtcCaller; + + let quote: QuotesV2.PegOutQuoteStruct; + let quoteHash: BytesLike; + let signedQuote: BytesLike; + + before(async () => { + const provider = new BrowserProvider(hre.network.provider); + config = await loadConfig(); + interval = config.pollingIntervalInSeconds * 1000; + lpAccount = new Wallet(config.lpPrivateKey, provider); + userAccount = new Wallet(config.userPrivateKey, provider); + userBtcEncodedAddress = config.userBtcAddress; + + const lpBtcAddress = bs58check.decode(config.lpBtcAddress); + const userBtcAddress = parseBtcAddress(config.userBtcAddress); + + lbc = await ethers.getContractAt( + "LiquidityBridgeContractV2", + config.lbcAddress + ); + bitcoinRpc = getBitcoinRpcCaller(config.btc); + + const timestamp = Math.floor(Date.now() / 1000); + const transferTime = 1800, + expireDate = 3600; + const nonce = Math.floor(Math.random() * Number.MAX_SAFE_INTEGER); + const height = await hre.ethers.provider + .getBlock("latest") + .then((block) => block!.number); + + const productFeePercentage = await lbc.productFeePercentage(); + const value = parseEther("0.6"); + const productFee = (BigInt(productFeePercentage) * value) / BigInt(100); + const daoAddress = await lbc.daoFeeCollectorAddress(); + const daoGas = await provider.estimateGas({ + to: daoAddress, + value: productFee.toString(), + }); + const gasPrice = await provider + .getFeeData() + .then((result) => result.gasPrice!); + const daoGasCost = gasPrice * daoGas; + const btcNetworkFee = parseEther(config.btc.txFee.toString()); + + quote = { + lbcAddress: config.lbcAddress, + lpRskAddress: lpAccount.address, + btcRefundAddress: userBtcAddress, + rskRefundAddress: userAccount.address, + lpBtcAddress: lpBtcAddress, + callFee: parseEther("0.0001"), + penaltyFee: 1000000, + nonce: nonce, + deposityAddress: userBtcAddress, + value: parseEther("0.6"), + agreementTimestamp: timestamp, + depositDateLimit: timestamp + transferTime, + depositConfirmations: 1, + transferConfirmations: 1, + transferTime: transferTime, + expireDate: timestamp + expireDate, + expireBlock: height + 50, + productFeeAmount: productFee, + gasFee: daoGasCost + btcNetworkFee, + }; + + quoteHash = await lbc.hashPegoutQuote(quote).then((hash) => getBytes(hash)); + signedQuote = await lpAccount.signMessage(quoteHash); + }); + + it("execute depositPegout", async () => { + lbc = lbc.connect(userAccount); + const total = totalValue(quote); + const receipt = await lbc + .depositPegout(quote, signedQuote, { value: total }) + .then((tx) => tx.wait()); + const timestamp = await hre.ethers.provider + .getBlock("latest") + .then((block) => block!.timestamp); + await expect(receipt) + .to.emit(lbc, "PegOutDeposit") + .withArgs(quoteHash, userAccount.address, total, timestamp); + }); + + it("execute refundPegOut", async () => { + const amountInSatoshi = weiToSat( + BigInt(quote.value) + BigInt(quote.callFee) + ); + const amountInBtc = Number(amountInSatoshi) / 10 ** 8; + if (config.btc.walletPassphrase) { + await bitcoinRpc("walletpassphrase", { + passphrase: config.btc.walletPassphrase, + timeout: 60, + }); + } + const txHash = await sendBtc({ + rpc: bitcoinRpc, + amountInBtc, + toAddress: userBtcEncodedAddress, + data: hexlify(quoteHash).slice(2), + }); + const tx = await waitForBtcTransaction({ + rpc: bitcoinRpc, + hash: txHash, + confirmations: Number(quote.depositConfirmations), + interval, + }); + const block = await bitcoinRpc<{ tx: string[] }>("getblock", tx.blockhash); + const txIndex = block.tx.findIndex((txId) => txId === txHash); + const mb = buildMerkleBranch(block.tx, txHash, txIndex); + + let waitingForValidations = false; + let receipt: ContractTransactionReceipt | null = null; + lbc = lbc.connect(lpAccount); + do { + try { + const refundEstimation = await lbc.refundPegOut.estimateGas( + quoteHash, + formatHex(tx.hex), + formatHex(tx.blockhash), + mb.path, + mb.hashes.map((hash) => formatHex(hash)) + ); + const refundTx = await lbc.refundPegOut( + quoteHash, + formatHex(tx.hex), + formatHex(tx.blockhash), + mb.path, + mb.hashes.map((hash) => formatHex(hash)), + { gasLimit: refundEstimation } + ); + receipt = await refundTx.wait(); + waitingForValidations = false; + } catch (e: unknown) { + waitingForValidations = (e as Error).message.includes("LBC049"); + if (!waitingForValidations) { + throw e; + } + console.info("Waiting for bridge validations..."); + await sleep(interval); + } + } while (waitingForValidations); + await expect(receipt).to.emit(lbc, "PegOutRefunded").withArgs(quoteHash); + }); +}); + +function buildMerkleBranch( + transactions: string[], + txHash: string, + txIndex: number +) { + const hashes = []; + const pmt = buildPMT(transactions, txHash); + + let path = 0, + pathIndex = 0, + levelOffset = 0; + let currentNodeOffset = txIndex; + let targetOffset; + for ( + let levelSize = transactions.length; + levelSize > 1; + levelSize = Math.floor((levelSize + 1) / 2) + ) { + if (currentNodeOffset % 2 == 0) { + targetOffset = Math.min(currentNodeOffset + 1, levelSize - 1); + } else { + targetOffset = currentNodeOffset - 1; + path = path + (1 << pathIndex); + } + hashes.push(pmt.hashes[levelOffset + targetOffset]); + + levelOffset += levelSize; + currentNodeOffset = currentNodeOffset / 2; + pathIndex++; + } + + return { hashes, path }; +} diff --git a/integration-test/test.config.example.json b/integration-test/test.config.example.json index 4c73a05..3a0cb17 100644 --- a/integration-test/test.config.example.json +++ b/integration-test/test.config.example.json @@ -1,15 +1,17 @@ { - "pollingIntervalInSeconds": 10, - "lbcAddress": "0x0848B16e015A5e8A5c40Bfa0387367Be2fD371cf", - "btcUtilsAddress": "0xa841Cf63635A86ba39E8Cbaf8795f757d3Ec83B4", - "lpPrivateKey": "", - "lpBtcAddress": "mvoUMT3X1Kpfvp8YgupcWNJKrU2VaR4dMS", - "userPrivateKey": "", - "userBtcAddress": "muyEFdh98xUM35jYbSQ2hWBBadnQ31a5kh", - "btc": { - "url": "http://127.0.0.1:5555/", - "user": "test", - "pass": "test", - "walletPassphrase": "pass" - } -} \ No newline at end of file + "pollingIntervalInSeconds": 10, + "lbcAddress": "0x0848B16e015A5e8A5c40Bfa0387367Be2fD371cf", + "btcUtilsAddress": "0xa841Cf63635A86ba39E8Cbaf8795f757d3Ec83B4", + "lpPrivateKey": "", + "lpBtcAddress": "mvoUMT3X1Kpfvp8YgupcWNJKrU2VaR4dMS", + "userPrivateKey": "", + "userBtcAddress": "muyEFdh98xUM35jYbSQ2hWBBadnQ31a5kh", + "btc": { + "url": "http://127.0.0.1:5555", + "user": "test", + "pass": "test", + "walletName": "main", + "walletPassphrase": "pass", + "txFee": 0.000067 + } +} diff --git a/migrations/1_initial_migration.js b/migrations/1_initial_migration.js deleted file mode 100644 index 674a8cc..0000000 --- a/migrations/1_initial_migration.js +++ /dev/null @@ -1,11 +0,0 @@ -const Migrations = artifacts.require("Migrations"); -const { deploy } = require('../config'); - -module.exports = async function(deployer, network) { - - await deploy('Migrations', network, async (state) => { - await deployer.deploy(Migrations); - const response = await Migrations.deployed(); - state.address = response.address; - }); -}; diff --git a/migrations/2_deploy_contracts.js b/migrations/2_deploy_contracts.js deleted file mode 100644 index 9397b05..0000000 --- a/migrations/2_deploy_contracts.js +++ /dev/null @@ -1,147 +0,0 @@ -const { deployProxy } = require("@openzeppelin/truffle-upgrades"); - -const LiquidityBridgeContract = artifacts.require("LiquidityBridgeContract"); - -const Mock = artifacts.require("Mock"); -const BridgeMock = artifacts.require("BridgeMock"); -const SignatureValidator = artifacts.require("SignatureValidator"); -const Quotes = artifacts.require("Quotes"); -const SignatureValidatorMock = artifacts.require("SignatureValidatorMock"); -const BtcUtils = artifacts.require("BtcUtils"); - -const RSK_NETWORK_MAINNET = "rskMainnet"; -const RSK_NETWORK_TESTNET = "rskTestnet"; -const RSK_NETWORK_REGTEST = "rskRegtest"; -const INTERNAL_ALPHANET = "alphanet"; -const RSK_NETWORK_DEVELOPMENT = "rskDevelopment"; - -const RSK_NETWORKS = [ - RSK_NETWORK_MAINNET, - RSK_NETWORK_TESTNET, - RSK_NETWORK_REGTEST, - INTERNAL_ALPHANET, - RSK_NETWORK_DEVELOPMENT -]; - -const RSK_BRIDGE_ADDRESS = "0x0000000000000000000000000000000001000006"; - -const MINIMUM_COLLATERAL = "30000000000000000"; // amount in wei -const MINIMUM_PEG_IN_DEFAULT = "5000000000000000"; // amount in wei -const MINIMUM_PEG_IN_REGTEST = "5000000000000000"; // amount in wei -const REWARD_PERCENTAGE = 10; -const RESIGN_DELAY_BLOCKS = 60; -const DUST_THRESHOLD = 2300 * 65164000; -const BTC_BLOCK_TIME = 900; // the 900 addition is to give 15m to the tx to be mined -const { deploy, read } = require("../config"); - -module.exports = async function (deployer, network) { - let minimumPegIn, bridgeAddress; - const mainnet = network === RSK_NETWORK_MAINNET; - if (RSK_NETWORKS.includes(network)) { - // deploy to actual networks so don't use mocks and use existing bridge. - bridgeAddress = RSK_BRIDGE_ADDRESS; - - await deploy("SignatureValidator", network, async (state) => { - await deployer.deploy(SignatureValidator); - await deployer.link(SignatureValidator, LiquidityBridgeContract); - const response = await SignatureValidator.deployed(); - state.address = response.address; - }); - - await deploy("Quotes", network, async (state) => { - await deployer.deploy(Quotes); - await deployer.link(Quotes, LiquidityBridgeContract); - const response = await Quotes.deployed(); - state.address = response.address; - }); - - await deploy("BtcUtils", network, async (state) => { - await deployer.deploy(BtcUtils); - await deployer.link(BtcUtils, LiquidityBridgeContract); - const response = await BtcUtils.deployed(); - state.address = response.address; - }); - - if (network === RSK_NETWORK_REGTEST) { - minimumPegIn = MINIMUM_PEG_IN_REGTEST; - } else { - minimumPegIn = MINIMUM_PEG_IN_DEFAULT; - } - } else { - // test with mocks; - await deployer.deploy(Mock); - - await deployer.deploy(BridgeMock); - const bridgeMockInstance = await BridgeMock.deployed(); - bridgeAddress = bridgeMockInstance.address; - - await deploy("SignatureValidator", network, async (state) => { - await deployer.deploy(SignatureValidatorMock); - const signatureValidatorMockInstance = - await SignatureValidatorMock.deployed(); - await LiquidityBridgeContract.link( - "SignatureValidator", - signatureValidatorMockInstance.address - ); - state.address = signatureValidatorMockInstance.address; - }); - - await deploy("Quotes", network, async (state) => { - await deployer.deploy(Quotes); - const quotesInstance = await Quotes.deployed(); - await LiquidityBridgeContract.link("Quotes", quotesInstance.address); - state.address = quotesInstance.address; - }); - - await deploy("BtcUtils", network, async (state) => { - await deployer.deploy(BtcUtils); - const btcUtilsInstance = await BtcUtils.deployed(); - await LiquidityBridgeContract.link("BtcUtils", btcUtilsInstance.address); - state.address = btcUtilsInstance.address; - }); - - minimumPegIn = 3; - } - - let config = read(); - config = await deploy("LiquidityBridgeContract", network, async (state) => { - const signatureValidatorLib = await SignatureValidator.at( - config[network]["SignatureValidator"].address - ); - await deployer.link(signatureValidatorLib, LiquidityBridgeContract); - - const quotesLib = await Quotes.at( - config[network]["Quotes"].address - ); - await deployer.link(quotesLib, LiquidityBridgeContract); - - const btcUtilsLib = await BtcUtils.at( - config[network]["BtcUtils"].address - ); - await deployer.link(btcUtilsLib, LiquidityBridgeContract); - - if (config[network]["LiquidityBridgeContract"]?.address) { - console.log('Already deployed, skipping LiquidityBridgeContract deploy...'); - return; - } - - const response = await deployProxy( - LiquidityBridgeContract, - [ - bridgeAddress, - MINIMUM_COLLATERAL, - minimumPegIn, - REWARD_PERCENTAGE, - RESIGN_DELAY_BLOCKS, - DUST_THRESHOLD, - BTC_BLOCK_TIME, - mainnet - ], - { - deployer, - unsafeAllowLinkedLibraries: true - } - ); - state.address = response.address; - }); -}; diff --git a/migrations/3_upgrade_contracts.js b/migrations/3_upgrade_contracts.js deleted file mode 100644 index ca3d228..0000000 --- a/migrations/3_upgrade_contracts.js +++ /dev/null @@ -1,52 +0,0 @@ -const { upgradeProxy } = require("@openzeppelin/truffle-upgrades"); - -const SignatureValidator = artifacts.require("SignatureValidator"); -const QuotesV2 = artifacts.require("QuotesV2"); -const LiquidityBridgeContractV2 = artifacts.require('LiquidityBridgeContractV2.sol'); -const BtcUtils = artifacts.require("BtcUtils"); - -const { read, deploy} = require("../config"); - -// using LP address as placeholder for now -const FEE_COLLECTOR_MAINNET_ADDRESS = '0x4202BAC9919C3412fc7C8BE4e678e26279386603'.toLowerCase(); -const FEE_COLLECTOR_TESTNET_ADDRESS = '0x86B6534687A176A476C16083a373fB9Fe4FAb449' -const DAO_FEE_PERCENTAGE = 0 - -module.exports = async function (deployer, network, accounts) { - let config = read(); - - const signatureValidatorLib = await SignatureValidator.at( - config[network]["SignatureValidator"].address - ); - await deployer.link(signatureValidatorLib, LiquidityBridgeContractV2); - - await deploy("QuotesV2", network, async (state) => { - await deployer.deploy(QuotesV2); - await deployer.link(QuotesV2, LiquidityBridgeContractV2); - const response = await QuotesV2.deployed(); - state.address = response.address; - console.log("QuotesV2 deployed at:", response.address); - }); - - config = read(); - const quotesV2Lib = await QuotesV2.at( - config[network]["QuotesV2"].address - ); - await deployer.link(quotesV2Lib, LiquidityBridgeContractV2); - - const btcUtilsLib = await BtcUtils.at( - config[network]["BtcUtils"].address - ); - await deployer.link(btcUtilsLib, LiquidityBridgeContractV2); - - const existing = config[network]["LiquidityBridgeContract"]; - - console.log('Upgrading contract ', existing.address) - const response = await upgradeProxy( - existing.address, - LiquidityBridgeContractV2, - { deployer, unsafeAllowLinkedLibraries: true } - ); - - console.log("Upgraded", response.address); -}; diff --git a/package-lock.json b/package-lock.json index 26b0456..ab33710 100644 --- a/package-lock.json +++ b/package-lock.json @@ -11,235 +11,98 @@ "dependencies": { "@openzeppelin/contracts": "^4.8.0", "@openzeppelin/contracts-upgradeable": "^4.8.2", - "@rsksmart/btc-transaction-solidity-helper": "^0.2.1", - "@truffle/hdwallet-provider": "^2.1.3", - "bech32": "^2.0.0", - "chai": "^4.3.4", - "chai-bn": "^0.3.0", - "truffle-assertions": "^0.9.2", - "truffle-contract-size": "^2.0.1" + "@rsksmart/btc-transaction-solidity-helper": "^0.2.1" }, "devDependencies": { + "@eslint/js": "^9.16.0", "@mempool/mempool.js": "^2.3.0", - "@openzeppelin/truffle-upgrades": "^1.17.1", + "@nomicfoundation/hardhat-ethers": "^3.0.8", + "@nomicfoundation/hardhat-toolbox": "^5.0.0", + "@openzeppelin/hardhat-upgrades": "^3.6.0", "@rsksmart/pmt-builder": "^3.0.0", + "bech32": "^2.0.0", "bitcoinjs-lib": "^6.0.1", + "bs58": "^6.0.0", "bs58check": "^3.0.1", "dotenv": "^16.3.1", - "prettier": "^2.4.1", + "eslint": "^9.16.0", + "ethers": "^6.13.4", + "globals": "^15.13.0", + "hardhat": "^2.22.17", + "hardhat-contract-sizer": "^2.10.0", + "prettier": "2.8.8", "prettier-plugin-solidity": "^1.0.0-beta.18", - "solc": "^0.8.3", "solhint": "^3.4.1", - "solidity-coverage": "^0.8.2" - } - }, - "node_modules/@ampproject/remapping": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", - "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", - "peer": true, - "dependencies": { - "@jridgewell/gen-mapping": "^0.1.0", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "engines": { - "node": ">=6.0.0" + "typescript-eslint": "^8.18.0" } }, - "node_modules/@apollo/protobufjs": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/@apollo/protobufjs/-/protobufjs-1.2.7.tgz", - "integrity": "sha512-Lahx5zntHPZia35myYDBRuF58tlwPskwHc5CWBZC/4bMKB6siTBWwtMrkqXcsNwQiFSzSx5hKdRPUmemrEp3Gg==", - "dev": true, - "hasInstallScript": true, - "optional": true, - "peer": 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.0", - "long": "^4.0.0" - }, - "bin": { - "apollo-pbjs": "bin/pbjs", - "apollo-pbts": "bin/pbts" - } + "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 }, - "node_modules/@apollo/usage-reporting-protobuf": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@apollo/usage-reporting-protobuf/-/usage-reporting-protobuf-4.1.0.tgz", - "integrity": "sha512-hXouMuw5pQVkzi8dgMybmr6Y11+eRmMQVoB5TF0HyTwAg9SOq/v3OCuiYqcVUKdBcskU9Msp+XvjAk0GKpWCwQ==", + "node_modules/@aws-crypto/sha256-js": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-js/-/sha256-js-1.2.2.tgz", + "integrity": "sha512-Nr1QJIbW/afYYGzYvrF70LtaHrIRtd4TNAglX8BvlfxJLZ45SAmueIKYl5tWoNBPzp65ymXGFK0Bb1vZUpuc9g==", "dev": true, - "optional": true, - "peer": true, "dependencies": { - "@apollo/protobufjs": "1.2.7" - } - }, - "node_modules/@apollo/utils.dropunuseddefinitions": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@apollo/utils.dropunuseddefinitions/-/utils.dropunuseddefinitions-1.1.0.tgz", - "integrity": "sha512-jU1XjMr6ec9pPoL+BFWzEPW7VHHulVdGKMkPAMiCigpVIT11VmCbnij0bWob8uS3ODJ65tZLYKAh/55vLw2rbg==", - "dev": true, - "optional": true, - "peer": true, - "engines": { - "node": ">=12.13.0" - }, - "peerDependencies": { - "graphql": "14.x || 15.x || 16.x" + "@aws-crypto/util": "^1.2.2", + "@aws-sdk/types": "^3.1.0", + "tslib": "^1.11.1" } }, - "node_modules/@apollo/utils.keyvaluecache": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@apollo/utils.keyvaluecache/-/utils.keyvaluecache-1.0.2.tgz", - "integrity": "sha512-p7PVdLPMnPzmXSQVEsy27cYEjVON+SH/Wb7COyW3rQN8+wJgT1nv9jZouYtztWW8ZgTkii5T6tC9qfoDREd4mg==", + "node_modules/@aws-crypto/util": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-1.2.2.tgz", + "integrity": "sha512-H8PjG5WJ4wz0UXAFXeJjWCW1vkvIJ3qUUD+rGRwJ2/hj+xT58Qle2MTql/2MGzkU+1JLAFuR6aJpLAjHwhmwwg==", "dev": true, - "optional": true, - "peer": true, "dependencies": { - "@apollo/utils.logger": "^1.0.0", - "lru-cache": "7.10.1 - 7.13.1" - } - }, - "node_modules/@apollo/utils.keyvaluecache/node_modules/lru-cache": { - "version": "7.13.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.13.1.tgz", - "integrity": "sha512-CHqbAq7NFlW3RSnoWXLJBxCWaZVBrfa9UEHId2M3AW8iEBurbqduNexEUCGc3SHc6iCYXNJCDi903LajSVAEPQ==", - "dev": true, - "optional": true, - "peer": true, - "engines": { - "node": ">=12" - } - }, - "node_modules/@apollo/utils.logger": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@apollo/utils.logger/-/utils.logger-1.0.1.tgz", - "integrity": "sha512-XdlzoY7fYNK4OIcvMD2G94RoFZbzTQaNP0jozmqqMudmaGo2I/2Jx71xlDJ801mWA/mbYRihyaw6KJii7k5RVA==", - "dev": true, - "optional": true, - "peer": true - }, - "node_modules/@apollo/utils.printwithreducedwhitespace": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@apollo/utils.printwithreducedwhitespace/-/utils.printwithreducedwhitespace-1.1.0.tgz", - "integrity": "sha512-GfFSkAv3n1toDZ4V6u2d7L4xMwLA+lv+6hqXicMN9KELSJ9yy9RzuEXaX73c/Ry+GzRsBy/fdSUGayGqdHfT2Q==", - "dev": true, - "optional": true, - "peer": true, - "engines": { - "node": ">=12.13.0" - }, - "peerDependencies": { - "graphql": "14.x || 15.x || 16.x" - } - }, - "node_modules/@apollo/utils.removealiases": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@apollo/utils.removealiases/-/utils.removealiases-1.0.0.tgz", - "integrity": "sha512-6cM8sEOJW2LaGjL/0vHV0GtRaSekrPQR4DiywaApQlL9EdROASZU5PsQibe2MWeZCOhNrPRuHh4wDMwPsWTn8A==", - "dev": true, - "optional": true, - "peer": true, - "engines": { - "node": ">=12.13.0" - }, - "peerDependencies": { - "graphql": "14.x || 15.x || 16.x" + "@aws-sdk/types": "^3.1.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" } }, - "node_modules/@apollo/utils.sortast": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@apollo/utils.sortast/-/utils.sortast-1.1.0.tgz", - "integrity": "sha512-VPlTsmUnOwzPK5yGZENN069y6uUHgeiSlpEhRnLFYwYNoJHsuJq2vXVwIaSmts015WTPa2fpz1inkLYByeuRQA==", + "node_modules/@aws-sdk/types": { + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.696.0.tgz", + "integrity": "sha512-9rTvUJIAj5d3//U5FDPWGJ1nFJLuWb30vugGOrWk7aNZ6y9tuA3PI7Cc9dP8WEXKVyK1vuuk8rSFP2iqXnlgrw==", "dev": true, - "optional": true, - "peer": true, "dependencies": { - "lodash.sortby": "^4.7.0" + "@smithy/types": "^3.7.1", + "tslib": "^2.6.2" }, "engines": { - "node": ">=12.13.0" - }, - "peerDependencies": { - "graphql": "14.x || 15.x || 16.x" + "node": ">=16.0.0" } }, - "node_modules/@apollo/utils.stripsensitiveliterals": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@apollo/utils.stripsensitiveliterals/-/utils.stripsensitiveliterals-1.2.0.tgz", - "integrity": "sha512-E41rDUzkz/cdikM5147d8nfCFVKovXxKBcjvLEQ7bjZm/cg9zEcXvS6vFY8ugTubI3fn6zoqo0CyU8zT+BGP9w==", - "dev": true, - "optional": true, - "peer": true, - "engines": { - "node": ">=12.13.0" - }, - "peerDependencies": { - "graphql": "14.x || 15.x || 16.x" - } + "node_modules/@aws-sdk/types/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/@apollo/utils.usagereporting": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@apollo/utils.usagereporting/-/utils.usagereporting-1.0.1.tgz", - "integrity": "sha512-6dk+0hZlnDbahDBB2mP/PZ5ybrtCJdLMbeNJD+TJpKyZmSY6bA3SjI8Cr2EM9QA+AdziywuWg+SgbWUF3/zQqQ==", + "node_modules/@aws-sdk/util-utf8-browser": { + "version": "3.259.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-utf8-browser/-/util-utf8-browser-3.259.0.tgz", + "integrity": "sha512-UvFa/vR+e19XookZF8RzFZBrw2EUkQWxiBW0yYQAhvk3C+QVGl0H3ouca8LDBlBfQKXwmW3huo/59H8rwb1wJw==", "dev": true, - "optional": true, - "peer": true, "dependencies": { - "@apollo/usage-reporting-protobuf": "^4.0.0", - "@apollo/utils.dropunuseddefinitions": "^1.1.0", - "@apollo/utils.printwithreducedwhitespace": "^1.1.0", - "@apollo/utils.removealiases": "1.0.0", - "@apollo/utils.sortast": "^1.1.0", - "@apollo/utils.stripsensitiveliterals": "^1.2.0" - }, - "engines": { - "node": ">=12.13.0" - }, - "peerDependencies": { - "graphql": "14.x || 15.x || 16.x" - } - }, - "node_modules/@apollographql/apollo-tools": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/@apollographql/apollo-tools/-/apollo-tools-0.5.4.tgz", - "integrity": "sha512-shM3q7rUbNyXVVRkQJQseXv6bnYM3BUma/eZhwXR4xsuM+bqWnJKvW7SAfRjP7LuSCocrexa5AXhjjawNHrIlw==", - "dev": true, - "optional": true, - "peer": true, - "engines": { - "node": ">=8", - "npm": ">=6" - }, - "peerDependencies": { - "graphql": "^14.2.1 || ^15.0.0 || ^16.0.0" + "tslib": "^2.3.1" } }, - "node_modules/@apollographql/graphql-playground-html": { - "version": "1.6.29", - "resolved": "https://registry.npmjs.org/@apollographql/graphql-playground-html/-/graphql-playground-html-1.6.29.tgz", - "integrity": "sha512-xCcXpoz52rI4ksJSdOCxeOCn2DLocxwHf9dVT/Q90Pte1LX+LY+91SFtJF3KXVHH8kEin+g1KKCQPKBjZJfWNA==", - "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "xss": "^1.0.8" - } + "node_modules/@aws-sdk/util-utf8-browser/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/@babel/code-frame": { "version": "7.24.2", "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.2.tgz", "integrity": "sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==", + "dev": true, "dependencies": { "@babel/highlight": "^7.24.2", "picocolors": "^1.0.0" @@ -248,679 +111,240 @@ "node": ">=6.9.0" } }, - "node_modules/@babel/compat-data": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.20.5.tgz", - "integrity": "sha512-KZXo2t10+/jxmkhNXc7pZTqRvSOIvVv/+lJwHS+B2rErwOyjuVRh60yVpb7liQ1U5t7lLJ1bz+t8tSypUZdm0g==", + "node_modules/@babel/helper-validator-identifier": { + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.5.tgz", + "integrity": "sha512-3q93SSKX2TWCG30M2G2kwaKeTYgEUp5Snjuj8qm729SObL6nbtUldAi37qbxkD5gg3xnBio+f9nqpSepGZMvxA==", + "dev": true, "engines": { "node": ">=6.9.0" } }, - "node_modules/@babel/core": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.20.5.tgz", - "integrity": "sha512-UdOWmk4pNWTm/4DlPUl/Pt4Gz4rcEMb7CY0Y3eJl5Yz1vI8ZJGmHWaVE55LoxRjdpx0z259GE9U5STA9atUinQ==", - "peer": true, + "node_modules/@babel/highlight": { + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.5.tgz", + "integrity": "sha512-8lLmua6AVh/8SLJRRVD6V8p73Hir9w5mJrhE+IPpILG31KKlI9iz5zmBYKcWPS59qSfgP9RaSBQSHHE81WKuEw==", + "dev": true, "dependencies": { - "@ampproject/remapping": "^2.1.0", - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.20.5", - "@babel/helper-compilation-targets": "^7.20.0", - "@babel/helper-module-transforms": "^7.20.2", - "@babel/helpers": "^7.20.5", - "@babel/parser": "^7.20.5", - "@babel/template": "^7.18.10", - "@babel/traverse": "^7.20.5", - "@babel/types": "^7.20.5", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.2", - "json5": "^2.2.1", - "semver": "^6.3.0" + "@babel/helper-validator-identifier": "^7.24.5", + "chalk": "^2.4.2", + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" }, "engines": { "node": ">=6.9.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/babel" } }, - "node_modules/@babel/generator": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.5.tgz", - "integrity": "sha512-x32i4hEXvr+iI0NEoEfDKzlemF8AmtOP8CcrRaEcpzysWuoEb1KknpcvMsHKPONoKZiDuItklgWhB18xEhr9PA==", + "node_modules/@bytecodealliance/preview2-shim": { + "version": "0.17.0", + "resolved": "https://registry.npmjs.org/@bytecodealliance/preview2-shim/-/preview2-shim-0.17.0.tgz", + "integrity": "sha512-JorcEwe4ud0x5BS/Ar2aQWOQoFzjq/7jcnxYXCvSMh0oRm0dQXzOA+hqLDBnOMks1LLBA7dmiLLsEBl09Yd6iQ==", + "dev": true + }, + "node_modules/@colors/colors": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz", + "integrity": "sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==", + "dev": true, + "license": "MIT", + "optional": true, + "engines": { + "node": ">=0.1.90" + } + }, + "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==", + "dev": true, "peer": true, "dependencies": { - "@babel/types": "^7.24.5", - "@jridgewell/gen-mapping": "^0.3.5", - "@jridgewell/trace-mapping": "^0.3.25", - "jsesc": "^2.5.1" + "@jridgewell/trace-mapping": "0.3.9" }, "engines": { - "node": ">=6.9.0" + "node": ">=12" } }, - "node_modules/@babel/generator/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==", + "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==", + "dev": true, "peer": true, "dependencies": { - "@jridgewell/set-array": "^1.2.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.24" - }, - "engines": { - "node": ">=6.0.0" + "@jridgewell/resolve-uri": "^3.0.3", + "@jridgewell/sourcemap-codec": "^1.4.10" } }, - "node_modules/@babel/helper-compilation-targets": { - "version": "7.20.0", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.0.tgz", - "integrity": "sha512-0jp//vDGp9e8hZzBc6N/KwA5ZK3Wsm/pfm4CrY7vzegkVxc65SgSn6wYOnwHe9Js9HRQ1YTCKLGPzDtaS3RoLQ==", + "node_modules/@eslint-community/eslint-utils": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.1.tgz", + "integrity": "sha512-s3O3waFUrMV8P/XaF/+ZTp1X9XBZW1a4B97ZnjQF2KYWaFD2A8KyFBsrsfSjEmjn3RGWAIuvlneuZm3CUK3jbA==", + "dev": true, "dependencies": { - "@babel/compat-data": "^7.20.0", - "@babel/helper-validator-option": "^7.18.6", - "browserslist": "^4.21.3", - "semver": "^6.3.0" + "eslint-visitor-keys": "^3.4.3" }, "engines": { - "node": ">=6.9.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/helper-define-polyfill-provider": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.3.tgz", - "integrity": "sha512-z5aQKU4IzbqCC1XH0nAqfsFLMVSo22SBKUc0BxGrLkolTdPTructy0ToNnlO2zA4j9Q/7pjMZf0DSY+DSTYzww==", - "dependencies": { - "@babel/helper-compilation-targets": "^7.17.7", - "@babel/helper-plugin-utils": "^7.16.7", - "debug": "^4.1.1", - "lodash.debounce": "^4.0.8", - "resolve": "^1.14.2", - "semver": "^6.1.2" + "funding": { + "url": "https://opencollective.com/eslint" }, "peerDependencies": { - "@babel/core": "^7.4.0-0" + "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" } }, - "node_modules/@babel/helper-environment-visitor": { - "version": "7.22.20", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz", - "integrity": "sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==", - "peer": true, + "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": ">=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==", - "peer": true, - "dependencies": { - "@babel/template": "^7.22.15", - "@babel/types": "^7.23.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, - "engines": { - "node": ">=6.9.0" + "funding": { + "url": "https://opencollective.com/eslint" } }, - "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==", - "peer": true, - "dependencies": { - "@babel/types": "^7.22.5" - }, + "node_modules/@eslint-community/regexpp": { + "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": ">=6.9.0" + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" } }, - "node_modules/@babel/helper-module-imports": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz", - "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==", + "node_modules/@eslint/config-array": { + "version": "0.19.1", + "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.19.1.tgz", + "integrity": "sha512-fo6Mtm5mWyKjA/Chy1BYTdn5mGJoDNjC7C64ug20ADsRDGrA85bN3uK3MaKbeRkRuuIEAR5N33Jr1pbm411/PA==", + "dev": true, "dependencies": { - "@babel/types": "^7.18.6" + "@eslint/object-schema": "^2.1.5", + "debug": "^4.3.1", + "minimatch": "^3.1.2" }, "engines": { - "node": ">=6.9.0" + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" } }, - "node_modules/@babel/helper-module-transforms": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.20.2.tgz", - "integrity": "sha512-zvBKyJXRbmK07XhMuujYoJ48B5yvvmM6+wcpv6Ivj4Yg6qO7NOZOSnvZN9CRl1zz1Z4cKf8YejmCMh8clOoOeA==", - "peer": true, + "node_modules/@eslint/core": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.9.1.tgz", + "integrity": "sha512-GuUdqkyyzQI5RMIWkHhvTWLCyLo1jNK3vzkSyaExH5kHPDHcuL2VOpHjmMY+y3+NC69qAKToBqldTBgYeLSr9Q==", + "dev": true, "dependencies": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-simple-access": "^7.20.2", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/helper-validator-identifier": "^7.19.1", - "@babel/template": "^7.18.10", - "@babel/traverse": "^7.20.1", - "@babel/types": "^7.20.2" + "@types/json-schema": "^7.0.15" }, "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-plugin-utils": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz", - "integrity": "sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ==", - "engines": { - "node": ">=6.9.0" + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" } }, - "node_modules/@babel/helper-simple-access": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz", - "integrity": "sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA==", - "peer": true, + "node_modules/@eslint/eslintrc": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.2.0.tgz", + "integrity": "sha512-grOjVNN8P3hjJn/eIETF1wwd12DdnwFDoyceUJLYYdkpbwq3nLi+4fqrTAONx7XDALqlL220wC/RHSC/QTI/0w==", + "dev": true, "dependencies": { - "@babel/types": "^7.20.2" + "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": ">=6.9.0" - } - }, - "node_modules/@babel/helper-split-export-declaration": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.5.tgz", - "integrity": "sha512-5CHncttXohrHk8GWOFCcCl4oRD9fKosWlIRgWm4ql9VYioKm52Mk2xsmoohvm7f3JoiLSM5ZgJuRaf5QZZYd3Q==", - "peer": true, - "dependencies": { - "@babel/types": "^7.24.5" + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-string-parser": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", - "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-validator-identifier": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.5.tgz", - "integrity": "sha512-3q93SSKX2TWCG30M2G2kwaKeTYgEUp5Snjuj8qm729SObL6nbtUldAi37qbxkD5gg3xnBio+f9nqpSepGZMvxA==", - "engines": { - "node": ">=6.9.0" + "funding": { + "url": "https://opencollective.com/eslint" } }, - "node_modules/@babel/helper-validator-option": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz", - "integrity": "sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw==", + "node_modules/@eslint/eslintrc/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": ">=6.9.0" - } - }, - "node_modules/@babel/helpers": { - "version": "7.20.6", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.20.6.tgz", - "integrity": "sha512-Pf/OjgfgFRW5bApskEz5pvidpim7tEDPlFtKcNRXWmfHGn9IEI2W2flqRQXTFb7gIPTyK++N6rVHuwKut4XK6w==", - "peer": true, - "dependencies": { - "@babel/template": "^7.18.10", - "@babel/traverse": "^7.20.5", - "@babel/types": "^7.20.5" + "node": ">=18" }, - "engines": { - "node": ">=6.9.0" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@babel/highlight": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.5.tgz", - "integrity": "sha512-8lLmua6AVh/8SLJRRVD6V8p73Hir9w5mJrhE+IPpILG31KKlI9iz5zmBYKcWPS59qSfgP9RaSBQSHHE81WKuEw==", - "dependencies": { - "@babel/helper-validator-identifier": "^7.24.5", - "chalk": "^2.4.2", - "js-tokens": "^4.0.0", - "picocolors": "^1.0.0" - }, + "node_modules/@eslint/js": { + "version": "9.16.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.16.0.tgz", + "integrity": "sha512-tw2HxzQkrbeuvyj1tG2Yqq+0H9wGoI2IMk4EOsQeX+vmd75FtJAzf+gTA69WF+baUKRYQ3x2kbLE08js5OsTVg==", + "dev": true, "engines": { - "node": ">=6.9.0" + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" } }, - "node_modules/@babel/parser": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.5.tgz", - "integrity": "sha512-EOv5IK8arwh3LI47dz1b0tKUb/1uhHAnHJOrjgtQMIpu1uXd9mlFrJg9IUgGUgZ41Ch0K8REPTYpO7B76b4vJg==", - "peer": true, - "bin": { - "parser": "bin/babel-parser.js" - }, + "node_modules/@eslint/object-schema": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.5.tgz", + "integrity": "sha512-o0bhxnL89h5Bae5T318nFoFzGy+YE5i/gGkoPAgkmTVdRKTiv3p8JHevPiPaMwoloKfEiiaHlawCqaZMqRm+XQ==", + "dev": true, "engines": { - "node": ">=6.0.0" + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" } }, - "node_modules/@babel/plugin-transform-runtime": { - "version": "7.19.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.19.6.tgz", - "integrity": "sha512-PRH37lz4JU156lYFW1p8OxE5i7d6Sl/zV58ooyr+q1J1lnQPyg5tIiXlIwNVhJaY4W3TmOtdc8jqdXQcB1v5Yw==", + "node_modules/@eslint/plugin-kit": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.2.4.tgz", + "integrity": "sha512-zSkKow6H5Kdm0ZUQUB2kV5JIXqoG0+uH5YADhaEHswm664N9Db8dXSi0nMJpacpMf+MyyglF1vnZohpEg5yUtg==", + "dev": true, "dependencies": { - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-plugin-utils": "^7.19.0", - "babel-plugin-polyfill-corejs2": "^0.3.3", - "babel-plugin-polyfill-corejs3": "^0.6.0", - "babel-plugin-polyfill-regenerator": "^0.4.1", - "semver": "^6.3.0" + "levn": "^0.4.1" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" } }, - "node_modules/@babel/runtime": { - "version": "7.20.6", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.20.6.tgz", - "integrity": "sha512-Q+8MqP7TiHMWzSfwiJwXCjyf4GYA4Dgw3emg/7xmwsdLJOZUp+nMqcOwOzzYheuM1rhDu8FSj2l0aoMygEuXuA==", + "node_modules/@eslint/plugin-kit/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": { - "regenerator-runtime": "^0.13.11" + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" }, "engines": { - "node": ">=6.9.0" + "node": ">= 0.8.0" } }, - "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==", - "peer": true, - "dependencies": { - "@babel/code-frame": "^7.23.5", - "@babel/parser": "^7.24.0", - "@babel/types": "^7.24.0" - }, + "node_modules/@eslint/plugin-kit/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, "engines": { - "node": ">=6.9.0" + "node": ">= 0.8.0" } }, - "node_modules/@babel/traverse": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.5.tgz", - "integrity": "sha512-7aaBLeDQ4zYcUFDUD41lJc1fG8+5IU9DaNSJAgal866FGvmD5EbWQgnEC6kO1gGLsX0esNkfnJSndbTXA3r7UA==", - "peer": true, + "node_modules/@eslint/plugin-kit/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": { - "@babel/code-frame": "^7.24.2", - "@babel/generator": "^7.24.5", - "@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.24.5", - "@babel/parser": "^7.24.5", - "@babel/types": "^7.24.5", - "debug": "^4.3.1", - "globals": "^11.1.0" + "prelude-ls": "^1.2.1" }, "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/types": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.5.tgz", - "integrity": "sha512-6mQNsaLeXTw0nxYUYu+NSa4Hx4BlF1x1x8/PMFbiR+GBSr+2DkECc69b8hgy2frEodNcvPffeH8YfWd3LI6jhQ==", - "dependencies": { - "@babel/helper-string-parser": "^7.24.1", - "@babel/helper-validator-identifier": "^7.24.5", - "to-fast-properties": "^2.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@ensdomains/address-encoder": { - "version": "0.1.9", - "resolved": "https://registry.npmjs.org/@ensdomains/address-encoder/-/address-encoder-0.1.9.tgz", - "integrity": "sha512-E2d2gP4uxJQnDu2Kfg1tHNspefzbLT8Tyjrm5sEuim32UkU2sm5xL4VXtgc2X33fmPEw9+jUMpGs4veMbf+PYg==", - "dev": true, - "dependencies": { - "bech32": "^1.1.3", - "blakejs": "^1.1.0", - "bn.js": "^4.11.8", - "bs58": "^4.0.1", - "crypto-addr-codec": "^0.1.7", - "nano-base32": "^1.0.1", - "ripemd160": "^2.0.2" - } - }, - "node_modules/@ensdomains/address-encoder/node_modules/bech32": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/bech32/-/bech32-1.1.4.tgz", - "integrity": "sha512-s0IrSOzLlbvX7yp4WBfPITzpAU8sqQcpsmwXDiKwrG4r491vwCO/XpejasRNl0piBMe/DvP4Tz0mIS/X1DPJBQ==", - "dev": true - }, - "node_modules/@ensdomains/address-encoder/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/@ensdomains/ens": { - "version": "0.4.5", - "resolved": "https://registry.npmjs.org/@ensdomains/ens/-/ens-0.4.5.tgz", - "integrity": "sha512-JSvpj1iNMFjK6K+uVl4unqMoa9rf5jopb8cya5UGBWz23Nw8hSNT7efgUx4BTlAPAgpNlEioUfeTyQ6J9ZvTVw==", - "deprecated": "Please use @ensdomains/ens-contracts", - "dev": true, - "dependencies": { - "bluebird": "^3.5.2", - "eth-ens-namehash": "^2.0.8", - "solc": "^0.4.20", - "testrpc": "0.0.1", - "web3-utils": "^1.0.0-beta.31" - } - }, - "node_modules/@ensdomains/ens/node_modules/ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/@ensdomains/ens/node_modules/camelcase": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", - "integrity": "sha512-4nhGqUkc4BqbBBB4Q6zLuD7lzzrHYrjKGeYaEji/3tFR5VdJu9v+LilhGIVe8wxEJPPOeWo7eg8dwY13TZ1BNg==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/@ensdomains/ens/node_modules/cliui": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", - "integrity": "sha512-0yayqDxWQbqk3ojkYqUKqaAQ6AfNKeKWRNA8kR0WXzAsdHpP4BIaOmMAG87JGuO6qcobyW4GjxHd9PmhEd+T9w==", - "dev": true, - "dependencies": { - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wrap-ansi": "^2.0.0" - } - }, - "node_modules/@ensdomains/ens/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, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/@ensdomains/ens/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/@ensdomains/ens/node_modules/get-caller-file": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", - "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", - "dev": true - }, - "node_modules/@ensdomains/ens/node_modules/is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha512-1pqUqRjkhPJ9miNq9SwMfdvi6lBJcd6eFxvfaivQhaH3SgisfiuudvFntdKOmxuee/77l+FPjKrQjWvmPjWrRw==", - "dev": true, - "dependencies": { - "number-is-nan": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/@ensdomains/ens/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/@ensdomains/ens/node_modules/require-from-string": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-1.2.1.tgz", - "integrity": "sha512-H7AkJWMobeskkttHyhTVtS0fxpFLjxhbfMa6Bk3wimP7sdPRGL3EyCg3sAQenFfAe+xQ+oAc85Nmtvq0ROM83Q==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/@ensdomains/ens/node_modules/require-main-filename": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz", - "integrity": "sha512-IqSUtOVP4ksd1C/ej5zeEh/BIP2ajqpn8c5x+q99gvcIG/Qf0cud5raVnE/Dwd0ua9TXYDoDc0RE5hBSdz22Ug==", - "dev": true - }, - "node_modules/@ensdomains/ens/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/@ensdomains/ens/node_modules/solc": { - "version": "0.4.26", - "resolved": "https://registry.npmjs.org/solc/-/solc-0.4.26.tgz", - "integrity": "sha512-o+c6FpkiHd+HPjmjEVpQgH7fqZ14tJpXhho+/bQXlXbliLIS/xjXb42Vxh+qQY1WCSTMQ0+a5vR9vi0MfhU6mA==", - "dev": true, - "dependencies": { - "fs-extra": "^0.30.0", - "memorystream": "^0.3.1", - "require-from-string": "^1.1.0", - "semver": "^5.3.0", - "yargs": "^4.7.1" - }, - "bin": { - "solcjs": "solcjs" - } - }, - "node_modules/@ensdomains/ens/node_modules/string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha512-0XsVpQLnVCXHJfyEs8tC0zpTVIr5PKKsQtkT29IwupnPTjtPmQ3xT/4yCREF9hYkV/3M3kzcUTSAZT6a6h81tw==", - "dev": true, - "dependencies": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/@ensdomains/ens/node_modules/strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", - "dev": true, - "dependencies": { - "ansi-regex": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/@ensdomains/ens/node_modules/which-module": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-1.0.0.tgz", - "integrity": "sha512-F6+WgncZi/mJDrammbTuHe1q0R5hOXv/mBaiNA2TCNT/LTHusX0V+CJnj9XT8ki5ln2UZyyddDgHfCzyrOH7MQ==", - "dev": true - }, - "node_modules/@ensdomains/ens/node_modules/wrap-ansi": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", - "integrity": "sha512-vAaEaDM946gbNpH5pLVNR+vX2ht6n0Bt3GXwVB1AuAqZosOvHNF3P7wDnh8KLkSqgUh0uh77le7Owgoz+Z9XBw==", - "dev": true, - "dependencies": { - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/@ensdomains/ens/node_modules/y18n": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.2.tgz", - "integrity": "sha512-uGZHXkHnhF0XeeAPgnKfPv1bgKAYyVvmNL1xlKsPYZPaIHxGti2hHqvOCQv71XMsLxu1QjergkqogUnms5D3YQ==", - "dev": true - }, - "node_modules/@ensdomains/ens/node_modules/yargs": { - "version": "4.8.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-4.8.1.tgz", - "integrity": "sha512-LqodLrnIDM3IFT+Hf/5sxBnEGECrfdC1uIbgZeJmESCSo4HoCAaKEus8MylXHAkdacGc0ye+Qa+dpkuom8uVYA==", - "dev": true, - "dependencies": { - "cliui": "^3.2.0", - "decamelize": "^1.1.1", - "get-caller-file": "^1.0.1", - "lodash.assign": "^4.0.3", - "os-locale": "^1.4.0", - "read-pkg-up": "^1.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^1.0.1", - "set-blocking": "^2.0.0", - "string-width": "^1.0.1", - "which-module": "^1.0.0", - "window-size": "^0.2.0", - "y18n": "^3.2.1", - "yargs-parser": "^2.4.1" - } - }, - "node_modules/@ensdomains/ens/node_modules/yargs-parser": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-2.4.1.tgz", - "integrity": "sha512-9pIKIJhnI5tonzG6OnCFlz/yln8xHYcGl+pn3xR0Vzff0vzN1PbNRaelgfgRUwZ3s4i3jvxT9WhmUGL4whnasA==", - "dev": true, - "dependencies": { - "camelcase": "^3.0.0", - "lodash.assign": "^4.0.6" - } - }, - "node_modules/@ensdomains/ensjs": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@ensdomains/ensjs/-/ensjs-2.1.0.tgz", - "integrity": "sha512-GRbGPT8Z/OJMDuxs75U/jUNEC0tbL0aj7/L/QQznGYKm/tiasp+ndLOaoULy9kKJFC0TBByqfFliEHDgoLhyog==", - "dev": true, - "dependencies": { - "@babel/runtime": "^7.4.4", - "@ensdomains/address-encoder": "^0.1.7", - "@ensdomains/ens": "0.4.5", - "@ensdomains/resolver": "0.2.4", - "content-hash": "^2.5.2", - "eth-ens-namehash": "^2.0.8", - "ethers": "^5.0.13", - "js-sha3": "^0.8.0" - } - }, - "node_modules/@ensdomains/ensjs/node_modules/ethers": { - "version": "5.7.2", - "resolved": "https://registry.npmjs.org/ethers/-/ethers-5.7.2.tgz", - "integrity": "sha512-wswUsmWo1aOK8rR7DIKiWSw9DbLWe6x98Jrn8wcTflTVvaXhAMaB5zGAXy0GYQEQp9iO1iSHWVyARQm11zUtyg==", - "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" - } - ], - "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" - } - }, - "node_modules/@ensdomains/resolver": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/@ensdomains/resolver/-/resolver-0.2.4.tgz", - "integrity": "sha512-bvaTH34PMCbv6anRa9I/0zjLJgY4EuznbEMgbV77JBCQ9KNC46rzi0avuxpOfu+xDjPEtSFGqVEOr5GlUSGudA==", - "deprecated": "Please use @ensdomains/ens-contracts", - "dev": true - }, - "node_modules/@ethereumjs/common": { - "version": "2.6.5", - "resolved": "https://registry.npmjs.org/@ethereumjs/common/-/common-2.6.5.tgz", - "integrity": "sha512-lRyVQOeCDaIVtgfbowla32pzeDv2Obr8oR8Put5RdUBNRGr1VGPGQNGP6elWIpgK3YdpzqTOh4GyUGOureVeeA==", - "dependencies": { - "crc-32": "^1.2.0", - "ethereumjs-util": "^7.1.5" - } - }, - "node_modules/@ethereumjs/tx": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/@ethereumjs/tx/-/tx-3.5.2.tgz", - "integrity": "sha512-gQDNJWKrSDGu2w7w0PzVXVBNMzb7wwdDOmOqczmhNjqFxFuIbhVJDwiGEnxFNC2/b8ifcZzY7MLcluizohRzNw==", - "dependencies": { - "@ethereumjs/common": "^2.6.4", - "ethereumjs-util": "^7.1.5" + "node": ">= 0.8.0" } }, "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==", + "dev": true, "funding": [ { "type": "individual", @@ -947,6 +371,7 @@ "version": "5.7.0", "resolved": "https://registry.npmjs.org/@ethersproject/abstract-provider/-/abstract-provider-5.7.0.tgz", "integrity": "sha512-R41c9UkchKCpAqStMYUpdunjo3pkEvZC3FAwZn5S5MGbXoMQOHIdHItezTETxAO5bevtMApSyEhn9+CHcDsWBw==", + "dev": true, "funding": [ { "type": "individual", @@ -971,6 +396,7 @@ "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==", + "dev": true, "funding": [ { "type": "individual", @@ -993,6 +419,7 @@ "version": "5.7.0", "resolved": "https://registry.npmjs.org/@ethersproject/address/-/address-5.7.0.tgz", "integrity": "sha512-9wYhYt7aghVGo758POM5nqcOMaE168Q6aRLJZwUmiqSrAungkG74gSSeKEIR7ukixesdRZGPgVqme6vmxs1fkA==", + "dev": true, "funding": [ { "type": "individual", @@ -1015,6 +442,7 @@ "version": "5.7.0", "resolved": "https://registry.npmjs.org/@ethersproject/base64/-/base64-5.7.0.tgz", "integrity": "sha512-Dr8tcHt2mEbsZr/mwTPIQAf3Ai0Bks/7gTw9dSqk1mQvhW3XvRlmDJr/4n+wg1JmCl16NZue17CDh8xb/vZ0sQ==", + "dev": true, "funding": [ { "type": "individual", @@ -1044,6 +472,7 @@ "url": "https://www.buymeacoffee.com/ricmoo" } ], + "peer": true, "dependencies": { "@ethersproject/bytes": "^5.7.0", "@ethersproject/properties": "^5.7.0" @@ -1053,6 +482,7 @@ "version": "5.7.0", "resolved": "https://registry.npmjs.org/@ethersproject/bignumber/-/bignumber-5.7.0.tgz", "integrity": "sha512-n1CAdIHRWjSucQO3MC1zPSVgV/6dy/fjL9pMrPP9peL+QxEg9wOsVqwD4+818B6LUEtaXzVHQiuivzRoxPxUGw==", + "dev": true, "funding": [ { "type": "individual", @@ -1073,6 +503,7 @@ "version": "5.7.0", "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.7.0.tgz", "integrity": "sha512-nsbxwgFXWh9NyYWo+U8atvmMsSdKJprTcICAkvbBffT75qDocbuggBU0SJiVK2MuTrp0q+xvLkTnGMPK1+uA9A==", + "dev": true, "funding": [ { "type": "individual", @@ -1091,6 +522,7 @@ "version": "5.7.0", "resolved": "https://registry.npmjs.org/@ethersproject/constants/-/constants-5.7.0.tgz", "integrity": "sha512-DHI+y5dBNvkpYUMiRQyxRBYBefZkJfo70VUkUAsRjcPs47muV9evftfZ0PJVCXYbAiCgght0DtcF9srFQmIgWA==", + "dev": true, "funding": [ { "type": "individual", @@ -1120,6 +552,7 @@ "url": "https://www.buymeacoffee.com/ricmoo" } ], + "peer": true, "dependencies": { "@ethersproject/abi": "^5.7.0", "@ethersproject/abstract-provider": "^5.7.0", @@ -1137,6 +570,7 @@ "version": "5.7.0", "resolved": "https://registry.npmjs.org/@ethersproject/hash/-/hash-5.7.0.tgz", "integrity": "sha512-qX5WrQfnah1EFnO5zJv1v46a8HW0+E5xuBBDTwMFZLuVTx0tbU2kkx15NqdjxecrLGatQN9FGQKpb1FKdHCt+g==", + "dev": true, "funding": [ { "type": "individual", @@ -1174,6 +608,7 @@ "url": "https://www.buymeacoffee.com/ricmoo" } ], + "peer": true, "dependencies": { "@ethersproject/abstract-signer": "^5.7.0", "@ethersproject/basex": "^5.7.0", @@ -1204,6 +639,7 @@ "url": "https://www.buymeacoffee.com/ricmoo" } ], + "peer": true, "dependencies": { "@ethersproject/abstract-signer": "^5.7.0", "@ethersproject/address": "^5.7.0", @@ -1224,6 +660,7 @@ "version": "5.7.0", "resolved": "https://registry.npmjs.org/@ethersproject/keccak256/-/keccak256-5.7.0.tgz", "integrity": "sha512-2UcPboeL/iW+pSg6vZ6ydF8tCnv3Iu/8tUmLLzWWGzxWKFFqOBQFLo6uLUv6BDrLgCDfN28RJ/wtByx+jZ4KBg==", + "dev": true, "funding": [ { "type": "individual", @@ -1243,6 +680,7 @@ "version": "5.7.0", "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.7.0.tgz", "integrity": "sha512-0odtFdXu/XHtjQXJYA3u9G0G8btm0ND5Cu8M7i5vhEcE8/HmF4Lbdqanwyv4uQTr2tx6b7fQRmgLrsnpQlmnig==", + "dev": true, "funding": [ { "type": "individual", @@ -1258,6 +696,7 @@ "version": "5.7.1", "resolved": "https://registry.npmjs.org/@ethersproject/networks/-/networks-5.7.1.tgz", "integrity": "sha512-n/MufjFYv3yFcUyfhnXotyDlNdFb7onmkSy8aQERi2PjNcnWQ66xXxa3XlS8nCcA8aJKJjIIMNJTC7tu80GwpQ==", + "dev": true, "funding": [ { "type": "individual", @@ -1287,6 +726,7 @@ "url": "https://www.buymeacoffee.com/ricmoo" } ], + "peer": true, "dependencies": { "@ethersproject/bytes": "^5.7.0", "@ethersproject/sha2": "^5.7.0" @@ -1296,6 +736,7 @@ "version": "5.7.0", "resolved": "https://registry.npmjs.org/@ethersproject/properties/-/properties-5.7.0.tgz", "integrity": "sha512-J87jy8suntrAkIZtecpxEPxY//szqr1mlBaYlQ0r4RCaiD2hjheqF9s1LVE8vVuJCXisjIP+JgtK/Do54ej4Sw==", + "dev": true, "funding": [ { "type": "individual", @@ -1325,6 +766,7 @@ "url": "https://www.buymeacoffee.com/ricmoo" } ], + "peer": true, "dependencies": { "@ethersproject/abstract-provider": "^5.7.0", "@ethersproject/abstract-signer": "^5.7.0", @@ -1352,13 +794,15 @@ "version": "1.1.4", "resolved": "https://registry.npmjs.org/bech32/-/bech32-1.1.4.tgz", "integrity": "sha512-s0IrSOzLlbvX7yp4WBfPITzpAU8sqQcpsmwXDiKwrG4r491vwCO/XpejasRNl0piBMe/DvP4Tz0mIS/X1DPJBQ==", - "dev": true + "dev": true, + "peer": true }, "node_modules/@ethersproject/providers/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==", "dev": true, + "peer": true, "engines": { "node": ">=8.3.0" }, @@ -1390,6 +834,7 @@ "url": "https://www.buymeacoffee.com/ricmoo" } ], + "peer": true, "dependencies": { "@ethersproject/bytes": "^5.7.0", "@ethersproject/logger": "^5.7.0" @@ -1399,6 +844,7 @@ "version": "5.7.0", "resolved": "https://registry.npmjs.org/@ethersproject/rlp/-/rlp-5.7.0.tgz", "integrity": "sha512-rBxzX2vK8mVF7b0Tol44t5Tb8gomOHkj5guL+HhzQ1yBh/ydjGnpw6at+X6Iw0Kp3OzzzkcKp8N9r0W4kYSs9w==", + "dev": true, "funding": [ { "type": "individual", @@ -1429,6 +875,7 @@ "url": "https://www.buymeacoffee.com/ricmoo" } ], + "peer": true, "dependencies": { "@ethersproject/bytes": "^5.7.0", "@ethersproject/logger": "^5.7.0", @@ -1439,6 +886,7 @@ "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==", + "dev": true, "funding": [ { "type": "individual", @@ -1473,6 +921,7 @@ "url": "https://www.buymeacoffee.com/ricmoo" } ], + "peer": true, "dependencies": { "@ethersproject/bignumber": "^5.7.0", "@ethersproject/bytes": "^5.7.0", @@ -1486,6 +935,7 @@ "version": "5.7.0", "resolved": "https://registry.npmjs.org/@ethersproject/strings/-/strings-5.7.0.tgz", "integrity": "sha512-/9nu+lj0YswRNSH0NXYqrh8775XNyEdUQAuf3f+SmOrnVewcJ5SBNAjF7lpgehKi4abvNNXyf+HX86czCdJ8Mg==", + "dev": true, "funding": [ { "type": "individual", @@ -1506,6 +956,7 @@ "version": "5.7.0", "resolved": "https://registry.npmjs.org/@ethersproject/transactions/-/transactions-5.7.0.tgz", "integrity": "sha512-kmcNicCp1lp8qanMTC3RIikGgoJ80ztTyvtsFvCYpSCfkjhD0jZ2LOrnbcuxuToLIUYYf+4XwD1rP+B/erDIhQ==", + "dev": true, "funding": [ { "type": "individual", @@ -1543,6 +994,7 @@ "url": "https://www.buymeacoffee.com/ricmoo" } ], + "peer": true, "dependencies": { "@ethersproject/bignumber": "^5.7.0", "@ethersproject/constants": "^5.7.0", @@ -1564,6 +1016,7 @@ "url": "https://www.buymeacoffee.com/ricmoo" } ], + "peer": true, "dependencies": { "@ethersproject/abstract-provider": "^5.7.0", "@ethersproject/abstract-signer": "^5.7.0", @@ -1586,6 +1039,7 @@ "version": "5.7.1", "resolved": "https://registry.npmjs.org/@ethersproject/web/-/web-5.7.1.tgz", "integrity": "sha512-Gueu8lSvyjBWL4cYsWsjh6MtMwM0+H4HvqFPZfB6dV8ctbP9zFAO73VG1cMWae0FLPCtz0peKPpZY8/ugJJX2w==", + "dev": true, "funding": [ { "type": "individual", @@ -1619,6 +1073,7 @@ "url": "https://www.buymeacoffee.com/ricmoo" } ], + "peer": true, "dependencies": { "@ethersproject/bytes": "^5.7.0", "@ethersproject/hash": "^5.7.0", @@ -1632,261 +1087,76 @@ "resolved": "https://registry.npmjs.org/@fastify/busboy/-/busboy-2.1.1.tgz", "integrity": "sha512-vBZP4NlzfOlerQTnba4aqZoMhE/a9HY7HRqoOPaETQcSQuWEIyZMHGfVu6w9wGtGK5fED5qRs2DteVCjOH60sA==", "dev": true, - "peer": true, "engines": { "node": ">=14" } }, - "node_modules/@graphql-tools/batch-execute": { - "version": "8.5.1", - "resolved": "https://registry.npmjs.org/@graphql-tools/batch-execute/-/batch-execute-8.5.1.tgz", - "integrity": "sha512-hRVDduX0UDEneVyEWtc2nu5H2PxpfSfM/riUlgZvo/a/nG475uyehxR5cFGvTEPEQUKY3vGIlqvtRigzqTfCew==", + "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, - "optional": true, - "peer": true, - "dependencies": { - "@graphql-tools/utils": "8.9.0", - "dataloader": "2.1.0", - "tslib": "^2.4.0", - "value-or-promise": "1.0.11" - }, - "peerDependencies": { - "graphql": "^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0" + "engines": { + "node": ">=18.18.0" } }, - "node_modules/@graphql-tools/batch-execute/node_modules/tslib": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", - "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==", - "dev": true, - "optional": true, - "peer": true - }, - "node_modules/@graphql-tools/delegate": { - "version": "8.8.1", - "resolved": "https://registry.npmjs.org/@graphql-tools/delegate/-/delegate-8.8.1.tgz", - "integrity": "sha512-NDcg3GEQmdEHlnF7QS8b4lM1PSF+DKeFcIlLEfZFBvVq84791UtJcDj8734sIHLukmyuAxXMfA1qLd2l4lZqzA==", + "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, - "optional": true, - "peer": true, "dependencies": { - "@graphql-tools/batch-execute": "8.5.1", - "@graphql-tools/schema": "8.5.1", - "@graphql-tools/utils": "8.9.0", - "dataloader": "2.1.0", - "tslib": "~2.4.0", - "value-or-promise": "1.0.11" + "@humanfs/core": "^0.19.1", + "@humanwhocodes/retry": "^0.3.0" }, - "peerDependencies": { - "graphql": "^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0" + "engines": { + "node": ">=18.18.0" } }, - "node_modules/@graphql-tools/delegate/node_modules/tslib": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.1.tgz", - "integrity": "sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA==", - "dev": true, - "optional": true, - "peer": true - }, - "node_modules/@graphql-tools/merge": { - "version": "8.3.1", - "resolved": "https://registry.npmjs.org/@graphql-tools/merge/-/merge-8.3.1.tgz", - "integrity": "sha512-BMm99mqdNZbEYeTPK3it9r9S6rsZsQKtlqJsSBknAclXq2pGEfOxjcIZi+kBSkHZKPKCRrYDd5vY0+rUmIHVLg==", + "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, - "optional": true, - "peer": true, - "dependencies": { - "@graphql-tools/utils": "8.9.0", - "tslib": "^2.4.0" + "engines": { + "node": ">=18.18" }, - "peerDependencies": { - "graphql": "^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0" + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" } }, - "node_modules/@graphql-tools/merge/node_modules/tslib": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", - "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==", + "node_modules/@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", "dev": true, - "optional": true, - "peer": true - }, - "node_modules/@graphql-tools/mock": { - "version": "8.7.19", - "resolved": "https://registry.npmjs.org/@graphql-tools/mock/-/mock-8.7.19.tgz", - "integrity": "sha512-LT2boYM+Y1vGFEhzmC7xDFRL8RPG20FbNcuk2/hHGH0Kh8K1hkItvL89tul3Pl7N6xerOnDZ3c3fx7Ls5GuFxA==", - "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "@graphql-tools/schema": "9.0.17", - "@graphql-tools/utils": "9.2.1", - "fast-json-stable-stringify": "^2.1.0", - "tslib": "^2.4.0" - }, - "peerDependencies": { - "graphql": "^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0" - } - }, - "node_modules/@graphql-tools/mock/node_modules/@graphql-tools/merge": { - "version": "8.4.0", - "resolved": "https://registry.npmjs.org/@graphql-tools/merge/-/merge-8.4.0.tgz", - "integrity": "sha512-3XYCWe0d3I4F1azNj1CdShlbHfTIfiDgj00R9uvFH8tHKh7i1IWN3F7QQYovcHKhayaR6zPok3YYMESYQcBoaA==", - "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "@graphql-tools/utils": "9.2.1", - "tslib": "^2.4.0" - }, - "peerDependencies": { - "graphql": "^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0" - } - }, - "node_modules/@graphql-tools/mock/node_modules/@graphql-tools/schema": { - "version": "9.0.17", - "resolved": "https://registry.npmjs.org/@graphql-tools/schema/-/schema-9.0.17.tgz", - "integrity": "sha512-HVLq0ecbkuXhJlpZ50IHP5nlISqH2GbNgjBJhhRzHeXhfwlUOT4ISXGquWTmuq61K0xSaO0aCjMpxe4QYbKTng==", - "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "@graphql-tools/merge": "8.4.0", - "@graphql-tools/utils": "9.2.1", - "tslib": "^2.4.0", - "value-or-promise": "1.0.12" - }, - "peerDependencies": { - "graphql": "^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0" - } - }, - "node_modules/@graphql-tools/mock/node_modules/@graphql-tools/utils": { - "version": "9.2.1", - "resolved": "https://registry.npmjs.org/@graphql-tools/utils/-/utils-9.2.1.tgz", - "integrity": "sha512-WUw506Ql6xzmOORlriNrD6Ugx+HjVgYxt9KCXD9mHAak+eaXSwuGGPyE60hy9xaDEoXKBsG7SkG69ybitaVl6A==", - "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "@graphql-typed-document-node/core": "^3.1.1", - "tslib": "^2.4.0" - }, - "peerDependencies": { - "graphql": "^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0" - } - }, - "node_modules/@graphql-tools/mock/node_modules/tslib": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", - "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==", - "dev": true, - "optional": true, - "peer": true - }, - "node_modules/@graphql-tools/mock/node_modules/value-or-promise": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/value-or-promise/-/value-or-promise-1.0.12.tgz", - "integrity": "sha512-Z6Uz+TYwEqE7ZN50gwn+1LCVo9ZVrpxRPOhOLnncYkY1ZzOYtrX8Fwf/rFktZ8R5mJms6EZf5TqNOMeZmnPq9Q==", - "dev": true, - "optional": true, - "peer": true, "engines": { - "node": ">=12" - } - }, - "node_modules/@graphql-tools/schema": { - "version": "8.5.1", - "resolved": "https://registry.npmjs.org/@graphql-tools/schema/-/schema-8.5.1.tgz", - "integrity": "sha512-0Esilsh0P/qYcB5DKQpiKeQs/jevzIadNTaT0jeWklPMwNbT7yMX4EqZany7mbeRRlSRwMzNzL5olyFdffHBZg==", - "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "@graphql-tools/merge": "8.3.1", - "@graphql-tools/utils": "8.9.0", - "tslib": "^2.4.0", - "value-or-promise": "1.0.11" - }, - "peerDependencies": { - "graphql": "^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0" - } - }, - "node_modules/@graphql-tools/schema/node_modules/tslib": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", - "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==", - "dev": true, - "optional": true, - "peer": true - }, - "node_modules/@graphql-tools/utils": { - "version": "8.9.0", - "resolved": "https://registry.npmjs.org/@graphql-tools/utils/-/utils-8.9.0.tgz", - "integrity": "sha512-pjJIWH0XOVnYGXCqej8g/u/tsfV4LvLlj0eATKQu5zwnxd/TiTHq7Cg313qUPTFFHZ3PP5wJ15chYVtLDwaymg==", - "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "tslib": "^2.4.0" + "node": ">=12.22" }, - "peerDependencies": { - "graphql": "^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0" - } - }, - "node_modules/@graphql-tools/utils/node_modules/tslib": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", - "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==", - "dev": true, - "optional": true, - "peer": true - }, - "node_modules/@graphql-typed-document-node/core": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/@graphql-typed-document-node/core/-/core-3.1.2.tgz", - "integrity": "sha512-9anpBMM9mEgZN4wr2v8wHJI2/u5TnnggewRN6OlvXTTnuVyoY19X6rOv9XTqKRw6dcGKwZsBi8n0kDE2I5i4VA==", - "dev": true, - "optional": true, - "peer": true, - "peerDependencies": { - "graphql": "^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0" + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" } }, - "node_modules/@josephg/resolvable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@josephg/resolvable/-/resolvable-1.0.1.tgz", - "integrity": "sha512-CtzORUwWTTOTqfVtHaKRJ0I1kNQd1bpn3sUh8I3nJDVY+5/M/Oe1DnEWzPQvqq/xPIIkzzzIP7mfCoAjFRvDhg==", + "node_modules/@humanwhocodes/retry": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.4.1.tgz", + "integrity": "sha512-c7hNEllBlenFTHBky65mhq8WD2kbN9Q6gk0bTk8lSBvc554jpXSkST1iePudpt7+A/AQvuHs9EMqjHDXMY1lrA==", "dev": true, - "optional": true, - "peer": true - }, - "node_modules/@jridgewell/gen-mapping": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", - "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", - "peer": true, - "dependencies": { - "@jridgewell/set-array": "^1.0.0", - "@jridgewell/sourcemap-codec": "^1.4.10" - }, "engines": { - "node": ">=6.0.0" + "node": ">=18.18" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" } }, "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==", - "peer": 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, "peer": true, "engines": { "node": ">=6.0.0" @@ -1896,18 +1166,9 @@ "version": "1.4.14", "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", + "dev": true, "peer": true }, - "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.25", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", - "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", - "peer": true, - "dependencies": { - "@jridgewell/resolve-uri": "^3.1.0", - "@jridgewell/sourcemap-codec": "^1.4.14" - } - }, "node_modules/@mempool/mempool.js": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/@mempool/mempool.js/-/mempool.js-2.3.0.tgz", @@ -1918,15 +1179,6 @@ "ws": "8.3.0" } }, - "node_modules/@mempool/mempool.js/node_modules/axios": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.24.0.tgz", - "integrity": "sha512-Q6cWsys88HoPgAaFAVUb0WpPk0O8iTeisR9IMqy9G8AbO4NlpVknrnQS03zzF9PGAWgO3cgletO3VjV/P7VztA==", - "dev": true, - "dependencies": { - "follow-redirects": "^1.14.4" - } - }, "node_modules/@mempool/mempool.js/node_modules/ws": { "version": "8.3.0", "resolved": "https://registry.npmjs.org/ws/-/ws-8.3.0.tgz", @@ -1952,6 +1204,7 @@ "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", @@ -1967,19 +1220,40 @@ "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/@metamask/eth-sig-util/node_modules/base-x": { + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/base-x/-/base-x-3.0.10.tgz", + "integrity": "sha512-7d0s06rR9rYaIWHkpfLIFICM/tkSVdoPC9qYAQRpxn9DdKNWNsKC0uk++akckyLq16Tx2WIinnZ6WRriAt6njQ==", + "dev": true, + "dependencies": { + "safe-buffer": "^5.0.1" + } + }, "node_modules/@metamask/eth-sig-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==" + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true + }, + "node_modules/@metamask/eth-sig-util/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, + "dependencies": { + "base-x": "^3.0.2" + } }, "node_modules/@metamask/eth-sig-util/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, "dependencies": { "bs58": "^4.0.0", "create-hash": "^1.1.0", @@ -1990,6 +1264,7 @@ "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", @@ -2012,6 +1287,7 @@ "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", @@ -2022,15 +1298,35 @@ "rlp": "^2.2.3" } }, - "node_modules/@metamask/safe-event-emitter": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@metamask/safe-event-emitter/-/safe-event-emitter-2.0.0.tgz", - "integrity": "sha512-/kSXhY692qiV1MXu6EeOZvg5nECLclxNXcKCxJ3cXQgYuRymRHpdx/t7JXfsK+JLjwA1e1c1/SBrlQYpusC29Q==" + "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, + "dependencies": { + "@noble/hashes": "1.3.2" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/@noble/curves/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, + "engines": { + "node": ">= 16" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } }, "node_modules/@noble/hashes": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.1.2.tgz", "integrity": "sha512-KYRCASVTv6aeUi1tsF8/vpyR7zpfs3FUzy2Jqm+MU+LmUKhQ0y2FpfwqkCcxSg2ua4GALJd8k2R76WxwZGbQpA==", + "dev": true, "funding": [ { "type": "individual", @@ -2042,6 +1338,7 @@ "version": "1.6.3", "resolved": "https://registry.npmjs.org/@noble/secp256k1/-/secp256k1-1.6.3.tgz", "integrity": "sha512-T04e4iTurVy7I8Sw4+c5OSN9/RkPlo1uKxAomtxQNLq8j1uPAqnsqG1bqvY3Jv7c13gyr6dui0zmh/I3+f/JaQ==", + "dev": true, "funding": [ { "type": "individual", @@ -2084,42 +1381,165 @@ "node": ">= 8" } }, - "node_modules/@nomicfoundation/ethereumjs-block": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@nomicfoundation/ethereumjs-block/-/ethereumjs-block-4.0.0.tgz", - "integrity": "sha512-bk8uP8VuexLgyIZAHExH1QEovqx0Lzhc9Ntm63nCRKLHXIZkobaFaeCVwTESV7YkPKUk7NiK11s8ryed4CS9yA==", + "node_modules/@nomicfoundation/edr": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/@nomicfoundation/edr/-/edr-0.6.5.tgz", + "integrity": "sha512-tAqMslLP+/2b2sZP4qe9AuGxG3OkQ5gGgHE4isUuq6dUVjwCRPFhAOhpdFl+OjY5P3yEv3hmq9HjUGRa2VNjng==", + "dev": true, + "dependencies": { + "@nomicfoundation/edr-darwin-arm64": "0.6.5", + "@nomicfoundation/edr-darwin-x64": "0.6.5", + "@nomicfoundation/edr-linux-arm64-gnu": "0.6.5", + "@nomicfoundation/edr-linux-arm64-musl": "0.6.5", + "@nomicfoundation/edr-linux-x64-gnu": "0.6.5", + "@nomicfoundation/edr-linux-x64-musl": "0.6.5", + "@nomicfoundation/edr-win32-x64-msvc": "0.6.5" + }, + "engines": { + "node": ">= 18" + } + }, + "node_modules/@nomicfoundation/edr-darwin-arm64": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-darwin-arm64/-/edr-darwin-arm64-0.6.5.tgz", + "integrity": "sha512-A9zCCbbNxBpLgjS1kEJSpqxIvGGAX4cYbpDYCU2f3jVqOwaZ/NU761y1SvuCRVpOwhoCXqByN9b7HPpHi0L4hw==", + "dev": true, + "engines": { + "node": ">= 18" + } + }, + "node_modules/@nomicfoundation/edr-darwin-x64": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-darwin-x64/-/edr-darwin-x64-0.6.5.tgz", + "integrity": "sha512-x3zBY/v3R0modR5CzlL6qMfFMdgwd6oHrWpTkuuXnPFOX8SU31qq87/230f4szM+ukGK8Hi+mNq7Ro2VF4Fj+w==", + "dev": true, + "engines": { + "node": ">= 18" + } + }, + "node_modules/@nomicfoundation/edr-linux-arm64-gnu": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-linux-arm64-gnu/-/edr-linux-arm64-gnu-0.6.5.tgz", + "integrity": "sha512-HGpB8f1h8ogqPHTyUpyPRKZxUk2lu061g97dOQ/W4CxevI0s/qiw5DB3U3smLvSnBHKOzYS1jkxlMeGN01ky7A==", + "dev": true, + "engines": { + "node": ">= 18" + } + }, + "node_modules/@nomicfoundation/edr-linux-arm64-musl": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-linux-arm64-musl/-/edr-linux-arm64-musl-0.6.5.tgz", + "integrity": "sha512-ESvJM5Y9XC03fZg9KaQg3Hl+mbx7dsSkTIAndoJS7X2SyakpL9KZpOSYrDk135o8s9P9lYJdPOyiq+Sh+XoCbQ==", + "dev": true, + "engines": { + "node": ">= 18" + } + }, + "node_modules/@nomicfoundation/edr-linux-x64-gnu": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-linux-x64-gnu/-/edr-linux-x64-gnu-0.6.5.tgz", + "integrity": "sha512-HCM1usyAR1Ew6RYf5AkMYGvHBy64cPA5NMbaeY72r0mpKaH3txiMyydcHibByOGdQ8iFLWpyUdpl1egotw+Tgg==", + "dev": true, + "engines": { + "node": ">= 18" + } + }, + "node_modules/@nomicfoundation/edr-linux-x64-musl": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-linux-x64-musl/-/edr-linux-x64-musl-0.6.5.tgz", + "integrity": "sha512-nB2uFRyczhAvWUH7NjCsIO6rHnQrof3xcCe6Mpmnzfl2PYcGyxN7iO4ZMmRcQS7R1Y670VH6+8ZBiRn8k43m7A==", + "dev": true, + "engines": { + "node": ">= 18" + } + }, + "node_modules/@nomicfoundation/edr-win32-x64-msvc": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-win32-x64-msvc/-/edr-win32-x64-msvc-0.6.5.tgz", + "integrity": "sha512-B9QD/4DSSCFtWicO8A3BrsnitO1FPv7axB62wq5Q+qeJ50yJlTmyeGY3cw62gWItdvy2mh3fRM6L1LpnHiB77A==", + "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, - "peer": true, "dependencies": { - "@nomicfoundation/ethereumjs-common": "^3.0.0", - "@nomicfoundation/ethereumjs-rlp": "^4.0.0", - "@nomicfoundation/ethereumjs-trie": "^5.0.0", - "@nomicfoundation/ethereumjs-tx": "^4.0.0", - "@nomicfoundation/ethereumjs-util": "^8.0.0", + "@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": ">=14" + "node": ">=18" + }, + "peerDependencies": { + "c-kzg": "^2.1.2" + }, + "peerDependenciesMeta": { + "c-kzg": { + "optional": true + } + } + }, + "node_modules/@nomicfoundation/ethereumjs-tx/node_modules/base-x": { + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/base-x/-/base-x-3.0.10.tgz", + "integrity": "sha512-7d0s06rR9rYaIWHkpfLIFICM/tkSVdoPC9qYAQRpxn9DdKNWNsKC0uk++akckyLq16Tx2WIinnZ6WRriAt6njQ==", + "dev": true, + "dependencies": { + "safe-buffer": "^5.0.1" + } + }, + "node_modules/@nomicfoundation/ethereumjs-tx/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, + "dependencies": { + "base-x": "^3.0.2" } }, - "node_modules/@nomicfoundation/ethereumjs-block/node_modules/bs58check": { + "node_modules/@nomicfoundation/ethereumjs-tx/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, - "peer": true, "dependencies": { "bs58": "^4.0.0", "create-hash": "^1.1.0", "safe-buffer": "^5.1.2" } }, - "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==", "dev": true, - "peer": true, "dependencies": { "@types/pbkdf2": "^3.0.0", "@types/secp256k1": "^4.0.1", @@ -2138,48 +1558,61 @@ "setimmediate": "^1.0.5" } }, - "node_modules/@nomicfoundation/ethereumjs-blockchain": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/@nomicfoundation/ethereumjs-blockchain/-/ethereumjs-blockchain-6.0.0.tgz", - "integrity": "sha512-pLFEoea6MWd81QQYSReLlLfH7N9v7lH66JC/NMPN848ySPPQA5renWnE7wPByfQFzNrPBuDDRFFULMDmj1C0xw==", + "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, - "peer": true, "dependencies": { - "@nomicfoundation/ethereumjs-block": "^4.0.0", - "@nomicfoundation/ethereumjs-common": "^3.0.0", - "@nomicfoundation/ethereumjs-ethash": "^2.0.0", - "@nomicfoundation/ethereumjs-rlp": "^4.0.0", - "@nomicfoundation/ethereumjs-trie": "^5.0.0", - "@nomicfoundation/ethereumjs-util": "^8.0.0", - "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" + "@nomicfoundation/ethereumjs-rlp": "5.0.4", + "ethereum-cryptography": "0.1.3" }, "engines": { - "node": ">=14" + "node": ">=18" + }, + "peerDependencies": { + "c-kzg": "^2.1.2" + }, + "peerDependenciesMeta": { + "c-kzg": { + "optional": true + } + } + }, + "node_modules/@nomicfoundation/ethereumjs-util/node_modules/base-x": { + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/base-x/-/base-x-3.0.10.tgz", + "integrity": "sha512-7d0s06rR9rYaIWHkpfLIFICM/tkSVdoPC9qYAQRpxn9DdKNWNsKC0uk++akckyLq16Tx2WIinnZ6WRriAt6njQ==", + "dev": true, + "dependencies": { + "safe-buffer": "^5.0.1" } }, - "node_modules/@nomicfoundation/ethereumjs-blockchain/node_modules/bs58check": { + "node_modules/@nomicfoundation/ethereumjs-util/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, + "dependencies": { + "base-x": "^3.0.2" + } + }, + "node_modules/@nomicfoundation/ethereumjs-util/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, - "peer": true, "dependencies": { "bs58": "^4.0.0", "create-hash": "^1.1.0", "safe-buffer": "^5.1.2" } }, - "node_modules/@nomicfoundation/ethereumjs-blockchain/node_modules/ethereum-cryptography": { + "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, - "peer": true, "dependencies": { "@types/pbkdf2": "^3.0.0", "@types/secp256k1": "^4.0.1", @@ -2198,600 +1631,442 @@ "setimmediate": "^1.0.5" } }, - "node_modules/@nomicfoundation/ethereumjs-common": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@nomicfoundation/ethereumjs-common/-/ethereumjs-common-3.0.0.tgz", - "integrity": "sha512-WS7qSshQfxoZOpHG/XqlHEGRG1zmyjYrvmATvc4c62+gZXgre1ymYP8ZNgx/3FyZY0TWe9OjFlKOfLqmgOeYwA==", + "node_modules/@nomicfoundation/hardhat-chai-matchers": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/@nomicfoundation/hardhat-chai-matchers/-/hardhat-chai-matchers-2.0.8.tgz", + "integrity": "sha512-Z5PiCXH4xhNLASROlSUOADfhfpfhYO6D7Hn9xp8PddmHey0jq704cr6kfU8TRrQ4PUZbpfsZadPj+pCfZdjPIg==", "dev": true, "peer": true, "dependencies": { - "@nomicfoundation/ethereumjs-util": "^8.0.0", - "crc-32": "^1.2.0" - } + "@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.0", + "chai": "^4.2.0", + "ethers": "^6.1.0", + "hardhat": "^2.9.4" + } }, - "node_modules/@nomicfoundation/ethereumjs-ethash": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@nomicfoundation/ethereumjs-ethash/-/ethereumjs-ethash-2.0.0.tgz", - "integrity": "sha512-WpDvnRncfDUuXdsAXlI4lXbqUDOA+adYRQaEezIkxqDkc+LDyYDbd/xairmY98GnQzo1zIqsIL6GB5MoMSJDew==", + "node_modules/@nomicfoundation/hardhat-ethers": { + "version": "3.0.8", + "resolved": "https://registry.npmjs.org/@nomicfoundation/hardhat-ethers/-/hardhat-ethers-3.0.8.tgz", + "integrity": "sha512-zhOZ4hdRORls31DTOqg+GmEZM0ujly8GGIuRY7t7szEk2zW/arY1qDug/py8AEktT00v5K+b6RvbVog+va51IA==", "dev": true, - "peer": true, "dependencies": { - "@nomicfoundation/ethereumjs-block": "^4.0.0", - "@nomicfoundation/ethereumjs-rlp": "^4.0.0", - "@nomicfoundation/ethereumjs-util": "^8.0.0", - "abstract-level": "^1.0.3", - "bigint-crypto-utils": "^3.0.23", - "ethereum-cryptography": "0.1.3" + "debug": "^4.1.1", + "lodash.isequal": "^4.5.0" }, - "engines": { - "node": ">=14" + "peerDependencies": { + "ethers": "^6.1.0", + "hardhat": "^2.0.0" } }, - "node_modules/@nomicfoundation/ethereumjs-ethash/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/@nomicfoundation/hardhat-ignition": { + "version": "0.15.8", + "resolved": "https://registry.npmjs.org/@nomicfoundation/hardhat-ignition/-/hardhat-ignition-0.15.8.tgz", + "integrity": "sha512-TN8TFQokcd7VyqGfbXO+KS8Q4K/gmsOFlv8dPnt/N596AncgV2Igxh5C3O+KVez11PDHNqoj1JzcDzzNVHrIRw==", "dev": true, "peer": true, "dependencies": { - "bs58": "^4.0.0", - "create-hash": "^1.1.0", - "safe-buffer": "^5.1.2" + "@nomicfoundation/ignition-core": "^0.15.8", + "@nomicfoundation/ignition-ui": "^0.15.8", + "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-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==", + "node_modules/@nomicfoundation/hardhat-ignition-ethers": { + "version": "0.15.8", + "resolved": "https://registry.npmjs.org/@nomicfoundation/hardhat-ignition-ethers/-/hardhat-ignition-ethers-0.15.8.tgz", + "integrity": "sha512-5Ev8cXBKgqqOsFXxWe8iijsRabWGd/Vclx3SC903KeKVePdssVsZcYTtRNRcIwRcPJ0RIKJPIZz7MNDo64l3+w==", "dev": true, "peer": 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" + "peerDependencies": { + "@nomicfoundation/hardhat-ethers": "^3.0.4", + "@nomicfoundation/hardhat-ignition": "^0.15.8", + "@nomicfoundation/ignition-core": "^0.15.8", + "ethers": "^6.7.0", + "hardhat": "^2.18.0" } }, - "node_modules/@nomicfoundation/ethereumjs-evm": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@nomicfoundation/ethereumjs-evm/-/ethereumjs-evm-1.0.0.tgz", - "integrity": "sha512-hVS6qRo3V1PLKCO210UfcEQHvlG7GqR8iFzp0yyjTg2TmJQizcChKgWo8KFsdMw6AyoLgLhHGHw4HdlP8a4i+Q==", + "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, "peer": true, "dependencies": { - "@nomicfoundation/ethereumjs-common": "^3.0.0", - "@nomicfoundation/ethereumjs-util": "^8.0.0", - "@types/async-eventemitter": "^0.2.1", - "async-eventemitter": "^0.2.4", - "debug": "^4.3.3", - "ethereum-cryptography": "0.1.3", - "mcl-wasm": "^0.7.1", - "rustbn.js": "~0.2.0" + "color-convert": "^2.0.1" }, "engines": { - "node": ">=14" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/@nomicfoundation/ethereumjs-evm/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/@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, "peer": true, "dependencies": { - "bs58": "^4.0.0", - "create-hash": "^1.1.0", - "safe-buffer": "^5.1.2" + "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/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==", + "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, "peer": 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" + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" } }, - "node_modules/@nomicfoundation/ethereumjs-rlp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@nomicfoundation/ethereumjs-rlp/-/ethereumjs-rlp-4.0.0.tgz", - "integrity": "sha512-GaSOGk5QbUk4eBP5qFbpXoZoZUj/NrW7MRa0tKY4Ew4c2HAS0GXArEMAamtFrkazp0BO4K5p2ZCG3b2FmbShmw==", + "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, + "peer": true + }, + "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, "peer": true, - "bin": { - "rlp": "bin/rlp" + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" }, "engines": { - "node": ">=14" + "node": ">=12" } }, - "node_modules/@nomicfoundation/ethereumjs-statemanager": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@nomicfoundation/ethereumjs-statemanager/-/ethereumjs-statemanager-1.0.0.tgz", - "integrity": "sha512-jCtqFjcd2QejtuAMjQzbil/4NHf5aAWxUc+CvS0JclQpl+7M0bxMofR2AJdtz+P3u0ke2euhYREDiE7iSO31vQ==", + "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, "peer": true, - "dependencies": { - "@nomicfoundation/ethereumjs-common": "^3.0.0", - "@nomicfoundation/ethereumjs-rlp": "^4.0.0", - "@nomicfoundation/ethereumjs-trie": "^5.0.0", - "@nomicfoundation/ethereumjs-util": "^8.0.0", - "debug": "^4.3.3", - "ethereum-cryptography": "0.1.3", - "functional-red-black-tree": "^1.0.1" + "engines": { + "node": ">=8" } }, - "node_modules/@nomicfoundation/ethereumjs-statemanager/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/@nomicfoundation/hardhat-ignition/node_modules/jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", "dev": true, "peer": true, "dependencies": { - "bs58": "^4.0.0", - "create-hash": "^1.1.0", - "safe-buffer": "^5.1.2" + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" } }, - "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==", + "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, "peer": 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" + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "node_modules/@nomicfoundation/ethereumjs-trie": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@nomicfoundation/ethereumjs-trie/-/ethereumjs-trie-5.0.0.tgz", - "integrity": "sha512-LIj5XdE+s+t6WSuq/ttegJzZ1vliwg6wlb+Y9f4RlBpuK35B9K02bO7xU+E6Rgg9RGptkWd6TVLdedTI4eNc2A==", + "node_modules/@nomicfoundation/hardhat-ignition/node_modules/universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", "dev": true, "peer": true, - "dependencies": { - "@nomicfoundation/ethereumjs-rlp": "^4.0.0", - "@nomicfoundation/ethereumjs-util": "^8.0.0", - "ethereum-cryptography": "0.1.3", - "readable-stream": "^3.6.0" - }, "engines": { - "node": ">=14" + "node": ">= 10.0.0" } }, - "node_modules/@nomicfoundation/ethereumjs-trie/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/@nomicfoundation/hardhat-network-helpers": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/@nomicfoundation/hardhat-network-helpers/-/hardhat-network-helpers-1.0.12.tgz", + "integrity": "sha512-xTNQNI/9xkHvjmCJnJOTyqDSl8uq1rKb2WOVmixQxFtRd7Oa3ecO8zM0cyC2YmOK+jHB9WPZ+F/ijkHg1CoORA==", "dev": true, "peer": true, "dependencies": { - "bs58": "^4.0.0", - "create-hash": "^1.1.0", - "safe-buffer": "^5.1.2" + "ethereumjs-util": "^7.1.4" + }, + "peerDependencies": { + "hardhat": "^2.9.5" } }, - "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==", + "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, + "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" + } + }, + "node_modules/@nomicfoundation/hardhat-verify": { + "version": "2.0.12", + "resolved": "https://registry.npmjs.org/@nomicfoundation/hardhat-verify/-/hardhat-verify-2.0.12.tgz", + "integrity": "sha512-Lg3Nu7DCXASQRVI/YysjuAX2z8jwOCbS0w5tz2HalWGSTZThqA0v9N0v0psHbKNqzPJa8bNOeapIVSziyJTnAg==", "dev": true, "peer": 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" + "@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" + }, + "peerDependencies": { + "hardhat": "^2.0.4" } }, - "node_modules/@nomicfoundation/ethereumjs-tx": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@nomicfoundation/ethereumjs-tx/-/ethereumjs-tx-4.0.0.tgz", - "integrity": "sha512-Gg3Lir2lNUck43Kp/3x6TfBNwcWC9Z1wYue9Nz3v4xjdcv6oDW9QSMJxqsKw9QEGoBBZ+gqwpW7+F05/rs/g1w==", + "node_modules/@nomicfoundation/hardhat-verify/node_modules/cbor": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/cbor/-/cbor-8.1.0.tgz", + "integrity": "sha512-DwGjNW9omn6EwP70aXsn7FQJx5kO12tX0bZkaTjzdVFM6/7nhA4t0EENocKGx6D2Bch9PE2KzCUf5SceBdeijg==", "dev": true, "peer": true, "dependencies": { - "@nomicfoundation/ethereumjs-common": "^3.0.0", - "@nomicfoundation/ethereumjs-rlp": "^4.0.0", - "@nomicfoundation/ethereumjs-util": "^8.0.0", - "ethereum-cryptography": "0.1.3" + "nofilter": "^3.1.0" }, "engines": { - "node": ">=14" + "node": ">=12.19" } }, - "node_modules/@nomicfoundation/ethereumjs-tx/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/@nomicfoundation/ignition-core": { + "version": "0.15.8", + "resolved": "https://registry.npmjs.org/@nomicfoundation/ignition-core/-/ignition-core-0.15.8.tgz", + "integrity": "sha512-U+CmTjKU9uwvh7qIabqboy/K/sDoClDgpsFRHoFvAj87DPDkXYb/mZBSkXPTU1wxTxrW6GTFE4lG3e7LAyF+kw==", "dev": true, "peer": true, "dependencies": { - "bs58": "^4.0.0", - "create-hash": "^1.1.0", - "safe-buffer": "^5.1.2" + "@ethersproject/address": "5.6.1", + "@nomicfoundation/solidity-analyzer": "^0.1.1", + "cbor": "^9.0.0", + "debug": "^4.3.2", + "ethers": "^6.7.0", + "fs-extra": "^10.0.0", + "immer": "10.0.2", + "lodash": "4.17.21", + "ndjson": "2.0.0" } }, - "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/@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" + } + ], "peer": 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" + "@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-util": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/@nomicfoundation/ethereumjs-util/-/ethereumjs-util-8.0.0.tgz", - "integrity": "sha512-2emi0NJ/HmTG+CGY58fa+DQuAoroFeSH9gKu9O6JnwTtlzJtgfTixuoOqLEgyyzZVvwfIpRueuePb8TonL1y+A==", + "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, "peer": true, "dependencies": { - "@nomicfoundation/ethereumjs-rlp": "^4.0.0-beta.2", - "ethereum-cryptography": "0.1.3" + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" }, "engines": { - "node": ">=14" + "node": ">=12" } }, - "node_modules/@nomicfoundation/ethereumjs-util/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/@nomicfoundation/ignition-core/node_modules/jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", "dev": true, "peer": true, "dependencies": { - "bs58": "^4.0.0", - "create-hash": "^1.1.0", - "safe-buffer": "^5.1.2" - } - }, - "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, - "peer": 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" + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" } }, - "node_modules/@nomicfoundation/ethereumjs-vm": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/@nomicfoundation/ethereumjs-vm/-/ethereumjs-vm-6.0.0.tgz", - "integrity": "sha512-JMPxvPQ3fzD063Sg3Tp+UdwUkVxMoo1uML6KSzFhMH3hoQi/LMuXBoEHAoW83/vyNS9BxEe6jm6LmT5xdeEJ6w==", + "node_modules/@nomicfoundation/ignition-core/node_modules/universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", "dev": true, "peer": true, - "dependencies": { - "@nomicfoundation/ethereumjs-block": "^4.0.0", - "@nomicfoundation/ethereumjs-blockchain": "^6.0.0", - "@nomicfoundation/ethereumjs-common": "^3.0.0", - "@nomicfoundation/ethereumjs-evm": "^1.0.0", - "@nomicfoundation/ethereumjs-rlp": "^4.0.0", - "@nomicfoundation/ethereumjs-statemanager": "^1.0.0", - "@nomicfoundation/ethereumjs-trie": "^5.0.0", - "@nomicfoundation/ethereumjs-tx": "^4.0.0", - "@nomicfoundation/ethereumjs-util": "^8.0.0", - "@types/async-eventemitter": "^0.2.1", - "async-eventemitter": "^0.2.4", - "debug": "^4.3.3", - "ethereum-cryptography": "0.1.3", - "functional-red-black-tree": "^1.0.1", - "mcl-wasm": "^0.7.1", - "rustbn.js": "~0.2.0" - }, "engines": { - "node": ">=14" + "node": ">= 10.0.0" } }, - "node_modules/@nomicfoundation/ethereumjs-vm/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/@nomicfoundation/ignition-ui": { + "version": "0.15.8", + "resolved": "https://registry.npmjs.org/@nomicfoundation/ignition-ui/-/ignition-ui-0.15.8.tgz", + "integrity": "sha512-VUD5MsWrrv7E2P0AJO01pV8w8m66Du0uwBKXM0oUV5DRIzqm6eYHt9eCDb1KBINDpiFxOQiuyWQMdeKxgPp3qw==", "dev": true, - "peer": true, - "dependencies": { - "bs58": "^4.0.0", - "create-hash": "^1.1.0", - "safe-buffer": "^5.1.2" - } + "peer": true }, - "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==", + "node_modules/@nomicfoundation/slang": { + "version": "0.18.3", + "resolved": "https://registry.npmjs.org/@nomicfoundation/slang/-/slang-0.18.3.tgz", + "integrity": "sha512-YqAWgckqbHM0/CZxi9Nlf4hjk9wUNLC9ngWCWBiqMxPIZmzsVKYuChdlrfeBPQyvQQBoOhbx+7C1005kLVQDZQ==", "dev": true, - "peer": 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" + "@bytecodealliance/preview2-shim": "0.17.0" } }, "node_modules/@nomicfoundation/solidity-analyzer": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer/-/solidity-analyzer-0.1.0.tgz", - "integrity": "sha512-xGWAiVCGOycvGiP/qrlf9f9eOn7fpNbyJygcB0P21a1MDuVPlKt0Srp7rvtBEutYQ48ouYnRXm33zlRnlTOPHg==", + "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, - "peer": true, "engines": { "node": ">= 12" }, "optionalDependencies": { - "@nomicfoundation/solidity-analyzer-darwin-arm64": "0.1.0", - "@nomicfoundation/solidity-analyzer-darwin-x64": "0.1.0", - "@nomicfoundation/solidity-analyzer-freebsd-x64": "0.1.0", - "@nomicfoundation/solidity-analyzer-linux-arm64-gnu": "0.1.0", - "@nomicfoundation/solidity-analyzer-linux-arm64-musl": "0.1.0", - "@nomicfoundation/solidity-analyzer-linux-x64-gnu": "0.1.0", - "@nomicfoundation/solidity-analyzer-linux-x64-musl": "0.1.0", - "@nomicfoundation/solidity-analyzer-win32-arm64-msvc": "0.1.0", - "@nomicfoundation/solidity-analyzer-win32-ia32-msvc": "0.1.0", - "@nomicfoundation/solidity-analyzer-win32-x64-msvc": "0.1.0" + "@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.0", - "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer-darwin-arm64/-/solidity-analyzer-darwin-arm64-0.1.0.tgz", - "integrity": "sha512-vEF3yKuuzfMHsZecHQcnkUrqm8mnTWfJeEVFHpg+cO+le96xQA4lAJYdUan8pXZohQxv1fSReQsn4QGNuBNuCw==", - "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, "optional": true, - "os": [ - "darwin" - ], - "peer": true, "engines": { - "node": ">= 10" + "node": ">= 12" } }, "node_modules/@nomicfoundation/solidity-analyzer-darwin-x64": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer-darwin-x64/-/solidity-analyzer-darwin-x64-0.1.0.tgz", - "integrity": "sha512-dlHeIg0pTL4dB1l9JDwbi/JG6dHQaU1xpDK+ugYO8eJ1kxx9Dh2isEUtA4d02cQAl22cjOHTvifAk96A+ItEHA==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "peer": true, - "engines": { - "node": ">= 10" - } - }, - "node_modules/@nomicfoundation/solidity-analyzer-freebsd-x64": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer-freebsd-x64/-/solidity-analyzer-freebsd-x64-0.1.0.tgz", - "integrity": "sha512-WFCZYMv86WowDA4GiJKnebMQRt3kCcFqHeIomW6NMyqiKqhK1kIZCxSLDYsxqlx396kKLPN1713Q1S8tu68GKg==", - "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, "optional": true, - "os": [ - "freebsd" - ], - "peer": true, "engines": { - "node": ">= 10" + "node": ">= 12" } }, "node_modules/@nomicfoundation/solidity-analyzer-linux-arm64-gnu": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer-linux-arm64-gnu/-/solidity-analyzer-linux-arm64-gnu-0.1.0.tgz", - "integrity": "sha512-DTw6MNQWWlCgc71Pq7CEhEqkb7fZnS7oly13pujs4cMH1sR0JzNk90Mp1zpSCsCs4oKan2ClhMlLKtNat/XRKQ==", - "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, "optional": true, - "os": [ - "linux" - ], - "peer": true, "engines": { - "node": ">= 10" + "node": ">= 12" } }, "node_modules/@nomicfoundation/solidity-analyzer-linux-arm64-musl": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer-linux-arm64-musl/-/solidity-analyzer-linux-arm64-musl-0.1.0.tgz", - "integrity": "sha512-wUpUnR/3GV5Da88MhrxXh/lhb9kxh9V3Jya2NpBEhKDIRCDmtXMSqPMXHZmOR9DfCwCvG6vLFPr/+YrPCnUN0w==", - "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, "optional": true, - "os": [ - "linux" - ], - "peer": true, "engines": { - "node": ">= 10" + "node": ">= 12" } }, "node_modules/@nomicfoundation/solidity-analyzer-linux-x64-gnu": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer-linux-x64-gnu/-/solidity-analyzer-linux-x64-gnu-0.1.0.tgz", - "integrity": "sha512-lR0AxK1x/MeKQ/3Pt923kPvwigmGX3OxeU5qNtQ9pj9iucgk4PzhbS3ruUeSpYhUxG50jN4RkIGwUMoev5lguw==", - "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, "optional": true, - "os": [ - "linux" - ], - "peer": true, "engines": { - "node": ">= 10" + "node": ">= 12" } }, "node_modules/@nomicfoundation/solidity-analyzer-linux-x64-musl": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer-linux-x64-musl/-/solidity-analyzer-linux-x64-musl-0.1.0.tgz", - "integrity": "sha512-A1he/8gy/JeBD3FKvmI6WUJrGrI5uWJNr5Xb9WdV+DK0F8msuOqpEByLlnTdLkXMwW7nSl3awvLezOs9xBHJEg==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "peer": true, - "engines": { - "node": ">= 10" - } - }, - "node_modules/@nomicfoundation/solidity-analyzer-win32-arm64-msvc": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer-win32-arm64-msvc/-/solidity-analyzer-win32-arm64-msvc-0.1.0.tgz", - "integrity": "sha512-7x5SXZ9R9H4SluJZZP8XPN+ju7Mx+XeUMWZw7ZAqkdhP5mK19I4vz3x0zIWygmfE8RT7uQ5xMap0/9NPsO+ykw==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "peer": true, - "engines": { - "node": ">= 10" - } - }, - "node_modules/@nomicfoundation/solidity-analyzer-win32-ia32-msvc": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer-win32-ia32-msvc/-/solidity-analyzer-win32-ia32-msvc-0.1.0.tgz", - "integrity": "sha512-m7w3xf+hnE774YRXu+2mGV7RiF3QJtUoiYU61FascCkQhX3QMQavh7saH/vzb2jN5D24nT/jwvaHYX/MAM9zUw==", - "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, "optional": true, - "os": [ - "win32" - ], - "peer": true, "engines": { - "node": ">= 10" + "node": ">= 12" } }, "node_modules/@nomicfoundation/solidity-analyzer-win32-x64-msvc": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer-win32-x64-msvc/-/solidity-analyzer-win32-x64-msvc-0.1.0.tgz", - "integrity": "sha512-xCuybjY0sLJQnJhupiFAXaek2EqF0AP0eBjgzaalPXSNvCEN6ZYHvUzdA50ENDVeSYFXcUsYf3+FsD3XKaeptA==", - "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, "optional": true, - "os": [ - "win32" - ], - "peer": true, "engines": { - "node": ">= 10" + "node": ">= 12" } }, "node_modules/@openzeppelin/contracts": { @@ -2804,27 +2079,120 @@ "resolved": "https://registry.npmjs.org/@openzeppelin/contracts-upgradeable/-/contracts-upgradeable-4.9.6.tgz", "integrity": "sha512-m4iHazOsOCv1DgM7eD7GupTJ+NFVujRZt1wzddDPSVGpWdKq1SKkla5htKG7+IS4d2XOCtzkUNwRZ7Vq5aEUMA==" }, - "node_modules/@openzeppelin/truffle-upgrades": { - "version": "1.21.0", - "resolved": "https://registry.npmjs.org/@openzeppelin/truffle-upgrades/-/truffle-upgrades-1.21.0.tgz", - "integrity": "sha512-MKl0mSCLio4wNvKvSpXou0SEclbWfgLVJB1S2QXEP9bv55BB7+C+Iytc10Cx4JoKA+5Dup7c9C8g8H43yBD+lg==", - "deprecated": "@openzeppelin/truffle-upgrades is deprecated. Use Hardhat along with @openzeppelin/hardhat-upgrades", + "node_modules/@openzeppelin/defender-sdk-base-client": { + "version": "1.15.2", + "resolved": "https://registry.npmjs.org/@openzeppelin/defender-sdk-base-client/-/defender-sdk-base-client-1.15.2.tgz", + "integrity": "sha512-N3ZTeH8TXyklL7yNPMLUv0dxQwT78DTkOEDhzMS2/QE2FxbXrclSseoeeXxl6UYI61RBtZKn+okbSsbwiB5QWQ==", + "dev": true, + "dependencies": { + "amazon-cognito-identity-js": "^6.3.6", + "async-retry": "^1.3.3" + } + }, + "node_modules/@openzeppelin/defender-sdk-deploy-client": { + "version": "1.15.2", + "resolved": "https://registry.npmjs.org/@openzeppelin/defender-sdk-deploy-client/-/defender-sdk-deploy-client-1.15.2.tgz", + "integrity": "sha512-zspzMqh+OC8arXAkgBqTUDVO+NfCkt54UrsmQHbA3UAjr5TiDXKycBKU5ORb01hE+2gAmoPwEpDW9uS2VLg33A==", + "dev": true, + "dependencies": { + "@openzeppelin/defender-sdk-base-client": "^1.15.2", + "axios": "^1.7.2", + "lodash": "^4.17.21" + } + }, + "node_modules/@openzeppelin/defender-sdk-deploy-client/node_modules/axios": { + "version": "1.7.9", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.9.tgz", + "integrity": "sha512-LhLcE7Hbiryz8oMDdDptSrWowmB4Bl6RCt6sIJKpRB4XtVf0iEgewX3au/pJqm+Py1kCASkb/FFKjxQaLtxJvw==", + "dev": true, + "dependencies": { + "follow-redirects": "^1.15.6", + "form-data": "^4.0.0", + "proxy-from-env": "^1.1.0" + } + }, + "node_modules/@openzeppelin/defender-sdk-deploy-client/node_modules/form-data": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.1.tgz", + "integrity": "sha512-tzN8e4TX8+kkxGPK8D5u0FNmjPUjw3lwC9lSLxxoB/+GtsJG91CO8bSWy73APlgAZzZbXEYZJuxjkHH2w+Ezhw==", + "dev": true, + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@openzeppelin/defender-sdk-network-client": { + "version": "1.15.2", + "resolved": "https://registry.npmjs.org/@openzeppelin/defender-sdk-network-client/-/defender-sdk-network-client-1.15.2.tgz", + "integrity": "sha512-9r9pegc1aR7xzP9fmj1zvkk0OXMRJE10JabxxiJzAQQgmNXDeTGI6W5bFgrNJfxzcImNGqddJ3K4weKdLyL21A==", + "dev": true, + "dependencies": { + "@openzeppelin/defender-sdk-base-client": "^1.15.2", + "axios": "^1.7.2", + "lodash": "^4.17.21" + } + }, + "node_modules/@openzeppelin/defender-sdk-network-client/node_modules/axios": { + "version": "1.7.9", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.9.tgz", + "integrity": "sha512-LhLcE7Hbiryz8oMDdDptSrWowmB4Bl6RCt6sIJKpRB4XtVf0iEgewX3au/pJqm+Py1kCASkb/FFKjxQaLtxJvw==", + "dev": true, + "dependencies": { + "follow-redirects": "^1.15.6", + "form-data": "^4.0.0", + "proxy-from-env": "^1.1.0" + } + }, + "node_modules/@openzeppelin/defender-sdk-network-client/node_modules/form-data": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.1.tgz", + "integrity": "sha512-tzN8e4TX8+kkxGPK8D5u0FNmjPUjw3lwC9lSLxxoB/+GtsJG91CO8bSWy73APlgAZzZbXEYZJuxjkHH2w+Ezhw==", + "dev": true, + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@openzeppelin/hardhat-upgrades": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@openzeppelin/hardhat-upgrades/-/hardhat-upgrades-3.7.0.tgz", + "integrity": "sha512-dTnqqTIZUOyEzL62FIusZPeac9CqTD+x3Q5h+46JBALgS9DubUq/jXMhiE3JKLco3RELZQCh/9GYKBoUA0R2DQ==", "dev": true, "dependencies": { - "@openzeppelin/upgrades-core": "^1.30.0", - "@truffle/contract": "^4.3.26", + "@openzeppelin/defender-sdk-base-client": "^1.14.4", + "@openzeppelin/defender-sdk-deploy-client": "^1.14.4", + "@openzeppelin/defender-sdk-network-client": "^1.14.4", + "@openzeppelin/upgrades-core": "^1.41.0", "chalk": "^4.1.0", "debug": "^4.1.1", - "solidity-ast": "^0.4.26" + "ethereumjs-util": "^7.1.5", + "proper-lockfile": "^4.1.1", + "undici": "^6.11.1" }, "bin": { "migrate-oz-cli-project": "dist/scripts/migrate-oz-cli-project.js" }, "peerDependencies": { - "truffle": "^5.1.35" + "@nomicfoundation/hardhat-ethers": "^3.0.0", + "@nomicfoundation/hardhat-verify": "^2.0.0", + "ethers": "^6.6.0", + "hardhat": "^2.0.2" + }, + "peerDependenciesMeta": { + "@nomicfoundation/hardhat-verify": { + "optional": true + } } }, - "node_modules/@openzeppelin/truffle-upgrades/node_modules/ansi-styles": { + "node_modules/@openzeppelin/hardhat-upgrades/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==", @@ -2839,7 +2207,7 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/@openzeppelin/truffle-upgrades/node_modules/chalk": { + "node_modules/@openzeppelin/hardhat-upgrades/node_modules/chalk": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", @@ -2855,7 +2223,7 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/@openzeppelin/truffle-upgrades/node_modules/color-convert": { + "node_modules/@openzeppelin/hardhat-upgrades/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==", @@ -2867,13 +2235,13 @@ "node": ">=7.0.0" } }, - "node_modules/@openzeppelin/truffle-upgrades/node_modules/color-name": { + "node_modules/@openzeppelin/hardhat-upgrades/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/@openzeppelin/truffle-upgrades/node_modules/has-flag": { + "node_modules/@openzeppelin/hardhat-upgrades/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==", @@ -2882,7 +2250,7 @@ "node": ">=8" } }, - "node_modules/@openzeppelin/truffle-upgrades/node_modules/supports-color": { + "node_modules/@openzeppelin/hardhat-upgrades/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==", @@ -2894,17 +2262,28 @@ "node": ">=8" } }, + "node_modules/@openzeppelin/hardhat-upgrades/node_modules/undici": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/undici/-/undici-6.21.0.tgz", + "integrity": "sha512-BUgJXc752Kou3oOIuU1i+yZZypyZRqNPW0vqoMPl8VaoalSfeR0D8/t4iAS3yirs79SSMTxTag+ZC86uswv+Cw==", + "dev": true, + "engines": { + "node": ">=18.17" + } + }, "node_modules/@openzeppelin/upgrades-core": { - "version": "1.33.1", - "resolved": "https://registry.npmjs.org/@openzeppelin/upgrades-core/-/upgrades-core-1.33.1.tgz", - "integrity": "sha512-YRxIRhTY1b+j7+NUUu8Uuem5ugxKexEMVd8dBRWNgWeoN1gS1OCrhgUg0ytL+54vzQ+SGWZDfNnzjVuI1Cj1Zw==", + "version": "1.41.0", + "resolved": "https://registry.npmjs.org/@openzeppelin/upgrades-core/-/upgrades-core-1.41.0.tgz", + "integrity": "sha512-+oryinqZnxkiZvg7bWqWX4Ki/CNwVUZEqC6Elpi5PQoahpL3/6Sq9xjIozD5AiI2O61h8JHQ+A//5NtczyavJw==", "dev": true, "dependencies": { + "@nomicfoundation/slang": "^0.18.3", "cbor": "^9.0.0", "chalk": "^4.1.0", "compare-versions": "^6.0.0", "debug": "^4.1.1", "ethereumjs-util": "^7.0.3", + "minimatch": "^9.0.5", "minimist": "^1.2.7", "proper-lockfile": "^4.1.1", "solidity-ast": "^0.4.51" @@ -2928,6 +2307,15 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, + "node_modules/@openzeppelin/upgrades-core/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/@openzeppelin/upgrades-core/node_modules/chalk": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", @@ -2971,6 +2359,21 @@ "node": ">=8" } }, + "node_modules/@openzeppelin/upgrades-core/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/@openzeppelin/upgrades-core/node_modules/supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", @@ -2983,182 +2386,26 @@ "node": ">=8" } }, - "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==", - "dev": true, - "optional": true, - "peer": true - }, - "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==", - "dev": true, - "optional": true, - "peer": true + "node_modules/@rsksmart/btc-transaction-solidity-helper": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/@rsksmart/btc-transaction-solidity-helper/-/btc-transaction-solidity-helper-0.2.1.tgz", + "integrity": "sha512-Ios++Hrnqfh4BZpsYUxMCeVsVw39G4AOnBvGn6WSLD8AQEGGbZk11IqoCEvrfSqppXSCEFzcDXbxA8nSjLwVhg==" }, - "node_modules/@protobufjs/codegen": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@protobufjs/codegen/-/codegen-2.0.4.tgz", - "integrity": "sha512-YyFaikqM5sH0ziFZCN3xDC7zeGaB/d0IUb9CATugHWbd1FRFwWwt4ld4OYMPWu5a3Xe01mGAULCdqhMlPl29Jg==", + "node_modules/@rsksmart/pmt-builder": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@rsksmart/pmt-builder/-/pmt-builder-3.0.0.tgz", + "integrity": "sha512-HML2VJqMwXYtqiggAyojupH/k80KkhfnhUzwXNsnzuu7FftHOFvAOgJZb5Fh+tZ8UKek0vf4eT0pvqkYCU1xDQ==", "dev": true, - "optional": true, - "peer": true + "dependencies": { + "chai": "^4.3.4", + "mocha": "^10.0.0" + } }, - "node_modules/@protobufjs/eventemitter": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@protobufjs/eventemitter/-/eventemitter-1.1.0.tgz", - "integrity": "sha512-j9ednRT81vYJ9OfVuXG6ERSTdEL1xVsNgqpkxMsbIabzSo3goCjDIveeGv5d03om39ML71RdmrGNjG5SReBP/Q==", + "node_modules/@scure/base": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@scure/base/-/base-1.1.1.tgz", + "integrity": "sha512-ZxOhsSyxYwLJj3pLZCefNitxsj093tb2vq90mp2txoYeBqbcjDjqFhyM8eUjq/uFm6zJ+mUuqxlS2FkuSY1MTA==", "dev": true, - "optional": true, - "peer": true - }, - "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==", - "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "@protobufjs/aspromise": "^1.1.1", - "@protobufjs/inquire": "^1.1.0" - } - }, - "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==", - "dev": true, - "optional": true, - "peer": true - }, - "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==", - "dev": true, - "optional": true, - "peer": true - }, - "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==", - "dev": true, - "optional": true, - "peer": true - }, - "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==", - "dev": true, - "optional": true, - "peer": true - }, - "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==", - "dev": true, - "optional": true, - "peer": true - }, - "node_modules/@redux-saga/core": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/@redux-saga/core/-/core-1.2.2.tgz", - "integrity": "sha512-0qr5oleOAmI5WoZLRA6FEa30M4qKZcvx+ZQOQw+RqFeH8t20bvhE329XSPsNfTVP8C6qyDsXOSjuoV+g3+8zkg==", - "dev": true, - "peer": true, - "dependencies": { - "@babel/runtime": "^7.6.3", - "@redux-saga/deferred": "^1.2.1", - "@redux-saga/delay-p": "^1.2.1", - "@redux-saga/is": "^1.1.3", - "@redux-saga/symbols": "^1.1.3", - "@redux-saga/types": "^1.2.1", - "redux": "^4.0.4", - "typescript-tuple": "^2.2.1" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/redux-saga" - } - }, - "node_modules/@redux-saga/core/node_modules/redux": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/redux/-/redux-4.2.1.tgz", - "integrity": "sha512-LAUYz4lc+Do8/g7aeRa8JkyDErK6ekstQaqWQrNRW//MY1TvCEpMtpTWvlQ+FPbWCx+Xixu/6SHt5N0HR+SB4w==", - "dev": true, - "peer": true, - "dependencies": { - "@babel/runtime": "^7.9.2" - } - }, - "node_modules/@redux-saga/deferred": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@redux-saga/deferred/-/deferred-1.2.1.tgz", - "integrity": "sha512-cmin3IuuzMdfQjA0lG4B+jX+9HdTgHZZ+6u3jRAOwGUxy77GSlTi4Qp2d6PM1PUoTmQUR5aijlA39scWWPF31g==", - "dev": true, - "peer": true - }, - "node_modules/@redux-saga/delay-p": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@redux-saga/delay-p/-/delay-p-1.2.1.tgz", - "integrity": "sha512-MdiDxZdvb1m+Y0s4/hgdcAXntpUytr9g0hpcOO1XFVyyzkrDu3SKPgBFOtHn7lhu7n24ZKIAT1qtKyQjHqRd+w==", - "dev": true, - "peer": true, - "dependencies": { - "@redux-saga/symbols": "^1.1.3" - } - }, - "node_modules/@redux-saga/is": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@redux-saga/is/-/is-1.1.3.tgz", - "integrity": "sha512-naXrkETG1jLRfVfhOx/ZdLj0EyAzHYbgJWkXbB3qFliPcHKiWbv/ULQryOAEKyjrhiclmr6AMdgsXFyx7/yE6Q==", - "dev": true, - "peer": true, - "dependencies": { - "@redux-saga/symbols": "^1.1.3", - "@redux-saga/types": "^1.2.1" - } - }, - "node_modules/@redux-saga/symbols": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@redux-saga/symbols/-/symbols-1.1.3.tgz", - "integrity": "sha512-hCx6ZvU4QAEUojETnX8EVg4ubNLBFl1Lps4j2tX7o45x/2qg37m3c6v+kSp8xjDJY+2tJw4QB3j8o8dsl1FDXg==", - "dev": true, - "peer": true - }, - "node_modules/@redux-saga/types": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@redux-saga/types/-/types-1.2.1.tgz", - "integrity": "sha512-1dgmkh+3so0+LlBWRhGA33ua4MYr7tUOj+a9Si28vUi0IUFNbff1T3sgpeDJI/LaC75bBYnQ0A3wXjn0OrRNBA==", - "dev": true, - "peer": true - }, - "node_modules/@rsksmart/btc-transaction-solidity-helper": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/@rsksmart/btc-transaction-solidity-helper/-/btc-transaction-solidity-helper-0.2.1.tgz", - "integrity": "sha512-Ios++Hrnqfh4BZpsYUxMCeVsVw39G4AOnBvGn6WSLD8AQEGGbZk11IqoCEvrfSqppXSCEFzcDXbxA8nSjLwVhg==" - }, - "node_modules/@rsksmart/pmt-builder": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@rsksmart/pmt-builder/-/pmt-builder-3.0.0.tgz", - "integrity": "sha512-HML2VJqMwXYtqiggAyojupH/k80KkhfnhUzwXNsnzuu7FftHOFvAOgJZb5Fh+tZ8UKek0vf4eT0pvqkYCU1xDQ==", - "dev": true, - "dependencies": { - "chai": "^4.3.4", - "mocha": "^10.0.0" - } - }, - "node_modules/@scure/base": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@scure/base/-/base-1.1.1.tgz", - "integrity": "sha512-ZxOhsSyxYwLJj3pLZCefNitxsj093tb2vq90mp2txoYeBqbcjDjqFhyM8eUjq/uFm6zJ+mUuqxlS2FkuSY1MTA==", "funding": [ { "type": "individual", @@ -3170,6 +2417,7 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/@scure/bip32/-/bip32-1.1.0.tgz", "integrity": "sha512-ftTW3kKX54YXLCxH6BB7oEEoJfoE2pIgw7MINKAs5PsS6nqKPuKk1haTF/EuHmYqG330t5GSrdmtRuHaY1a62Q==", + "dev": true, "funding": [ { "type": "individual", @@ -3186,6 +2434,7 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/@scure/bip39/-/bip39-1.1.0.tgz", "integrity": "sha512-pwrPOS16VeTKg98dYXQyIjJEcWfz7/1YJIwxUEPFfQPtc86Ym/1sVgQ2RLoD43AazMk2l/unK4ITySSpW2+82w==", + "dev": true, "funding": [ { "type": "individual", @@ -3202,7 +2451,6 @@ "resolved": "https://registry.npmjs.org/@sentry/core/-/core-5.30.0.tgz", "integrity": "sha512-TmfrII8w1PQZSZgPpUESqjB+jC6MvZJZdLtE/0hZ+SrnKhW3x5WlYLvTXZpcWePYBku7rl2wn1RZu6uT0qCTeg==", "dev": true, - "peer": true, "dependencies": { "@sentry/hub": "5.30.0", "@sentry/minimal": "5.30.0", @@ -3219,7 +2467,6 @@ "resolved": "https://registry.npmjs.org/@sentry/hub/-/hub-5.30.0.tgz", "integrity": "sha512-2tYrGnzb1gKz2EkMDQcfLrDTvmGcQPuWxLnJKXJvYTQDGLlEvi2tWz1VIHjunmOvJrB5aIQLhm+dcMRwFZDCqQ==", "dev": true, - "peer": true, "dependencies": { "@sentry/types": "5.30.0", "@sentry/utils": "5.30.0", @@ -3234,7 +2481,6 @@ "resolved": "https://registry.npmjs.org/@sentry/minimal/-/minimal-5.30.0.tgz", "integrity": "sha512-BwWb/owZKtkDX+Sc4zCSTNcvZUq7YcH3uAVlmh/gtR9rmUvbzAA3ewLuB3myi4wWRAMEtny6+J/FN/x+2wn9Xw==", "dev": true, - "peer": true, "dependencies": { "@sentry/hub": "5.30.0", "@sentry/types": "5.30.0", @@ -3249,7 +2495,6 @@ "resolved": "https://registry.npmjs.org/@sentry/node/-/node-5.30.0.tgz", "integrity": "sha512-Br5oyVBF0fZo6ZS9bxbJZG4ApAjRqAnqFFurMVJJdunNb80brh7a5Qva2kjhm+U6r9NJAB5OmDyPkA1Qnt+QVg==", "dev": true, - "peer": true, "dependencies": { "@sentry/core": "5.30.0", "@sentry/hub": "5.30.0", @@ -3270,7 +2515,6 @@ "resolved": "https://registry.npmjs.org/@sentry/tracing/-/tracing-5.30.0.tgz", "integrity": "sha512-dUFowCr0AIMwiLD7Fs314Mdzcug+gBVo/+NCMyDw8tFxJkwWAKl7Qa2OZxLQ0ZHjakcj1hNKfCQJ9rhyfOl4Aw==", "dev": true, - "peer": true, "dependencies": { "@sentry/hub": "5.30.0", "@sentry/minimal": "5.30.0", @@ -3287,7 +2531,6 @@ "resolved": "https://registry.npmjs.org/@sentry/types/-/types-5.30.0.tgz", "integrity": "sha512-R8xOqlSTZ+htqrfteCWU5Nk0CDN5ApUTvrlvBuiH1DyP6czDZ4ktbZB0hAgBlVcK0U+qpD3ag3Tqqpa5Q67rPw==", "dev": true, - "peer": true, "engines": { "node": ">=6" } @@ -3297,7 +2540,6 @@ "resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-5.30.0.tgz", "integrity": "sha512-zaYmoH0NWWtvnJjC9/CBseXMtKHm/tm40sz3YfJRxeQjyzRqNQPgivpd9R/oDJCYj999mzdW382p/qi2ypjLww==", "dev": true, - "peer": true, "dependencies": { "@sentry/types": "5.30.0", "tslib": "^1.9.3" @@ -3306,17 +2548,24 @@ "node": ">=6" } }, - "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==", - "engines": { - "node": ">=10" + "node_modules/@smithy/types": { + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/@smithy/types/-/types-3.7.1.tgz", + "integrity": "sha512-XKLcLXZY7sUQgvvWyeaL/qwNPp6V3dWcUjqrQKjSb+tzYiCy340R/c64LV5j+Tnb2GhmunEX0eou+L+m2hJNYA==", + "dev": true, + "dependencies": { + "tslib": "^2.6.2" }, - "funding": { - "url": "https://github.com/sindresorhus/is?sponsor=1" + "engines": { + "node": ">=16.0.0" } }, + "node_modules/@smithy/types/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/@solidity-parser/parser": { "version": "0.14.5", "resolved": "https://registry.npmjs.org/@solidity-parser/parser/-/parser-0.14.5.tgz", @@ -3326,2413 +2575,1904 @@ "antlr4ts": "^0.5.0-alpha.4" } }, - "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==", - "dependencies": { - "defer-to-connect": "^2.0.1" - }, - "engines": { - "node": ">=14.16" - } + "node_modules/@tsconfig/node10": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.11.tgz", + "integrity": "sha512-DcRjDCujK/kCk/cUe8Xz8ZSpm8mS3mNNpta+jGCA6USEDfktlNvm1+IuZ9eTcDbNk41BHwpHHeW+N1lKCz4zOw==", + "dev": true, + "peer": 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, + "peer": true }, - "node_modules/@truffle/abi-utils": { + "node_modules/@tsconfig/node14": { "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@truffle/abi-utils/-/abi-utils-1.0.3.tgz", - "integrity": "sha512-AWhs01HCShaVKjml7Z4AbVREr/u4oiWxCcoR7Cktm0mEvtT04pvnxW5xB/cI4znRkrbPdFQlFt67kgrAjesYkw==", - "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", + "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", + "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==", "dev": true, - "dependencies": { - "change-case": "3.0.2", - "fast-check": "3.1.1", - "web3-utils": "1.10.0" - }, - "engines": { - "node": "^16.20 || ^18.16 || >=20" - } + "peer": true }, - "node_modules/@truffle/blockchain-utils": { - "version": "0.1.9", - "resolved": "https://registry.npmjs.org/@truffle/blockchain-utils/-/blockchain-utils-0.1.9.tgz", - "integrity": "sha512-RHfumgbIVo68Rv9ofDYfynjnYZIfP/f1vZy4RoqkfYAO+fqfc58PDRzB1WAGq2U6GPuOnipOJxQhnqNnffORZg==", - "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", + "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, - "engines": { - "node": "^16.20 || ^18.16 || >=20" + "peer": true + }, + "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, + "peer": true, + "dependencies": { + "lodash": "^4.17.15", + "ts-essentials": "^7.0.1" + }, + "peerDependencies": { + "ethers": "6.x", + "typechain": "^8.3.2", + "typescript": ">=4.7.0" } }, - "node_modules/@truffle/code-utils": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@truffle/code-utils/-/code-utils-3.0.4.tgz", - "integrity": "sha512-MWK3TMisIFaBpSjK7tt1GoQan7DQDBqT2iSsdQOGD74C7r9NMwsIdnL2EYoB/DPcEJ7B8yP4grlG2fQTrPF96g==", - "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", + "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, "peer": true, "dependencies": { - "cbor": "^5.2.0" + "fs-extra": "^9.1.0" }, - "engines": { - "node": "^16.20 || ^18.16 || >=20" + "peerDependencies": { + "@typechain/ethers-v6": "^0.5.1", + "ethers": "^6.1.0", + "hardhat": "^2.9.9", + "typechain": "^8.3.2" } }, - "node_modules/@truffle/code-utils/node_modules/bignumber.js": { - "version": "9.1.1", - "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.1.1.tgz", - "integrity": "sha512-pHm4LsMJ6lzgNGVfZHjMoO8sdoRhOzOH4MLmY65Jg70bpxCKu5iOHNJyfF6OyvYw7t8Fpf35RuzUyqnQsj8Vig==", + "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, "peer": true, + "dependencies": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, "engines": { - "node": "*" + "node": ">=10" } }, - "node_modules/@truffle/code-utils/node_modules/cbor": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/cbor/-/cbor-5.2.0.tgz", - "integrity": "sha512-5IMhi9e1QU76ppa5/ajP1BmMWZ2FHkhAhjeVKQ/EFCgYSEaeVaoGtL7cxJskf9oCCk+XjzaIdc3IuU/dbA/o2A==", + "node_modules/@typechain/hardhat/node_modules/jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", "dev": true, "peer": true, "dependencies": { - "bignumber.js": "^9.0.1", - "nofilter": "^1.0.4" + "universalify": "^2.0.0" }, - "engines": { - "node": ">=6.0.0" + "optionalDependencies": { + "graceful-fs": "^4.1.6" } }, - "node_modules/@truffle/code-utils/node_modules/nofilter": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/nofilter/-/nofilter-1.0.4.tgz", - "integrity": "sha512-N8lidFp+fCz+TD51+haYdbDGrcBWwuHX40F5+z0qkUjMJ5Tp+rdSuAkMJ9N9eoolDlEVTf6u5icM+cNKkKW2mA==", + "node_modules/@typechain/hardhat/node_modules/universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", "dev": true, "peer": true, "engines": { - "node": ">=8" + "node": ">= 10.0.0" } }, - "node_modules/@truffle/codec": { - "version": "0.15.3", - "resolved": "https://registry.npmjs.org/@truffle/codec/-/codec-0.15.3.tgz", - "integrity": "sha512-8dRxZEaPS+Qo9v90zl+zQ8RSSqNCd88yrdUS5mSfEGMsmiixR5l3R85c8QfV73B4WNYlMLTa9mC0JmhG1vqz2Q==", - "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", + "node_modules/@types/bn.js": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/@types/bn.js/-/bn.js-5.1.1.tgz", + "integrity": "sha512-qNrYbZqMx0uJAfKnKclPh+dTwK33KfLHYqtyODwd5HnXOjnkhc4qgn3BrK6RWyGZm5+sIFE7Q7Vz6QQtJB7w7g==", "dev": true, - "peer": true, "dependencies": { - "@truffle/abi-utils": "^1.0.1", - "@truffle/compile-common": "^0.9.6", - "big.js": "^6.0.3", - "bn.js": "^5.1.3", - "cbor": "^5.2.0", - "debug": "^4.3.1", - "lodash": "^4.17.21", - "semver": "7.3.7", - "utf8": "^3.0.0", - "web3-utils": "1.10.0" + "@types/node": "*" } }, - "node_modules/@truffle/codec/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/@types/chai": { + "version": "4.3.20", + "resolved": "https://registry.npmjs.org/@types/chai/-/chai-4.3.20.tgz", + "integrity": "sha512-/pC9HAB5I/xMlc5FP77qjCnI16ChlJfW0tGa0IUcFn38VJrTV6DeZ60NU5KZBtaOZqjdpwTWohz5HU1RrhiYxQ==", "dev": true, - "peer": true, - "engines": { - "node": "*" - } + "peer": true }, - "node_modules/@truffle/codec/node_modules/cbor": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/cbor/-/cbor-5.2.0.tgz", - "integrity": "sha512-5IMhi9e1QU76ppa5/ajP1BmMWZ2FHkhAhjeVKQ/EFCgYSEaeVaoGtL7cxJskf9oCCk+XjzaIdc3IuU/dbA/o2A==", + "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, "peer": true, "dependencies": { - "bignumber.js": "^9.0.1", - "nofilter": "^1.0.4" - }, - "engines": { - "node": ">=6.0.0" + "@types/chai": "*" } }, - "node_modules/@truffle/codec/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/@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, "peer": true, "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" + "@types/node": "*" } }, - "node_modules/@truffle/codec/node_modules/nofilter": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/nofilter/-/nofilter-1.0.4.tgz", - "integrity": "sha512-N8lidFp+fCz+TD51+haYdbDGrcBWwuHX40F5+z0qkUjMJ5Tp+rdSuAkMJ9N9eoolDlEVTf6u5icM+cNKkKW2mA==", + "node_modules/@types/estree": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz", + "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==", + "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, "peer": true, - "engines": { - "node": ">=8" + "dependencies": { + "@types/node": "*" } }, - "node_modules/@truffle/codec/node_modules/semver": { - "version": "7.3.7", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", - "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", + "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, "peer": true, "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" + "@types/minimatch": "*", + "@types/node": "*" } }, - "node_modules/@truffle/codec/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/@types/json-schema": { + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", + "dev": true + }, + "node_modules/@types/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": "5.1.2", + "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-5.1.2.tgz", + "integrity": "sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA==", + "dev": true, + "peer": true + }, + "node_modules/@types/mocha": { + "version": "10.0.10", + "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-10.0.10.tgz", + "integrity": "sha512-xPyYSz1cMPnJQhl0CLMH68j3gprKZaTjG3s5Vi+fDgx+uhG9NOXwbVt52eFS8ECyXhyKcjDLCBEqBExKuiZb7Q==", "dev": true, "peer": true }, - "node_modules/@truffle/compile-common": { - "version": "0.9.8", - "resolved": "https://registry.npmjs.org/@truffle/compile-common/-/compile-common-0.9.8.tgz", - "integrity": "sha512-DTpiyo32t/YhLI1spn84D3MHYHrnoVqO+Gp7ZHrYNwDs86mAxtNiH5lsVzSb8cPgiqlvNsRCU9nm9R0YmKMTBQ==", - "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", + "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, "dependencies": { - "@truffle/error": "^0.2.2", - "colors": "1.4.0" - }, - "engines": { - "node": "^16.20 || ^18.16 || >=20" + "undici-types": "~6.19.2" } }, - "node_modules/@truffle/config": { - "version": "1.3.60", - "resolved": "https://registry.npmjs.org/@truffle/config/-/config-1.3.60.tgz", - "integrity": "sha512-ccpdafmky4sC9th0KgJiQsDMPqsgKLC0vgaCebBHTbOvkWHjKB5G7NDXYBd6ex3GGU3Jvs3j4sjvI2TTO+fsdw==", - "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", + "node_modules/@types/pbkdf2": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@types/pbkdf2/-/pbkdf2-3.1.0.tgz", + "integrity": "sha512-Cf63Rv7jCQ0LaL8tNXmEyqTHuIJxRdlS5vMh1mj5voN4+QFhVZnlZruezqpWYDiJ8UTzhP0VmeLXCmBk66YrMQ==", "dev": true, - "optional": true, - "peer": true, "dependencies": { - "@truffle/error": "^0.2.1", - "@truffle/events": "^0.1.24", - "@truffle/provider": "^0.3.12", - "conf": "^10.1.2", - "debug": "^4.3.1", - "find-up": "^2.1.0", - "lodash": "^4.17.21", - "original-require": "^1.0.1" + "@types/node": "*" } }, - "node_modules/@truffle/contract": { - "version": "4.6.29", - "resolved": "https://registry.npmjs.org/@truffle/contract/-/contract-4.6.29.tgz", - "integrity": "sha512-gbgmC2YdcSD4QGvx3GWGIVhyQxEPkChcC2a3D5d9aj2XfV3f6+FQw5PuL1wreA3I222ggZQqzbvMvhpp8gWs4Q==", - "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", + "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, + "peer": true + }, + "node_modules/@types/qs": { + "version": "6.9.7", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", + "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==", + "dev": true, + "peer": true + }, + "node_modules/@types/secp256k1": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@types/secp256k1/-/secp256k1-4.0.3.tgz", + "integrity": "sha512-Da66lEIFeIz9ltsdMZcpQvmrmmoqrfju8pm1BH8WbYjZSwUgCwXLb9C+9XYogwBITnbsSaMdVPb2ekf7TV+03w==", "dev": true, "dependencies": { - "@ensdomains/ensjs": "^2.1.0", - "@truffle/blockchain-utils": "^0.1.8", - "@truffle/contract-schema": "^3.4.15", - "@truffle/debug-utils": "^6.0.56", - "@truffle/error": "^0.2.1", - "@truffle/interface-adapter": "^0.5.36", - "bignumber.js": "^7.2.1", - "debug": "^4.3.1", - "ethers": "^4.0.32", - "web3": "1.10.0", - "web3-core-helpers": "1.10.0", - "web3-core-promievent": "1.10.0", - "web3-eth-abi": "1.10.0", - "web3-utils": "1.10.0" + "@types/node": "*" } }, - "node_modules/@truffle/contract-schema": { - "version": "3.4.16", - "resolved": "https://registry.npmjs.org/@truffle/contract-schema/-/contract-schema-3.4.16.tgz", - "integrity": "sha512-g0WNYR/J327DqtJPI70ubS19K1Fth/1wxt2jFqLsPmz5cGZVjCwuhiie+LfBde4/Mc9QR8G+L3wtmT5cyoBxAg==", - "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", + "node_modules/@typescript-eslint/eslint-plugin": { + "version": "8.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.18.0.tgz", + "integrity": "sha512-NR2yS7qUqCL7AIxdJUQf2MKKNDVNaig/dEB0GBLU7D+ZdHgK1NoH/3wsgO3OnPVipn51tG3MAwaODEGil70WEw==", "dev": true, "dependencies": { - "ajv": "^6.10.0", - "debug": "^4.3.1" + "@eslint-community/regexpp": "^4.10.0", + "@typescript-eslint/scope-manager": "8.18.0", + "@typescript-eslint/type-utils": "8.18.0", + "@typescript-eslint/utils": "8.18.0", + "@typescript-eslint/visitor-keys": "8.18.0", + "graphemer": "^1.4.0", + "ignore": "^5.3.1", + "natural-compare": "^1.4.0", + "ts-api-utils": "^1.3.0" }, "engines": { - "node": "^16.20 || ^18.16 || >=20" + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "@typescript-eslint/parser": "^8.0.0 || ^8.0.0-alpha.0", + "eslint": "^8.57.0 || ^9.0.0", + "typescript": ">=4.8.4 <5.8.0" } }, - "node_modules/@truffle/dashboard-message-bus-client": { - "version": "0.1.11", - "resolved": "https://registry.npmjs.org/@truffle/dashboard-message-bus-client/-/dashboard-message-bus-client-0.1.11.tgz", - "integrity": "sha512-ABoKtaogh5KjOw0UM5/6wYuhg4T5cMPVSSNF1rv4j3s2XGzExx3vUObvXqNO6I8gZ8xuvzClw4RmcEk8JkM8yA==", - "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", + "node_modules/@typescript-eslint/parser": { + "version": "8.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.18.0.tgz", + "integrity": "sha512-hgUZ3kTEpVzKaK3uNibExUYm6SKKOmTU2BOxBSvOYwtJEPdVQ70kZJpPjstlnhCHcuc2WGfSbpKlb/69ttyN5Q==", "dev": true, - "optional": true, - "peer": true, "dependencies": { - "@truffle/dashboard-message-bus-common": "^0.1.6", - "@truffle/promise-tracker": "^0.1.6", - "axios": "1.2.4", - "debug": "^4.3.1", - "delay": "^5.0.0", - "isomorphic-ws": "^4.0.1", - "node-abort-controller": "^3.0.1", - "tiny-typed-emitter": "^2.1.0", - "ws": "^7.2.0" - } - }, - "node_modules/@truffle/dashboard-message-bus-common": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/@truffle/dashboard-message-bus-common/-/dashboard-message-bus-common-0.1.7.tgz", - "integrity": "sha512-jN7q8LBmwQRldSzT/YJE33mnDLrp3EFFDuZyLwtQGInlfcRTXcr5yPY42jxr3Ln19dQe2Chx3I6dWtDByeKLIQ==", - "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", - "dev": true, - "optional": true, - "peer": true, + "@typescript-eslint/scope-manager": "8.18.0", + "@typescript-eslint/types": "8.18.0", + "@typescript-eslint/typescript-estree": "8.18.0", + "@typescript-eslint/visitor-keys": "8.18.0", + "debug": "^4.3.4" + }, "engines": { - "node": "^16.20 || ^18.16 || >=20" - } - }, - "node_modules/@truffle/db": { - "version": "2.0.34", - "resolved": "https://registry.npmjs.org/@truffle/db/-/db-2.0.34.tgz", - "integrity": "sha512-EP8Vnfwimt0G3hMcxPAtvsXrLaWPVUZLhwKWziyZdr/JJGSBG3J+z1iQ7qlZLJAxnBm2cJge+1/s2AdHWihAJA==", - "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", - "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "@graphql-tools/delegate": "^8.4.3", - "@graphql-tools/schema": "^8.3.1", - "@truffle/abi-utils": "^1.0.2", - "@truffle/code-utils": "^3.0.3", - "@truffle/config": "^1.3.60", - "abstract-leveldown": "^7.2.0", - "apollo-server": "^3.11.0", - "debug": "^4.3.1", - "fs-extra": "^9.1.0", - "graphql": "^15.3.0", - "graphql-tag": "^2.12.6", - "json-stable-stringify": "^1.0.1", - "pascal-case": "^2.0.1", - "pluralize": "^8.0.0", - "pouchdb": "7.3.0", - "pouchdb-adapter-memory": "^7.1.1", - "pouchdb-debug": "^7.1.1", - "pouchdb-find": "^7.0.0", - "web3-utils": "1.10.0" - } - }, - "node_modules/@truffle/db-loader": { - "version": "0.2.34", - "resolved": "https://registry.npmjs.org/@truffle/db-loader/-/db-loader-0.2.34.tgz", - "integrity": "sha512-bZqKL9s4eKd5Hbm85aPljOYiVW/tuQflDKYBycKHJYRzrNsf+9XYlUi8jUs3BBEtcEka+oZcHosBWpO1lfOlWw==", - "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", - "dev": true, - "peer": true, - "optionalDependencies": { - "@truffle/db": "^2.0.34" + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0", + "typescript": ">=4.8.4 <5.8.0" } }, - "node_modules/@truffle/db/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==", + "node_modules/@typescript-eslint/scope-manager": { + "version": "8.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.18.0.tgz", + "integrity": "sha512-PNGcHop0jkK2WVYGotk/hxj+UFLhXtGPiGtiaWgVBVP1jhMoMCHlTyJA+hEj4rszoSdLTK3fN4oOatrL0Cp+Xw==", "dev": true, - "optional": true, - "peer": true, "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" + "@typescript-eslint/types": "8.18.0", + "@typescript-eslint/visitor-keys": "8.18.0" }, "engines": { - "node": ">=10" + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" } }, - "node_modules/@truffle/db/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/type-utils": { + "version": "8.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.18.0.tgz", + "integrity": "sha512-er224jRepVAVLnMF2Q7MZJCq5CsdH2oqjP4dT7K6ij09Kyd+R21r7UVJrF0buMVdZS5QRhDzpvzAxHxabQadow==", "dev": true, - "optional": true, - "peer": true, "dependencies": { - "at-least-node": "^1.0.0", - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" + "@typescript-eslint/typescript-estree": "8.18.0", + "@typescript-eslint/utils": "8.18.0", + "debug": "^4.3.4", + "ts-api-utils": "^1.3.0" }, "engines": { - "node": ">=10" + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0", + "typescript": ">=4.8.4 <5.8.0" } }, - "node_modules/@truffle/db/node_modules/jsonfile": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", - "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "node_modules/@typescript-eslint/types": { + "version": "8.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.18.0.tgz", + "integrity": "sha512-FNYxgyTCAnFwTrzpBGq+zrnoTO4x0c1CKYY5MuUTzpScqmY5fmsh2o3+57lqdI3NZucBDCzDgdEbIaNfAjAHQA==", "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "universalify": "^2.0.0" + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" }, - "optionalDependencies": { - "graceful-fs": "^4.1.6" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" } }, - "node_modules/@truffle/db/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==", + "node_modules/@typescript-eslint/typescript-estree": { + "version": "8.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.18.0.tgz", + "integrity": "sha512-rqQgFRu6yPkauz+ms3nQpohwejS8bvgbPyIDq13cgEDbkXt4LH4OkDMT0/fN1RUtzG8e8AKJyDBoocuQh8qNeg==", "dev": true, - "optional": true, - "peer": true, + "dependencies": { + "@typescript-eslint/types": "8.18.0", + "@typescript-eslint/visitor-keys": "8.18.0", + "debug": "^4.3.4", + "fast-glob": "^3.3.2", + "is-glob": "^4.0.3", + "minimatch": "^9.0.4", + "semver": "^7.6.0", + "ts-api-utils": "^1.3.0" + }, "engines": { - "node": ">=10" + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <5.8.0" } }, - "node_modules/@truffle/db/node_modules/universalify": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", - "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==", + "node_modules/@typescript-eslint/typescript-estree/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, - "optional": true, - "peer": true, - "engines": { - "node": ">= 10.0.0" + "dependencies": { + "balanced-match": "^1.0.0" } }, - "node_modules/@truffle/debug-utils": { - "version": "6.0.57", - "resolved": "https://registry.npmjs.org/@truffle/debug-utils/-/debug-utils-6.0.57.tgz", - "integrity": "sha512-Q6oI7zLaeNLB69ixjwZk2UZEWBY6b2OD1sjLMGDKBGR7GaHYiw96GLR2PFgPH1uwEeLmV4N78LYaQCrDsHbNeA==", - "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", + "node_modules/@typescript-eslint/typescript-estree/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": { - "@truffle/codec": "^0.17.3", - "@trufflesuite/chromafi": "^3.0.0", - "bn.js": "^5.1.3", - "chalk": "^2.4.2", - "debug": "^4.3.1", - "highlightjs-solidity": "^2.0.6" + "brace-expansion": "^2.0.1" }, "engines": { - "node": "^16.20 || ^18.16 || >=20" + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/@truffle/debug-utils/node_modules/@truffle/codec": { - "version": "0.17.3", - "resolved": "https://registry.npmjs.org/@truffle/codec/-/codec-0.17.3.tgz", - "integrity": "sha512-Ko/+dsnntNyrJa57jUD9u4qx9nQby+H4GsUO6yjiCPSX0TQnEHK08XWqBSg0WdmCH2+h0y1nr2CXSx8gbZapxg==", - "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", + "node_modules/@typescript-eslint/typescript-estree/node_modules/semver": { + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", "dev": true, - "dependencies": { - "@truffle/abi-utils": "^1.0.3", - "@truffle/compile-common": "^0.9.8", - "big.js": "^6.0.3", - "bn.js": "^5.1.3", - "cbor": "^5.2.0", - "debug": "^4.3.1", - "lodash": "^4.17.21", - "semver": "^7.5.4", - "utf8": "^3.0.0", - "web3-utils": "1.10.0" + "bin": { + "semver": "bin/semver.js" }, "engines": { - "node": "^16.20 || ^18.16 || >=20" + "node": ">=10" } }, - "node_modules/@truffle/debug-utils/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/@typescript-eslint/utils": { + "version": "8.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.18.0.tgz", + "integrity": "sha512-p6GLdY383i7h5b0Qrfbix3Vc3+J2k6QWw6UMUeY5JGfm3C5LbZ4QIZzJNoNOfgyRe0uuYKjvVOsO/jD4SJO+xg==", "dev": true, + "dependencies": { + "@eslint-community/eslint-utils": "^4.4.0", + "@typescript-eslint/scope-manager": "8.18.0", + "@typescript-eslint/types": "8.18.0", + "@typescript-eslint/typescript-estree": "8.18.0" + }, "engines": { - "node": "*" + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0", + "typescript": ">=4.8.4 <5.8.0" } }, - "node_modules/@truffle/debug-utils/node_modules/cbor": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/cbor/-/cbor-5.2.0.tgz", - "integrity": "sha512-5IMhi9e1QU76ppa5/ajP1BmMWZ2FHkhAhjeVKQ/EFCgYSEaeVaoGtL7cxJskf9oCCk+XjzaIdc3IuU/dbA/o2A==", + "node_modules/@typescript-eslint/visitor-keys": { + "version": "8.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.18.0.tgz", + "integrity": "sha512-pCh/qEA8Lb1wVIqNvBke8UaRjJ6wrAWkJO5yyIbs8Yx6TNGYyfNjOo61tLv+WwLvoLPp4BQ8B7AHKijl8NGUfw==", "dev": true, "dependencies": { - "bignumber.js": "^9.0.1", - "nofilter": "^1.0.4" + "@typescript-eslint/types": "8.18.0", + "eslint-visitor-keys": "^4.2.0" }, "engines": { - "node": ">=6.0.0" + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" } }, - "node_modules/@truffle/debug-utils/node_modules/nofilter": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/nofilter/-/nofilter-1.0.4.tgz", - "integrity": "sha512-N8lidFp+fCz+TD51+haYdbDGrcBWwuHX40F5+z0qkUjMJ5Tp+rdSuAkMJ9N9eoolDlEVTf6u5icM+cNKkKW2mA==", + "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, - "engines": { - "node": ">=8" - } + "peer": true }, - "node_modules/@truffle/debug-utils/node_modules/semver": { - "version": "7.6.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.2.tgz", - "integrity": "sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w==", + "node_modules/acorn": { + "version": "8.14.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.0.tgz", + "integrity": "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==", "dev": true, "bin": { - "semver": "bin/semver.js" + "acorn": "bin/acorn" }, "engines": { - "node": ">=10" + "node": ">=0.4.0" } }, - "node_modules/@truffle/debugger": { - "version": "11.1.5", - "resolved": "https://registry.npmjs.org/@truffle/debugger/-/debugger-11.1.5.tgz", - "integrity": "sha512-zRVmxVhxNHxJEaqsuHvCLdDAKr4QJiVwf7PI/iwP4YFEt9cjyEMEM9iKLU9nntuqvzWewgerlFpGdyGJYYwyrA==", - "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", + "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, - "peer": true, - "dependencies": { - "@ensdomains/ensjs": "^2.1.0", - "@truffle/abi-utils": "^1.0.1", - "@truffle/codec": "^0.15.3", - "@truffle/source-map-utils": "^1.3.114", - "bn.js": "^5.1.3", - "debug": "^4.3.1", - "json-pointer": "^0.6.1", - "json-stable-stringify": "^1.0.1", - "lodash": "^4.17.21", - "redux": "^3.7.2", - "redux-saga": "1.0.0", - "reselect-tree": "^1.3.7", - "semver": "7.3.7", - "web3": "1.10.0", - "web3-eth-abi": "1.10.0" + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" } }, - "node_modules/@truffle/debugger/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/acorn-walk": { + "version": "8.3.4", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.4.tgz", + "integrity": "sha512-ueEepnujpqee2o5aIYnvHU6C0A42MNdsIDeqy5BydrkuC5R1ZuUFnm27EeFJGoEHJQgn3uleRvmTXaJgfXbt4g==", "dev": true, "peer": true, "dependencies": { - "yallist": "^4.0.0" + "acorn": "^8.11.0" }, "engines": { - "node": ">=10" + "node": ">=0.4.0" } }, - "node_modules/@truffle/debugger/node_modules/semver": { - "version": "7.3.7", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", - "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", + "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, - "peer": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, "engines": { - "node": ">=10" + "node": ">=0.3.0" } }, - "node_modules/@truffle/debugger/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/aes-js": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/aes-js/-/aes-js-3.0.0.tgz", + "integrity": "sha512-H7wUZRn8WpTq9jocdxQ2c8x2sKo9ZVmzfRE13GiNJXfp7NcKYEdvl3vspKjXox6RIG2VtaRe4JFvxG4rqp2Zuw==", "dev": true, "peer": true }, - "node_modules/@truffle/error": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/@truffle/error/-/error-0.2.2.tgz", - "integrity": "sha512-TqbzJ0O8DHh34cu8gDujnYl4dUl6o2DE4PR6iokbybvnIm/L2xl6+Gv1VC+YJS45xfH83Yo3/Zyg/9Oq8/xZWg==", - "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", + "node_modules/agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", "dev": true, + "dependencies": { + "debug": "4" + }, "engines": { - "node": "^16.20 || ^18.16 || >=20" + "node": ">= 6.0.0" } }, - "node_modules/@truffle/events": { - "version": "0.1.24", - "resolved": "https://registry.npmjs.org/@truffle/events/-/events-0.1.24.tgz", - "integrity": "sha512-rS+jKDjmdM0g+14H/H8MzhohaTKsSS6plNNzO95MIcUs0Ytinu1DXfSkUovDpgv5h2NcRoU0BMTKCR21Y3JiNw==", - "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", + "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, - "optional": true, - "peer": true, "dependencies": { - "@truffle/dashboard-message-bus-client": "^0.1.11", - "@truffle/spinners": "^0.2.4", - "debug": "^4.3.1", - "emittery": "^0.4.1", - "web3-utils": "1.10.0" - } - }, - "node_modules/@truffle/hdwallet": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/@truffle/hdwallet/-/hdwallet-0.1.3.tgz", - "integrity": "sha512-kuikvLE+4WvVIj91CSrRVN92QGh+1Vlx8PRkxKQlvZjjE3J5NmvwfAs7b9poTeC4c6YfoHqwike1kfd1qYXO1w==", - "dependencies": { - "ethereum-cryptography": "1.1.2", - "keccak": "3.0.2", - "secp256k1": "4.0.3" - } - }, - "node_modules/@truffle/hdwallet-provider": { - "version": "2.1.14", - "resolved": "https://registry.npmjs.org/@truffle/hdwallet-provider/-/hdwallet-provider-2.1.14.tgz", - "integrity": "sha512-KlUeEdIRWhaMJCsH0td03JcYM6lJ1IKFlNT8N6cjPJHuby1rwAadjRBG5PyXBeadOIcvm6tjKzftdRUauFiVDw==", - "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", - "dependencies": { - "@ethereumjs/common": "^2.4.0", - "@ethereumjs/tx": "^3.3.0", - "@metamask/eth-sig-util": "4.0.1", - "@truffle/hdwallet": "^0.1.3", - "@types/ethereum-protocol": "^1.0.0", - "@types/web3": "1.0.20", - "@types/web3-provider-engine": "^14.0.0", - "ethereum-cryptography": "1.1.2", - "ethereum-protocol": "^1.0.1", - "ethereumjs-util": "^7.1.5", - "web3": "1.10.0", - "web3-provider-engine": "16.0.3" + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "node_modules/@truffle/interface-adapter": { - "version": "0.5.36", - "resolved": "https://registry.npmjs.org/@truffle/interface-adapter/-/interface-adapter-0.5.36.tgz", - "integrity": "sha512-e6ECu9YDJuQjjxphdtJatHGgjlGsX/a3rQwqG2kBrK4cynGJdlejoo2iv/7Dj97wgIMIr1qH3L2WDrfTNF+K1g==", - "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", + "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": { - "bn.js": "^5.1.3", - "ethers": "^4.0.32", - "web3": "1.10.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" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" } }, - "node_modules/@truffle/promise-tracker": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/@truffle/promise-tracker/-/promise-tracker-0.1.7.tgz", - "integrity": "sha512-NiPXNJvdei8MRZRUjEZoL0Y7TPDR1TaeCfGUgB3md6Q7TBiqSKo2p5OT36JO106B2j57SLmXOiDn8fLb+u2sjA==", - "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", + "node_modules/amazon-cognito-identity-js": { + "version": "6.3.12", + "resolved": "https://registry.npmjs.org/amazon-cognito-identity-js/-/amazon-cognito-identity-js-6.3.12.tgz", + "integrity": "sha512-s7NKDZgx336cp+oDeUtB2ZzT8jWJp/v2LWuYl+LQtMEODe22RF1IJ4nRiDATp+rp1pTffCZcm44Quw4jx2bqNg==", "dev": true, - "optional": true, - "peer": true, - "engines": { - "node": "^16.20 || ^18.16 || >=20" + "dependencies": { + "@aws-crypto/sha256-js": "1.2.2", + "buffer": "4.9.2", + "fast-base64-decode": "^1.0.0", + "isomorphic-unfetch": "^3.0.0", + "js-cookie": "^2.2.1" } }, - "node_modules/@truffle/provider": { - "version": "0.3.12", - "resolved": "https://registry.npmjs.org/@truffle/provider/-/provider-0.3.12.tgz", - "integrity": "sha512-R7zS1eyY8H37ExkMxmMqa6bFN4UYLiYSCc+4g/8IjEU2lZXhKWUXA2gWzuMPT+XWfAu+IrC1PqLIHQgYe05EVA==", - "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", + "node_modules/amazon-cognito-identity-js/node_modules/buffer": { + "version": "4.9.2", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.2.tgz", + "integrity": "sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg==", "dev": true, - "optional": true, - "peer": true, "dependencies": { - "@truffle/error": "^0.2.1", - "@truffle/interface-adapter": "^0.5.36", - "debug": "^4.3.1", - "web3": "1.10.0" + "base64-js": "^1.0.2", + "ieee754": "^1.1.4", + "isarray": "^1.0.0" } }, - "node_modules/@truffle/source-map-utils": { - "version": "1.3.119", - "resolved": "https://registry.npmjs.org/@truffle/source-map-utils/-/source-map-utils-1.3.119.tgz", - "integrity": "sha512-TFYi3XvanY8WZBOfBwDHQe9HfZUXJ2ejnmFNjsq1//sbM4fUNWjeNshGqkWGxfKPh3OAzXgD4iTnPG3YeXM8YQ==", - "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", + "node_modules/amazon-cognito-identity-js/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/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, "peer": true, - "dependencies": { - "@truffle/code-utils": "^3.0.4", - "@truffle/codec": "^0.17.3", - "debug": "^4.3.1", - "json-pointer": "^0.6.1", - "node-interval-tree": "^1.3.3", - "web3-utils": "1.10.0" - }, "engines": { - "node": "^16.20 || ^18.16 || >=20" + "node": ">=0.4.2" } }, - "node_modules/@truffle/source-map-utils/node_modules/@truffle/codec": { - "version": "0.17.3", - "resolved": "https://registry.npmjs.org/@truffle/codec/-/codec-0.17.3.tgz", - "integrity": "sha512-Ko/+dsnntNyrJa57jUD9u4qx9nQby+H4GsUO6yjiCPSX0TQnEHK08XWqBSg0WdmCH2+h0y1nr2CXSx8gbZapxg==", - "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", + "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, - "peer": true, "dependencies": { - "@truffle/abi-utils": "^1.0.3", - "@truffle/compile-common": "^0.9.8", - "big.js": "^6.0.3", - "bn.js": "^5.1.3", - "cbor": "^5.2.0", - "debug": "^4.3.1", - "lodash": "^4.17.21", - "semver": "^7.5.4", - "utf8": "^3.0.0", - "web3-utils": "1.10.0" - }, - "engines": { - "node": "^16.20 || ^18.16 || >=20" + "string-width": "^4.1.0" } }, - "node_modules/@truffle/source-map-utils/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/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, - "peer": true, "engines": { - "node": "*" + "node": ">=6" } }, - "node_modules/@truffle/source-map-utils/node_modules/cbor": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/cbor/-/cbor-5.2.0.tgz", - "integrity": "sha512-5IMhi9e1QU76ppa5/ajP1BmMWZ2FHkhAhjeVKQ/EFCgYSEaeVaoGtL7cxJskf9oCCk+XjzaIdc3IuU/dbA/o2A==", + "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, - "peer": true, "dependencies": { - "bignumber.js": "^9.0.1", - "nofilter": "^1.0.4" + "type-fest": "^0.21.3" }, "engines": { - "node": ">=6.0.0" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@truffle/source-map-utils/node_modules/nofilter": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/nofilter/-/nofilter-1.0.4.tgz", - "integrity": "sha512-N8lidFp+fCz+TD51+haYdbDGrcBWwuHX40F5+z0qkUjMJ5Tp+rdSuAkMJ9N9eoolDlEVTf6u5icM+cNKkKW2mA==", + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", "dev": true, - "peer": true, "engines": { "node": ">=8" } }, - "node_modules/@truffle/source-map-utils/node_modules/semver": { - "version": "7.6.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.2.tgz", - "integrity": "sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w==", + "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, - "peer": true, - "bin": { - "semver": "bin/semver.js" + "dependencies": { + "color-convert": "^1.9.0" }, "engines": { - "node": ">=10" + "node": ">=4" } }, - "node_modules/@truffle/spinners": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/@truffle/spinners/-/spinners-0.2.5.tgz", - "integrity": "sha512-emYyLEuoY62MQV/RNjyVIuTPEjMyIA0WiYMG2N3yfh8OSjD/TC0HRc2oyDWtVkNNox/5D2tH2m5fFB8HOt80FQ==", - "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", + "node_modules/antlr4": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/antlr4/-/antlr4-4.13.0.tgz", + "integrity": "sha512-zooUbt+UscjnWyOrsuY/tVFL4rwrAGwOivpQmvmUDE22hy/lUA467Rc1rcixyRwcRUIXFYBwv7+dClDSHdmmew==", "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "@trufflesuite/spinnies": "^0.1.1" - }, "engines": { - "node": "^16.20 || ^18.16 || >=20" + "node": ">=16" } }, - "node_modules/@trufflesuite/chromafi": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@trufflesuite/chromafi/-/chromafi-3.0.0.tgz", - "integrity": "sha512-oqWcOqn8nT1bwlPPfidfzS55vqcIDdpfzo3HbU9EnUmcSTX+I8z0UyUFI3tZQjByVJulbzxHxUGS3ZJPwK/GPQ==", + "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/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": { - "camelcase": "^4.1.0", - "chalk": "^2.3.2", - "cheerio": "^1.0.0-rc.2", - "detect-indent": "^5.0.0", - "highlight.js": "^10.4.1", - "lodash.merge": "^4.6.2", - "strip-ansi": "^4.0.0", - "strip-indent": "^2.0.0" + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" } }, - "node_modules/@trufflesuite/chromafi/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/arg": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", + "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", "dev": true, - "engines": { - "node": ">=4" - } + "peer": true }, - "node_modules/@trufflesuite/chromafi/node_modules/camelcase": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", - "integrity": "sha512-FxAv7HpHrXbh3aPo4o2qxHay2lkLY3x5Mw3KeE4KQE8ysVfziWeRZDwcjauvwBSGEC/nXUPzZy8zeh4HokqOnw==", + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true + }, + "node_modules/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, + "peer": true, "engines": { - "node": ">=4" + "node": ">=6" } }, - "node_modules/@trufflesuite/chromafi/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==", + "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": { - "ansi-regex": "^3.0.0" + "call-bind": "^1.0.5", + "is-array-buffer": "^3.0.4" }, "engines": { - "node": ">=4" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@trufflesuite/spinnies": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@trufflesuite/spinnies/-/spinnies-0.1.1.tgz", - "integrity": "sha512-jltEtmFJj6xmQqr85gP8OqBHCEiId+zw+uAsb3DyLLRD17O6sySW6Afa2Z/jpzSafj+32ssDfLJ+c0of1NLqcA==", + "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, - "optional": true, "peer": true, - "dependencies": { - "chalk": "^4.1.2", - "cli-cursor": "^3.1.0", - "strip-ansi": "^6.0.0" + "engines": { + "node": ">=8" } }, - "node_modules/@trufflesuite/spinnies/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/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, - "optional": true, "peer": true, - "dependencies": { - "color-convert": "^2.0.1" - }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "node": ">=0.10.0" } }, - "node_modules/@trufflesuite/spinnies/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/array.prototype.findlast": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/array.prototype.findlast/-/array.prototype.findlast-1.2.5.tgz", + "integrity": "sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==", "dev": true, - "optional": true, - "peer": true, "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "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": ">=10" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@trufflesuite/spinnies/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/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, - "optional": true, - "peer": true, "dependencies": { - "color-name": "~1.1.4" + "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": ">=7.0.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@trufflesuite/spinnies/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/asap": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", + "integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==", "dev": true, - "optional": true, "peer": true }, - "node_modules/@trufflesuite/spinnies/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/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, - "optional": true, - "peer": true, "engines": { - "node": ">=8" + "node": "*" } }, - "node_modules/@trufflesuite/spinnies/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/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==", "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "has-flag": "^4.0.0" - }, "engines": { "node": ">=8" } }, - "node_modules/@types/accepts": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/@types/accepts/-/accepts-1.3.5.tgz", - "integrity": "sha512-jOdnI/3qTpHABjM5cx1Hc0sKsPoYCp+DP/GJRGtDlPd7fiV9oXGGIcjW/ZOxLIvjGz8MA+uMZI9metHlgqbgwQ==", + "node_modules/async-retry": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/async-retry/-/async-retry-1.3.3.tgz", + "integrity": "sha512-wfr/jstw9xNi/0teMHrRW7dsz3Lt5ARhYNZ2ewpadnhaIp5mbALhOAP+EAdsC7t4Z6wqsDVv9+W6gm1Dk9mEyw==", "dev": true, - "optional": true, - "peer": true, "dependencies": { - "@types/node": "*" + "retry": "0.13.1" } }, - "node_modules/@types/async-eventemitter": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/@types/async-eventemitter/-/async-eventemitter-0.2.1.tgz", - "integrity": "sha512-M2P4Ng26QbAeITiH7w1d7OxtldgfAe0wobpyJzVK/XOb0cUGKU2R4pfAhqcJBXAe2ife5ZOhSv4wk7p+ffURtg==", + "node_modules/async-retry/node_modules/retry": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz", + "integrity": "sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==", "dev": true, - "peer": true - }, - "node_modules/@types/bn.js": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/@types/bn.js/-/bn.js-5.1.1.tgz", - "integrity": "sha512-qNrYbZqMx0uJAfKnKclPh+dTwK33KfLHYqtyODwd5HnXOjnkhc4qgn3BrK6RWyGZm5+sIFE7Q7Vz6QQtJB7w7g==", - "dependencies": { - "@types/node": "*" + "engines": { + "node": ">= 4" } }, - "node_modules/@types/body-parser": { - "version": "1.19.2", - "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.2.tgz", - "integrity": "sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==", + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", + "dev": true + }, + "node_modules/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, - "optional": true, "peer": true, - "dependencies": { - "@types/connect": "*", - "@types/node": "*" + "engines": { + "node": ">= 4.0.0" } }, - "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==", + "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": { - "@types/http-cache-semantics": "*", - "@types/keyv": "^3.1.4", - "@types/node": "*", - "@types/responselike": "^1.0.0" + "possible-typed-array-names": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@types/connect": { - "version": "3.4.35", - "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz", - "integrity": "sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==", + "node_modules/axios": { + "version": "0.24.0", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.24.0.tgz", + "integrity": "sha512-Q6cWsys88HoPgAaFAVUb0WpPk0O8iTeisR9IMqy9G8AbO4NlpVknrnQS03zzF9PGAWgO3cgletO3VjV/P7VztA==", "dev": true, - "optional": true, - "peer": true, "dependencies": { - "@types/node": "*" + "follow-redirects": "^1.14.4" } }, - "node_modules/@types/cors": { - "version": "2.8.12", - "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.12.tgz", - "integrity": "sha512-vt+kDhq/M2ayberEtJcIN/hxXy1Pk+59g2FV/ZQceeaTyCtCucjL2Q7FXlFjtWn4n15KCr1NE2lNNFhp0lEThw==", - "dev": true, - "optional": true, - "peer": true - }, - "node_modules/@types/ethereum-protocol": { + "node_modules/balanced-match": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@types/ethereum-protocol/-/ethereum-protocol-1.0.2.tgz", - "integrity": "sha512-Ri/hwt4UckZlF7eqhhAQcXsNvcgQmSJOKZteLco1/5NsRcneW/cJuQcrQNILN2Ohs9WUQjeGW3ZRRNqkEVMzuQ==", - "dependencies": { - "bignumber.js": "7.2.1" - } + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true + }, + "node_modules/base-x": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/base-x/-/base-x-5.0.0.tgz", + "integrity": "sha512-sMW3VGSX1QWVFA6l8U62MLKz29rRfpTlYdCqLdpLo1/Yd4zZwSbnUaDfciIAowAqvq7YFnWq9hrhdg1KYgc1lQ==", + "dev": true }, - "node_modules/@types/express": { - "version": "4.17.14", - "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.14.tgz", - "integrity": "sha512-TEbt+vaPFQ+xpxFLFssxUDXj5cWCxZJjIcB7Yg0k0GMHGtgtQgpvx/MUQUeAkNbA9AAGrwkAsoeItdTgS7FMyg==", + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "@types/body-parser": "*", - "@types/express-serve-static-core": "^4.17.18", - "@types/qs": "*", - "@types/serve-static": "*" - } + "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/@types/express-serve-static-core": { - "version": "4.17.33", - "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.33.tgz", - "integrity": "sha512-TPBqmR/HRYI3eC2E5hmiivIzv+bidAfXofM+sbonAGvyDhySGw9/PQZFt2BLOrjUUR++4eJVpx6KnLQK1Fk9tA==", + "node_modules/bech32": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/bech32/-/bech32-2.0.0.tgz", + "integrity": "sha512-LcknSilhIGatDAsY1ak2I8VtGaHNhgMSYVxFrGLXv+xLHytaKZKcaUJJUE7qmBr7h33o5YQwP55pMI0xmkpJwg==", "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "@types/node": "*", - "@types/qs": "*", - "@types/range-parser": "*" - } + "license": "MIT" }, - "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/binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", "dev": true, - "dependencies": { - "@types/minimatch": "*", - "@types/node": "*" - } - }, - "node_modules/@types/http-cache-semantics": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.0.1.tgz", - "integrity": "sha512-SZs7ekbP8CN0txVG2xVRH6EgKmEm31BOxA07vkFaETzZz1xh+cbt8BcI0slpymvwhx5dlFnQG2rTlPVQn+iRPQ==" - }, - "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==", - "dependencies": { - "@types/node": "*" + "engines": { + "node": ">=8" } }, - "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==", - "dev": true, - "optional": true, - "peer": 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, - "peer": true - }, - "node_modules/@types/mime": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@types/mime/-/mime-3.0.1.tgz", - "integrity": "sha512-Y4XFY5VJAuw0FgAqPNd6NNoV44jbq9Bz2L7Rh/J6jLTiHBSBJa9fxqQIvkIld4GsoDOcCbvzOUAbLPsSKKg+uA==", + "node_modules/bip174": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/bip174/-/bip174-2.1.1.tgz", + "integrity": "sha512-mdFV5+/v0XyNYXjBS6CQPLo9ekCx4gtKZFnJm5PMto7Fs9hTTDpkkzOB7/FtluRI6JbUUAu+snTYfJRgHLZbZQ==", "dev": true, - "optional": true, - "peer": true - }, - "node_modules/@types/minimatch": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-5.1.2.tgz", - "integrity": "sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA==", - "dev": true - }, - "node_modules/@types/node": { - "version": "18.11.14", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.11.14.tgz", - "integrity": "sha512-0KXV57tENYmmJMl+FekeW9V3O/rlcqGQQJ/hNh9r8pKIj304pskWuEd8fCyNT86g/TpO0gcOTiLzsHLEURFMIQ==" - }, - "node_modules/@types/pbkdf2": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@types/pbkdf2/-/pbkdf2-3.1.0.tgz", - "integrity": "sha512-Cf63Rv7jCQ0LaL8tNXmEyqTHuIJxRdlS5vMh1mj5voN4+QFhVZnlZruezqpWYDiJ8UTzhP0VmeLXCmBk66YrMQ==", - "dependencies": { - "@types/node": "*" + "engines": { + "node": ">=8.0.0" } }, - "node_modules/@types/qs": { - "version": "6.9.7", - "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", - "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==", - "dev": true, - "optional": true, - "peer": true - }, - "node_modules/@types/range-parser": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz", - "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==", + "node_modules/bitcoinjs-lib": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/bitcoinjs-lib/-/bitcoinjs-lib-6.0.1.tgz", + "integrity": "sha512-x/7D4jDj/MMkmO6t3p2CSDXTqpwZ/jRsRiJDmaiXabrR9XRo7jwby8HRn7EyK1h24rKFFI7vI0ay4czl6bDOZQ==", "dev": true, - "optional": true, - "peer": true - }, - "node_modules/@types/responselike": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@types/responselike/-/responselike-1.0.0.tgz", - "integrity": "sha512-85Y2BjiufFzaMIlvJDvTTB8Fxl2xfLo4HgmHzVBz08w4wDePCTjYw66PdrolO0kzli3yam/YCgRufyo1DdQVTA==", "dependencies": { - "@types/node": "*" + "bech32": "^2.0.0", + "bip174": "^2.0.1", + "bs58check": "^2.1.2", + "create-hash": "^1.1.0", + "typeforce": "^1.11.3", + "varuint-bitcoin": "^1.1.2", + "wif": "^2.0.1" + }, + "engines": { + "node": ">=8.0.0" } }, - "node_modules/@types/secp256k1": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@types/secp256k1/-/secp256k1-4.0.3.tgz", - "integrity": "sha512-Da66lEIFeIz9ltsdMZcpQvmrmmoqrfju8pm1BH8WbYjZSwUgCwXLb9C+9XYogwBITnbsSaMdVPb2ekf7TV+03w==", + "node_modules/bitcoinjs-lib/node_modules/base-x": { + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/base-x/-/base-x-3.0.10.tgz", + "integrity": "sha512-7d0s06rR9rYaIWHkpfLIFICM/tkSVdoPC9qYAQRpxn9DdKNWNsKC0uk++akckyLq16Tx2WIinnZ6WRriAt6njQ==", + "dev": true, "dependencies": { - "@types/node": "*" + "safe-buffer": "^5.0.1" } }, - "node_modules/@types/serve-static": { - "version": "1.15.1", - "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.1.tgz", - "integrity": "sha512-NUo5XNiAdULrJENtJXZZ3fHtfMolzZwczzBbnAeBbqBwG+LaG6YaJtuwzwGSQZ2wsCrxjEhNNjAkKigy3n8teQ==", + "node_modules/bitcoinjs-lib/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, - "optional": true, - "peer": true, "dependencies": { - "@types/mime": "*", - "@types/node": "*" + "base-x": "^3.0.2" } }, - "node_modules/@types/underscore": { - "version": "1.11.4", - "resolved": "https://registry.npmjs.org/@types/underscore/-/underscore-1.11.4.tgz", - "integrity": "sha512-uO4CD2ELOjw8tasUrAhvnn2W4A0ZECOvMjCivJr4gA9pGgjv+qxKWY9GLTMVEK8ej85BxQOocUyE7hImmSQYcg==" - }, - "node_modules/@types/web3": { - "version": "1.0.20", - "resolved": "https://registry.npmjs.org/@types/web3/-/web3-1.0.20.tgz", - "integrity": "sha512-KTDlFuYjzCUlBDGt35Ir5QRtyV9klF84MMKUsEJK10sTWga/71V+8VYLT7yysjuBjaOx2uFYtIWNGoz3yrNDlg==", + "node_modules/bitcoinjs-lib/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, "dependencies": { - "@types/bn.js": "*", - "@types/underscore": "*" + "bs58": "^4.0.0", + "create-hash": "^1.1.0", + "safe-buffer": "^5.1.2" } }, - "node_modules/@types/web3-provider-engine": { - "version": "14.0.1", - "resolved": "https://registry.npmjs.org/@types/web3-provider-engine/-/web3-provider-engine-14.0.1.tgz", - "integrity": "sha512-SaAfLJY/40wKFDsNFwaNfwqFSL6kVhTx9JD18qM+Gaw1qdAXLYF/6E7TIqWEdoG4so6fki/zxURP5NsoCePYJw==", - "dependencies": { - "@types/ethereum-protocol": "*" - } + "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/abbrev": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.0.9.tgz", - "integrity": "sha512-LEyx4aLEC3x6T0UguF6YILf+ntvmOaWsVfENmIW0E9H09vKlLDGelMjjSm0jkDHALj8A8quZ/HapKNigzwge+Q==", + "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==", "dev": true }, - "node_modules/abort-controller": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", - "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==", + "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, - "peer": true, "dependencies": { - "event-target-shim": "^5.0.0" + "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": ">=6.5" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "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==" - }, - "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==", + "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, - "peer": 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_modules/abstract-leveldown": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-2.6.3.tgz", - "integrity": "sha512-2++wDf/DYqkPR3o5tbfdhF96EfMApo1GpPfzOsR/ZYXdkSmELlvOOEAl9iKkRsktMPHdGjO4rtkBpf2I7TiTeA==", - "dependencies": { - "xtend": "~4.0.0" + "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/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": { - "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/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/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, - "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, "engines": { - "node": ">=0.3.0" + "node": ">=7.0.0" } }, - "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/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/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/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, - "peer": true, - "dependencies": { - "debug": "4" - }, "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/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, - "peer": true, "dependencies": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" + "has-flag": "^4.0.0" }, "engines": { "node": ">=8" } }, - "node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" + "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, + "engines": { + "node": ">=10" }, "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" + "url": "https://github.com/sponsors/sindresorhus" } }, - "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==", + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "dev": true, - "optional": true, - "peer": true, "dependencies": { - "ajv": "^8.0.0" - }, - "peerDependencies": { - "ajv": "^8.0.0" - }, - "peerDependenciesMeta": { - "ajv": { - "optional": true - } + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" } }, - "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==", + "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, - "optional": true, - "peer": 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" + "fill-range": "^7.1.1" }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" + "engines": { + "node": ">=8" } }, - "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==", - "dev": true, - "optional": true, - "peer": true + "node_modules/brorand": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", + "integrity": "sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==", + "dev": true }, - "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/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/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==", + "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, - "peer": true, - "engines": { - "node": ">=6" + "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/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/bs58": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/bs58/-/bs58-6.0.0.tgz", + "integrity": "sha512-PD0wEnEYg6ijszw/u8s+iI3H17cTymlrwkKhDhPZq+Sokl3AU4htyBFTjAeNAlCCmg0f53g6ih3jATyCKftTfw==", "dev": true, - "peer": true, "dependencies": { - "type-fest": "^0.21.3" - }, - "engines": { - "node": ">=8" - }, - "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==", - "engines": { - "node": ">=8" + "base-x": "^5.0.0" } }, - "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/bs58check": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/bs58check/-/bs58check-3.0.1.tgz", + "integrity": "sha512-hjuuJvoWEybo7Hn/0xOrczQKKEKD63WguEjlhLExYs2wUBcebDC1jDNK17eEAD2lYfw82d5ASC1d7K3SWszjaQ==", + "dev": true, "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" + "@noble/hashes": "^1.2.0", + "bs58": "^5.0.0" } }, - "node_modules/antlr4": { - "version": "4.13.0", - "resolved": "https://registry.npmjs.org/antlr4/-/antlr4-4.13.0.tgz", - "integrity": "sha512-zooUbt+UscjnWyOrsuY/tVFL4rwrAGwOivpQmvmUDE22hy/lUA467Rc1rcixyRwcRUIXFYBwv7+dClDSHdmmew==", + "node_modules/bs58check/node_modules/@noble/hashes": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.3.1.tgz", + "integrity": "sha512-EbqwksQwz9xDRGfDST86whPBgM65E0OH/pCgqW0GBVzO22bNE+NuIbeTb714+IfSjU3aRk47EUvXIb5bTsenKA==", "dev": true, "engines": { - "node": ">=16" + "node": ">= 16" + }, + "funding": { + "url": "https://paulmillr.com/funding/" } }, - "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==", + "node_modules/bs58check/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==", "dev": true }, - "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==", + "node_modules/bs58check/node_modules/bs58": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/bs58/-/bs58-5.0.0.tgz", + "integrity": "sha512-r+ihvQJvahgYT50JD05dyJNKlmmSlMoOGwn1lCcEzanPglg7TxYjioQUYehQ9mAR/+hOSd2jRc/Z2y5UxBymvQ==", "dev": true, "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - }, - "engines": { - "node": ">= 8" + "base-x": "^4.0.0" } }, - "node_modules/apollo-datasource": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/apollo-datasource/-/apollo-datasource-3.3.2.tgz", - "integrity": "sha512-L5TiS8E2Hn/Yz7SSnWIVbZw0ZfEIXZCa5VUiVxD9P53JvSrf4aStvsFDlGWPvpIdCR+aly2CfoB79B9/JjKFqg==", - "deprecated": "The `apollo-datasource` package is part of Apollo Server v2 and v3, which are now deprecated (end-of-life October 22nd 2023). See https://www.apollographql.com/docs/apollo-server/previous-versions/ for more details.", + "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.7", + "resolved": "https://registry.npmjs.org/bufferutil/-/bufferutil-4.0.7.tgz", + "integrity": "sha512-kukuqc39WOHtdxtw4UScxF/WVnMFVSQVKhtx3AjZJzhd0RGZZldcrfSEbVsWWe6KNH253574cq5F+wpv0G9pJw==", "dev": true, + "hasInstallScript": true, "optional": true, "peer": true, "dependencies": { - "@apollo/utils.keyvaluecache": "^1.0.1", - "apollo-server-env": "^4.2.1" + "node-gyp-build": "^4.3.0" }, "engines": { - "node": ">=12.0" + "node": ">=6.14.2" } }, - "node_modules/apollo-reporting-protobuf": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/apollo-reporting-protobuf/-/apollo-reporting-protobuf-3.4.0.tgz", - "integrity": "sha512-h0u3EbC/9RpihWOmcSsvTW2O6RXVaD/mPEjfrPkxRPTEPWqncsgOoRJw+wih4OqfH3PvTJvoEIf4LwKrUaqWog==", - "deprecated": "The `apollo-reporting-protobuf` package is part of Apollo Server v2 and v3, which are now deprecated (end-of-life October 22nd 2023). This package's functionality is now found in the `@apollo/usage-reporting-protobuf` package. See https://www.apollographql.com/docs/apollo-server/previous-versions/ for more details.", + "node_modules/bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "@apollo/protobufjs": "1.2.6" + "engines": { + "node": ">= 0.8" } }, - "node_modules/apollo-reporting-protobuf/node_modules/@apollo/protobufjs": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/@apollo/protobufjs/-/protobufjs-1.2.6.tgz", - "integrity": "sha512-Wqo1oSHNUj/jxmsVp4iR3I480p6qdqHikn38lKrFhfzcDJ7lwd7Ck7cHRl4JE81tWNArl77xhnG/OkZhxKBYOw==", + "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, - "hasInstallScript": true, - "optional": true, - "peer": 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.0", - "@types/node": "^10.1.0", - "long": "^4.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" }, - "bin": { - "apollo-pbjs": "bin/pbjs", - "apollo-pbts": "bin/pbts" + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/apollo-reporting-protobuf/node_modules/@types/node": { - "version": "10.17.60", - "resolved": "https://registry.npmjs.org/@types/node/-/node-10.17.60.tgz", - "integrity": "sha512-F0KIgDJfy2nA3zMLmWGKxcH2ZVEtCZXHHdOQs2gSaQ27+lNeEfGxzkIw90aXswATX7AZ33tahPbzy6KAfUreVw==", + "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, - "optional": true, - "peer": true + "engines": { + "node": ">=6" + } }, - "node_modules/apollo-server": { - "version": "3.12.0", - "resolved": "https://registry.npmjs.org/apollo-server/-/apollo-server-3.12.0.tgz", - "integrity": "sha512-wZHLgBoIdGxr/YpPTG5RwNnS+B2y70T/nCegCnU6Yl+H3PXB92OIguLMhdJIZVjukIOhiQT12dNIehqLQ+1hMQ==", - "deprecated": "The `apollo-server` package is part of Apollo Server v2 and v3, which are now deprecated (end-of-life October 22nd 2023). This package's functionality is now found in the `@apollo/server` package. See https://www.apollographql.com/docs/apollo-server/previous-versions/ for more details.", + "node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "@types/express": "4.17.14", - "apollo-server-core": "^3.12.0", - "apollo-server-express": "^3.12.0", - "express": "^4.17.1" + "engines": { + "node": ">=10" }, - "peerDependencies": { - "graphql": "^15.3.0 || ^16.0.0" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/apollo-server-core": { - "version": "3.13.0", - "resolved": "https://registry.npmjs.org/apollo-server-core/-/apollo-server-core-3.13.0.tgz", - "integrity": "sha512-v/g6DR6KuHn9DYSdtQijz8dLOkP78I5JSVJzPkARhDbhpH74QNwrQ2PP2URAPPEDJ2EeZNQDX8PvbYkAKqg+kg==", + "node_modules/caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==", "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "@apollo/utils.keyvaluecache": "^1.0.1", - "@apollo/utils.logger": "^1.0.0", - "@apollo/utils.usagereporting": "^1.0.0", - "@apollographql/apollo-tools": "^0.5.3", - "@apollographql/graphql-playground-html": "1.6.29", - "@graphql-tools/mock": "^8.1.2", - "@graphql-tools/schema": "^8.0.0", - "@josephg/resolvable": "^1.0.0", - "apollo-datasource": "^3.3.2", - "apollo-reporting-protobuf": "^3.4.0", - "apollo-server-env": "^4.2.1", - "apollo-server-errors": "^3.3.1", - "apollo-server-plugin-base": "^3.7.2", - "apollo-server-types": "^3.8.0", - "async-retry": "^1.2.1", - "fast-json-stable-stringify": "^2.1.0", - "graphql-tag": "^2.11.0", - "loglevel": "^1.6.8", - "lru-cache": "^6.0.0", - "node-abort-controller": "^3.0.1", - "sha.js": "^2.4.11", - "uuid": "^9.0.0", - "whatwg-mimetype": "^3.0.0" - }, - "engines": { - "node": ">=12.0" - }, - "peerDependencies": { - "graphql": "^15.3.0 || ^16.0.0" - } + "peer": true }, - "node_modules/apollo-server-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/cbor": { + "version": "9.0.2", + "resolved": "https://registry.npmjs.org/cbor/-/cbor-9.0.2.tgz", + "integrity": "sha512-JPypkxsB10s9QOWwa6zwPzqE1Md3vqpPc+cai4sAecuCsRyAtAl/pMyhPlMbT/xtPnm2dznJZYRLui57qiRhaQ==", "dev": true, - "optional": true, - "peer": true, "dependencies": { - "yallist": "^4.0.0" + "nofilter": "^3.1.0" }, "engines": { - "node": ">=10" - } - }, - "node_modules/apollo-server-core/node_modules/uuid": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.0.tgz", - "integrity": "sha512-MXcSTerfPa4uqyzStbRoTgt5XIe3x5+42+q1sDuy3R5MDk66URdLMOZe5aPX/SQd+kuYAh0FdP/pO28IkQyTeg==", - "dev": true, - "optional": true, - "peer": true, - "bin": { - "uuid": "dist/bin/uuid" + "node": ">=16" } }, - "node_modules/apollo-server-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, - "optional": true, - "peer": true - }, - "node_modules/apollo-server-env": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/apollo-server-env/-/apollo-server-env-4.2.1.tgz", - "integrity": "sha512-vm/7c7ld+zFMxibzqZ7SSa5tBENc4B0uye9LTfjJwGoQFY5xsUPH5FpO5j0bMUDZ8YYNbrF9SNtzc5Cngcr90g==", - "deprecated": "The `apollo-server-env` package is part of Apollo Server v2 and v3, which are now deprecated (end-of-life October 22nd 2023). This package's functionality is now found in the `@apollo/utils.fetcher` package. See https://www.apollographql.com/docs/apollo-server/previous-versions/ for more details.", + "node_modules/chai": { + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/chai/-/chai-4.3.7.tgz", + "integrity": "sha512-HLnAzZ2iupm25PlN0xFreAlBA5zaBSv3og0DdeGA4Ar6h6rJ3A0rolRUKJhSF2V10GZKDgWF/VmAEsNWjCRB+A==", "dev": true, - "optional": true, - "peer": true, "dependencies": { - "node-fetch": "^2.6.7" + "assertion-error": "^1.1.0", + "check-error": "^1.0.2", + "deep-eql": "^4.1.2", + "get-func-name": "^2.0.0", + "loupe": "^2.3.1", + "pathval": "^1.1.1", + "type-detect": "^4.0.5" }, "engines": { - "node": ">=12.0" + "node": ">=4" } }, - "node_modules/apollo-server-errors": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/apollo-server-errors/-/apollo-server-errors-3.3.1.tgz", - "integrity": "sha512-xnZJ5QWs6FixHICXHxUfm+ZWqqxrNuPlQ+kj5m6RtEgIpekOPssH/SD9gf2B4HuWV0QozorrygwZnux8POvyPA==", - "deprecated": "The `apollo-server-errors` package is part of Apollo Server v2 and v3, which are now deprecated (end-of-life October 22nd 2023). This package's functionality is now found in the `@apollo/server` package. See https://www.apollographql.com/docs/apollo-server/previous-versions/ for more details.", + "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, - "optional": true, "peer": true, - "engines": { - "node": ">=12.0" + "dependencies": { + "check-error": "^1.0.2" }, "peerDependencies": { - "graphql": "^15.3.0 || ^16.0.0" + "chai": ">= 2.1.2 < 6" } }, - "node_modules/apollo-server-express": { - "version": "3.12.0", - "resolved": "https://registry.npmjs.org/apollo-server-express/-/apollo-server-express-3.12.0.tgz", - "integrity": "sha512-m8FaGPUfDOEGSm7QRWRmUUGjG/vqvpQoorkId9/FXkC57fz/A59kEdrzkMt9538Xgsa5AV+X4MEWLJhTvlW3LQ==", - "deprecated": "The `apollo-server-express` package is part of Apollo Server v2 and v3, which are now deprecated (end-of-life October 22nd 2023). This package's functionality is now found in the `@apollo/server` package. See https://www.apollographql.com/docs/apollo-server/previous-versions/ for more details.", + "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, - "optional": true, - "peer": true, "dependencies": { - "@types/accepts": "^1.3.5", - "@types/body-parser": "1.19.2", - "@types/cors": "2.8.12", - "@types/express": "4.17.14", - "@types/express-serve-static-core": "4.17.31", - "accepts": "^1.3.5", - "apollo-server-core": "^3.12.0", - "apollo-server-types": "^3.8.0", - "body-parser": "^1.19.0", - "cors": "^2.8.5", - "parseurl": "^1.3.3" + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" }, "engines": { - "node": ">=12.0" - }, - "peerDependencies": { - "express": "^4.17.1", - "graphql": "^15.3.0 || ^16.0.0" + "node": ">=4" } }, - "node_modules/apollo-server-express/node_modules/@types/express-serve-static-core": { - "version": "4.17.31", - "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.31.tgz", - "integrity": "sha512-DxMhY+NAsTwMMFHBTtJFNp5qiHKJ7TeqOo23zVEM9alT1Ml27Q3xcTH0xwxn7Q0BbMcVEJOs/7aQtUWupUQN3Q==", + "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, - "optional": true, "peer": true, - "dependencies": { - "@types/node": "*", - "@types/qs": "*", - "@types/range-parser": "*" + "engines": { + "node": "*" } }, - "node_modules/apollo-server-plugin-base": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/apollo-server-plugin-base/-/apollo-server-plugin-base-3.7.2.tgz", - "integrity": "sha512-wE8dwGDvBOGehSsPTRZ8P/33Jan6/PmL0y0aN/1Z5a5GcbFhDaaJCjK5cav6npbbGL2DPKK0r6MPXi3k3N45aw==", - "deprecated": "The `apollo-server-plugin-base` package is part of Apollo Server v2 and v3, which are now deprecated (end-of-life October 22nd 2023). This package's functionality is now found in the `@apollo/server` package. See https://www.apollographql.com/docs/apollo-server/previous-versions/ for more details.", + "node_modules/check-error": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.2.tgz", + "integrity": "sha512-BrgHpW9NURQgzoNyjfq0Wu6VFO6D7IZEmJNdtgNqpzGG8RuNFHt2jQxWlAs4HMe119chBnv+34syEZtc6IhLtA==", "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "apollo-server-types": "^3.8.0" - }, "engines": { - "node": ">=12.0" - }, - "peerDependencies": { - "graphql": "^15.3.0 || ^16.0.0" + "node": "*" } }, - "node_modules/apollo-server-types": { - "version": "3.8.0", - "resolved": "https://registry.npmjs.org/apollo-server-types/-/apollo-server-types-3.8.0.tgz", - "integrity": "sha512-ZI/8rTE4ww8BHktsVpb91Sdq7Cb71rdSkXELSwdSR0eXu600/sY+1UXhTWdiJvk+Eq5ljqoHLwLbY2+Clq2b9A==", - "deprecated": "The `apollo-server-types` package is part of Apollo Server v2 and v3, which are now deprecated (end-of-life October 22nd 2023). This package's functionality is now found in the `@apollo/server` package. See https://www.apollographql.com/docs/apollo-server/previous-versions/ for more details.", + "node_modules/chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", "dev": true, - "optional": true, - "peer": true, + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ], "dependencies": { - "@apollo/utils.keyvaluecache": "^1.0.1", - "@apollo/utils.logger": "^1.0.0", - "apollo-reporting-protobuf": "^3.4.0", - "apollo-server-env": "^4.2.1" + "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": ">=12.0" + "node": ">= 8.10.0" }, - "peerDependencies": { - "graphql": "^15.3.0 || ^16.0.0" + "optionalDependencies": { + "fsevents": "~2.3.2" } }, - "node_modules/app-module-path": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/app-module-path/-/app-module-path-2.2.0.tgz", - "integrity": "sha512-gkco+qxENJV+8vFcDiiFhuoSvRXb2a/QPqpSoWhVz829VNJfOTnELbBmPmNKFxf3xdNnw4DWCkzkDaavcX/1YQ==", - "dev": true, - "peer": 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/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/argsarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/argsarray/-/argsarray-0.0.1.tgz", - "integrity": "sha512-u96dg2GcAKtpTrBdDoFIM7PjcBA+6rSP0OR94MOReNRyUECL6MtQt5XXmRr4qrftYaef9+l5hcpO5te7sML1Cg==", - "dev": true, - "optional": true, - "peer": true - }, - "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/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==", "dev": true, "dependencies": { - "call-bind": "^1.0.5", - "is-array-buffer": "^3.0.4" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "inherits": "^2.0.1", + "safe-buffer": "^5.0.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==" - }, - "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/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": ">=8" + "node": ">=6" } }, - "node_modules/array.prototype.findlast": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/array.prototype.findlast/-/array.prototype.findlast-1.2.5.tgz", - "integrity": "sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==", + "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": { - "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" + "node": ">=6" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "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/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, + "peer": 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" + "object-assign": "^4.1.0", + "string-width": "^2.1.1" }, "engines": { - "node": ">= 0.4" + "node": ">=6" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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==", - "dependencies": { - "safer-buffer": "~2.1.0" + "optionalDependencies": { + "colors": "^1.1.2" } }, - "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/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, + "peer": true, "engines": { - "node": ">=0.8" + "node": ">=4" } }, - "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/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, + "peer": true, "engines": { - "node": "*" + "node": ">=4" } }, - "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==", + "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, + "peer": true, + "dependencies": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + }, "engines": { - "node": ">=8" + "node": ">=4" } }, - "node_modules/async": { - "version": "2.6.4", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz", - "integrity": "sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==", + "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, + "peer": true, "dependencies": { - "lodash": "^4.17.14" + "ansi-regex": "^3.0.0" + }, + "engines": { + "node": ">=4" } }, - "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==", + "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": { - "async": "^2.4.0" + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" } }, - "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==" - }, - "node_modules/async-mutex": { - "version": "0.2.6", - "resolved": "https://registry.npmjs.org/async-mutex/-/async-mutex-0.2.6.tgz", - "integrity": "sha512-Hs4R+4SPgamu6rSGW8C7cV9gaWUKEHykfzCCvIRuaVv636Ju10ZdeUbvb4TBEW0INuq2DHZqXbK4Nd3yG4RaRw==", + "node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, "dependencies": { - "tslib": "^2.0.0" + "color-name": "1.1.3" } }, - "node_modules/async-mutex/node_modules/tslib": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.1.tgz", - "integrity": "sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA==" + "node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true }, - "node_modules/async-retry": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/async-retry/-/async-retry-1.3.3.tgz", - "integrity": "sha512-wfr/jstw9xNi/0teMHrRW7dsz3Lt5ARhYNZ2ewpadnhaIp5mbALhOAP+EAdsC7t4Z6wqsDVv9+W6gm1Dk9mEyw==", + "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, - "optional": true, "peer": true, - "dependencies": { - "retry": "0.13.1" + "engines": { + "node": ">=0.1.90" } }, - "node_modules/async-retry/node_modules/retry": { - "version": "0.13.1", - "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz", - "integrity": "sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==", + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", "dev": true, - "optional": true, - "peer": true, + "dependencies": { + "delayed-stream": "~1.0.0" + }, "engines": { - "node": ">= 4" + "node": ">= 0.8" } }, - "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/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/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/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, - "optional": true, "peer": true, + "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": ">=4.0.0" } }, - "node_modules/atomically": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/atomically/-/atomically-1.7.0.tgz", - "integrity": "sha512-Xcz9l0z7y9yQ9rdDaxlmaI4uJHf/T8g9hOEzJcsEqX2SjCj4J20uK7+ldkDHMbpJDK76wF7xEIgxc/vSlsfw5w==", + "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, - "optional": true, "peer": true, - "engines": { - "node": ">=10.12.0" - } - }, - "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==", "dependencies": { - "possible-typed-array-names": "^1.0.0" + "array-back": "^4.0.2", + "chalk": "^2.4.2", + "table-layout": "^1.0.2", + "typical": "^5.2.0" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=8.0.0" } }, - "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/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, + "peer": true, "engines": { - "node": "*" + "node": ">=8" } }, - "node_modules/aws4": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz", - "integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==" - }, - "node_modules/axios": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.2.4.tgz", - "integrity": "sha512-lIQuCfBJvZB/Bv7+RWUqEJqNShGOVpk9v7P0ZWx5Ip0qY6u7JBAU6dzQPMLasU9vHL2uD8av/1FDJXj7n6c39w==", + "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, - "optional": true, "peer": true, - "dependencies": { - "follow-redirects": "^1.15.0", - "form-data": "^4.0.0", - "proxy-from-env": "^1.1.0" + "engines": { + "node": ">=8" } }, - "node_modules/axios/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==", + "node_modules/commander": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", + "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==", "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - }, "engines": { - "node": ">= 6" + "node": ">= 12" } }, - "node_modules/babel-plugin-polyfill-corejs2": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.3.tgz", - "integrity": "sha512-8hOdmFYFSZhqg2C/JgLUQ+t52o5nirNwaWM2B9LWteozwIvM14VSwdsCAUET10qT+kmySAlseadmfeeSWFCy+Q==", - "dependencies": { - "@babel/compat-data": "^7.17.7", - "@babel/helper-define-polyfill-provider": "^0.3.3", - "semver": "^6.1.1" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/babel-plugin-polyfill-corejs3": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.6.0.tgz", - "integrity": "sha512-+eHqR6OPcBhJOGgsIar7xoAB1GcSwVUA3XjAd7HJNzOXT4wv6/H7KIdA/Nc60cvUlDbKApmqNvD1B1bzOt4nyA==", - "dependencies": { - "@babel/helper-define-polyfill-provider": "^0.3.3", - "core-js-compat": "^3.25.1" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } + "node_modules/compare-versions": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/compare-versions/-/compare-versions-6.1.0.tgz", + "integrity": "sha512-LNZQXhqUvqUTotpZ00qLSaify3b4VFD588aRr8MKFw4CMUr98ytzCW5wDH5qx/DEY5kCDXcbcRuCqL0szEf2tg==", + "dev": true }, - "node_modules/babel-plugin-polyfill-regenerator": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.4.1.tgz", - "integrity": "sha512-NtQGmyQDXjQqQ+IzRkBVwEOz9lQ4zxAQZgoAYEtU9dJjnl1Oc98qnN7jcp+bE7O7aYzVpavXE3/VKXNzUbh7aw==", - "dependencies": { - "@babel/helper-define-polyfill-provider": "^0.3.3" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true }, - "node_modules/backoff": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/backoff/-/backoff-2.5.0.tgz", - "integrity": "sha512-wC5ihrnUXmR2douXmXLCe5O3zg3GKIyvRi/hi58a/XyRxVI+3/yM0PYueQOZXPXQ9pxBislYkw+sF9b7C/RuMA==", + "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" + ], + "peer": true, "dependencies": { - "precond": "0.2" - }, - "engines": { - "node": ">= 0.6" + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^2.2.2", + "typedarray": "^0.0.6" } }, - "node_modules/balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true + "node_modules/concat-stream/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, + "peer": 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==", + "node_modules/concat-stream/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, + "peer": true, "dependencies": { - "safe-buffer": "^5.0.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/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/concat-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, + "peer": 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/concat-stream/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, + "peer": true, "dependencies": { - "tweetnacl": "^0.14.3" + "safe-buffer": "~5.1.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==" - }, - "node_modules/bech32": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/bech32/-/bech32-2.0.0.tgz", - "integrity": "sha512-LcknSilhIGatDAsY1ak2I8VtGaHNhgMSYVxFrGLXv+xLHytaKZKcaUJJUE7qmBr7h33o5YQwP55pMI0xmkpJwg==" - }, - "node_modules/big-integer": { - "version": "1.6.36", - "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.36.tgz", - "integrity": "sha512-t70bfa7HYEA1D9idDbmuv7YbsbVkQ+Hp+8KFSul4aE5e/i1bjCNIRYJZlA8Q8p0r9T8cF/RVvwUgRA//FydEyg==", + "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": ">= 0.6" } }, - "node_modules/big.js": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/big.js/-/big.js-6.2.1.tgz", - "integrity": "sha512-bCtHMwL9LeDIozFn+oNhhFoq+yQ3BNdnsLSASUxLciOb1vgvpHsIO1dsENiGMgbb4SkP5TrzWzRiLddn8ahVOQ==", + "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, + "peer": true + }, + "node_modules/cosmiconfig": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.2.0.tgz", + "integrity": "sha512-3rTMnFJA1tCOPwRxtgF4wd7Ab2qvDbL8jX+3smjIbS4HlZBagTlpERbdN7iAbWlrfxE3M8c27kTwTawQ7st+OQ==", "dev": true, + "dependencies": { + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "parse-json": "^5.0.0", + "path-type": "^4.0.0" + }, "engines": { - "node": "*" + "node": ">=14" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/bigjs" + "url": "https://github.com/sponsors/d-fischer" } }, - "node_modules/bigint-crypto-utils": { - "version": "3.1.7", - "resolved": "https://registry.npmjs.org/bigint-crypto-utils/-/bigint-crypto-utils-3.1.7.tgz", - "integrity": "sha512-zpCQpIE2Oy5WIQpjC9iYZf8Uh9QqoS51ZCooAcNvzv1AQ3VWdT52D0ksr1+/faeK8HVIej1bxXcP75YcqH3KPA==", + "node_modules/cosmiconfig/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, - "peer": true, "dependencies": { - "bigint-mod-arith": "^3.1.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": ">=10.4.0" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/bigint-mod-arith": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/bigint-mod-arith/-/bigint-mod-arith-3.1.2.tgz", - "integrity": "sha512-nx8J8bBeiRR+NlsROFH9jHswW5HO8mgfOSqW0AmjicMMvaONDa8AO+5ViKDUUNytBPWiwfvZP4/Bj4Y3lUfvgQ==", + "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==", "dev": true, - "peer": true, - "engines": { - "node": ">=10.4.0" - } - }, - "node_modules/bignumber.js": { - "version": "7.2.1", - "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-7.2.1.tgz", - "integrity": "sha512-S4XzBk5sMB+Rcb/LNcpzXr57VRTxgAvaAEDAl1AwRx27j00hT84O6OkteE7u8UB3NuaaygCRrEpqox4uDOrbdQ==", - "engines": { - "node": "*" + "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/binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "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==", "dev": true, - "engines": { - "node": ">=8" + "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/bip174": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/bip174/-/bip174-2.1.1.tgz", - "integrity": "sha512-mdFV5+/v0XyNYXjBS6CQPLo9ekCx4gtKZFnJm5PMto7Fs9hTTDpkkzOB7/FtluRI6JbUUAu+snTYfJRgHLZbZQ==", + "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, - "engines": { - "node": ">=8.0.0" - } + "peer": true }, - "node_modules/bitcoinjs-lib": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/bitcoinjs-lib/-/bitcoinjs-lib-6.0.1.tgz", - "integrity": "sha512-x/7D4jDj/MMkmO6t3p2CSDXTqpwZ/jRsRiJDmaiXabrR9XRo7jwby8HRn7EyK1h24rKFFI7vI0ay4czl6bDOZQ==", + "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": { - "bech32": "^2.0.0", - "bip174": "^2.0.1", - "bs58check": "^2.1.2", - "create-hash": "^1.1.0", - "typeforce": "^1.11.3", - "varuint-bitcoin": "^1.1.2", - "wif": "^2.0.1" + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" }, "engines": { - "node": ">=8.0.0" + "node": ">= 8" } }, - "node_modules/bitcoinjs-lib/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/cross-spawn/node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", "dev": true, "dependencies": { - "bs58": "^4.0.0", - "create-hash": "^1.1.0", - "safe-buffer": "^5.1.2" - } - }, - "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==" - }, - "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/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.2", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.2.tgz", - "integrity": "sha512-ml9pReCu3M61kGlqoTm2umSXTlRTuGTx0bfYj+uIUKKYycG5NtSbeetV3faSU6R7ajOPw0g/J1PvK4qNy7s5bA==", - "dependencies": { - "bytes": "3.1.2", - "content-type": "~1.0.5", - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "on-finished": "2.4.1", - "qs": "6.11.0", - "raw-body": "2.5.2", - "type-is": "~1.6.18", - "unpipe": "1.0.0" + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" }, "engines": { - "node": ">= 0.8", - "npm": "1.2.8000 || >= 1.4.16" - } - }, - "node_modules/body-parser/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dependencies": { - "ms": "2.0.0" + "node": ">= 8" } }, - "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==" - }, - "node_modules/boolbase": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", - "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", - "dev": true - }, - "node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "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": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" + "peer": true, + "engines": { + "node": "*" } }, - "node_modules/braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "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": { - "fill-range": "^7.0.1" + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" }, "engines": { - "node": ">=8" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "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": { + "node_modules/data-view-byte-length": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/browser-level/-/browser-level-1.0.1.tgz", - "integrity": "sha512-XECYKJ+Dbzw0lbydyQuJzwNXtOpbMSq737qxJN11sIRTErOMShvDpbzTlgju7orJKvx4epULolZAuJGLzCmWRQ==", + "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, - "peer": 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", - "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==", - "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==", - "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/browserslist": { - "version": "4.21.4", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.4.tgz", - "integrity": "sha512-CBHJJdDmgjl3daYjN5Cp5kbTf1mUhZoS+beLklHIvkOWscs83YAhLlF3Wsh/lciQYAcbBJgTOD44VtG31ZM4Hw==", - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - } - ], - "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" + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" }, "engines": { - "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" - } - }, - "node_modules/bs58": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/bs58/-/bs58-4.0.1.tgz", - "integrity": "sha512-Ok3Wdf5vOIlBrgCvTq96gBkJw+JUEzdBgyaza5HLtPm7yTHkjRy8+JzNyHF7BHa0bNWOQIp3m5YF0nnFcOIKLw==", - "dependencies": { - "base-x": "^3.0.2" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/bs58check": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/bs58check/-/bs58check-3.0.1.tgz", - "integrity": "sha512-hjuuJvoWEybo7Hn/0xOrczQKKEKD63WguEjlhLExYs2wUBcebDC1jDNK17eEAD2lYfw82d5ASC1d7K3SWszjaQ==", + "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": { - "@noble/hashes": "^1.2.0", - "bs58": "^5.0.0" - } - }, - "node_modules/bs58check/node_modules/@noble/hashes": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.3.1.tgz", - "integrity": "sha512-EbqwksQwz9xDRGfDST86whPBgM65E0OH/pCgqW0GBVzO22bNE+NuIbeTb714+IfSjU3aRk47EUvXIb5bTsenKA==", - "dev": true, + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, "engines": { - "node": ">= 16" + "node": ">= 0.4" }, "funding": { - "url": "https://paulmillr.com/funding/" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/bs58check/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==", - "dev": true + "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, + "peer": true }, - "node_modules/bs58check/node_modules/bs58": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/bs58/-/bs58-5.0.0.tgz", - "integrity": "sha512-r+ihvQJvahgYT50JD05dyJNKlmmSlMoOGwn1lCcEzanPglg7TxYjioQUYehQ9mAR/+hOSd2jRc/Z2y5UxBymvQ==", + "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==", "dev": true, "dependencies": { - "base-x": "^4.0.0" - } - }, - "node_modules/btoa": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/btoa/-/btoa-1.2.1.tgz", - "integrity": "sha512-SB4/MIGlsiVkMcHmT+pSmIPoNDoHg+7cMzmt3Uxt628MTz2487DKSqK/fuhFBrkuqrYv5UCEnACpF4dTFNKc/g==", - "bin": { - "btoa": "bin/btoa.js" + "ms": "^2.1.3" }, "engines": { - "node": ">= 0.4.0" + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } } }, - "node_modules/buffer": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", - "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "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, - "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" + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "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/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, - "peer": 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==" - }, - "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==" - }, - "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, "dependencies": { - "node-gyp-build": "^4.3.0" + "type-detect": "^4.0.0" }, "engines": { - "node": ">=6.14.2" - } - }, - "node_modules/bytes": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", - "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", - "engines": { - "node": ">= 0.8" + "node": ">=6" } }, - "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==", + "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, + "peer": true, "engines": { - "node": ">=10.6.0" + "node": ">=4.0.0" } }, - "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==", - "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" - }, - "engines": { - "node": ">=8" - } + "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/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/define-data-property": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", + "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", + "dev": true, "dependencies": { - "pump": "^3.0.0" + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "gopd": "^1.0.1" }, "engines": { - "node": ">=8" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/cacheable-request/node_modules/lowercase-keys": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", - "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==", - "engines": { - "node": ">=8" + "url": "https://github.com/sponsors/ljharb" } }, - "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/define-properties": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", + "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", + "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" + "define-data-property": "^1.0.1", + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" }, "engines": { "node": ">= 0.4" @@ -5741,1550 +4481,1433 @@ "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==", + "node_modules/define-properties/node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", "dev": true, "engines": { - "node": ">=6" + "node": ">= 0.4" } }, - "node_modules/camel-case": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-3.0.0.tgz", - "integrity": "sha512-+MbKztAYHXPr1jNTSKQF52VpcFjwY5RkR7fxksV8Doo4KAYc5Fl4UJRgthBbTmEx8C54DqahhbLJkDwjI3PI/w==", + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", "dev": true, - "dependencies": { - "no-case": "^2.2.0", - "upper-case": "^1.1.1" + "engines": { + "node": ">=0.4.0" } }, - "node_modules/camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "node_modules/depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", "dev": true, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">= 0.8" } }, - "node_modules/caniuse-lite": { - "version": "1.0.30001439", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001439.tgz", - "integrity": "sha512-1MgUzEkoMO6gKfXflStpYgZDlFM7M/ck/bgfVCACO5vnAf0fXoNVHdWtqGU+MYca+4bL9Z5bpOVmR33cWW9G2A==", - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/caniuse-lite" - } - ] - }, - "node_modules/caseless": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==" - }, - "node_modules/catering": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/catering/-/catering-2.1.1.tgz", - "integrity": "sha512-K7Qy8O9p76sL3/3m7/zLKbRkyOlSZAgzEaLhyj2mXS8PsCud2Eo4hAb8aLtZqHh0QGqLcb9dlJSu6lHRVENm1w==", + "node_modules/diff": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz", + "integrity": "sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==", "dev": true, - "peer": true, "engines": { - "node": ">=6" + "node": ">=0.3.1" } }, - "node_modules/cbor": { - "version": "9.0.2", - "resolved": "https://registry.npmjs.org/cbor/-/cbor-9.0.2.tgz", - "integrity": "sha512-JPypkxsB10s9QOWwa6zwPzqE1Md3vqpPc+cai4sAecuCsRyAtAl/pMyhPlMbT/xtPnm2dznJZYRLui57qiRhaQ==", + "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, + "peer": true, "dependencies": { - "nofilter": "^3.1.0" + "heap": ">= 0.2.0" }, "engines": { - "node": ">=16" + "node": "*" } }, - "node_modules/chai": { - "version": "4.3.7", - "resolved": "https://registry.npmjs.org/chai/-/chai-4.3.7.tgz", - "integrity": "sha512-HLnAzZ2iupm25PlN0xFreAlBA5zaBSv3og0DdeGA4Ar6h6rJ3A0rolRUKJhSF2V10GZKDgWF/VmAEsNWjCRB+A==", + "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, + "peer": true, "dependencies": { - "assertion-error": "^1.1.0", - "check-error": "^1.0.2", - "deep-eql": "^4.1.2", - "get-func-name": "^2.0.0", - "loupe": "^2.3.1", - "pathval": "^1.1.1", - "type-detect": "^4.0.5" + "path-type": "^4.0.0" }, "engines": { - "node": ">=4" + "node": ">=8" } }, - "node_modules/chai-bn": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/chai-bn/-/chai-bn-0.3.1.tgz", - "integrity": "sha512-vuzEy0Cb+k8zqi2SHOmvZdRSbKcSOJfS1Nv8+6YDJIyCzfxkTCHLNRyjRIoRJ3WJtYb/c7OHjrvLoGeyO4A/gA==", - "peerDependencies": { - "bn.js": "^5.0.0", - "chai": "^4.0.0" + "node_modules/dotenv": { + "version": "16.3.1", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.3.1.tgz", + "integrity": "sha512-IPzF4w4/Rd94bA9imS68tZBaYyBWSCE47V1RGuMrB94iyTOIEwRmVL2x/4An+6mETpLrKJ5hQkB8W4kFAadeIQ==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/motdotla/dotenv?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==", + "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==", + "dev": true, "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" + "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/change-case": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/change-case/-/change-case-3.0.2.tgz", - "integrity": "sha512-Mww+SLF6MZ0U6kdg11algyKd5BARbyM4TbFBepwowYSR5ClfQGCGtxNXgykpN0uF/bstWeaGDT4JWaDh8zWAHA==", - "dev": true, - "dependencies": { - "camel-case": "^3.0.0", - "constant-case": "^2.0.0", - "dot-case": "^2.1.0", - "header-case": "^1.0.0", - "is-lower-case": "^1.1.0", - "is-upper-case": "^1.1.0", - "lower-case": "^1.1.1", - "lower-case-first": "^1.0.0", - "no-case": "^2.3.2", - "param-case": "^2.1.0", - "pascal-case": "^2.0.0", - "path-case": "^2.1.0", - "sentence-case": "^2.1.0", - "snake-case": "^2.1.0", - "swap-case": "^1.1.0", - "title-case": "^2.1.0", - "upper-case": "^1.1.1", - "upper-case-first": "^1.1.0" + "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==", + "dev": true + }, + "node_modules/emoji-regex": { + "version": "10.2.1", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-10.2.1.tgz", + "integrity": "sha512-97g6QgOk8zlDRdgq1WxwgTMgEWGVAQvB5Fdpgc1MkNy56la5SKP9GsMXKDOdqwn90/41a8yPwIGk1Y6WVbeMQA==", + "dev": true + }, + "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/check-error": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.2.tgz", - "integrity": "sha512-BrgHpW9NURQgzoNyjfq0Wu6VFO6D7IZEmJNdtgNqpzGG8RuNFHt2jQxWlAs4HMe119chBnv+34syEZtc6IhLtA==", + "node_modules/env-paths": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", + "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", + "dev": true, "engines": { - "node": "*" + "node": ">=6" } }, - "node_modules/checkpoint-store": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/checkpoint-store/-/checkpoint-store-1.1.0.tgz", - "integrity": "sha512-J/NdY2WvIx654cc6LWSq/IYFFCUf75fFTgwzFnmbqyORH4MwgiQCgswLLKBGzmsyTI5V7i5bp/So6sMbDWhedg==", + "node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dev": true, "dependencies": { - "functional-red-black-tree": "^1.0.1" + "is-arrayish": "^0.2.1" } }, - "node_modules/cheerio": { - "version": "1.0.0-rc.12", - "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.12.tgz", - "integrity": "sha512-VqR8m68vM46BNnuZ5NtnGBKIE/DfN0cRIzg9n40EIq9NOv90ayxLBXA8fXC5gquFRGJSTRqBq25Jt2ECLR431Q==", + "node_modules/es-abstract": { + "version": "1.23.3", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.3.tgz", + "integrity": "sha512-e+HfNH61Bj1X9/jLc5v1owaLYuHdeHHSQlkhCBiTK8rBvKaULl/beGMxwrMXjpYrv4pz22BlY570vVePA2ho4A==", "dev": true, "dependencies": { - "cheerio-select": "^2.1.0", - "dom-serializer": "^2.0.0", - "domhandler": "^5.0.3", - "domutils": "^3.0.1", - "htmlparser2": "^8.0.1", - "parse5": "^7.0.0", - "parse5-htmlparser2-tree-adapter": "^7.0.0" + "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.8", + "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.6", + "unbox-primitive": "^1.0.2", + "which-typed-array": "^1.1.15" }, "engines": { - "node": ">= 6" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/cheeriojs/cheerio?sponsor=1" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/cheerio-select": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cheerio-select/-/cheerio-select-2.1.0.tgz", - "integrity": "sha512-9v9kG0LvzrlcungtnJtpGNxY+fzECQKhK4EGJX2vByejiMX84MFNQw4UxPJl3bFbTMw+Dfs37XaIkCwTZfLh4g==", + "node_modules/es-abstract/node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", "dev": true, - "dependencies": { - "boolbase": "^1.0.0", - "css-select": "^5.1.0", - "css-what": "^6.1.0", - "domelementtype": "^2.3.0", - "domhandler": "^5.0.3", - "domutils": "^3.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/fb55" + "engines": { + "node": ">= 0.4" } }, - "node_modules/chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "node_modules/es-define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz", + "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==", "dev": true, - "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" + "get-intrinsic": "^1.2.4" }, "engines": { - "node": ">= 8.10.0" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" + "node": ">= 0.4" } }, - "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/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/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", "dev": true, - "peer": true + "engines": { + "node": ">= 0.4" + } }, - "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", + "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": { - "buffer": "^5.5.0", - "class-is": "^1.1.0", - "multibase": "~0.6.0", - "multicodec": "^1.0.0", - "multihashes": "~0.4.15" + "es-errors": "^1.3.0" }, "engines": { - "node": ">=4.0.0", - "npm": ">=3.0.0" + "node": ">= 0.4" } }, - "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==", - "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/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": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" + "get-intrinsic": "^1.2.4", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.1" + }, + "engines": { + "node": ">= 0.4" } }, - "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/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": { - "buffer": "^5.6.0", - "varint": "^5.0.0" + "hasown": "^2.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" - } - }, - "node_modules/class-is": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/class-is/-/class-is-1.1.0.tgz", - "integrity": "sha512-rhjH9AG1fvabIDoGRVH587413LPjTZgmDF9fOFCbFJQV4yuocX1mHxxvXI4g3cGwbVY9wAYIoKlg1N79frJKQw==" - }, - "node_modules/classic-level": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/classic-level/-/classic-level-1.2.0.tgz", - "integrity": "sha512-qw5B31ANxSluWz9xBzklRWTUAJ1SXIdaVKTVS7HcTGKOAmExx65Wo5BUICW+YGORe2FOUaDghoI9ZDxj82QcFg==", + "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, - "hasInstallScript": true, - "peer": true, "dependencies": { - "abstract-level": "^1.0.2", - "catering": "^2.1.0", - "module-error": "^1.0.1", - "napi-macros": "~2.0.0", - "node-gyp-build": "^4.3.0" + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" }, "engines": { - "node": ">=12" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "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/escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", "dev": true, - "peer": true, "engines": { "node": ">=6" } }, - "node_modules/cli-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", - "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "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, - "optional": true, - "peer": true, - "dependencies": { - "restore-cursor": "^3.1.0" - }, "engines": { - "node": ">=8" + "node": ">=0.8.0" } }, - "node_modules/cli-table": { - "version": "0.3.11", - "resolved": "https://registry.npmjs.org/cli-table/-/cli-table-0.3.11.tgz", - "integrity": "sha512-IqLQi4lO0nIB4tcdTpN4LCB9FI3uqrJZK7RC515EnhZ6qBaglkIgICb1wjeAqpdoOabm1+SuQtkXIPdYC93jhQ==", + "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, + "peer": true, "dependencies": { - "colors": "1.0.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.2.0" + "node": ">=0.12.0" + }, + "optionalDependencies": { + "source-map": "~0.2.0" } }, - "node_modules/cli-table/node_modules/colors": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/colors/-/colors-1.0.3.tgz", - "integrity": "sha512-pFGrxThWcWQ2MsAz6RtgeWe4NK2kUE1WfsrvvlctdII745EW9I0yflqhe7++M5LEc7bV2c/9/5zc8sFcpL0Drw==", + "node_modules/eslint": { + "version": "9.16.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.16.0.tgz", + "integrity": "sha512-whp8mSQI4C8VXd+fLgSM0lh3UlmcFtVwUQjyKCFfsp+2ItAIYhlq/hqGahGqHE6cv9unM41VlqKk2VtKYR2TaA==", + "dev": true, + "dependencies": { + "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/regexpp": "^4.12.1", + "@eslint/config-array": "^0.19.0", + "@eslint/core": "^0.9.0", + "@eslint/eslintrc": "^3.2.0", + "@eslint/js": "9.16.0", + "@eslint/plugin-kit": "^0.2.3", + "@humanfs/node": "^0.16.6", + "@humanwhocodes/module-importer": "^1.0.1", + "@humanwhocodes/retry": "^0.4.1", + "@types/estree": "^1.0.6", + "@types/json-schema": "^7.0.15", + "ajv": "^6.12.4", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.5", + "debug": "^4.3.2", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^8.2.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": ">=0.1.90" + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://eslint.org/donate" + }, + "peerDependencies": { + "jiti": "*" + }, + "peerDependenciesMeta": { + "jiti": { + "optional": true + } } }, - "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==", + "node_modules/eslint-scope": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.2.0.tgz", + "integrity": "sha512-PHlWUfG6lvPc3yvP5A4PNyBL1W8fkDUccmI21JUu/+GKZBoH/W5u6usENXUrWFRsyoW5ACUjFGgAFQp5gUlb/A==", "dev": true, "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" - } - }, - "node_modules/clone": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", - "integrity": "sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==", + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + }, "engines": { - "node": ">=0.8" + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, - "node_modules/clone-buffer": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/clone-buffer/-/clone-buffer-1.0.0.tgz", - "integrity": "sha512-KLLTJWrvwIP+OPfMn0x2PheDEP20RPUcGXj/ERegTgdmPEZylALQldygiqrPPu8P45uNuPs7ckmReLY6v/iA5g==", + "node_modules/eslint-scope/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, - "optional": true, - "peer": true, "engines": { - "node": ">= 0.10" + "node": ">=4.0" } }, - "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==", - "dependencies": { - "mimic-response": "^1.0.0" + "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://github.com/sponsors/sindresorhus" + "url": "https://opencollective.com/eslint" } }, - "node_modules/code-point-at": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha512-RpAVKQA5T63xEj6/giIbUEtZwJ4UFIc3ZtvEkiaUERylqe8xb5IvqcgOurZLahv93CLKfxcw5YI+DZcUBRyLXA==", + "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, - "engines": { - "node": ">=0.10.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" + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "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/colors": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/colors/-/colors-1.4.0.tgz", - "integrity": "sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA==", + "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": ">=0.1.90" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "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/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": { - "delayed-stream": "~1.0.0" + "color-name": "~1.1.4" }, "engines": { - "node": ">= 0.8" + "node": ">=7.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/commander": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/commander/-/commander-3.0.2.tgz", - "integrity": "sha512-Gar0ASD4BDyKC4hl4DwHqDrmvjoxWKZigVnAbn5H1owvm4CxCPdb0HQDehwNYMJpla5+M2tPmPARzhtYuwpHow==", - "dev": true - }, - "node_modules/compare-versions": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/compare-versions/-/compare-versions-6.1.0.tgz", - "integrity": "sha512-LNZQXhqUvqUTotpZ00qLSaify3b4VFD588aRr8MKFw4CMUr98ytzCW5wDH5qx/DEY5kCDXcbcRuCqL0szEf2tg==", + "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/concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", - "dev": true + "node_modules/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/conf": { - "version": "10.2.0", - "resolved": "https://registry.npmjs.org/conf/-/conf-10.2.0.tgz", - "integrity": "sha512-8fLl9F04EJqjSqH+QjITQfJF8BrOVaYr1jewVgSRAEWePfxT0sku4w2hrGQ60BC/TNLGQ2pgxNlTbWQmMPFvXg==", + "node_modules/eslint/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, - "optional": true, - "peer": true, "dependencies": { - "ajv": "^8.6.3", - "ajv-formats": "^2.1.1", - "atomically": "^1.7.0", - "debounce-fn": "^4.0.0", - "dot-prop": "^6.0.1", - "env-paths": "^2.2.1", - "json-schema-typed": "^7.0.3", - "onetime": "^5.1.2", - "pkg-up": "^3.1.0", - "semver": "^7.3.5" + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" }, "engines": { - "node": ">=12" + "node": ">=10" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/conf/node_modules/ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "node_modules/eslint/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, - "optional": true, - "peer": 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" + "is-glob": "^4.0.3" }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" + "engines": { + "node": ">=10.13.0" } }, - "node_modules/conf/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/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, - "optional": true, - "peer": true + "engines": { + "node": ">=8" + } }, - "node_modules/conf/node_modules/semver": { - "version": "7.6.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.2.tgz", - "integrity": "sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w==", + "node_modules/eslint/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, - "optional": true, - "peer": true, - "bin": { - "semver": "bin/semver.js" + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" }, "engines": { - "node": ">=10" + "node": ">= 0.8.0" } }, - "node_modules/constant-case": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/constant-case/-/constant-case-2.0.0.tgz", - "integrity": "sha512-eS0N9WwmjTqrOmR3o83F5vW8Z+9R1HnVz3xmzT2PMFug9ly+Au/fxRWlEBSb6LcZwspSsEn9Xs1uw9YgzAg1EQ==", + "node_modules/eslint/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": { - "snake-case": "^2.1.0", - "upper-case": "^1.1.1" + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "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/eslint/node_modules/optionator": { + "version": "0.9.4", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz", + "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==", + "dev": true, "dependencies": { - "safe-buffer": "5.2.1" + "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": ">= 0.6" + "node": ">= 0.8.0" } }, - "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==", + "node_modules/eslint/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": { - "cids": "^0.7.1", - "multicodec": "^0.5.5", - "multihashes": "^0.4.15" - } - }, - "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==", + "yocto-queue": "^0.1.0" + }, "engines": { - "node": ">= 0.6" - } - }, - "node_modules/convert-source-map": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", - "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", - "peer": true - }, - "node_modules/cookie": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz", - "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==", - "dev": true, - "peer": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/cookie-signature": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==" - }, - "node_modules/core-js-compat": { - "version": "3.26.1", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.26.1.tgz", - "integrity": "sha512-622/KzTudvXCDLRw70iHW4KKs1aGpcRcowGWyYJr2DEBfRrd6hNJybxSWJFuZYD4ma86xhrwDDHxmDaIq4EA8A==", - "dependencies": { - "browserslist": "^4.21.4" + "node": ">=10" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/core-js" - } - }, - "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==" - }, - "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==", - "dependencies": { - "object-assign": "^4", - "vary": "^1" - }, - "engines": { - "node": ">= 0.10" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/cosmiconfig": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.2.0.tgz", - "integrity": "sha512-3rTMnFJA1tCOPwRxtgF4wd7Ab2qvDbL8jX+3smjIbS4HlZBagTlpERbdN7iAbWlrfxE3M8c27kTwTawQ7st+OQ==", + "node_modules/eslint/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": { - "import-fresh": "^3.2.1", - "js-yaml": "^4.1.0", - "parse-json": "^5.0.0", - "path-type": "^4.0.0" + "p-limit": "^3.0.2" }, "engines": { - "node": ">=14" + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/d-fischer" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/cosmiconfig/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/eslint/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, - "dependencies": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-even-better-errors": "^2.3.0", - "lines-and-columns": "^1.1.6" - }, "engines": { "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/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/eslint/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, "engines": { - "node": ">=0.8" - } - }, - "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/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/cross-fetch": { - "version": "2.2.6", - "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-2.2.6.tgz", - "integrity": "sha512-9JZz+vXCmfKUZ68zAptS7k4Nu8e2qcibe7WVZYps7sAgk5R8GYTc+T1WR0v1rlP9HxgARmOX1UTIJZFytajpNA==", - "dependencies": { - "node-fetch": "^2.6.7", - "whatwg-fetch": "^2.0.4" + "node": ">= 0.8.0" } }, - "node_modules/crypto-addr-codec": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/crypto-addr-codec/-/crypto-addr-codec-0.1.7.tgz", - "integrity": "sha512-X4hzfBzNhy4mAc3UpiXEC/L0jo5E8wAa9unsnA8nNXYzXjCcGk83hfC5avJWCSGT8V91xMnAS9AKMHmjw5+XCg==", + "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": { - "base-x": "^3.0.8", - "big-integer": "1.6.36", - "blakejs": "^1.1.0", - "bs58": "^4.0.1", - "ripemd160-min": "0.0.6", - "safe-buffer": "^5.2.0", - "sha3": "^2.1.1" + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "node_modules/css-select": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz", - "integrity": "sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==", + "node_modules/eslint/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": { - "boolbase": "^1.0.0", - "css-what": "^6.1.0", - "domhandler": "^5.0.2", - "domutils": "^3.0.1", - "nth-check": "^2.0.1" + "prelude-ls": "^1.2.1" }, - "funding": { - "url": "https://github.com/sponsors/fb55" + "engines": { + "node": ">= 0.8.0" } }, - "node_modules/css-what": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", - "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==", + "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": ">= 6" + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" }, "funding": { - "url": "https://github.com/sponsors/fb55" + "url": "https://opencollective.com/eslint" } }, - "node_modules/cssfilter": { - "version": "0.0.10", - "resolved": "https://registry.npmjs.org/cssfilter/-/cssfilter-0.0.10.tgz", - "integrity": "sha512-FAaLDaplstoRsDR8XGYH51znUN0UY7nMc6Z9/fvE8EXGwvJE9hu7W2vHwx1+bd6gCYnln9nLbzxFTrcO9YQDZw==", + "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, - "optional": true, - "peer": true - }, - "node_modules/d": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/d/-/d-1.0.1.tgz", - "integrity": "sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==", - "dependencies": { - "es5-ext": "^0.10.50", - "type": "^1.0.1" + "peer": true, + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=0.10.0" } }, - "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/esquery": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.6.0.tgz", + "integrity": "sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==", + "dev": true, "dependencies": { - "assert-plus": "^1.0.0" + "estraverse": "^5.1.0" }, "engines": { "node": ">=0.10" } }, - "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/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": { - "call-bind": "^1.0.6", - "es-errors": "^1.3.0", - "is-data-view": "^1.0.1" - }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=4.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/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": { - "call-bind": "^1.0.7", - "es-errors": "^1.3.0", - "is-data-view": "^1.0.1" + "estraverse": "^5.2.0" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=4.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/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": { - "call-bind": "^1.0.6", - "es-errors": "^1.3.0", - "is-data-view": "^1.0.1" - }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=4.0" } }, - "node_modules/dataloader": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/dataloader/-/dataloader-2.1.0.tgz", - "integrity": "sha512-qTcEYLen3r7ojZNgVUaRggOI+KM7jrKxXeSHhogh/TWxYMeONEMqY+hmkobiYQozsGIyg9OYVzO4ZIfoB4I0pQ==", + "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, - "optional": true, - "peer": true - }, - "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 + "peer": true, + "engines": { + "node": ">=0.10.0" + } }, - "node_modules/debounce-fn": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/debounce-fn/-/debounce-fn-4.0.0.tgz", - "integrity": "sha512-8pYCQiL9Xdcg0UPSD3d+0KMlOjp+KGU5EPwYddgzQ7DATsg4fuUDjQtsYLmWjnk2obnNHgV3vE2Y4jejSOJVBQ==", + "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, - "optional": true, - "peer": true, - "dependencies": { - "mimic-fn": "^3.0.0" - }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=0.10.0" } }, - "node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "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, + "peer": true, "dependencies": { - "ms": "2.1.2" + "@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" }, - "engines": { - "node": ">=6.0" + "peerDependencies": { + "@codechecks/client": "^0.1.0" }, "peerDependenciesMeta": { - "supports-color": { + "@codechecks/client": { "optional": true } } }, - "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==", + "node_modules/eth-gas-reporter/node_modules/axios": { + "version": "1.7.9", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.9.tgz", + "integrity": "sha512-LhLcE7Hbiryz8oMDdDptSrWowmB4Bl6RCt6sIJKpRB4XtVf0iEgewX3au/pJqm+Py1kCASkb/FFKjxQaLtxJvw==", "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "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==", - "engines": { - "node": ">=0.10" - } - }, - "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==", + "peer": true, "dependencies": { - "mimic-response": "^1.0.0" - }, - "engines": { - "node": ">=4" + "follow-redirects": "^1.15.6", + "form-data": "^4.0.0", + "proxy-from-env": "^1.1.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/eth-gas-reporter/node_modules/ethers": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/ethers/-/ethers-5.7.2.tgz", + "integrity": "sha512-wswUsmWo1aOK8rR7DIKiWSw9DbLWe6x98Jrn8wcTflTVvaXhAMaB5zGAXy0GYQEQp9iO1iSHWVyARQm11zUtyg==", + "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" + } + ], + "peer": true, "dependencies": { - "type-detect": "^4.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "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/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==", - "engines": { - "node": ">=10" - } - }, - "node_modules/deferred-leveldown": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/deferred-leveldown/-/deferred-leveldown-1.2.2.tgz", - "integrity": "sha512-uukrWD2bguRtXilKt6cAWKyoXrTSMo5m7crUdLfWQmu8kIm88w3QZoUL+6nhpfKVmhHANER6Re3sKoNoZ3IKMA==", - "dependencies": { - "abstract-leveldown": "~2.6.0" + "@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" } }, - "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/eth-gas-reporter/node_modules/form-data": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.1.tgz", + "integrity": "sha512-tzN8e4TX8+kkxGPK8D5u0FNmjPUjw3lwC9lSLxxoB/+GtsJG91CO8bSWy73APlgAZzZbXEYZJuxjkHH2w+Ezhw==", + "dev": true, + "peer": true, "dependencies": { - "es-define-property": "^1.0.0", - "es-errors": "^1.3.0", - "gopd": "^1.0.1" + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">= 6" } }, - "node_modules/define-properties": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", - "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", + "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, + "peer": true, "dependencies": { - "define-data-property": "^1.0.1", - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "js-sha3": "^0.8.0" } }, - "node_modules/define-properties/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==", + "node_modules/ethereum-cryptography": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-1.1.2.tgz", + "integrity": "sha512-XDSJlg4BD+hq9N2FjvotwUET9Tfxpxc3kWGE2AqUG5vcbeunnbImVk3cj6e/xT3phdW21mE8R5IugU4fspQDcQ==", "dev": true, - "engines": { - "node": ">= 0.4" + "dependencies": { + "@noble/hashes": "1.1.2", + "@noble/secp256k1": "1.6.3", + "@scure/bip32": "1.1.0", + "@scure/bip39": "1.1.0" } }, - "node_modules/delay": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/delay/-/delay-5.0.0.tgz", - "integrity": "sha512-ReEBKkIfe4ya47wlPYf/gu5ib6yUG0/Aez0JQZQz94kiWtRQvZIQbTiehsnwHvLSWJnQdhVeqYue7Id1dKr0qw==", + "node_modules/ethereumjs-abi": { + "version": "0.6.8", + "resolved": "git+ssh://git@github.com/ethereumjs/ethereumjs-abi.git#ee3994657fa7a427238e6ba92a84d0b529bbcde0", "dev": true, - "optional": true, - "peer": true, - "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", - "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", - "engines": { - "node": ">=0.4.0" - } - }, - "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==", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/destroy": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", - "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", - "engines": { - "node": ">= 0.8", - "npm": "1.2.8000 || >= 1.4.16" + "license": "MIT", + "dependencies": { + "bn.js": "^4.11.8", + "ethereumjs-util": "^6.0.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/ethereumjs-abi/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, - "engines": { - "node": ">=4" + "dependencies": { + "@types/node": "*" } }, - "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==", + "node_modules/ethereumjs-abi/node_modules/base-x": { + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/base-x/-/base-x-3.0.10.tgz", + "integrity": "sha512-7d0s06rR9rYaIWHkpfLIFICM/tkSVdoPC9qYAQRpxn9DdKNWNsKC0uk++akckyLq16Tx2WIinnZ6WRriAt6njQ==", "dev": true, - "engines": { - "node": ">=0.3.1" + "dependencies": { + "safe-buffer": "^5.0.1" } }, - "node_modules/difflib": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/difflib/-/difflib-0.2.4.tgz", - "integrity": "sha512-9YVwmMb0wQHQNr5J9m6BSj6fk4pfGITGQOOs+D9Fl+INODWFOfvhIU1hNv6GgR1RBoC/9NJcwu77zShxV0kT7w==", + "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-abi/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, "dependencies": { - "heap": ">= 0.2.0" - }, - "engines": { - "node": "*" + "base-x": "^3.0.2" } }, - "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-abi/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, "dependencies": { - "path-type": "^4.0.0" - }, - "engines": { - "node": ">=8" + "bs58": "^4.0.0", + "create-hash": "^1.1.0", + "safe-buffer": "^5.1.2" } }, - "node_modules/dom-serializer": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", - "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==", + "node_modules/ethereumjs-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==", "dev": true, "dependencies": { - "domelementtype": "^2.3.0", - "domhandler": "^5.0.2", - "entities": "^4.2.0" - }, - "funding": { - "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + "@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/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/domelementtype": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", - "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", + "node_modules/ethereumjs-abi/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, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/fb55" - } - ] + "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/domhandler": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", - "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", + "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": { - "domelementtype": "^2.3.0" + "@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": ">= 4" - }, - "funding": { - "url": "https://github.com/fb55/domhandler?sponsor=1" + "node": ">=10.0.0" } }, - "node_modules/domutils": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.1.0.tgz", - "integrity": "sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==", + "node_modules/ethereumjs-util/node_modules/base-x": { + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/base-x/-/base-x-3.0.10.tgz", + "integrity": "sha512-7d0s06rR9rYaIWHkpfLIFICM/tkSVdoPC9qYAQRpxn9DdKNWNsKC0uk++akckyLq16Tx2WIinnZ6WRriAt6njQ==", "dev": true, "dependencies": { - "dom-serializer": "^2.0.0", - "domelementtype": "^2.3.0", - "domhandler": "^5.0.3" - }, - "funding": { - "url": "https://github.com/fb55/domutils?sponsor=1" + "safe-buffer": "^5.0.1" } }, - "node_modules/dot-case": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/dot-case/-/dot-case-2.1.1.tgz", - "integrity": "sha512-HnM6ZlFqcajLsyudHq7LeeLDr2rFAVYtDv/hV5qchQEidSck8j9OPUsXY9KwJv/lHMtYlX4DjRQqwFYa+0r8Ug==", + "node_modules/ethereumjs-util/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, "dependencies": { - "no-case": "^2.2.0" + "base-x": "^3.0.2" } }, - "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==", + "node_modules/ethereumjs-util/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, - "optional": true, - "peer": true, "dependencies": { - "is-obj": "^2.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/dotenv": { - "version": "16.3.1", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.3.1.tgz", - "integrity": "sha512-IPzF4w4/Rd94bA9imS68tZBaYyBWSCE47V1RGuMrB94iyTOIEwRmVL2x/4An+6mETpLrKJ5hQkB8W4kFAadeIQ==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/motdotla/dotenv?sponsor=1" + "bs58": "^4.0.0", + "create-hash": "^1.1.0", + "safe-buffer": "^5.1.2" } }, - "node_modules/double-ended-queue": { - "version": "2.1.0-0", - "resolved": "https://registry.npmjs.org/double-ended-queue/-/double-ended-queue-2.1.0-0.tgz", - "integrity": "sha512-+BNfZ+deCo8hMNpDqDnvT+c0XpJ5cUa6mqYq89bho2Ifze4URTqRkcwR399hWoTrTkbZ/XJYDgP6rc7pRgffEQ==", + "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, - "optional": true, - "peer": 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==", "dependencies": { - "jsbn": "~0.1.0", - "safer-buffer": "^2.1.0" + "@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/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==" - }, - "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==" - }, - "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/ethers": { + "version": "6.13.4", + "resolved": "https://registry.npmjs.org/ethers/-/ethers-6.13.4.tgz", + "integrity": "sha512-21YtnZVg4/zKkCQPjrDj38B1r4nQvTZLopUGMLQ1ePU2zV/joCfDC3t3iKQjWRzjjjbzR+mdAIoikeBRNkdllA==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/ethers-io/" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], "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" + "@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/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.4.1", - "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.4.1.tgz", - "integrity": "sha512-r4eRSeStEGf6M5SKdrQhhLK5bOwOBxQhIE3YSTnZE3GpKiLfnnhE+tPtrJE79+eDJgm39BM6LSoI8SCx4HbwlQ==", + "node_modules/ethers/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, - "optional": true, - "peer": true, "engines": { - "node": ">=6" + "node": ">= 16" + }, + "funding": { + "url": "https://paulmillr.com/funding/" } }, - "node_modules/emoji-regex": { - "version": "10.2.1", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-10.2.1.tgz", - "integrity": "sha512-97g6QgOk8zlDRdgq1WxwgTMgEWGVAQvB5Fdpgc1MkNy56la5SKP9GsMXKDOdqwn90/41a8yPwIGk1Y6WVbeMQA==", + "node_modules/ethers/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 }, - "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/ethers/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 + }, + "node_modules/ethers/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, "engines": { - "node": ">= 0.8" + "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/encoding-down": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/encoding-down/-/encoding-down-6.3.0.tgz", - "integrity": "sha512-QKrV0iKR6MZVJV08QY0wp1e7vF6QbhnbQhb07bwpEyuz4uZiZgPlEGdkCROuFkUwdxlFaiPIhjyarH1ee/3vhw==", + "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, - "optional": true, "peer": true, "dependencies": { - "abstract-leveldown": "^6.2.1", - "inherits": "^2.0.3", - "level-codec": "^9.0.0", - "level-errors": "^2.0.0" + "bn.js": "4.11.6", + "number-to-bn": "1.7.0" }, "engines": { - "node": ">=6" + "node": ">=6.5.0", + "npm": ">=3" } }, - "node_modules/encoding-down/node_modules/abstract-leveldown": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-6.3.0.tgz", - "integrity": "sha512-TU5nlYgta8YrBMNpc9FwQzRbiXsj49gsALsXadbGHt9CROPzX5fB0rWDR5mtdpOOKa5XqRFpbj1QroPAoPzVjQ==", + "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, + "peer": 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, - "optional": true, - "peer": true, "dependencies": { - "buffer": "^5.5.0", - "immediate": "^3.2.3", - "level-concat-iterator": "~2.0.0", - "level-supports": "~1.0.0", - "xtend": "~4.0.0" + "is-hex-prefixed": "1.0.0", + "strip-hex-prefix": "1.0.0" }, "engines": { - "node": ">=6" + "node": ">=6.5.0", + "npm": ">=3" } }, - "node_modules/encoding-down/node_modules/buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "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, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "optional": true, - "peer": true, "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" + "md5.js": "^1.3.4", + "safe-buffer": "^5.1.1" } }, - "node_modules/encoding-down/node_modules/level-codec": { - "version": "9.0.2", - "resolved": "https://registry.npmjs.org/level-codec/-/level-codec-9.0.2.tgz", - "integrity": "sha512-UyIwNb1lJBChJnGfjmO0OR+ezh2iVu1Kas3nvBS/BzGnx79dv6g7unpKIDNPMhfdTEGoc7mC8uAu51XEtX+FHQ==", + "node_modules/fast-base64-decode": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fast-base64-decode/-/fast-base64-decode-1.0.0.tgz", + "integrity": "sha512-qwaScUgUGBYeDNRnbc/KyllVU88Jk1pRHPStuF/lO7B0/RTRLj7U0lkdTAutlBblY08rwZDff6tNU9cjv6j//Q==", + "dev": true + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "node_modules/fast-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, - "optional": true, - "peer": true, "dependencies": { - "buffer": "^5.6.0" + "@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/encoding-down/node_modules/level-concat-iterator": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/level-concat-iterator/-/level-concat-iterator-2.0.1.tgz", - "integrity": "sha512-OTKKOqeav2QWcERMJR7IS9CUo1sHnke2C0gkSmcR7QuEtFNLLzHQAvnMw8ykvEcv0Qtkg0p7FOwP1v9e5Smdcw==", + "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/fastq": { + "version": "1.14.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.14.0.tgz", + "integrity": "sha512-eR2D+V9/ExcbF9ls441yIuN6TI2ED1Y2ZcA5BmMtJsOkWOFRJQ0Jt0g1UwqXJJVAb+V+umH5Dfr8oh4EVP7VVg==", "dev": true, - "optional": true, - "peer": true, - "engines": { - "node": ">=6" + "dependencies": { + "reusify": "^1.0.4" } }, - "node_modules/encoding-down/node_modules/level-errors": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/level-errors/-/level-errors-2.0.1.tgz", - "integrity": "sha512-UVprBJXite4gPS+3VznfgDSU8PTRuVX0NXwoWW50KLxd2yw4Y1t2JUR5In1itQnudZqRMT9DlAM3Q//9NCjCFw==", + "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, - "optional": true, - "peer": true, "dependencies": { - "errno": "~0.1.1" + "flat-cache": "^4.0.0" }, "engines": { - "node": ">=6" + "node": ">=16.0.0" } }, - "node_modules/encoding-down/node_modules/level-supports": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/level-supports/-/level-supports-1.0.1.tgz", - "integrity": "sha512-rXM7GYnW8gsl1vedTJIbzOrRv85c/2uCMpiiCzO2fndd06U/kUXEEU9evYn4zFggBOg36IsBW8LzqIpETwwQzg==", + "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, - "optional": true, - "peer": true, "dependencies": { - "xtend": "^4.0.2" + "to-regex-range": "^5.0.1" }, "engines": { - "node": ">=6" + "node": ">=8" } }, - "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==", + "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, + "peer": true, "dependencies": { - "once": "^1.4.0" + "array-back": "^3.0.1" + }, + "engines": { + "node": ">=4.0.0" } }, - "node_modules/end-stream": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/end-stream/-/end-stream-0.1.0.tgz", - "integrity": "sha512-Brl10T8kYnc75IepKizW6Y9liyW8ikz1B7n/xoHrJxoVSSjoqPn30sb7XVFfQERK4QfUMYRGs9dhWwtt2eu6uA==", + "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, - "optional": true, - "peer": true, - "dependencies": { - "write-stream": "~0.4.3" + "bin": { + "flat": "cli.js" } }, - "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/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, - "peer": true, "dependencies": { - "ansi-colors": "^4.1.1" + "flatted": "^3.2.9", + "keyv": "^4.5.4" }, "engines": { - "node": ">=8.6" + "node": ">=16" } }, - "node_modules/entities": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", - "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", - "dev": true, - "engines": { - "node": ">=0.12" - }, - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" - } + "node_modules/flatted": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.2.tgz", + "integrity": "sha512-AiwGJM8YcNOaobumgtng+6NHuOqC3A7MixFeDafM3X9cIUM+xUXoS5Vfgf+OihAYe20fxqNM9yPBXJzRtZ/4eA==", + "dev": true }, - "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/follow-redirects": { + "version": "1.15.6", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.6.tgz", + "integrity": "sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA==", "dev": true, - "peer": true, + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], "engines": { - "node": ">=6" + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } } }, - "node_modules/errno": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.8.tgz", - "integrity": "sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==", + "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": { - "prr": "~1.0.1" - }, - "bin": { - "errno": "cli.js" + "is-callable": "^1.1.3" } }, - "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/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==", "dev": true, + "peer": true, "dependencies": { - "is-arrayish": "^0.2.1" + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 0.12" } }, - "node_modules/es-abstract": { - "version": "1.23.3", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.3.tgz", - "integrity": "sha512-e+HfNH61Bj1X9/jLc5v1owaLYuHdeHHSQlkhCBiTK8rBvKaULl/beGMxwrMXjpYrv4pz22BlY570vVePA2ho4A==", + "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/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": { - "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.8", - "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.6", - "unbox-primitive": "^1.0.2", - "which-typed-array": "^1.1.15" + "graceful-fs": "^4.1.2", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=6 <7 || >=8" } }, - "node_modules/es-abstract/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==", + "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, + "peer": true + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true + }, + "node_modules/fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], "engines": { - "node": ">= 0.4" + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" } }, - "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/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/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": { - "get-intrinsic": "^1.2.4" + "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/es-errors": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", - "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "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/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true, "engines": { - "node": ">= 0.4" + "node": "6.* || 8.* || >= 10.*" } }, - "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/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, - "dependencies": { - "es-errors": "^1.3.0" - }, "engines": { - "node": ">= 0.4" + "node": "*" } }, - "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/get-intrinsic": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", + "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==", "dev": true, "dependencies": { - "get-intrinsic": "^1.2.4", - "has-tostringtag": "^1.0.2", - "hasown": "^2.0.1" + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3", + "hasown": "^2.0.0" }, "engines": { "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/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/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, - "dependencies": { - "hasown": "^2.0.0" + "peer": true, + "engines": { + "node": ">=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==", + "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": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" + "call-bind": "^1.0.5", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4" }, "engines": { "node": ">= 0.4" @@ -7293,2087 +5916,1692 @@ "url": "https://github.com/sponsors/ljharb" } }, - "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==", - "hasInstallScript": true, + "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, + "peer": true, "dependencies": { - "es6-iterator": "^2.0.3", - "es6-symbol": "^3.1.3", - "esniff": "^2.0.1", - "next-tick": "^1.1.0" + "chalk": "^2.4.2", + "node-emoji": "^1.10.0" }, - "engines": { - "node": ">=0.10" - } - }, - "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==", - "dependencies": { - "d": "1", - "es5-ext": "^0.10.35", - "es6-symbol": "^3.1.1" + "bin": { + "testrpc-sc": "index.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==" - }, - "node_modules/es6-symbol": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.3.tgz", - "integrity": "sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==", - "dependencies": { - "d": "^1.0.1", - "ext": "^1.1.2" - } - }, - "node_modules/escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", - "engines": { - "node": ">=6" - } - }, - "node_modules/escape-html": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==" - }, - "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==", - "engines": { - "node": ">=0.8.0" - } - }, - "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/glob": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", + "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", "dev": true, + "peer": 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" + "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": ">=0.12.0" + "node": "*" }, - "optionalDependencies": { - "source-map": "~0.2.0" + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/esniff": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/esniff/-/esniff-2.0.1.tgz", - "integrity": "sha512-kTUIGKQ/mDPFoJ0oVfcmyJn4iBDRptjNVIzwIFR7tqWXdVI9xfA2RMwY/gbSpJG3lkdWNEjLap/NqVHZiJsdfg==", + "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": { - "d": "^1.0.1", - "es5-ext": "^0.10.62", - "event-emitter": "^0.3.5", - "type": "^2.7.2" + "is-glob": "^4.0.1" }, "engines": { - "node": ">=0.10" + "node": ">= 6" } }, - "node_modules/esniff/node_modules/type": { - "version": "2.7.2", - "resolved": "https://registry.npmjs.org/type/-/type-2.7.2.tgz", - "integrity": "sha512-dzlvlNlt6AXU7EBSfpAscydQ7gXB+pPGsPnfJnZpiNJBDj7IaJzQlBZYGdEi4R9HmPdBv2XmWJ6YUtoTa7lmCw==" - }, - "node_modules/esprima": { - "version": "2.7.3", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz", - "integrity": "sha512-OarPfz0lFCiW4/AV2Oy1Rp9qu0iusTKqykwTspGCZtPxmF81JR4MmIebvF1F9+UOKth2ZubLQ4XGGaU+hSn99A==", + "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, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" + "peer": true, + "dependencies": { + "global-prefix": "^3.0.0" }, "engines": { - "node": ">=0.10.0" + "node": ">=6" } }, - "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==", + "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, + "peer": true, + "dependencies": { + "ini": "^1.3.5", + "kind-of": "^6.0.2", + "which": "^1.3.1" + }, "engines": { - "node": ">=0.10.0" + "node": ">=6" } }, - "node_modules/esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "node_modules/globals": { + "version": "15.13.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-15.13.0.tgz", + "integrity": "sha512-49TewVEz0UxZjr1WYYsWpPrhyC/B/pA8Bq0fUmet2n+eR7yn0IvNzNaoBwnK6mdkzcN+se7Ez9zUgULTz2QH4g==", "dev": true, "engines": { - "node": ">=0.10.0" + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/etag": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", + "node_modules/globalthis": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", + "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", + "dev": true, + "dependencies": { + "define-properties": "^1.2.1", + "gopd": "^1.0.1" + }, "engines": { - "node": ">= 0.6" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/eth-block-tracker": { - "version": "4.4.3", - "resolved": "https://registry.npmjs.org/eth-block-tracker/-/eth-block-tracker-4.4.3.tgz", - "integrity": "sha512-A8tG4Z4iNg4mw5tP1Vung9N9IjgMNqpiMoJ/FouSFwNCGHv2X0mmOYwtQOJzki6XN7r7Tyo01S29p7b224I4jw==", + "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, + "peer": true, "dependencies": { - "@babel/plugin-transform-runtime": "^7.5.5", - "@babel/runtime": "^7.5.5", - "eth-query": "^2.1.0", - "json-rpc-random-id": "^1.0.1", - "pify": "^3.0.0", - "safe-event-emitter": "^1.0.1" - } - }, - "node_modules/eth-block-tracker/node_modules/pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==", + "@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" + }, "engines": { - "node": ">=4" + "node": ">=8" } }, - "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==", + "node_modules/gopd": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", + "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", + "dev": true, "dependencies": { - "idna-uts46-hx": "^2.3.1", - "js-sha3": "^0.5.7" + "get-intrinsic": "^1.1.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "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==" + "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/graphemer": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", + "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", + "dev": true }, - "node_modules/eth-json-rpc-filters": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/eth-json-rpc-filters/-/eth-json-rpc-filters-4.2.2.tgz", - "integrity": "sha512-DGtqpLU7bBg63wPMWg1sCpkKCf57dJ+hj/k3zF26anXMzkmtSBDExL8IhUu7LUd34f0Zsce3PYNO2vV2GaTzaw==", + "node_modules/handlebars": { + "version": "4.7.7", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.7.tgz", + "integrity": "sha512-aAcXm5OAfE/8IXkcZvCepKU3VzW1/39Fb5ZuqMtgI/hT8X2YgoMvBY5dLhq/cpOvw7Lk1nK/UF71aLG/ZnVYRA==", + "dev": true, + "peer": true, "dependencies": { - "@metamask/safe-event-emitter": "^2.0.0", - "async-mutex": "^0.2.6", - "eth-json-rpc-middleware": "^6.0.0", - "eth-query": "^2.1.2", - "json-rpc-engine": "^6.1.0", - "pify": "^5.0.0" + "minimist": "^1.2.5", + "neo-async": "^2.6.0", + "source-map": "^0.6.1", + "wordwrap": "^1.0.0" + }, + "bin": { + "handlebars": "bin/handlebars" + }, + "engines": { + "node": ">=0.4.7" + }, + "optionalDependencies": { + "uglify-js": "^3.1.4" } }, - "node_modules/eth-json-rpc-filters/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/handlebars/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, + "peer": true, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=0.10.0" } }, - "node_modules/eth-json-rpc-infura": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/eth-json-rpc-infura/-/eth-json-rpc-infura-5.1.0.tgz", - "integrity": "sha512-THzLye3PHUSGn1EXMhg6WTLW9uim7LQZKeKaeYsS9+wOBcamRiCQVGHa6D2/4P0oS0vSaxsBnU/J6qvn0MPdow==", + "node_modules/hardhat": { + "version": "2.22.17", + "resolved": "https://registry.npmjs.org/hardhat/-/hardhat-2.22.17.tgz", + "integrity": "sha512-tDlI475ccz4d/dajnADUTRc1OJ3H8fpP9sWhXhBPpYsQOg8JHq5xrDimo53UhWPl7KJmAeDCm1bFG74xvpGRpg==", + "dev": true, "dependencies": { - "eth-json-rpc-middleware": "^6.0.0", - "eth-rpc-errors": "^3.0.0", - "json-rpc-engine": "^5.3.0", - "node-fetch": "^2.6.0" + "@ethersproject/abi": "^5.1.2", + "@metamask/eth-sig-util": "^4.0.0", + "@nomicfoundation/edr": "^0.6.5", + "@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", + "@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", + "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": "^5.0.0", + "fp-ts": "1.19.3", + "fs-extra": "^7.0.1", + "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.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", + "ws": "^7.4.6" + }, + "bin": { + "hardhat": "internal/cli/bootstrap.js" + }, + "peerDependencies": { + "ts-node": "*", + "typescript": "*" + }, + "peerDependenciesMeta": { + "ts-node": { + "optional": true + }, + "typescript": { + "optional": true + } } }, - "node_modules/eth-json-rpc-infura/node_modules/json-rpc-engine": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/json-rpc-engine/-/json-rpc-engine-5.4.0.tgz", - "integrity": "sha512-rAffKbPoNDjuRnXkecTjnsE3xLLrb00rEkdgalINhaYVYIxDwWtvYBr9UFbhTvPB1B2qUOLoFd/cV6f4Q7mh7g==", + "node_modules/hardhat-contract-sizer": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/hardhat-contract-sizer/-/hardhat-contract-sizer-2.10.0.tgz", + "integrity": "sha512-QiinUgBD5MqJZJh1hl1jc9dNnpJg7eE/w4/4GEnrcmZJJTDbVFNe3+/3Ep24XqISSkYxRz36czcPHKHd/a0dwA==", + "dev": true, + "license": "MIT", "dependencies": { - "eth-rpc-errors": "^3.0.0", - "safe-event-emitter": "^1.0.1" + "chalk": "^4.0.0", + "cli-table3": "^0.6.0", + "strip-ansi": "^6.0.0" + }, + "peerDependencies": { + "hardhat": "^2.0.0" } }, - "node_modules/eth-json-rpc-middleware": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/eth-json-rpc-middleware/-/eth-json-rpc-middleware-6.0.0.tgz", - "integrity": "sha512-qqBfLU2Uq1Ou15Wox1s+NX05S9OcAEL4JZ04VZox2NS0U+RtCMjSxzXhLFWekdShUPZ+P8ax3zCO2xcPrp6XJQ==", - "dependencies": { - "btoa": "^1.2.1", - "clone": "^2.1.1", - "eth-query": "^2.1.2", - "eth-rpc-errors": "^3.0.0", - "eth-sig-util": "^1.4.2", - "ethereumjs-util": "^5.1.2", - "json-rpc-engine": "^5.3.0", - "json-stable-stringify": "^1.0.1", - "node-fetch": "^2.6.1", - "pify": "^3.0.0", - "safe-event-emitter": "^1.0.1" + "node_modules/hardhat-contract-sizer/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/eth-json-rpc-middleware/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/eth-json-rpc-middleware/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/hardhat-contract-sizer/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": { - "bs58": "^4.0.0", - "create-hash": "^1.1.0", - "safe-buffer": "^5.1.2" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/eth-json-rpc-middleware/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/hardhat-contract-sizer/node_modules/cli-table3": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/cli-table3/-/cli-table3-0.6.5.tgz", + "integrity": "sha512-+W/5efTR7y5HRD7gACw9yQjqMVvEMLBHmboM/kPWam+H+Hmyrgjh6YncVKK122YZkXrLudzTuAukUw9FnMf7IQ==", + "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" + "string-width": "^4.2.0" + }, + "engines": { + "node": "10.* || >= 12.*" + }, + "optionalDependencies": { + "@colors/colors": "1.5.0" } }, - "node_modules/eth-json-rpc-middleware/node_modules/ethereumjs-util": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.2.1.tgz", - "integrity": "sha512-v3kT+7zdyCm1HIqWlLNrHGqHGLpGYIhjeHxQjnDXjLT2FyGJDsd3LWMYUo7pAFRrk86CR3nUJfhC81CCoJNNGQ==", + "node_modules/hardhat-contract-sizer/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": { - "bn.js": "^4.11.0", - "create-hash": "^1.1.2", - "elliptic": "^6.5.2", - "ethereum-cryptography": "^0.1.3", - "ethjs-util": "^0.1.3", - "rlp": "^2.0.0", - "safe-buffer": "^5.1.1" + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" } }, - "node_modules/eth-json-rpc-middleware/node_modules/json-rpc-engine": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/json-rpc-engine/-/json-rpc-engine-5.4.0.tgz", - "integrity": "sha512-rAffKbPoNDjuRnXkecTjnsE3xLLrb00rEkdgalINhaYVYIxDwWtvYBr9UFbhTvPB1B2qUOLoFd/cV6f4Q7mh7g==", - "dependencies": { - "eth-rpc-errors": "^3.0.0", - "safe-event-emitter": "^1.0.1" - } + "node_modules/hardhat-contract-sizer/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/eth-json-rpc-middleware/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/hardhat-contract-sizer/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": ">=4" + "node": ">=8" } }, - "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==", + "node_modules/hardhat-contract-sizer/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": { - "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" + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "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/eth-lib/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/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==", + "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, + "peer": true, "dependencies": { - "async-limiter": "~1.0.0", - "safe-buffer": "~5.1.0", - "ultron": "~1.1.0" + "array-uniq": "1.0.3", + "eth-gas-reporter": "^0.2.25", + "sha1": "^1.1.1" + }, + "peerDependencies": { + "hardhat": "^2.0.2" } }, - "node_modules/eth-query": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/eth-query/-/eth-query-2.1.2.tgz", - "integrity": "sha512-srES0ZcvwkR/wd5OQBRA1bIJMww1skfGS0s8wlwK3/oNP4+wnds60krvu5R1QbpRQjMmpG5OMIWro5s7gvDPsA==", + "node_modules/hardhat/node_modules/chokidar": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.1.tgz", + "integrity": "sha512-n8enUVCED/KVRQlab1hr3MVpcVMvxtZjmEa956u+4YijlmQED223XMSYj2tLuKvr4jcCTzNNMpQDUer72MMmzA==", + "dev": true, "dependencies": { - "json-rpc-random-id": "^1.0.0", - "xtend": "^4.0.1" + "readdirp": "^4.0.1" + }, + "engines": { + "node": ">= 14.16.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" } }, - "node_modules/eth-rpc-errors": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/eth-rpc-errors/-/eth-rpc-errors-3.0.0.tgz", - "integrity": "sha512-iPPNHPrLwUlR9xCSYm7HHQjWBasor3+KZfRvwEWxMz3ca0yqnlBeJrnyphkGIXZ4J7AMAaOLmwy4AWhnxOiLxg==", + "node_modules/hardhat/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": { - "fast-safe-stringify": "^2.0.6" + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/eth-sig-util": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/eth-sig-util/-/eth-sig-util-1.4.2.tgz", - "integrity": "sha512-iNZ576iTOGcfllftB73cPB5AN+XUQAT/T8xzsILsghXC1o8gJUqe3RHlcDqagu+biFpYQ61KQrZZJza8eRSYqw==", - "deprecated": "Deprecated in favor of '@metamask/eth-sig-util'", + "node_modules/hardhat/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": { - "ethereumjs-abi": "git+https://github.com/ethereumjs/ethereumjs-abi.git", - "ethereumjs-util": "^5.1.1" + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/eth-sig-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==" - }, - "node_modules/eth-sig-util/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/hardhat/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": { - "bs58": "^4.0.0", - "create-hash": "^1.1.0", - "safe-buffer": "^5.1.2" + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/eth-sig-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==", + "node_modules/hardhat/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": { - "@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" + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/eth-sig-util/node_modules/ethereumjs-util": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.2.1.tgz", - "integrity": "sha512-v3kT+7zdyCm1HIqWlLNrHGqHGLpGYIhjeHxQjnDXjLT2FyGJDsd3LWMYUo7pAFRrk86CR3nUJfhC81CCoJNNGQ==", - "dependencies": { - "bn.js": "^4.11.0", - "create-hash": "^1.1.2", - "elliptic": "^6.5.2", - "ethereum-cryptography": "^0.1.3", - "ethjs-util": "^0.1.3", - "rlp": "^2.0.0", - "safe-buffer": "^5.1.1" + "node_modules/hardhat/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/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==", - "dependencies": { - "js-sha3": "^0.8.0" + "node_modules/hardhat/node_modules/readdirp": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.0.2.tgz", + "integrity": "sha512-yDMz9g+VaZkqBYS/ozoBJwaBhTbZo3UNYQHNRw1D3UFQB8oHB4uS/tAODO+ZLjGWmUbKnIlOWO+aaIiAxrUWHA==", + "dev": true, + "engines": { + "node": ">= 14.16.0" + }, + "funding": { + "type": "individual", + "url": "https://paulmillr.com/funding/" } }, - "node_modules/ethereum-common": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/ethereum-common/-/ethereum-common-0.2.0.tgz", - "integrity": "sha512-XOnAR/3rntJgbCdGhqdaLIxDLWKLmsZOGhHdBKadEr6gEnJLH52k93Ou+TUdFaPN3hJc3isBZBal3U/XZ15abA==" - }, - "node_modules/ethereum-cryptography": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-1.1.2.tgz", - "integrity": "sha512-XDSJlg4BD+hq9N2FjvotwUET9Tfxpxc3kWGE2AqUG5vcbeunnbImVk3cj6e/xT3phdW21mE8R5IugU4fspQDcQ==", - "dependencies": { - "@noble/hashes": "1.1.2", - "@noble/secp256k1": "1.6.3", - "@scure/bip32": "1.1.0", - "@scure/bip39": "1.1.0" + "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/ethereum-protocol": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/ethereum-protocol/-/ethereum-protocol-1.0.1.tgz", - "integrity": "sha512-3KLX1mHuEsBW0dKG+c6EOJS1NBNqdCICvZW9sInmZTt5aY0oxmHVggYRE0lJu1tcnMD1K+AKHdLi6U43Awm1Vg==" - }, - "node_modules/ethereumjs-abi": { - "version": "0.6.8", - "resolved": "git+ssh://git@github.com/ethereumjs/ethereumjs-abi.git#ee3994657fa7a427238e6ba92a84d0b529bbcde0", - "license": "MIT", - "dependencies": { - "bn.js": "^4.11.8", - "ethereumjs-util": "^6.0.0" + "node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, + "engines": { + "node": ">=4" } }, - "node_modules/ethereumjs-abi/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==", + "node_modules/has-property-descriptors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", + "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", + "dev": true, "dependencies": { - "@types/node": "*" + "es-define-property": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "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==" - }, - "node_modules/ethereumjs-abi/node_modules/bs58check": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/bs58check/-/bs58check-2.1.2.tgz", - "integrity": "sha512-0TS1jicxdU09dwJMNZtVAfzPi6Q6QeN0pM1Fkzrjn+XYHvzMKPU3pHVpva+769iNVSfIYWf7LJ6WR+BuuMf8cA==", - "dependencies": { - "bs58": "^4.0.0", - "create-hash": "^1.1.0", - "safe-buffer": "^5.1.2" + "node_modules/has-proto": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz", + "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/ethereumjs-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==", - "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/has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/ethereumjs-abi/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==", + "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": { - "@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" + "has-symbols": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/ethereumjs-account": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/ethereumjs-account/-/ethereumjs-account-2.0.5.tgz", - "integrity": "sha512-bgDojnXGjhMwo6eXQC0bY6UK2liSFUSMwwylOmQvZbSl/D7NXQ3+vrGO46ZeOgjGfxXmgIeVNDIiHw7fNZM4VA==", + "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==", + "dev": true, "dependencies": { - "ethereumjs-util": "^5.0.0", - "rlp": "^2.0.0", - "safe-buffer": "^5.1.1" + "inherits": "^2.0.4", + "readable-stream": "^3.6.0", + "safe-buffer": "^5.2.0" + }, + "engines": { + "node": ">=4" } }, - "node_modules/ethereumjs-account/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/ethereumjs-account/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/hash.js": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", + "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", + "dev": true, "dependencies": { - "bs58": "^4.0.0", - "create-hash": "^1.1.0", - "safe-buffer": "^5.1.2" + "inherits": "^2.0.3", + "minimalistic-assert": "^1.0.1" } }, - "node_modules/ethereumjs-account/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/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "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" + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" } }, - "node_modules/ethereumjs-account/node_modules/ethereumjs-util": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.2.1.tgz", - "integrity": "sha512-v3kT+7zdyCm1HIqWlLNrHGqHGLpGYIhjeHxQjnDXjLT2FyGJDsd3LWMYUo7pAFRrk86CR3nUJfhC81CCoJNNGQ==", - "dependencies": { - "bn.js": "^4.11.0", - "create-hash": "^1.1.2", - "elliptic": "^6.5.2", - "ethereum-cryptography": "^0.1.3", - "ethjs-util": "^0.1.3", - "rlp": "^2.0.0", - "safe-buffer": "^5.1.1" + "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/ethereumjs-block": { - "version": "1.7.1", - "resolved": "https://registry.npmjs.org/ethereumjs-block/-/ethereumjs-block-1.7.1.tgz", - "integrity": "sha512-B+sSdtqm78fmKkBq78/QLKJbu/4Ts4P2KFISdgcuZUPDm9x+N7qgBPIIFUGbaakQh8bzuquiRVbdmvPKqbILRg==", - "deprecated": "New package name format for new versions: @ethereumjs/block. Please update.", + "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, + "peer": 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==", + "dev": true, "dependencies": { - "async": "^2.0.1", - "ethereum-common": "0.2.0", - "ethereumjs-tx": "^1.2.2", - "ethereumjs-util": "^5.0.0", - "merkle-patricia-tree": "^2.1.2" + "hash.js": "^1.0.3", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.1" } }, - "node_modules/ethereumjs-block/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/ethereumjs-block/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/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, + "peer": true, "dependencies": { - "bs58": "^4.0.0", - "create-hash": "^1.1.0", - "safe-buffer": "^5.1.2" + "caseless": "^0.12.0", + "concat-stream": "^1.6.2", + "http-response-object": "^3.0.1", + "parse-cache-control": "^1.0.1" + }, + "engines": { + "node": ">=6.0.0" } }, - "node_modules/ethereumjs-block/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/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": { - "@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" + "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/ethereumjs-block/node_modules/ethereumjs-util": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.2.1.tgz", - "integrity": "sha512-v3kT+7zdyCm1HIqWlLNrHGqHGLpGYIhjeHxQjnDXjLT2FyGJDsd3LWMYUo7pAFRrk86CR3nUJfhC81CCoJNNGQ==", + "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, + "peer": true, "dependencies": { - "bn.js": "^4.11.0", - "create-hash": "^1.1.2", - "elliptic": "^6.5.2", - "ethereum-cryptography": "^0.1.3", - "ethjs-util": "^0.1.3", - "rlp": "^2.0.0", - "safe-buffer": "^5.1.1" + "@types/node": "^10.0.3" } }, - "node_modules/ethereumjs-common": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/ethereumjs-common/-/ethereumjs-common-1.5.2.tgz", - "integrity": "sha512-hTfZjwGX52GS2jcVO6E2sx4YuFnf0Fhp5ylo4pEPhEffNln7vS59Hr5sLnp3/QCazFLluuBZ+FZ6J5HTp0EqCA==", - "deprecated": "New package name format for new versions: @ethereumjs/common. Please update." + "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, + "peer": true }, - "node_modules/ethereumjs-tx": { - "version": "1.3.7", - "resolved": "https://registry.npmjs.org/ethereumjs-tx/-/ethereumjs-tx-1.3.7.tgz", - "integrity": "sha512-wvLMxzt1RPhAQ9Yi3/HKZTn0FZYpnsmQdbKYfUUpi4j1SEIcbkd9tndVjcPrufY3V7j2IebOpC00Zp2P/Ay2kA==", - "deprecated": "New package name format for new versions: @ethereumjs/tx. Please update.", + "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": { - "ethereum-common": "^0.0.18", - "ethereumjs-util": "^5.0.0" + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" } }, - "node_modules/ethereumjs-tx/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/ethereumjs-tx/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/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": { - "bs58": "^4.0.0", - "create-hash": "^1.1.0", - "safe-buffer": "^5.1.2" + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" } }, - "node_modules/ethereumjs-tx/node_modules/ethereum-common": { - "version": "0.0.18", - "resolved": "https://registry.npmjs.org/ethereum-common/-/ethereum-common-0.0.18.tgz", - "integrity": "sha512-EoltVQTRNg2Uy4o84qpa2aXymXDJhxm7eos/ACOg0DG4baAbMjhbdAEsx9GeE8sC3XCxnYvrrzZDH8D8MtA2iQ==" - }, - "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==", - "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/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/ignore": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", + "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", + "dev": true, + "engines": { + "node": ">= 4" } }, - "node_modules/ethereumjs-tx/node_modules/ethereumjs-util": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.2.1.tgz", - "integrity": "sha512-v3kT+7zdyCm1HIqWlLNrHGqHGLpGYIhjeHxQjnDXjLT2FyGJDsd3LWMYUo7pAFRrk86CR3nUJfhC81CCoJNNGQ==", - "dependencies": { - "bn.js": "^4.11.0", - "create-hash": "^1.1.2", - "elliptic": "^6.5.2", - "ethereum-cryptography": "^0.1.3", - "ethjs-util": "^0.1.3", - "rlp": "^2.0.0", - "safe-buffer": "^5.1.1" + "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, + "peer": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/immer" } }, - "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/immutable": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.1.0.tgz", + "integrity": "sha512-oNkuqVTA8jqG1Q6c+UglTOD1xhC1BtjKI7XkCXRkZHrN5m18/XsnUp8Q89GkQO/z+0WjonSvl0FLhDYftp46nQ==", + "dev": true + }, + "node_modules/import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dev": true, "dependencies": { - "@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" + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" }, "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/ethereumjs-util/node_modules/bs58check": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/bs58check/-/bs58check-2.1.2.tgz", - "integrity": "sha512-0TS1jicxdU09dwJMNZtVAfzPi6Q6QeN0pM1Fkzrjn+XYHvzMKPU3pHVpva+769iNVSfIYWf7LJ6WR+BuuMf8cA==", - "dependencies": { - "bs58": "^4.0.0", - "create-hash": "^1.1.0", - "safe-buffer": "^5.1.2" + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "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==", - "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/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/ethereumjs-vm": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/ethereumjs-vm/-/ethereumjs-vm-2.6.0.tgz", - "integrity": "sha512-r/XIUik/ynGbxS3y+mvGnbOKnuLo40V5Mj1J25+HEO63aWYREIqvWeRO/hnROlMBE5WoniQmPmhiaN0ctiHaXw==", - "deprecated": "New package name format for new versions: @ethereumjs/vm. Please update.", - "dependencies": { - "async": "^2.1.2", - "async-eventemitter": "^0.2.2", - "ethereumjs-account": "^2.0.3", - "ethereumjs-block": "~2.2.0", - "ethereumjs-common": "^1.1.0", - "ethereumjs-util": "^6.0.0", - "fake-merkle-patricia-tree": "^1.0.1", - "functional-red-black-tree": "^1.0.1", - "merkle-patricia-tree": "^2.3.2", - "rustbn.js": "~0.2.0", - "safe-buffer": "^5.1.1" + "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/ethereumjs-vm/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==", + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "dev": true, "dependencies": { - "@types/node": "*" + "once": "^1.3.0", + "wrappy": "1" } }, - "node_modules/ethereumjs-vm/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/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true }, - "node_modules/ethereumjs-vm/node_modules/bs58check": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/bs58check/-/bs58check-2.1.2.tgz", - "integrity": "sha512-0TS1jicxdU09dwJMNZtVAfzPi6Q6QeN0pM1Fkzrjn+XYHvzMKPU3pHVpva+769iNVSfIYWf7LJ6WR+BuuMf8cA==", - "dependencies": { - "bs58": "^4.0.0", - "create-hash": "^1.1.0", - "safe-buffer": "^5.1.2" - } + "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, + "peer": true }, - "node_modules/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==", + "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": { - "@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" + "es-errors": "^1.3.0", + "hasown": "^2.0.0", + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" } }, - "node_modules/ethereumjs-vm/node_modules/ethereumjs-block": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/ethereumjs-block/-/ethereumjs-block-2.2.2.tgz", - "integrity": "sha512-2p49ifhek3h2zeg/+da6XpdFR3GlqY3BIEiqxGF8j9aSRIgkb7M1Ky+yULBKJOu8PAZxfhsYA+HxUk2aCQp3vg==", - "deprecated": "New package name format for new versions: @ethereumjs/block. Please update.", - "dependencies": { - "async": "^2.0.1", - "ethereumjs-common": "^1.5.0", - "ethereumjs-tx": "^2.1.1", - "ethereumjs-util": "^5.0.0", - "merkle-patricia-tree": "^2.1.2" + "node_modules/interpret": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz", + "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 0.10" } }, - "node_modules/ethereumjs-vm/node_modules/ethereumjs-block/node_modules/ethereumjs-util": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.2.1.tgz", - "integrity": "sha512-v3kT+7zdyCm1HIqWlLNrHGqHGLpGYIhjeHxQjnDXjLT2FyGJDsd3LWMYUo7pAFRrk86CR3nUJfhC81CCoJNNGQ==", + "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": { - "bn.js": "^4.11.0", - "create-hash": "^1.1.2", - "elliptic": "^6.5.2", - "ethereum-cryptography": "^0.1.3", - "ethjs-util": "^0.1.3", - "rlp": "^2.0.0", - "safe-buffer": "^5.1.1" + "fp-ts": "^1.0.0" } }, - "node_modules/ethereumjs-vm/node_modules/ethereumjs-tx": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ethereumjs-tx/-/ethereumjs-tx-2.1.2.tgz", - "integrity": "sha512-zZEK1onCeiORb0wyCXUvg94Ve5It/K6GD1K+26KfFKodiBiS6d9lfCXlUKGBBdQ+bv7Day+JK0tj1K+BeNFRAw==", - "deprecated": "New package name format for new versions: @ethereumjs/tx. Please update.", + "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": { - "ethereumjs-common": "^1.5.0", - "ethereumjs-util": "^6.0.0" + "call-bind": "^1.0.2", + "get-intrinsic": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/ethereumjs-vm/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==", - "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/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/ethers": { - "version": "4.0.49", - "resolved": "https://registry.npmjs.org/ethers/-/ethers-4.0.49.tgz", - "integrity": "sha512-kPltTvWiyu+OktYy1IStSO16i2e7cS9D9OxZ81q2UUaiNPVrm/RTcbxamCXF9VUSKzJIdJV68EAIhTEVBalRWg==", + "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": { - "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" + "has-bigints": "^1.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "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/ethers/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/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", "dev": true, "dependencies": { - "inherits": "^2.0.3", - "minimalistic-assert": "^1.0.0" + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" } }, - "node_modules/ethers/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/ethers/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/ethers/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/ethers/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.", - "dev": true - }, - "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==", + "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": { - "bn.js": "4.11.6", - "number-to-bn": "1.7.0" + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" }, "engines": { - "node": ">=6.5.0", - "npm": ">=3" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "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==" + "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/ethjs-util": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/ethjs-util/-/ethjs-util-0.1.6.tgz", - "integrity": "sha512-CUnVOQq7gSpDHZVVrQW8ExxUETWrnrvXYvYz55wOU8Uj4VCgw56XC2B/fVqQN+f7gmrnRHSLVnFAwsCuNwji8w==", + "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": { - "is-hex-prefixed": "1.0.0", - "strip-hex-prefix": "1.0.0" + "is-typed-array": "^1.1.13" }, "engines": { - "node": ">=6.5.0", - "npm": ">=3" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "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==", + "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": { - "d": "1", - "es5-ext": "~0.10.14" + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/event-target-shim": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", - "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==", + "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, - "peer": true, "engines": { - "node": ">=6" + "node": ">=0.10.0" } }, - "node_modules/eventemitter3": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.4.tgz", - "integrity": "sha512-rlaVLnVxtxvoyLsQQFBx53YmXHDxRIzzTLbdfxqi4yocpSjAxXwkU0cScM5JgSKMqEhrZpnvQ2D9gjylR0AimQ==" - }, - "node_modules/events": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", - "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, "engines": { - "node": ">=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==", - "dependencies": { - "md5.js": "^1.3.4", - "safe-buffer": "^5.1.1" + "node": ">=8" } }, - "node_modules/express": { - "version": "4.19.2", - "resolved": "https://registry.npmjs.org/express/-/express-4.19.2.tgz", - "integrity": "sha512-5T6nhjsT+EOMzuck8JjBHARTHfMht0POzlA60WV2pMD3gyXw2LZnZ+ueGdNxG+0calOJcWKbpFcuzLZ91YWq9Q==", + "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": { - "accepts": "~1.3.8", - "array-flatten": "1.1.1", - "body-parser": "1.20.2", - "content-disposition": "0.5.4", - "content-type": "~1.0.4", - "cookie": "0.6.0", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "2.0.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "finalhandler": "1.2.0", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "merge-descriptors": "1.0.1", - "methods": "~1.1.2", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "path-to-regexp": "0.1.7", - "proxy-addr": "~2.0.7", - "qs": "6.11.0", - "range-parser": "~1.2.1", - "safe-buffer": "5.2.1", - "send": "0.18.0", - "serve-static": "1.15.0", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "type-is": "~1.6.18", - "utils-merge": "1.0.1", - "vary": "~1.1.2" + "is-extglob": "^2.1.1" }, "engines": { - "node": ">= 0.10.0" + "node": ">=0.10.0" } }, - "node_modules/express/node_modules/cookie": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.6.0.tgz", - "integrity": "sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==", + "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": ">= 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==", - "dependencies": { - "ms": "2.0.0" - } - }, - "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==" - }, - "node_modules/ext": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/ext/-/ext-1.7.0.tgz", - "integrity": "sha512-6hxeJYaL110a9b5TEJSj0gojyHQAmA2ch5Os+ySCiA1QGdS697XWY1pzsrSjqA9LDEEgdB/KypIlR59RcLuHYw==", - "dependencies": { - "type": "^2.7.2" - } - }, - "node_modules/ext/node_modules/type": { - "version": "2.7.2", - "resolved": "https://registry.npmjs.org/type/-/type-2.7.2.tgz", - "integrity": "sha512-dzlvlNlt6AXU7EBSfpAscydQ7gXB+pPGsPnfJnZpiNJBDj7IaJzQlBZYGdEi4R9HmPdBv2XmWJ6YUtoTa7lmCw==" - }, - "node_modules/extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" - }, - "node_modules/extsprintf": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g==", - "engines": [ - "node >=0.6.0" - ] - }, - "node_modules/fake-merkle-patricia-tree": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/fake-merkle-patricia-tree/-/fake-merkle-patricia-tree-1.0.1.tgz", - "integrity": "sha512-Tgq37lkc9pUIgIKw5uitNUKcgcYL3R6JvXtKQbOf/ZSavXbidsksgp/pAY6p//uhw0I4yoMsvTSovvVIsk/qxA==", - "dependencies": { - "checkpoint-store": "^1.1.0" + "node": ">=6.5.0", + "npm": ">=3" } }, - "node_modules/fast-check": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/fast-check/-/fast-check-3.1.1.tgz", - "integrity": "sha512-3vtXinVyuUKCKFKYcwXhGE6NtGWkqF8Yh3rvMZNzmwz8EPrgoc/v4pDdLHyLnCyCI5MZpZZkDEwFyXyEONOxpA==", + "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, - "dependencies": { - "pure-rand": "^5.0.1" - }, "engines": { - "node": ">=8.0.0" + "node": ">= 0.4" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/fast-check" + "url": "https://github.com/sponsors/ljharb" } }, - "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/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } }, - "node_modules/fast-glob": { - "version": "3.2.12", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz", - "integrity": "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==", + "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": { - "@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" + "has-tostringtag": "^1.0.0" }, "engines": { - "node": ">=8.6.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/fast-json-stable-stringify": { + "node_modules/is-plain-obj": { "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==" - }, - "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.1.1", - "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz", - "integrity": "sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==" - }, - "node_modules/fastq": { - "version": "1.14.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.14.0.tgz", - "integrity": "sha512-eR2D+V9/ExcbF9ls441yIuN6TI2ED1Y2ZcA5BmMtJsOkWOFRJQ0Jt0g1UwqXJJVAb+V+umH5Dfr8oh4EVP7VVg==", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", + "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==", "dev": true, - "dependencies": { - "reusify": "^1.0.4" + "engines": { + "node": ">=8" } }, - "node_modules/fetch-cookie": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/fetch-cookie/-/fetch-cookie-0.11.0.tgz", - "integrity": "sha512-BQm7iZLFhMWFy5CZ/162sAGjBfdNWb7a8LEqqnzsHFhxT/X/SVj/z2t2nu3aJvjlbQkrAlTUApplPRjWyH4mhA==", + "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, - "optional": true, - "peer": true, "dependencies": { - "tough-cookie": "^2.3.3 || ^3.0.1 || ^4.0.0" + "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/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==", + "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": { - "to-regex-range": "^5.0.1" + "call-bind": "^1.0.7" }, "engines": { - "node": ">=8" - } - }, - "node_modules/finalhandler": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", - "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", - "dependencies": { - "debug": "2.6.9", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "statuses": "2.0.1", - "unpipe": "~1.0.0" + "node": ">= 0.4" }, - "engines": { - "node": ">= 0.8" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "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==", + "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": { - "ms": "2.0.0" + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "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==" - }, - "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/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, - "peer": true, "dependencies": { - "locate-path": "^2.0.0" + "has-symbols": "^1.0.2" }, "engines": { - "node": ">=4" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/flat": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", - "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==", + "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, - "bin": { - "flat": "cli.js" + "dependencies": { + "which-typed-array": "^1.1.14" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "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==", + "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, - "funding": [ - { - "type": "individual", - "url": "https://github.com/sponsors/RubenVerborgh" - } - ], "engines": { - "node": ">=4.0" + "node": ">=10" }, - "peerDependenciesMeta": { - "debug": { - "optional": true - } + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "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==", + "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": { - "is-callable": "^1.1.3" + "call-bind": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/foreach": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/foreach/-/foreach-2.0.6.tgz", - "integrity": "sha512-k6GAGDyqLe9JaebCsFCoudPPWfihKu8pylYXRlqP1J7ms39iPoTtk2fviNglIeQEwdh0bQeKJ01ZPyuyQvKzwg==", - "dev": true, - "peer": 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/forever-agent": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw==", - "engines": { - "node": "*" + "node_modules/isomorphic-unfetch": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/isomorphic-unfetch/-/isomorphic-unfetch-3.1.0.tgz", + "integrity": "sha512-geDJjpoZ8N0kWexiwkX8F9NkTsXhetLPVbZFQ+JTW239QNOwvB0gniuR1Wc6f0AMTn7/mFGyXvHTifrCp/GH8Q==", + "dev": true, + "dependencies": { + "node-fetch": "^2.6.1", + "unfetch": "^4.2.0" } }, - "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/js-cookie": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/js-cookie/-/js-cookie-2.2.1.tgz", + "integrity": "sha512-HvdH2LzI/EAZcUwA8+0nKNtWHqS+ZmijLA30RwZA0bo7ToCckjK5MkGhjED9KoRcXO6BaGI3I9UIzSA1FKFPOQ==", + "dev": 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==", + "dev": true + }, + "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": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" + "argparse": "^2.0.1" }, - "engines": { - "node": ">= 0.12" + "bin": { + "js-yaml": "bin/js-yaml.js" } }, - "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==" + "node_modules/json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", + "dev": true }, - "node_modules/forwarded": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", - "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "dev": true + }, + "node_modules/json-schema-traverse": { + "version": "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-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": ">= 0.6" + "node": ">=7.10.1" } }, - "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==", + "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, "peer": true }, - "node_modules/fresh": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", - "engines": { - "node": ">= 0.6" - } - }, - "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/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", "dev": true, "peer": true, - "dependencies": { - "graceful-fs": "^4.1.2", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" + "bin": { + "json5": "lib/cli.js" }, "engines": { - "node": ">=6 <7 || >=8" + "node": ">=6" } }, - "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==", - "dependencies": { - "minipass": "^2.6.0" + "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/fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", - "dev": true - }, - "node_modules/fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "node_modules/jsonschema": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jsonschema/-/jsonschema-1.4.1.tgz", + "integrity": "sha512-S6cATIPVv1z0IlxdN+zUk5EPjkGCdnhN4wVSBlvoUO1tOLJootbo9CquNJmbIh4yikWHiUedhRYrNPn1arpEmQ==", "dev": true, - "hasInstallScript": true, - "optional": true, - "os": [ - "darwin" - ], + "peer": true, "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": "*" } }, - "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==", + "node_modules/keccak": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/keccak/-/keccak-3.0.2.tgz", + "integrity": "sha512-PyKKjkH53wDMLGrvmRGSNWgmSxZOUqbnXwKL9tmgbFYA1iAYqW21kfR7mZXV0MlESiefxQQE9X9fTa3X+2MPDQ==", "dev": true, + "hasInstallScript": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "functions-have-names": "^1.2.3" + "node-addon-api": "^2.0.0", + "node-gyp-build": "^4.2.0", + "readable-stream": "^3.6.0" }, "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==" - }, - "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": ">=10.0.0" } }, - "node_modules/ganache": { - "version": "7.7.6", - "resolved": "https://registry.npmjs.org/ganache/-/ganache-7.7.6.tgz", - "integrity": "sha512-1ba5CERykZijw1kIRGUKKPEUqTDU+sEMElYemAS42w1kunu+/3OS5v+eQsJQ+fCVMEmspploA7S9rEWBcyVsLg==", - "bundleDependencies": [ - "@trufflesuite/bigint-buffer", - "keccak", - "leveldown", - "secp256k1" - ], + "node_modules/keyv": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", + "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", "dev": true, - "hasShrinkwrap": true, - "peer": true, "dependencies": { - "@trufflesuite/bigint-buffer": "1.1.10", - "@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" + "json-buffer": "3.0.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==", + "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, - "hasInstallScript": true, - "inBundle": true, - "license": "Apache-2.0", "peer": true, - "dependencies": { - "node-gyp-build": "4.4.0" - }, "engines": { - "node": ">= 14.0.0" + "node": ">=0.10.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==", + "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, - "inBundle": true, - "license": "MIT", "peer": true, - "bin": { - "node-gyp-build": "bin.js", - "node-gyp-build-optional": "optional.js", - "node-gyp-build-test": "build-test.js" + "engines": { + "node": ">=6" } }, - "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==", + "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, "peer": true, "dependencies": { - "@types/node": "*" + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2" + }, + "engines": { + "node": ">= 0.8.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==", - "dev": true, - "peer": true + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", + "dev": true + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": 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/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, "peer": true }, - "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/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, "peer": 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==", - "dev": true, - "peer": 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" - } + "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==", + "dev": 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==", - "dev": true, - "peer": 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/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==", + "node_modules/lodash.truncate": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz", + "integrity": "sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw==", + "dev": true + }, + "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, - "inBundle": true, - "license": "MIT", - "peer": true, "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" + "chalk": "^4.1.0", + "is-unicode-supported": "^0.1.0" }, "engines": { "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/ganache/node_modules/async": { - "version": "2.6.4", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz", - "integrity": "sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==", + "node_modules/log-symbols/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, - "peer": true, "dependencies": { - "lodash": "^4.17.14" + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "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==", + "node_modules/log-symbols/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, - "peer": true, "dependencies": { - "async": "^2.4.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/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==", - "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" - } - ], - "inBundle": true, - "license": "MIT", - "peer": true - }, - "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=", - "dev": true, - "inBundle": true, - "license": "MIT", - "peer": true - }, - "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==", + "node_modules/log-symbols/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, - "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", - "peer": true, "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.2.1" + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" } }, - "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==", + "node_modules/log-symbols/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/log-symbols/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "node-gyp-build": "^4.3.0" + "engines": { + "node": ">=8" } }, - "node_modules/ganache/node_modules/catering": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/catering/-/catering-2.1.0.tgz", - "integrity": "sha512-M5imwzQn6y+ODBfgi+cfgZv2hIUI6oYU/0f35Mdb1ujGeqeoI5tOnl9Q13DTH7LW+7er+NYq8stNOKZD/Z3U/A==", + "node_modules/log-symbols/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, - "inBundle": true, - "license": "MIT", - "peer": true, "dependencies": { - "queue-tick": "^1.0.0" + "has-flag": "^4.0.0" }, "engines": { - "node": ">=6" + "node": ">=8" } }, - "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==", + "node_modules/loupe": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/loupe/-/loupe-2.3.6.tgz", + "integrity": "sha512-RaPMZKiMy8/JruncMU5Bt6na1eftNoo++R4Y+N2FrxkDVTrGvcyzFTsaGif4QTeKESheMGegbhw6iUAq+5A8zA==", "dev": true, - "inBundle": true, - "license": "MIT", - "peer": 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" + "get-func-name": "^2.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==", + "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/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, - "inBundle": true, - "license": "MIT", "peer": true }, - "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==", + "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, "peer": 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==", + "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==", "dev": true, - "inBundle": true, - "license": "MIT", - "peer": true, "dependencies": { - "inherits": "^2.0.3", - "minimalistic-assert": "^1.0.1" + "hash-base": "^3.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" } }, - "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=", + "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, - "inBundle": true, - "license": "MIT", - "peer": true, - "dependencies": { - "hash.js": "^1.0.3", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.1" + "engines": { + "node": ">= 0.10.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==", + "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, - "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", - "peer": true + "engines": { + "node": ">= 8" + } }, - "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==", + "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, - "inBundle": true, - "license": "ISC", - "peer": true + "dependencies": { + "braces": "^3.0.3", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } }, - "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==", + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", "dev": true, - "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", - "peer": true, "engines": { - "node": ">=4" + "node": ">= 0.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==", + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", "dev": true, - "hasInstallScript": true, - "inBundle": true, - "license": "MIT", - "peer": true, "dependencies": { - "node-addon-api": "^2.0.0", - "node-gyp-build": "^4.2.0", - "readable-stream": "^3.6.0" + "mime-db": "1.52.0" }, "engines": { - "node": ">=10.0.0" + "node": ">= 0.6" } }, - "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==", + "node_modules/minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", + "dev": true + }, + "node_modules/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==", + "dev": true + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", "dev": true, - "inBundle": true, - "license": "MIT", - "peer": true, "dependencies": { - "catering": "^2.1.0" + "brace-expansion": "^1.1.7" }, "engines": { - "node": ">=10" + "node": "*" } }, - "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==", + "node_modules/minimist": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz", + "integrity": "sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==", "dev": true, - "inBundle": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=10" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "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==", + "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, "peer": true, "dependencies": { - "buffer": "^6.0.3", - "module-error": "^1.0.1" + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" } }, - "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==", + "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, - "hasInstallScript": true, - "inBundle": true, - "license": "MIT", - "peer": true, "dependencies": { - "abstract-leveldown": "^7.2.0", - "napi-macros": "~2.0.0", - "node-gyp-build": "^4.3.0" - }, - "engines": { - "node": ">=10.12.0" + "obliterator": "^2.0.0" } }, - "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==", - "dev": true, - "peer": 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==", - "dev": true, - "inBundle": true, - "license": "ISC", - "peer": true - }, - "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=", - "dev": true, - "inBundle": true, - "license": "MIT", - "peer": 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==", - "dev": true, - "peer": true - }, - "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==", - "dev": true, - "inBundle": true, - "license": "MIT", - "peer": 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==", - "dev": true, - "inBundle": true, - "license": "MIT", - "peer": true - }, - "node_modules/ganache/node_modules/node-gyp-build": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.3.0.tgz", - "integrity": "sha512-iWjXZvmboq0ja1pUGULQBexmxq8CV4xBhX7VDOTbL7ZR4FOowwY/VOtRxBN/yKxmdGoIp4j5ysNT4u3S2pDQ3Q==", + "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, - "inBundle": true, - "license": "MIT", - "peer": 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": { - "node-gyp-build": "bin.js", - "node-gyp-build-optional": "optional.js", - "node-gyp-build-test": "build-test.js" + "_mocha": "bin/_mocha", + "mocha": "bin/mocha.js" + }, + "engines": { + "node": ">= 14.0.0" } }, - "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==", + "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, - "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", - "peer": true + "dependencies": { + "balanced-match": "^1.0.0" + } }, - "node_modules/ganache/node_modules/queue-tick": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/queue-tick/-/queue-tick-1.0.0.tgz", - "integrity": "sha512-ULWhjjE8BmiICGn3G8+1L9wFpERNxkf8ysxkAer4+TFdRefDaXOCV5m92aMB9FtBVmn/8sETXLXY6BfW7hyaWQ==", + "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, - "inBundle": true, - "license": "MIT", - "peer": true + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "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==", + "node_modules/mocha/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, - "inBundle": true, - "license": "MIT", - "peer": true, "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" }, "engines": { - "node": ">= 6" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "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==", - "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" - } - ], - "inBundle": true, - "license": "MIT", - "peer": 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==", + "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, - "hasInstallScript": true, - "inBundle": true, - "license": "MIT", - "peer": true, "dependencies": { - "elliptic": "^6.5.4", - "node-addon-api": "^2.0.0", - "node-gyp-build": "^4.2.0" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^5.0.1", + "once": "^1.3.0" }, "engines": { - "node": ">=10.0.0" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "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==", + "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==", "dev": true, - "inBundle": true, - "license": "MIT", - "peer": true, - "dependencies": { - "safe-buffer": "~5.2.0" + "engines": { + "node": ">=8" } }, - "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==", + "node_modules/mocha/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, - "optional": true, - "peer": true, "dependencies": { - "node-gyp-build": "^4.3.0" - } - }, - "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=", - "dev": true, - "inBundle": true, - "license": "MIT", - "peer": true - }, - "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==", - "peer": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "engines": { - "node": "6.* || 8.* || >= 10.*" - } - }, - "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==", + "p-locate": "^5.0.0" + }, "engines": { - "node": "*" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "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==", + "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": { - "es-errors": "^1.3.0", - "function-bind": "^1.1.2", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3", - "hasown": "^2.0.0" + "brace-expansion": "^2.0.1" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=10" } }, - "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==", + "node_modules/mocha/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": { + "yocto-queue": "^0.1.0" + }, "engines": { "node": ">=10" }, @@ -9381,735 +7609,575 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "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==", + "node_modules/mocha/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.5", - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.4" + "p-limit": "^3.0.2" }, "engines": { - "node": ">= 0.4" + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/getpass": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng==", - "dependencies": { - "assert-plus": "^1.0.0" + "url": "https://github.com/sponsors/sindresorhus" } }, - "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==", + "node_modules/mocha/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, - "dependencies": { - "chalk": "^2.4.2", - "node-emoji": "^1.10.0" - }, - "bin": { - "testrpc-sc": "index.js" + "engines": { + "node": ">=8" } }, - "node_modules/glob": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", - "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", + "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": { - "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" + "has-flag": "^4.0.0" }, "engines": { - "node": "*" + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/isaacs" + "url": "https://github.com/chalk/supports-color?sponsor=1" } }, - "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/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/global": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/global/-/global-4.4.0.tgz", - "integrity": "sha512-wv/LAoHdRE3BeTGz53FAamhGlPLhlssK45usmGFThIi4XqnBmjKQ16u+RNbP7WvigRZDxUsM0J3gcQ5yicaL0w==", - "dependencies": { - "min-document": "^2.19.0", - "process": "^0.11.10" - } + "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/global-modules": { + "node_modules/ndjson": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz", - "integrity": "sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==", + "resolved": "https://registry.npmjs.org/ndjson/-/ndjson-2.0.0.tgz", + "integrity": "sha512-nGl7LRGrzugTtaFcJMhLbpzJM6XdivmbkdlaGcrk/LXg2KL/YBC6z1g70xh0/al+oFuVFP8N8kiWRucmeEH/qQ==", "dev": true, + "peer": true, "dependencies": { - "global-prefix": "^3.0.0" + "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": ">=6" + "node": ">=10" } }, - "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==", + "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, + "peer": true, "dependencies": { - "ini": "^1.3.5", - "kind-of": "^6.0.2", - "which": "^1.3.1" - }, - "engines": { - "node": ">=6" + "readable-stream": "3" } }, - "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==", + "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, + "peer": true + }, + "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==", + "dev": true + }, + "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, "peer": true, - "engines": { - "node": ">=4" + "dependencies": { + "lodash": "^4.17.21" } }, - "node_modules/globalthis": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", - "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", + "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==", "dev": true, "dependencies": { - "define-properties": "^1.2.1", - "gopd": "^1.0.1" + "whatwg-url": "^5.0.0" }, "engines": { - "node": ">= 0.4" + "node": "4.x || >=6.0.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "peerDependencies": { + "encoding": "^0.1.0" + }, + "peerDependenciesMeta": { + "encoding": { + "optional": true + } } }, - "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/node-gyp-build": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.5.0.tgz", + "integrity": "sha512-2iGbaQBV+ITgCz76ZEjmhUKAKVf7xfY1sRl4UiKQspfZMH2h06SyhNsnSVy50cwkFQDGLyif6m/6uFXHkOZ6rg==", "dev": true, - "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" - }, - "engines": { - "node": ">=8" + "bin": { + "node-gyp-build": "bin.js", + "node-gyp-build-optional": "optional.js", + "node-gyp-build-test": "build-test.js" } }, - "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" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node_modules/nofilter": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/nofilter/-/nofilter-3.1.0.tgz", + "integrity": "sha512-l2NNj07e9afPnhAhvgVrCD/oy2Ai1yfLpuo3EpiO1jFTsB4sFz6oIfAfSZyQzVpkZQ9xS8ZS5g1jCBgq4Hwo0g==", + "dev": true, + "engines": { + "node": ">=12.19" } }, - "node_modules/got": { - "version": "12.1.0", - "resolved": "https://registry.npmjs.org/got/-/got-12.1.0.tgz", - "integrity": "sha512-hBv2ty9QN2RdbJJMK3hesmSkFTjVIHyIDDbssCKnSmq62edGgImJWD10Eb1k77TiV1bxloxqcFAVK8+9pkhOig==", + "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, + "peer": 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" + "abbrev": "1" }, - "funding": { - "url": "https://github.com/sindresorhus/got?sponsor=1" + "bin": { + "nopt": "bin/nopt.js" } }, - "node_modules/got/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==", + "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": ">=10.6.0" + "node": ">=0.10.0" } }, - "node_modules/got/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==", + "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, + "peer": true, "dependencies": { - "mimic-response": "^3.1.0" + "bn.js": "4.11.6", + "strip-hex-prefix": "1.0.0" }, "engines": { - "node": ">=10" - }, + "node": ">=6.5.0", + "npm": ">=3" + } + }, + "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, + "peer": true + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "dev": true, + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-inspect": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.1.tgz", + "integrity": "sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==", + "dev": true, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/got/node_modules/http2-wrapper": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/http2-wrapper/-/http2-wrapper-2.2.0.tgz", - "integrity": "sha512-kZB0wxMo0sh1PehyjJUWRFEd99KC5TLjZ2cULC4f9iqJBAmKQQXEICjxl5iPJRwP40dpeHFqqhm7tYCvODpqpQ==", + "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": { - "quick-lru": "^5.1.1", - "resolve-alpn": "^1.2.0" + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", + "has-symbols": "^1.0.3", + "object-keys": "^1.1.1" }, "engines": { - "node": ">=10.19.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/got/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==", + "node_modules/object.assign/node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dev": true, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">= 0.4" } }, - "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==" + "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/graphql": { - "version": "15.8.0", - "resolved": "https://registry.npmjs.org/graphql/-/graphql-15.8.0.tgz", - "integrity": "sha512-5gghUc24tP9HRznNpV2+FIoq3xKkj5dTQqf4v0CpdPbFVwFkWoxOM+o+2OC9ZSvjEMTjfmG9QT+gcvggTwW1zw==", + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", "dev": true, - "optional": true, - "peer": true, - "engines": { - "node": ">= 10.x" + "dependencies": { + "wrappy": "1" } }, - "node_modules/graphql-tag": { - "version": "2.12.6", - "resolved": "https://registry.npmjs.org/graphql-tag/-/graphql-tag-2.12.6.tgz", - "integrity": "sha512-FdSNcu2QQcWnM2VNvSCCDCVS5PpPqpzgFT8+GXzqJuoDd0CBncxCY278u4mhRO7tMgo2JjgJA5aZ+nWSQ/Z+xg==", + "node_modules/optionator": { + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", + "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", "dev": true, - "optional": true, "peer": true, "dependencies": { - "tslib": "^2.1.0" + "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": ">=10" - }, - "peerDependencies": { - "graphql": "^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0" + "node": ">= 0.8.0" } }, - "node_modules/graphql-tag/node_modules/tslib": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", - "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==", + "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, - "optional": true, "peer": true }, - "node_modules/handlebars": { - "version": "4.7.7", - "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.7.tgz", - "integrity": "sha512-aAcXm5OAfE/8IXkcZvCepKU3VzW1/39Fb5ZuqMtgI/hT8X2YgoMvBY5dLhq/cpOvw7Lk1nK/UF71aLG/ZnVYRA==", - "dev": true, - "dependencies": { - "minimist": "^1.2.5", - "neo-async": "^2.6.0", - "source-map": "^0.6.1", - "wordwrap": "^1.0.0" - }, - "bin": { - "handlebars": "bin/handlebars" - }, - "engines": { - "node": ">=0.4.7" - }, - "optionalDependencies": { - "uglify-js": "^3.1.4" - } - }, - "node_modules/handlebars/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/os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", "dev": true, "engines": { "node": ">=0.10.0" } }, - "node_modules/har-schema": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", - "integrity": "sha512-Oqluz6zhGX8cyRaTQlFMPw80bSJVG2x/cFb8ZPhUILGgHka9SsokCCOQgpveePerqidZOrT14ipqfJb7ILcW5Q==", - "engines": { - "node": ">=4" - } - }, - "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", + "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": { - "ajv": "^6.12.3", - "har-schema": "^2.0.0" + "aggregate-error": "^3.0.0" }, "engines": { - "node": ">=6" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/hardhat": { - "version": "2.12.4", - "resolved": "https://registry.npmjs.org/hardhat/-/hardhat-2.12.4.tgz", - "integrity": "sha512-rc9S2U/4M+77LxW1Kg7oqMMmjl81tzn5rNFARhbXKUA1am/nhfMJEujOjuKvt+ZGMiZ11PYSe8gyIpB/aRNDgw==", + "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, - "peer": true, "dependencies": { - "@ethersproject/abi": "^5.1.2", - "@metamask/eth-sig-util": "^4.0.0", - "@nomicfoundation/ethereumjs-block": "^4.0.0", - "@nomicfoundation/ethereumjs-blockchain": "^6.0.0", - "@nomicfoundation/ethereumjs-common": "^3.0.0", - "@nomicfoundation/ethereumjs-evm": "^1.0.0", - "@nomicfoundation/ethereumjs-rlp": "^4.0.0", - "@nomicfoundation/ethereumjs-statemanager": "^1.0.0", - "@nomicfoundation/ethereumjs-trie": "^5.0.0", - "@nomicfoundation/ethereumjs-tx": "^4.0.0", - "@nomicfoundation/ethereumjs-util": "^8.0.0", - "@nomicfoundation/ethereumjs-vm": "^6.0.0", - "@nomicfoundation/solidity-analyzer": "^0.1.0", - "@sentry/node": "^5.18.1", - "@types/bn.js": "^5.1.0", - "@types/lru-cache": "^5.1.0", - "abort-controller": "^3.0.0", - "adm-zip": "^0.4.16", - "aggregate-error": "^3.0.0", - "ansi-escapes": "^4.3.0", - "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", - "qs": "^6.7.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.4.0", - "uuid": "^8.3.2", - "ws": "^7.4.6" - }, - "bin": { - "hardhat": "internal/cli/cli.js" + "callsites": "^3.0.0" }, "engines": { - "node": "^14.0.0 || ^16.0.0 || ^18.0.0" - }, - "peerDependencies": { - "ts-node": "*", - "typescript": "*" - }, - "peerDependenciesMeta": { - "ts-node": { - "optional": true - }, - "typescript": { - "optional": true - } + "node": ">=6" } }, - "node_modules/hardhat/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/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, - "peer": true, - "optionalDependencies": { - "graceful-fs": "^4.1.6" - } + "peer": true }, - "node_modules/hardhat/node_modules/solc": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/solc/-/solc-0.7.3.tgz", - "integrity": "sha512-GAsWNAjGzIDg7VxzP6mPjdurby3IkGCjQcM8GFYZT6RyaoUZKmMU6Y7YwG+tFGhv7dwZ8rmR4iwFDrrD99JwqA==", + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", "dev": true, "peer": 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" - }, - "bin": { - "solcjs": "solcjs" - }, "engines": { - "node": ">=8.0.0" + "node": ">=0.10.0" } }, - "node_modules/hardhat/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==", + "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, - "peer": 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" + "engines": { + "node": ">=8" } }, - "node_modules/hardhat/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, - "peer": true, - "bin": { - "semver": "bin/semver" - } + "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/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==", + "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, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">=8" } }, - "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==", + "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": ">=4" + "node": "*" } }, - "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/pbkdf2": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz", + "integrity": "sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==", + "dev": true, "dependencies": { - "es-define-property": "^1.0.0" + "create-hash": "^1.1.2", + "create-hmac": "^1.1.4", + "ripemd160": "^2.0.1", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" }, - "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" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=0.12" } }, - "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/picocolors": { + "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": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, "engines": { - "node": ">= 0.4" + "node": ">=8.6" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/jonschlinkert" } }, - "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==", - "dependencies": { - "has-symbols": "^1.0.3" - }, + "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, + "peer": true, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=6" } }, - "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": { - "inherits": "^2.0.4", - "readable-stream": "^3.6.0", - "safe-buffer": "^5.2.0" - }, + "node_modules/pluralize": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-8.0.0.tgz", + "integrity": "sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==", + "dev": true, "engines": { "node": ">=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==", - "dependencies": { - "inherits": "^2.0.3", - "minimalistic-assert": "^1.0.1" + "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, + "engines": { + "node": ">= 0.4" } }, - "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" - }, + "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, + "peer": true, "engines": { - "node": ">= 0.4" + "node": ">= 0.8.0" } }, - "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==", + "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": { - "he": "bin/he" + "prettier": "bin-prettier.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "url": "https://github.com/prettier/prettier?sponsor=1" } }, - "node_modules/header-case": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/header-case/-/header-case-1.0.1.tgz", - "integrity": "sha512-i0q9mkOeSuhXw6bGgiQCCBgY/jlZuV/7dZXyZ9c6LcBrqwvT8eT719E9uxE5LiZftdl+z81Ugbg/VvXV4OJOeQ==", + "node_modules/prettier-plugin-solidity": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/prettier-plugin-solidity/-/prettier-plugin-solidity-1.0.0.tgz", + "integrity": "sha512-gRJCeZ7imbWtNYN2SudjJoPmka5r6jcd2cSTV6FC3pVCtY6LFZbeQQjpKufUEp88hXBAAnkOTOh7TA5xwj9M3A==", "dev": true, "dependencies": { - "no-case": "^2.2.0", - "upper-case": "^1.1.3" + "@solidity-parser/parser": "^0.14.5", + "emoji-regex": "^10.2.1", + "escape-string-regexp": "^4.0.0", + "semver": "^7.3.8", + "solidity-comments-extractor": "^0.0.7", + "string-width": "^4.2.3" + }, + "engines": { + "node": ">=12" + }, + "peerDependencies": { + "prettier": "^2.3.0" } }, - "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/highlight.js": { - "version": "10.7.3", - "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-10.7.3.tgz", - "integrity": "sha512-tzcUFauisWKNHaRkN4Wjl/ZA07gENAjFl3J/c480dprkGTg5EQstgaNFqBfUqCq54kZRIEcreTsAgF/m2quD7A==", + "node_modules/prettier-plugin-solidity/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": "*" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/highlightjs-solidity": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/highlightjs-solidity/-/highlightjs-solidity-2.0.6.tgz", - "integrity": "sha512-DySXWfQghjm2l6a/flF+cteroJqD4gI8GSdL4PtvxZSsAHie8m3yVe2JFoRg03ROKT6hp2Lc/BxXkqerNmtQYg==", - "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": { - "hash.js": "^1.0.3", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.1" + "node_modules/prettier-plugin-solidity/node_modules/semver": { + "version": "7.6.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.2.tgz", + "integrity": "sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" } }, - "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/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, + "peer": true }, - "node_modules/htmlparser2": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-8.0.2.tgz", - "integrity": "sha512-GYdjWKDkbRLkZ5geuHs5NY1puJ+PXwP7+fHPRz06Eirsb9ugf6d8kkXav6ADhcODhFFPMIXyxkxSuMf3D6NCFA==", + "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, - "funding": [ - "https://github.com/fb55/htmlparser2?sponsor=1", - { - "type": "github", - "url": "https://github.com/sponsors/fb55" - } - ], + "peer": true, "dependencies": { - "domelementtype": "^2.3.0", - "domhandler": "^5.0.3", - "domutils": "^3.0.1", - "entities": "^4.4.0" + "asap": "~2.0.6" } }, - "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==" - }, - "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/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, + "peer": true, "dependencies": { - "depd": "2.0.0", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "toidentifier": "1.0.1" + "kleur": "^3.0.3", + "sisteransi": "^1.0.5" }, "engines": { - "node": ">= 0.8" + "node": ">= 6" } }, - "node_modules/http-https": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/http-https/-/http-https-1.0.0.tgz", - "integrity": "sha512-o0PWwVCSp3O0wS6FvNr6xfBCHgt0m1tvPLFOCc2iFDKTRAXhB7m8klDf7ErowFH8POa6dVdGatKU5I1YYwzUyg==" - }, - "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==", + "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==", + "dev": true, "dependencies": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" - }, - "engines": { - "node": ">=0.8", - "npm": ">=1.3.7" + "graceful-fs": "^4.2.4", + "retry": "^0.12.0", + "signal-exit": "^3.0.2" } }, - "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==", - "dependencies": { - "quick-lru": "^5.1.1", - "resolve-alpn": "^1.0.0" - }, + "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==", + "dev": true + }, + "node_modules/punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "dev": true, "engines": { - "node": ">=10.19.0" + "node": ">=6" } }, - "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==", + "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, "peer": true, "dependencies": { - "agent-base": "6", - "debug": "4" + "side-channel": "^1.0.6" }, "engines": { - "node": ">= 6" + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "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==", - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "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==", - "dependencies": { - "punycode": "2.1.0" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "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==", - "engines": { - "node": ">=6" - } - }, - "node_modules/ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "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", @@ -10125,147 +8193,102 @@ } ] }, - "node_modules/ignore": { - "version": "5.2.4", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", - "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", + "node_modules/randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", "dev": true, - "engines": { - "node": ">= 4" + "dependencies": { + "safe-buffer": "^5.1.0" } }, - "node_modules/immediate": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.3.0.tgz", - "integrity": "sha512-HR7EVodfFUdQCTIeySw+WDRFJlPcLOJbXfwwZ7Oom6tjsvZ3bOkCDJHehQC3nxJrv7+f9XecwazynjU8e4Vw3Q==" - }, - "node_modules/immutable": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.1.0.tgz", - "integrity": "sha512-oNkuqVTA8jqG1Q6c+UglTOD1xhC1BtjKI7XkCXRkZHrN5m18/XsnUp8Q89GkQO/z+0WjonSvl0FLhDYftp46nQ==", - "dev": true, - "peer": 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==", + "node_modules/raw-body": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz", + "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==", "dev": true, "dependencies": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - }, - "engines": { - "node": ">=6" + "bytes": "3.1.2", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "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, - "peer": true, "engines": { - "node": ">=8" + "node": ">= 0.8" } }, - "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==", + "node_modules/readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", "dev": true, "dependencies": { - "once": "^1.3.0", - "wrappy": "1" + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" } }, - "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/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==", + "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": { - "es-errors": "^1.3.0", - "hasown": "^2.0.0", - "side-channel": "^1.0.4" + "picomatch": "^2.2.1" }, "engines": { - "node": ">= 0.4" + "node": ">=8.10.0" } }, - "node_modules/interpret": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz", - "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==", + "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, + "peer": true, + "dependencies": { + "resolve": "^1.1.6" + }, "engines": { "node": ">= 0.10" } }, - "node_modules/invert-kv": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz", - "integrity": "sha512-xgs2NH9AE66ucSq4cNG1nhSFghr5l6tdL15Pk+jl46bmmBapgoaY/AacXyaDznAqmGL99TiLSQgO/XazFSKYeQ==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "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==", + "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, "peer": true, "dependencies": { - "fp-ts": "^1.0.0" - } - }, - "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==", + "minimatch": "^3.0.5" + }, "engines": { - "node": ">= 0.10" + "node": ">=6.0.0" } }, - "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==", - "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - }, + "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, + "peer": true, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=6" } }, - "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==", + "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": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.1" + "call-bind": "^1.0.6", + "define-properties": "^1.2.1", + "es-errors": "^1.3.0", + "set-function-name": "^2.0.1" }, "engines": { "node": ">= 0.4" @@ -10274,219 +8297,198 @@ "url": "https://github.com/sponsors/ljharb" } }, - "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, - "dependencies": { - "has-bigints": "^1.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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==", + "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, + "peer": true, "dependencies": { - "binary-extensions": "^2.0.0" + "req-from": "^2.0.0" }, "engines": { - "node": ">=8" + "node": ">=4" } }, - "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==", + "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==", "dev": true, + "peer": true, "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" + "resolve-from": "^3.0.0" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=4" } }, - "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==", + "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, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], "peer": true, "engines": { "node": ">=4" } }, - "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==", + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "dev": true, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=0.10.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==", + "node_modules/require-from-string": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", "dev": true, - "dependencies": { - "is-typed-array": "^1.1.13" - }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=0.10.0" } }, - "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==", + "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": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" + "path-parse": "^1.0.6" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", "dev": true, "engines": { - "node": ">=0.10.0" + "node": ">=4" } }, - "node_modules/is-fn": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fn/-/is-fn-1.0.0.tgz", - "integrity": "sha512-XoFPJQmsAShb3jEQRfzf2rqXavq7fIqF/jOekp308JlThqrODnMpweVSGilKTCXELfLhltGP2AGgbQGVP8F1dg==", + "node_modules/retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==", + "dev": true, "engines": { - "node": ">=0.10.0" + "node": ">= 4" } }, - "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==", + "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": { - "node": ">=8" + "iojs": ">=1.0.0", + "node": ">=0.10.0" } }, - "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==" - }, - "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==", + "node_modules/ripemd160": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", + "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", + "dev": 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==", + "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": { - "is-extglob": "^2.1.1" + "bn.js": "^5.2.0" }, - "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==", - "engines": { - "node": ">=6.5.0", - "npm": ">=3" + "bin": { + "rlp": "bin/rlp" } }, - "node_modules/is-lower-case": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/is-lower-case/-/is-lower-case-1.1.3.tgz", - "integrity": "sha512-+5A1e/WJpLLXZEDlgz4G//WYSHyQBD32qa4Jd3Lw06qQlv3fJHnp3YIHjTQSGzHMgzmVKz2ZP3rBxTHkPw/lxA==", + "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": { - "lower-case": "^1.1.0" + "queue-microtask": "^1.2.2" } }, - "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==", + "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", + "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/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "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 + }, + "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, - "engines": { - "node": ">=0.12.0" - } + "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/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==", + "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": { - "has-tostringtag": "^1.0.0" + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-regex": "^1.1.4" }, "engines": { "node": ">= 0.4" @@ -10495,16495 +8497,5975 @@ "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==", + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "dev": true + }, + "node_modules/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, - "optional": true, "peer": true, - "engines": { - "node": ">=8" + "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" + }, + "bin": { + "istanbul": "lib/cli.js" } }, - "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==", + "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, - "engines": { - "node": ">=8" + "peer": true, + "dependencies": { + "sprintf-js": "~1.0.2" } }, - "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==", + "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, - "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } + "peer": true }, - "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==", + "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, + "peer": true, "dependencies": { - "call-bind": "^1.0.7" + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "2 || 3", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": "*" } }, - "node_modules/is-string": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", - "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "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, - "dependencies": { - "has-tostringtag": "^1.0.0" - }, + "peer": true, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=0.10.0" } }, - "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==", + "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, + "peer": true, "dependencies": { - "has-symbols": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" + "argparse": "^1.0.7", + "esprima": "^4.0.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "bin": { + "js-yaml": "bin/js-yaml.js" } }, - "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==", - "dependencies": { - "which-typed-array": "^1.1.14" + "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, + "peer": true, + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=4" } }, - "node_modules/is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==" - }, - "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==", + "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, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } + "peer": true }, - "node_modules/is-upper-case": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/is-upper-case/-/is-upper-case-1.1.2.tgz", - "integrity": "sha512-GQYSJMgfeAmVwh9ixyk888l7OIhNAGKtY6QA+IrWlu9MDTCaXmeozOZ2S9Knj7bQwBO/H6J2kb+pbyTUiMNbsw==", + "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, + "peer": true, "dependencies": { - "upper-case": "^1.1.0" + "has-flag": "^1.0.0" + }, + "engines": { + "node": ">=0.8.0" } }, - "node_modules/is-utf8": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", - "integrity": "sha512-rMYPYvCzsXywIsldgLaSoPlw5PfoB/ssr7hY4pLfcodrA5M/eArza1a9VmTiNIBNMjOGr1Ow9mTyU2o69U6U9Q==", + "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/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==", + "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, "dependencies": { - "call-bind": "^1.0.2" + "elliptic": "^6.5.7", + "node-addon-api": "^5.0.0", + "node-gyp-build": "^4.2.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">=18.0.0" } }, - "node_modules/isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==" - }, - "node_modules/isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "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/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==", + "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, - "optional": true, - "peer": true, - "peerDependencies": { - "ws": "*" + "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/isstream": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g==" + "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/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/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/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/serialize-javascript": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz", + "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==", + "dev": true, + "dependencies": { + "randombytes": "^2.1.0" + } }, - "node_modules/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/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": { - "argparse": "^2.0.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" }, - "bin": { - "js-yaml": "bin/js-yaml.js" + "engines": { + "node": ">= 0.4" } }, - "node_modules/jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==" - }, - "node_modules/jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "peer": true, - "bin": { - "jsesc": "bin/jsesc" + "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": { + "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": ">=4" + "node": ">= 0.4" } }, - "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==" + "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/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==", + "node_modules/setprototypeof": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", "dev": true }, - "node_modules/json-pointer": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/json-pointer/-/json-pointer-0.6.2.tgz", - "integrity": "sha512-vLWcKbOaXlO+jvRy4qNd+TI1QUPZzfJj1tpJ3vAXDych5XJf93ftpUKe5pKCrzyIIwgBJcOcCVRUfqQP25afBw==", + "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==", "dev": true, - "peer": true, "dependencies": { - "foreach": "^2.0.4" + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + }, + "bin": { + "sha.js": "bin.js" } }, - "node_modules/json-rpc-engine": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/json-rpc-engine/-/json-rpc-engine-6.1.0.tgz", - "integrity": "sha512-NEdLrtrq1jUZyfjkr9OCz9EzCNhnRyWtt1PAnvnhwy6e8XETS0Dtc+ZNCO2gvuAoKsIn2+vCSowXTYE4CkgnAQ==", + "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, + "peer": true, "dependencies": { - "@metamask/safe-event-emitter": "^2.0.0", - "eth-rpc-errors": "^4.0.2" + "charenc": ">= 0.0.1", + "crypt": ">= 0.0.1" }, "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/json-rpc-engine/node_modules/eth-rpc-errors": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/eth-rpc-errors/-/eth-rpc-errors-4.0.3.tgz", - "integrity": "sha512-Z3ymjopaoft7JDoxZcEb3pwdGh7yiYMhOwm2doUt6ASXlMavpNlK6Cre0+IMl2VSGyEU9rkiperQhp5iRxn5Pg==", - "dependencies": { - "fast-safe-stringify": "^2.0.6" + "node": "*" } }, - "node_modules/json-rpc-random-id": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-rpc-random-id/-/json-rpc-random-id-1.0.1.tgz", - "integrity": "sha512-RJ9YYNCkhVDBuP4zN5BBtYAzEl03yq/jIIsyif0JY9qyJuQQZNeDK7anAPKKlyEtLSj2s8h6hNh2F8zO5q7ScA==" - }, - "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==" - }, - "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==" - }, - "node_modules/json-schema-typed": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/json-schema-typed/-/json-schema-typed-7.0.3.tgz", - "integrity": "sha512-7DE8mpG+/fVw+dTpjbxnx47TaMnDfOI1jwft9g1VybltZCduyRQPJPvc+zzKY9WPHxhPWczyFuYa6I8Mw4iU5A==", + "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, - "optional": true, - "peer": true - }, - "node_modules/json-stable-stringify": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.2.tgz", - "integrity": "sha512-eunSSaEnxV12z+Z73y/j5N37/In40GK4GmsSy+tEHJMxknvqnA7/djeYtAgW0GsWHUfg+847WJjKaEylk2y09g==", "dependencies": { - "jsonify": "^0.0.1" + "shebang-regex": "^3.0.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">=8" } }, - "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==" + "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/json5": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", - "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "node_modules/shelljs": { + "version": "0.8.5", + "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.8.5.tgz", + "integrity": "sha512-TiwcRcrkhHvbrZbnRcFYMLl30Dfov3HKqzp5tO5b4pt6G/SezKcYhmDg15zXVBswHmctSAQKznqNW2LO5tTDow==", + "dev": true, "peer": true, + "dependencies": { + "glob": "^7.0.0", + "interpret": "^1.0.0", + "rechoir": "^0.6.2" + }, "bin": { - "json5": "lib/cli.js" + "shjs": "bin/shjs" }, "engines": { - "node": ">=6" + "node": ">=4" } }, - "node_modules/jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", - "optionalDependencies": { - "graceful-fs": "^4.1.6" - } - }, - "node_modules/jsonify": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.1.tgz", - "integrity": "sha512-2/Ki0GcmuqSrgFyelQq9M05y7PS0mEwuIzrf3f1fPqkVDVRvZrPZtVSMHxdgo8Aq0sxAOb/cr2aqqA3LeWHVPg==", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/jsonschema": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/jsonschema/-/jsonschema-1.4.1.tgz", - "integrity": "sha512-S6cATIPVv1z0IlxdN+zUk5EPjkGCdnhN4wVSBlvoUO1tOLJootbo9CquNJmbIh4yikWHiUedhRYrNPn1arpEmQ==", + "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, - "engines": { - "node": "*" - } - }, - "node_modules/jsprim": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz", - "integrity": "sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==", "dependencies": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.4.0", - "verror": "1.10.0" + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4", + "object-inspect": "^1.13.1" }, "engines": { - "node": ">=0.6.0" - } - }, - "node_modules/keccak": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/keccak/-/keccak-3.0.2.tgz", - "integrity": "sha512-PyKKjkH53wDMLGrvmRGSNWgmSxZOUqbnXwKL9tmgbFYA1iAYqW21kfR7mZXV0MlESiefxQQE9X9fTa3X+2MPDQ==", - "hasInstallScript": true, - "dependencies": { - "node-addon-api": "^2.0.0", - "node-gyp-build": "^4.2.0", - "readable-stream": "^3.6.0" + "node": ">= 0.4" }, - "engines": { - "node": ">=10.0.0" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/keyv": { - "version": "4.5.3", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.3.tgz", - "integrity": "sha512-QCiSav9WaX1PgETJ+SpNnx2PRRapJ/oRSXM4VO5OGYGSjrxbKPVFVhB3l2OCbLCk329N8qyAtsJjSjvVBWzEug==", - "dependencies": { - "json-buffer": "3.0.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==", + "dev": true }, - "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/sisteransi": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", + "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", "dev": true, - "engines": { - "node": ">=0.10.0" - } + "peer": true }, - "node_modules/klaw": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/klaw/-/klaw-1.3.1.tgz", - "integrity": "sha512-TED5xi9gGQjGpNnvRWknrwAB1eL5GciPfVFOt3Vk1OJCVDQbzuSfrF3hkUQKlsgKrG1F+0t5W0m+Fje1jIt8rw==", + "node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", "dev": true, - "optionalDependencies": { - "graceful-fs": "^4.1.9" + "peer": true, + "engines": { + "node": ">=8" } }, - "node_modules/lcid": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz", - "integrity": "sha512-YiGkH6EnGrDGqLMITnGjXtGmNtjoXw9SVUzcaos8RBi7Ps0VBylkq+vOcY9QE5poLasPCR849ucFUkl0UzUyOw==", + "node_modules/slice-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", + "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", "dev": true, "dependencies": { - "invert-kv": "^1.0.0" + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" }, "engines": { - "node": ">=0.10.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/slice-ansi?sponsor=1" } }, - "node_modules/level": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/level/-/level-8.0.0.tgz", - "integrity": "sha512-ypf0jjAk2BWI33yzEaaotpq7fkOPALKAgDBxggO6Q9HGX2MRXn0wbP1Jn/tJv1gtL867+YOjOB49WaUF3UoJNQ==", + "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==", "dev": true, - "peer": true, "dependencies": { - "browser-level": "^1.0.1", - "classic-level": "^1.2.0" + "color-convert": "^2.0.1" }, "engines": { - "node": ">=12" + "node": ">=8" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/level" + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/level-codec": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/level-codec/-/level-codec-7.0.1.tgz", - "integrity": "sha512-Ua/R9B9r3RasXdRmOtd+t9TCOEIIlts+TN/7XTT2unhDaL6sJn83S3rUyljbr6lVtw49N3/yA0HHjpV6Kzb2aQ==" - }, - "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==", + "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==", "dev": true, - "optional": true, - "peer": true, "dependencies": { - "catering": "^2.1.0" + "color-name": "~1.1.4" }, "engines": { - "node": ">=10" + "node": ">=7.0.0" } }, - "node_modules/level-errors": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/level-errors/-/level-errors-1.0.5.tgz", - "integrity": "sha512-/cLUpQduF6bNrWuAC4pwtUKA5t669pCsCi2XbmojG2tFeOr9j6ShtdDCtFFQO1DRt+EVZhx9gPzP9G2bUaG4ig==", - "dependencies": { - "errno": "~0.1.1" - } + "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==", + "dev": true }, - "node_modules/level-iterator-stream": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/level-iterator-stream/-/level-iterator-stream-1.3.1.tgz", - "integrity": "sha512-1qua0RHNtr4nrZBgYlpV0qHHeHpcRRWTxEZJ8xsemoHAXNL5tbooh4tPEEqIqsbWCAJBmUmkwYK/sW5OrFjWWw==", + "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, "dependencies": { - "inherits": "^2.0.1", - "level-errors": "^1.0.3", - "readable-stream": "^1.0.33", - "xtend": "^4.0.0" + "command-exists": "^1.2.8", + "commander": "^8.1.0", + "follow-redirects": "^1.12.1", + "js-sha3": "0.8.0", + "memorystream": "^0.3.1", + "semver": "^5.5.0", + "tmp": "0.0.33" + }, + "bin": { + "solcjs": "solc.js" + }, + "engines": { + "node": ">=10.0.0" } }, - "node_modules/level-iterator-stream/node_modules/readable-stream": { - "version": "1.1.14", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", - "integrity": "sha512-+MeVjFf4L44XUkhM1eYbD8fyEsxcV81pqMSR5gblfcLCHfZvbrqy4/qYHE+/R5HoBUT11WV5O08Cr1n3YXkWVQ==", - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "0.0.1", - "string_decoder": "~0.10.x" + "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, + "bin": { + "semver": "bin/semver" } }, - "node_modules/level-iterator-stream/node_modules/string_decoder": { - "version": "0.10.31", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "integrity": "sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==" - }, - "node_modules/level-js": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/level-js/-/level-js-5.0.2.tgz", - "integrity": "sha512-SnBIDo2pdO5VXh02ZmtAyPP6/+6YTJg2ibLtl9C34pWvmtMEmRTWpra+qO/hifkUtBTOtfx6S9vLDjBsBK4gRg==", + "node_modules/solhint": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/solhint/-/solhint-3.4.1.tgz", + "integrity": "sha512-pzZn2RlZhws1XwvLPVSsxfHrwsteFf5eySOhpAytzXwKQYbTCJV6z8EevYDiSVKMpWrvbKpEtJ055CuEmzp4Xg==", "dev": true, - "optional": true, - "peer": true, "dependencies": { - "abstract-leveldown": "~6.2.3", - "buffer": "^5.5.0", - "inherits": "^2.0.3", - "ltgt": "^2.1.2" + "@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": "^6.3.0", + "strip-ansi": "^6.0.1", + "table": "^6.8.1", + "text-table": "^0.2.0" + }, + "bin": { + "solhint": "solhint.js" + }, + "optionalDependencies": { + "prettier": "^2.8.3" } }, - "node_modules/level-js/node_modules/abstract-leveldown": { - "version": "6.2.3", - "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-6.2.3.tgz", - "integrity": "sha512-BsLm5vFMRUrrLeCcRc+G0t2qOaTzpoJQLOubq2XM72eNpjF5UdU5o/5NvlNhx95XHcAvcl8OMXr4mlg/fRgUXQ==", + "node_modules/solhint/node_modules/@solidity-parser/parser": { + "version": "0.16.0", + "resolved": "https://registry.npmjs.org/@solidity-parser/parser/-/parser-0.16.0.tgz", + "integrity": "sha512-ESipEcHyRHg4Np4SqBCfcXwyxxna1DgFVz69bgpLV8vzl/NP1DtcKsJ4dJZXWQhY/Z4J2LeKBiOkOVZn9ct33Q==", "dev": true, - "optional": true, - "peer": true, "dependencies": { - "buffer": "^5.5.0", - "immediate": "^3.2.3", - "level-concat-iterator": "~2.0.0", - "level-supports": "~1.0.0", - "xtend": "~4.0.0" - }, - "engines": { - "node": ">=6" + "antlr4ts": "^0.5.0-alpha.4" } }, - "node_modules/level-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/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, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "optional": true, - "peer": true, "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/level-js/node_modules/level-concat-iterator": { + "node_modules/solhint/node_modules/brace-expansion": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/level-concat-iterator/-/level-concat-iterator-2.0.1.tgz", - "integrity": "sha512-OTKKOqeav2QWcERMJR7IS9CUo1sHnke2C0gkSmcR7QuEtFNLLzHQAvnMw8ykvEcv0Qtkg0p7FOwP1v9e5Smdcw==", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", "dev": true, - "optional": true, - "peer": true, - "engines": { - "node": ">=6" + "dependencies": { + "balanced-match": "^1.0.0" } }, - "node_modules/level-js/node_modules/level-supports": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/level-supports/-/level-supports-1.0.1.tgz", - "integrity": "sha512-rXM7GYnW8gsl1vedTJIbzOrRv85c/2uCMpiiCzO2fndd06U/kUXEEU9evYn4zFggBOg36IsBW8LzqIpETwwQzg==", + "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, - "optional": true, - "peer": true, "dependencies": { - "xtend": "^4.0.2" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, "engines": { - "node": ">=6" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/level-packager": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/level-packager/-/level-packager-5.1.1.tgz", - "integrity": "sha512-HMwMaQPlTC1IlcwT3+swhqf/NUO+ZhXVz6TY1zZIIZlIR0YSn8GtAAWmIvKjNY16ZkEg/JcpAuQskxsXqC0yOQ==", + "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, - "optional": true, - "peer": true, "dependencies": { - "encoding-down": "^6.3.0", - "levelup": "^4.3.2" + "color-name": "~1.1.4" }, "engines": { - "node": ">=6" + "node": ">=7.0.0" } }, - "node_modules/level-packager/node_modules/abstract-leveldown": { - "version": "6.2.3", - "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-6.2.3.tgz", - "integrity": "sha512-BsLm5vFMRUrrLeCcRc+G0t2qOaTzpoJQLOubq2XM72eNpjF5UdU5o/5NvlNhx95XHcAvcl8OMXr4mlg/fRgUXQ==", + "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, - "optional": true, - "peer": true, - "dependencies": { - "buffer": "^5.5.0", - "immediate": "^3.2.3", - "level-concat-iterator": "~2.0.0", - "level-supports": "~1.0.0", - "xtend": "~4.0.0" - }, "engines": { - "node": ">=6" + "node": ">=14" } }, - "node_modules/level-packager/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" - } - ], - "optional": true, - "peer": true, - "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" - } - }, - "node_modules/level-packager/node_modules/deferred-leveldown": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/deferred-leveldown/-/deferred-leveldown-5.3.0.tgz", - "integrity": "sha512-a59VOT+oDy7vtAbLRCZwWgxu2BaCfd5Hk7wxJd48ei7I+nsg8Orlb9CLG0PMZienk9BSUKgeAqkO2+Lw+1+Ukw==", + "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, - "optional": true, - "peer": true, "dependencies": { - "abstract-leveldown": "~6.2.1", - "inherits": "^2.0.3" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^5.0.1", + "once": "^1.3.0" }, "engines": { - "node": ">=6" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/level-packager/node_modules/level-concat-iterator": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/level-concat-iterator/-/level-concat-iterator-2.0.1.tgz", - "integrity": "sha512-OTKKOqeav2QWcERMJR7IS9CUo1sHnke2C0gkSmcR7QuEtFNLLzHQAvnMw8ykvEcv0Qtkg0p7FOwP1v9e5Smdcw==", + "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, - "optional": true, - "peer": true, "engines": { - "node": ">=6" + "node": ">=8" } }, - "node_modules/level-packager/node_modules/level-errors": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/level-errors/-/level-errors-2.0.1.tgz", - "integrity": "sha512-UVprBJXite4gPS+3VznfgDSU8PTRuVX0NXwoWW50KLxd2yw4Y1t2JUR5In1itQnudZqRMT9DlAM3Q//9NCjCFw==", + "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, - "optional": true, - "peer": true, "dependencies": { - "errno": "~0.1.1" + "brace-expansion": "^2.0.1" }, "engines": { - "node": ">=6" + "node": ">=10" } }, - "node_modules/level-packager/node_modules/level-iterator-stream": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/level-iterator-stream/-/level-iterator-stream-4.0.2.tgz", - "integrity": "sha512-ZSthfEqzGSOMWoUGhTXdX9jv26d32XJuHz/5YnuHZzH6wldfWMOVwI9TBtKcya4BKTyTt3XVA0A3cF3q5CY30Q==", + "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, - "optional": true, - "peer": true, "dependencies": { - "inherits": "^2.0.4", - "readable-stream": "^3.4.0", - "xtend": "^4.0.2" + "has-flag": "^4.0.0" }, "engines": { - "node": ">=6" + "node": ">=8" } }, - "node_modules/level-packager/node_modules/level-supports": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/level-supports/-/level-supports-1.0.1.tgz", - "integrity": "sha512-rXM7GYnW8gsl1vedTJIbzOrRv85c/2uCMpiiCzO2fndd06U/kUXEEU9evYn4zFggBOg36IsBW8LzqIpETwwQzg==", + "node_modules/solidity-ast": { + "version": "0.4.56", + "resolved": "https://registry.npmjs.org/solidity-ast/-/solidity-ast-0.4.56.tgz", + "integrity": "sha512-HgmsA/Gfklm/M8GFbCX/J1qkVH0spXHgALCNZ8fA8x5X+MFdn/8CP2gr5OVyXjXw6RZTPC/Sxl2RUDQOXyNMeA==", "dev": true, - "optional": true, - "peer": true, "dependencies": { - "xtend": "^4.0.2" - }, - "engines": { - "node": ">=6" + "array.prototype.findlast": "^1.2.2" } }, - "node_modules/level-packager/node_modules/levelup": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/levelup/-/levelup-4.4.0.tgz", - "integrity": "sha512-94++VFO3qN95cM/d6eBXvd894oJE0w3cInq9USsyQzzoJxmiYzPAocNcuGCPGGjoXqDVJcr3C1jzt1TSjyaiLQ==", + "node_modules/solidity-comments-extractor": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/solidity-comments-extractor/-/solidity-comments-extractor-0.0.7.tgz", + "integrity": "sha512-wciNMLg/Irp8OKGrh3S2tfvZiZ0NEyILfcRCXCD4mp7SgK/i9gzLfhY2hY7VMCQJ3kH9UB9BzNdibIVMchzyYw==", + "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, - "optional": true, "peer": true, "dependencies": { - "deferred-leveldown": "~5.3.0", - "level-errors": "~2.0.0", - "level-iterator-stream": "~4.0.0", - "level-supports": "~1.0.0", - "xtend": "~4.0.0" + "@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" }, - "engines": { - "node": ">=6" + "bin": { + "solidity-coverage": "plugins/bin.js" + }, + "peerDependencies": { + "hardhat": "^2.11.0" } }, - "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==", + "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, + "peer": 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, "peer": true, + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + }, "engines": { - "node": ">=12" + "node": ">=6 <7 || >=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/solidity-coverage/node_modules/semver": { + "version": "7.6.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.2.tgz", + "integrity": "sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w==", "dev": true, "peer": true, - "dependencies": { - "buffer": "^6.0.3", - "module-error": "^1.0.1" + "bin": { + "semver": "bin/semver.js" }, "engines": { - "node": ">=12" + "node": ">=10" } }, - "node_modules/level-write-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/level-write-stream/-/level-write-stream-1.0.0.tgz", - "integrity": "sha512-bBNKOEOMl8msO+uIM9YX/gUO6ckokZ/4pCwTm/lwvs46x6Xs8Zy0sn3Vh37eDqse4mhy4fOMIb/JsSM2nyQFtw==", + "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, "peer": true, "dependencies": { - "end-stream": "~0.1.0" - } - }, - "node_modules/level-ws": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/level-ws/-/level-ws-0.0.0.tgz", - "integrity": "sha512-XUTaO/+Db51Uiyp/t7fCMGVFOTdtLS/NIACxE/GHsij15mKzxksZifKVjlXDF41JMUP/oM1Oc4YNGdKnc3dVLw==", - "dependencies": { - "readable-stream": "~1.0.15", - "xtend": "~2.1.1" + "amdefine": ">=0.0.4" + }, + "engines": { + "node": ">=0.8.0" } }, - "node_modules/level-ws/node_modules/readable-stream": { - "version": "1.0.34", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", - "integrity": "sha512-ok1qVCJuRkNmvebYikljxJA/UEsKwLl2nI1OmaqAu4/UE+h0wKCHok4XkL/gvi39OacXvw59RJUOFUkDib2rHg==", + "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": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "0.0.1", - "string_decoder": "~0.10.x" + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" } }, - "node_modules/level-ws/node_modules/string_decoder": { - "version": "0.10.31", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "integrity": "sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==" - }, - "node_modules/level-ws/node_modules/xtend": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-2.1.2.tgz", - "integrity": "sha512-vMNKzr2rHP9Dp/e1NQFnLQlwlhp9L/LfvnsVdHxN1f+uggyVI3i08uD14GPvCToPkdsRfyPqIyYGmIk58V98ZQ==", - "dependencies": { - "object-keys": "~0.4.0" - }, + "node_modules/source-map-support/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, "engines": { - "node": ">=0.4" + "node": ">=0.10.0" } }, - "node_modules/leveldown": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/leveldown/-/leveldown-5.6.0.tgz", - "integrity": "sha512-iB8O/7Db9lPaITU1aA2txU/cBEXAt4vWwKQRrrWuS6XDgbP4QZGj9BL2aNbwb002atoQ/lIotJkfyzz+ygQnUQ==", + "node_modules/split2": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/split2/-/split2-3.2.2.tgz", + "integrity": "sha512-9NThjpgZnifTkJpzTZ7Eue85S49QwpNhZTq6GRJwObb6jnLFNGB7Qm73V5HewTROPyxD0C29xqmaI68bQtV+hg==", "dev": true, - "hasInstallScript": true, - "optional": true, "peer": true, "dependencies": { - "abstract-leveldown": "~6.2.1", - "napi-macros": "~2.0.0", - "node-gyp-build": "~4.1.0" - }, - "engines": { - "node": ">=8.6.0" + "readable-stream": "^3.0.0" } }, - "node_modules/leveldown/node_modules/abstract-leveldown": { - "version": "6.2.3", - "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-6.2.3.tgz", - "integrity": "sha512-BsLm5vFMRUrrLeCcRc+G0t2qOaTzpoJQLOubq2XM72eNpjF5UdU5o/5NvlNhx95XHcAvcl8OMXr4mlg/fRgUXQ==", + "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, + "peer": true + }, + "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, - "optional": true, - "peer": true, "dependencies": { - "buffer": "^5.5.0", - "immediate": "^3.2.3", - "level-concat-iterator": "~2.0.0", - "level-supports": "~1.0.0", - "xtend": "~4.0.0" + "type-fest": "^0.7.1" }, "engines": { "node": ">=6" } }, - "node_modules/leveldown/node_modules/buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "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, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "optional": true, - "peer": true, - "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" + "engines": { + "node": ">=8" } }, - "node_modules/leveldown/node_modules/level-concat-iterator": { + "node_modules/statuses": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/level-concat-iterator/-/level-concat-iterator-2.0.1.tgz", - "integrity": "sha512-OTKKOqeav2QWcERMJR7IS9CUo1sHnke2C0gkSmcR7QuEtFNLLzHQAvnMw8ykvEcv0Qtkg0p7FOwP1v9e5Smdcw==", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", "dev": true, - "optional": true, - "peer": true, "engines": { - "node": ">=6" + "node": ">= 0.8" } }, - "node_modules/leveldown/node_modules/level-supports": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/level-supports/-/level-supports-1.0.1.tgz", - "integrity": "sha512-rXM7GYnW8gsl1vedTJIbzOrRv85c/2uCMpiiCzO2fndd06U/kUXEEU9evYn4zFggBOg36IsBW8LzqIpETwwQzg==", + "node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", "dev": true, - "optional": true, - "peer": true, "dependencies": { - "xtend": "^4.0.2" - }, - "engines": { - "node": ">=6" + "safe-buffer": "~5.2.0" } }, - "node_modules/leveldown/node_modules/node-gyp-build": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.1.1.tgz", - "integrity": "sha512-dSq1xmcPDKPZ2EED2S6zw/b9NKsqzXRE6dVr8TVQnI3FJOTteUMuqF3Qqs6LZg+mLGYJWqQzMbIjMtJqTv87nQ==", + "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, - "optional": true, - "peer": true, - "bin": { - "node-gyp-build": "bin.js", - "node-gyp-build-optional": "optional.js", - "node-gyp-build-test": "build-test.js" - } + "peer": true }, - "node_modules/levelup": { - "version": "1.3.9", - "resolved": "https://registry.npmjs.org/levelup/-/levelup-1.3.9.tgz", - "integrity": "sha512-VVGHfKIlmw8w1XqpGOAGwq6sZm2WwWLmlDcULkKWQXEA5EopA8OBNJ2Ck2v6bdk8HeEZSbCSEgzXadyQFm76sQ==", + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, "dependencies": { - "deferred-leveldown": "~1.2.1", - "level-codec": "~7.0.0", - "level-errors": "~1.0.3", - "level-iterator-stream": "~1.3.0", - "prr": "~1.0.1", - "semver": "~5.4.1", - "xtend": "~4.0.0" + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" } }, - "node_modules/levelup/node_modules/semver": { - "version": "5.4.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.4.1.tgz", - "integrity": "sha512-WfG/X9+oATh81XtllIo/I8gOiY9EXRdv1cQdyykeXK17YcUW3EXUAi2To4pcH6nZtJPr7ZOpM5OMyWJZm+8Rsg==", - "bin": { - "semver": "bin/semver" - } + "node_modules/string-width/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true }, - "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/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": { - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.0", + "es-object-atoms": "^1.0.0" }, "engines": { - "node": ">= 0.8.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "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/load-json-file": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", - "integrity": "sha512-cy7ZdNRXdablkXYNI049pthVeXFurRyb9+hA/dZzerZ0pGTx42z+y+ssxBaVV2l70t1muq5IdKhn4UtcoGUY9A==", + "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": { - "graceful-fs": "^4.1.2", - "parse-json": "^2.2.0", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0", - "strip-bom": "^2.0.0" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" }, - "engines": { - "node": ">=0.10.0" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/load-json-file/node_modules/pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", + "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", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, "engines": { - "node": ">=0.10.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "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/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, - "peer": true, "dependencies": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" + "ansi-regex": "^5.0.1" }, "engines": { - "node": ">=4" + "node": ">=8" } }, - "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-es": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz", - "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==", - "dev": true, - "peer": true - }, - "node_modules/lodash.assign": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/lodash.assign/-/lodash.assign-4.2.0.tgz", - "integrity": "sha512-hFuH8TY+Yji7Eja3mGiuAxBqLagejScbG8GbG0j6o9vzn0YL14My+ktnqtZgFTosKymC9/44wP6s7xyuLfnClw==", - "dev": true - }, - "node_modules/lodash.debounce": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", - "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==" - }, - "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==" - }, - "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.sortby": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz", - "integrity": "sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA==", - "dev": true, - "optional": true, - "peer": 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==", - "dev": true - }, - "node_modules/log-symbols": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", - "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", + "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": { - "chalk": "^4.1.0", - "is-unicode-supported": "^0.1.0" + "is-hex-prefixed": "1.0.0" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=6.5.0", + "npm": ">=3" } }, - "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==", + "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, - "dependencies": { - "color-convert": "^2.0.1" - }, "engines": { "node": ">=8" }, "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "url": "https://github.com/sponsors/sindresorhus" } }, - "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==", + "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": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "has-flag": "^3.0.0" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "node": ">=4" } }, - "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==", + "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, + "peer": true, "dependencies": { - "color-name": "~1.1.4" + "http-response-object": "^3.0.1", + "sync-rpc": "^1.2.1", + "then-request": "^6.0.0" }, "engines": { - "node": ">=7.0.0" + "node": ">=8.0.0" } }, - "node_modules/log-symbols/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true + "node_modules/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, + "peer": true, + "dependencies": { + "get-port": "^3.1.0" + } }, - "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==", + "node_modules/table": { + "version": "6.8.1", + "resolved": "https://registry.npmjs.org/table/-/table-6.8.1.tgz", + "integrity": "sha512-Y4X9zqrCftUhMeH2EptSSERdVKt/nEdijTOacGD/97EKjhQ/Qs8RTlEGABSJNNN8lac9kheH+af7yAkEWlgneA==", "dev": true, + "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": ">=8" + "node": ">=10.0.0" } }, - "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==", + "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, + "peer": true, "dependencies": { - "has-flag": "^4.0.0" + "array-back": "^4.0.1", + "deep-extend": "~0.6.0", + "typical": "^5.2.0", + "wordwrapjs": "^4.0.0" }, "engines": { - "node": ">=8" + "node": ">=8.0.0" } }, - "node_modules/loglevel": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/loglevel/-/loglevel-1.8.1.tgz", - "integrity": "sha512-tCRIJM51SHjAayKwC+QAg8hT8vg6z7GSgLJKGvzuPb1Wc+hLzqtuVLxp6/HzSPOozuK+8ErAhy7U/sVzw8Dgfg==", + "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, - "optional": true, "peer": true, "engines": { - "node": ">= 0.6.0" - }, - "funding": { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/loglevel" + "node": ">=8" } }, - "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/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, - "optional": true, - "peer": true + "peer": true, + "engines": { + "node": ">=8" + } }, - "node_modules/loose-envify": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", - "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "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==", "dev": true, - "peer": true, "dependencies": { - "js-tokens": "^3.0.0 || ^4.0.0" + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" }, - "bin": { - "loose-envify": "cli.js" + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" } }, - "node_modules/loupe": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/loupe/-/loupe-2.3.6.tgz", - "integrity": "sha512-RaPMZKiMy8/JruncMU5Bt6na1eftNoo++R4Y+N2FrxkDVTrGvcyzFTsaGif4QTeKESheMGegbhw6iUAq+5A8zA==", - "dependencies": { - "get-func-name": "^2.0.0" - } + "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==", + "dev": true }, - "node_modules/lower-case": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-1.1.4.tgz", - "integrity": "sha512-2Fgx1Ycm599x+WGpIYwJOvsjmXFzTSc34IwDWALRA/8AopUKAVPwfJ+h5+f85BCp0PWmmJcWzEpxOpoXycMpdA==", + "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/lower-case-first": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/lower-case-first/-/lower-case-first-1.0.2.tgz", - "integrity": "sha512-UuxaYakO7XeONbKrZf5FEgkantPf5DUqDayzP5VXZrtRPdH86s4kN47I8B3TW10S4QKiE3ziHNf3kRN//okHjA==", + "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, + "peer": true, "dependencies": { - "lower-case": "^1.1.2" - } - }, - "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==", - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + "@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" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": ">=6.0.0" } }, - "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==", + "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, "peer": 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==", + "node_modules/tinyglobby": { + "version": "0.2.10", + "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.10.tgz", + "integrity": "sha512-Zc+8eJlFMvgatPZTl6A9L/yht8QqdmUNtURHaKZLmKBE12hNPSrqNkUp2cs3M/UKmNVVAMFQYSjYIVHDjW5zew==", "dev": true, - "peer": true, "dependencies": { - "yallist": "^3.0.2" - } - }, - "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==" - }, - "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, - "peer": true, + "fdir": "^6.4.2", + "picomatch": "^4.0.2" + }, "engines": { - "node": ">=8.9.0" + "node": ">=12.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/tinyglobby/node_modules/fdir": { + "version": "6.4.2", + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.4.2.tgz", + "integrity": "sha512-KnhMXsKSPZlAhp7+IjUkRZKPb4fUyccpDrdFXbi4QL1qkmFh9kVY09Yox+n4MaOb3lHZ1Tv829C3oaaXoMYPDQ==", + "dev": true, + "peerDependencies": { + "picomatch": "^3 || ^4" + }, + "peerDependenciesMeta": { + "picomatch": { + "optional": true + } } }, - "node_modules/media-typer": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", + "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": ">= 0.6" - } - }, - "node_modules/memdown": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/memdown/-/memdown-1.4.1.tgz", - "integrity": "sha512-iVrGHZB8i4OQfM155xx8akvG9FIj+ht14DX5CQkCTG4EHzZ3d3sgckIf/Lm9ivZalEsFuEVnWv2B2WZvbrro2w==", - "dependencies": { - "abstract-leveldown": "~2.7.1", - "functional-red-black-tree": "^1.0.1", - "immediate": "^3.2.3", - "inherits": "~2.0.1", - "ltgt": "~2.2.0", - "safe-buffer": "~5.1.1" - } - }, - "node_modules/memdown/node_modules/abstract-leveldown": { - "version": "2.7.2", - "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-2.7.2.tgz", - "integrity": "sha512-+OVvxH2rHVEhWLdbudP6p0+dNMXu8JA1CbhP19T8paTYAcX7oJ4OVjT+ZUVpv7mITxXHqDMej+GdqXBmXkw09w==", - "dependencies": { - "xtend": "~4.0.0" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" } }, - "node_modules/memdown/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/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/tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", "dev": true, - "peer": true, "dependencies": { - "abstract-level": "^1.0.0", - "functional-red-black-tree": "^1.0.1", - "module-error": "^1.0.1" + "os-tmpdir": "~1.0.2" }, "engines": { - "node": ">=12" + "node": ">=0.6.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/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", "dev": true, + "dependencies": { + "is-number": "^7.0.0" + }, "engines": { - "node": ">= 0.10.0" + "node": ">=8.0" } }, - "node_modules/merge-descriptors": { + "node_modules/toidentifier": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==" - }, - "node_modules/merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", "dev": true, "engines": { - "node": ">= 8" - } - }, - "node_modules/merkle-patricia-tree": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/merkle-patricia-tree/-/merkle-patricia-tree-2.3.2.tgz", - "integrity": "sha512-81PW5m8oz/pz3GvsAwbauj7Y00rqm81Tzad77tHBwU7pIAtN+TJnMSOJhxBKflSVYhptMMb9RskhqHqrSm1V+g==", - "dependencies": { - "async": "^1.4.2", - "ethereumjs-util": "^5.0.0", - "level-ws": "0.0.0", - "levelup": "^1.2.1", - "memdown": "^1.0.0", - "readable-stream": "^2.0.0", - "rlp": "^2.0.0", - "semaphore": ">=1.0.1" - } - }, - "node_modules/merkle-patricia-tree/node_modules/async": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", - "integrity": "sha512-nSVgobk4rv61R9PUSDtYt7mPVB2olxNR5RWJcAsH676/ef11bUZwvu7+RGYrYauVdDPcO519v68wRhXQtxsV9w==" - }, - "node_modules/merkle-patricia-tree/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/merkle-patricia-tree/node_modules/bs58check": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/bs58check/-/bs58check-2.1.2.tgz", - "integrity": "sha512-0TS1jicxdU09dwJMNZtVAfzPi6Q6QeN0pM1Fkzrjn+XYHvzMKPU3pHVpva+769iNVSfIYWf7LJ6WR+BuuMf8cA==", - "dependencies": { - "bs58": "^4.0.0", - "create-hash": "^1.1.0", - "safe-buffer": "^5.1.2" + "node": ">=0.6" } }, - "node_modules/merkle-patricia-tree/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==", - "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/tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", + "dev": true }, - "node_modules/merkle-patricia-tree/node_modules/ethereumjs-util": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.2.1.tgz", - "integrity": "sha512-v3kT+7zdyCm1HIqWlLNrHGqHGLpGYIhjeHxQjnDXjLT2FyGJDsd3LWMYUo7pAFRrk86CR3nUJfhC81CCoJNNGQ==", - "dependencies": { - "bn.js": "^4.11.0", - "create-hash": "^1.1.2", - "elliptic": "^6.5.2", - "ethereum-cryptography": "^0.1.3", - "ethjs-util": "^0.1.3", - "rlp": "^2.0.0", - "safe-buffer": "^5.1.1" + "node_modules/ts-api-utils": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.4.3.tgz", + "integrity": "sha512-i3eMG77UTMD0hZhgRS562pv83RC6ukSAC2GMNWc+9dieh/+jDM5u5YG+NHX6VNDRHQcHwmsTHctP9LhbC3WxVw==", + "dev": true, + "engines": { + "node": ">=16" + }, + "peerDependencies": { + "typescript": ">=4.2.0" } }, - "node_modules/merkle-patricia-tree/node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" - }, - "node_modules/merkle-patricia-tree/node_modules/readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "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, + "peer": 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" + "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/merkle-patricia-tree/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/merkle-patricia-tree/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/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, + "peer": true, "dependencies": { - "safe-buffer": "~5.1.0" - } - }, - "node_modules/methods": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", - "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", + "color-convert": "^2.0.1" + }, "engines": { - "node": ">= 0.6" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/micromatch": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", - "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "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, + "peer": true, "dependencies": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, "engines": { - "node": ">=8.6" - } - }, - "node_modules/mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", - "bin": { - "mime": "cli.js" + "node": ">=10" }, - "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" + "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/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, + "peer": 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": "3.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-3.1.0.tgz", - "integrity": "sha512-Ysbi9uYW9hFyfrThdDEQuykN4Ey6BuwPD2kpI5ES/nFTDn/98yxYNLZJcgUAKPT/mcrLLKaGzJR9YVxJrIdASQ==", + "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, + "peer": true + }, + "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, - "optional": true, "peer": true, "engines": { "node": ">=8" } }, - "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==", + "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, + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, "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==", - "dependencies": { - "dom-walk": "^0.1.0" + "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, + "peer": true, + "peerDependencies": { + "typescript": ">=3.7.0" } }, - "node_modules/minimalistic-assert": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" - }, - "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==", + "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, + "peer": true, "dependencies": { - "brace-expansion": "^1.1.7" + "@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" }, + "peerDependenciesMeta": { + "@swc/core": { + "optional": true + }, + "@swc/wasm": { + "optional": true + } + } + }, + "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, + "peer": true, "engines": { - "node": "*" + "node": ">=0.3.1" } }, - "node_modules/minimist": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz", - "integrity": "sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } + "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/minipass": { - "version": "2.9.0", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.9.0.tgz", - "integrity": "sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg==", - "dependencies": { - "safe-buffer": "^5.1.2", - "yallist": "^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==", + "dev": true }, - "node_modules/minizlib": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-1.3.3.tgz", - "integrity": "sha512-6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q==", - "dependencies": { - "minipass": "^2.9.0" - } + "node_modules/tweetnacl": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-1.0.3.tgz", + "integrity": "sha512-6rt+RN7aOi1nGMyC4Xa5DdYiukl2UWCbcJft7YhxReBGQD7OAM8Pbxw6YMo4r2diNEA8FEmu32YOn9rhaiE5yw==", + "dev": true }, - "node_modules/mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "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.3.2", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", + "integrity": "sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==", + "dev": true, + "peer": true, "dependencies": { - "minimist": "^1.2.6" + "prelude-ls": "~1.1.2" }, - "bin": { - "mkdirp": "bin/cmd.js" + "engines": { + "node": ">= 0.8.0" } }, - "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.", - "dependencies": { - "mkdirp": "*" - }, + "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==", + "dev": true, "engines": { "node": ">=4" } }, - "node_modules/mnemonist": { - "version": "0.38.5", - "resolved": "https://registry.npmjs.org/mnemonist/-/mnemonist-0.38.5.tgz", - "integrity": "sha512-bZTFT5rrPKtPJxj8KSV0WkPyNxl72vQepqqVUAW2ARUpUSF2qXMB6jZj7hW5/k7C1rtpzqbD/IIbJwLXUjCHeg==", + "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, - "peer": true, - "dependencies": { - "obliterator": "^2.0.0" + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/mocha": { - "version": "10.2.0", - "resolved": "https://registry.npmjs.org/mocha/-/mocha-10.2.0.tgz", - "integrity": "sha512-IDY7fl/BecMwFHzoqF2sg/SHHANeBoMMXFlS9r0OXKDssYE1M5O43wUY/9BVPeIvfH2zmEbBfseqN9gBQZzXkg==", - "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": "7.2.0", - "he": "1.2.0", - "js-yaml": "4.1.0", - "log-symbols": "4.1.0", - "minimatch": "5.0.1", - "ms": "2.1.3", - "nanoid": "3.3.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" + "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, + "peer": 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": { - "_mocha": "bin/_mocha", - "mocha": "bin/mocha.js" + "typechain": "dist/cli/cli.js" + }, + "peerDependencies": { + "typescript": ">=4.3.0" + } + }, + "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==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "dev": true, + "peer": 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": ">= 14.0.0" + "node": "*" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/mochajs" + "url": "https://github.com/sponsors/isaacs" } }, - "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==", + "node_modules/typechain/node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", "dev": true, + "peer": true, + "bin": { + "mkdirp": "bin/cmd.js" + }, "engines": { - "node": ">=6" + "node": ">=10" } }, - "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/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": { - "balanced-match": "^1.0.0" + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" } }, - "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/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": { + "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" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/mocha/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==", + "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": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" + "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" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "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==", - "dev": true, - "engines": { - "node": ">=8" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/mocha/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/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": { - "p-locate": "^5.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": ">=10" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/ljharb" } }, - "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==", + "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, - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=10" - } + "peer": true }, - "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==", + "node_modules/typeforce": { + "version": "1.18.0", + "resolved": "https://registry.npmjs.org/typeforce/-/typeforce-1.18.0.tgz", + "integrity": "sha512-7uc1O8h1M1g0rArakJdf0uLRSSgFcYexrVoKo+bzJd32gd4gDy2L/Z+8/FjPnU9ydY3pEnVPtr9FyscYY60K1g==", "dev": true }, - "node_modules/mocha/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/typescript": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.7.2.tgz", + "integrity": "sha512-i5t66RHxDvVN40HfDd1PsEThGNnlMCMT3jMUuoh9/0TaqWevNontacunWyN02LA9/fIbEWlcHZcgTKb9QoaLfg==", "dev": true, - "dependencies": { - "yocto-queue": "^0.1.0" + "peer": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=14.17" } }, - "node_modules/mocha/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/typescript-eslint": { + "version": "8.18.0", + "resolved": "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-8.18.0.tgz", + "integrity": "sha512-Xq2rRjn6tzVpAyHr3+nmSg1/9k9aIHnJ2iZeOH7cfGOWqTkXTm3kwpQglEuLGdNrYvPF+2gtAs+/KF5rjVo+WQ==", "dev": true, "dependencies": { - "p-limit": "^3.0.2" + "@typescript-eslint/eslint-plugin": "8.18.0", + "@typescript-eslint/parser": "8.18.0", + "@typescript-eslint/utils": "8.18.0" }, "engines": { - "node": ">=10" + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0", + "typescript": ">=4.8.4 <5.8.0" } }, - "node_modules/mocha/node_modules/path-exists": { + "node_modules/typical": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "resolved": "https://registry.npmjs.org/typical/-/typical-4.0.0.tgz", + "integrity": "sha512-VAH4IvQ7BDFYglMd7BPRDfLgxZZX4O4TFcRDA6EN5X7erNJJq+McIEp8np9aVtxrCJ6qx4GTYVfOWNjcqwZgRw==", "dev": true, + "peer": true, "engines": { "node": ">=8" } }, - "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/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": { - "has-flag": "^4.0.0" + "optional": true, + "peer": true, + "bin": { + "uglifyjs": "bin/uglifyjs" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" + "node": ">=0.8.0" } }, - "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==" - }, - "node_modules/module-error": { + "node_modules/unbox-primitive": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/module-error/-/module-error-1.0.2.tgz", - "integrity": "sha512-0yuvsqSCv8LbaOKhnsQ/T5JhyFlCYLPXK3U2sgV10zoKQwzs/MyfuQUOZQ1V/6OCOJsK/TRgNVrPuPDqtdMFtA==", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", + "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", "dev": true, - "peer": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - }, - "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", "dependencies": { - "base-x": "^3.0.8", - "buffer": "^5.5.0" + "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/multibase/node_modules/buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "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/undici": { + "version": "5.28.4", + "resolved": "https://registry.npmjs.org/undici/-/undici-5.28.4.tgz", + "integrity": "sha512-72RFADWFqKmUb2hmmvNODKL3p9hcB6Gt2DOQMis1SEBaV6a4MH8soBvzg+95CYhCKPFedut2JY9bMfrDl9D23g==", + "dev": true, "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" + "@fastify/busboy": "^2.0.0" + }, + "engines": { + "node": ">=14.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", - "dependencies": { - "varint": "^5.0.0" - } + "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 }, - "node_modules/multihashes": { - "version": "0.4.21", - "resolved": "https://registry.npmjs.org/multihashes/-/multihashes-0.4.21.tgz", - "integrity": "sha512-uVSvmeCWf36pU2nB4/1kzYZjsXD9vofZKpgudqkceYY5g2aZZXJ5r9lxuzoRLl1OAp28XljXsEJ/X/85ZsKmKw==", - "dependencies": { - "buffer": "^5.5.0", - "multibase": "^0.7.0", - "varint": "^5.0.0" + "node_modules/unfetch": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/unfetch/-/unfetch-4.2.0.tgz", + "integrity": "sha512-F9p7yYCn6cIW9El1zi0HI6vqpeIvBsr3dSuRO6Xuppb1u5rXpCPmMvLSyECLhybr9isec8Ohl0hPekMVrEinDA==", + "dev": true + }, + "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/multihashes/node_modules/buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "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/unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", + "dev": true, + "engines": { + "node": ">= 0.8" } }, - "node_modules/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/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, "dependencies": { - "base-x": "^3.0.8", - "buffer": "^5.5.0" + "punycode": "^2.1.0" } }, - "node_modules/nano-base32": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/nano-base32/-/nano-base32-1.0.1.tgz", - "integrity": "sha512-sxEtoTqAPdjWVGv71Q17koMFGsOMSiHsIFEvzOM7cNp8BXB4AnEwmDabm5dorusJf/v1z7QxaZYxUorU9RKaAw==", - "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==" - }, - "node_modules/nanoid": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.3.tgz", - "integrity": "sha512-p1sjXuopFs0xg+fPASzQ28agW1oHD7xDsd9Xkf3T15H3c/cifrFHVwrh74PdoklAPi+i7MdRsE47vm2r6JoB+w==", + "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==", "dev": true, - "bin": { - "nanoid": "bin/nanoid.cjs" + "hasInstallScript": true, + "optional": true, + "peer": true, + "dependencies": { + "node-gyp-build": "^4.3.0" }, "engines": { - "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + "node": ">=6.14.2" } }, - "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==", + "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, "peer": true }, - "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==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/neo-async": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", - "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", "dev": true }, - "node_modules/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/no-case": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/no-case/-/no-case-2.3.2.tgz", - "integrity": "sha512-rmTZ9kz+f3rCvK2TD1Ue/oZlns7OGoIWP4fc3llxxRXlOkHKoWPPWJOfFYpITabSow43QJbRIoHQXtt10VldyQ==", + "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, - "dependencies": { - "lower-case": "^1.1.1" + "bin": { + "uuid": "dist/bin/uuid" } }, - "node_modules/node-abort-controller": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/node-abort-controller/-/node-abort-controller-3.1.1.tgz", - "integrity": "sha512-AGK2yQKIjRuqnc6VkX2Xj5d+QW8xZ87pa1UK6yA6ouUyuxfHuMP6umE5QK7UmTeOAymo+Zx1Fxiuw9rVx8taHQ==", + "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, - "optional": true, "peer": true }, - "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/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/varuint-bitcoin": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/varuint-bitcoin/-/varuint-bitcoin-1.1.2.tgz", + "integrity": "sha512-4EVb+w4rx+YfVM32HQX42AbbT7/1f5zwAYhIujKXKk8NQK+JfRVl3pqT3hjNn/L+RstigmGGKVwHA/P0wgITZw==", "dev": true, "dependencies": { - "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": "4.x || >=6.0.0" - }, - "peerDependencies": { - "encoding": "^0.1.0" - }, - "peerDependenciesMeta": { - "encoding": { - "optional": true - } - } - }, - "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==", - "bin": { - "node-gyp-build": "bin.js", - "node-gyp-build-optional": "optional.js", - "node-gyp-build-test": "build-test.js" + "safe-buffer": "^5.1.1" } }, - "node_modules/node-interval-tree": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/node-interval-tree/-/node-interval-tree-1.3.3.tgz", - "integrity": "sha512-K9vk96HdTK5fEipJwxSvIIqwTqr4e3HRJeJrNxBSeVMNSC/JWARRaX7etOLOuTmrRMeOI/K5TCJu3aWIwZiNTw==", + "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, "peer": true, "dependencies": { - "shallowequal": "^1.0.2" + "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": ">= 7.6.0" + "node": ">=8.0.0" } }, - "node_modules/node-releases": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.7.tgz", - "integrity": "sha512-EJ3rzxL9pTWPjk5arA0s0dgXpnyiAbJDE6wHT62g7VsgrgQgmmZ+Ru++M1BFofncWja+Pnn3rEr3fieRySAdKQ==" + "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==", + "dev": true }, - "node_modules/nofilter": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/nofilter/-/nofilter-3.1.0.tgz", - "integrity": "sha512-l2NNj07e9afPnhAhvgVrCD/oy2Ai1yfLpuo3EpiO1jFTsB4sFz6oIfAfSZyQzVpkZQ9xS8ZS5g1jCBgq4Hwo0g==", + "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==", "dev": true, - "engines": { - "node": ">=12.19" + "dependencies": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" } }, - "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/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", "dev": true, + "peer": true, "dependencies": { - "abbrev": "1" + "isexe": "^2.0.0" }, "bin": { - "nopt": "bin/nopt.js" + "which": "bin/which" } }, - "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/which-boxed-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", + "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", "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/normalize-package-data/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" + "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" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "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/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, + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-tostringtag": "^1.0.2" + }, "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==", - "engines": { - "node": ">=10" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/nth-check": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", - "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", + "node_modules/widest-line": { + "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": { - "boolbase": "^1.0.0" + "string-width": "^4.0.0" }, - "funding": { - "url": "https://github.com/fb55/nth-check?sponsor=1" - } - }, - "node_modules/number-is-nan": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha512-4jbtZXNAsfZbAHiiqjLPBiCl16dES1zI4Hpzzxw61Tk+loF+sBDBKx1ICKKKwIqQ7M0mFn1TmkN7euSncWgHiQ==", - "dev": true, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, - "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/wif": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/wif/-/wif-2.0.6.tgz", + "integrity": "sha512-HIanZn1zmduSF+BQhkE+YXIbEiH0xPr1012QbFEGB0xsKqJii0/SqJjyn8dFv6y36kOznMgMB+LGcbZTJ1xACQ==", + "dev": true, "dependencies": { - "bn.js": "4.11.6", - "strip-hex-prefix": "1.0.0" - }, - "engines": { - "node": ">=6.5.0", - "npm": ">=3" - } - }, - "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==" - }, - "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==", - "engines": { - "node": "*" + "bs58check": "<3.0.0" } }, - "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==", - "engines": { - "node": ">=0.10.0" + "node_modules/wif/node_modules/base-x": { + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/base-x/-/base-x-3.0.10.tgz", + "integrity": "sha512-7d0s06rR9rYaIWHkpfLIFICM/tkSVdoPC9qYAQRpxn9DdKNWNsKC0uk++akckyLq16Tx2WIinnZ6WRriAt6njQ==", + "dev": true, + "dependencies": { + "safe-buffer": "^5.0.1" } }, - "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==", - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node_modules/wif/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, + "dependencies": { + "base-x": "^3.0.2" } }, - "node_modules/object-keys": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-0.4.0.tgz", - "integrity": "sha512-ncrLw+X55z7bkl5PnUvHwFK9FcGuFYo9gtjws2XtSzL+aZ8tm830P60WJ0dSmFVaSalWieW5MD7kEdnXda9yJw==" - }, - "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/wif/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, "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" + "bs58": "^4.0.0", + "create-hash": "^1.1.0", + "safe-buffer": "^5.1.2" } }, - "node_modules/object.assign/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==", + "node_modules/word-wrap": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", + "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", "dev": true, "engines": { - "node": ">= 0.4" + "node": ">=0.10.0" } }, - "node_modules/obliterator": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/obliterator/-/obliterator-2.0.4.tgz", - "integrity": "sha512-lgHwxlxV1qIg1Eap7LgIeoBWIMFibOjbrYPIPJZcI1mmGAI2m3lNYpK12Y+GBdPQ0U1hRwSord7GIaawz962qQ==", + "node_modules/wordwrap": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", + "integrity": "sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==", "dev": true, "peer": 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==", - "dependencies": { - "http-https": "^1.0.0" - } - }, - "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/wordwrapjs": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/wordwrapjs/-/wordwrapjs-4.0.1.tgz", + "integrity": "sha512-kKlNACbvHrkpIw6oPeYDSmdCTu2hdMHoyXLTcUKala++lx5Y+wjJ/e474Jqv5abnVmwxw08DiTuHmw69lJGksA==", + "dev": true, + "peer": true, "dependencies": { - "ee-first": "1.1.1" + "reduce-flatten": "^2.0.0", + "typical": "^5.2.0" }, "engines": { - "node": ">= 0.8" + "node": ">=8.0.0" } }, - "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==", - "dependencies": { - "wrappy": "1" + "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, + "peer": true, + "engines": { + "node": ">=8" } }, - "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/workerpool": { + "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": { + "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, - "optional": true, - "peer": true, "dependencies": { - "mimic-fn": "^2.1.0" + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" }, "engines": { - "node": ">=6" + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/onetime/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, - "optional": true, - "peer": true, - "engines": { - "node": ">=6" + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } }, - "node_modules/optionator": { - "version": "0.8.3", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", - "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", + "node_modules/wrap-ansi/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "dependencies": { - "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" + "color-convert": "^2.0.1" }, "engines": { - "node": ">= 0.8.0" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/original-require": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/original-require/-/original-require-1.0.1.tgz", - "integrity": "sha512-5vdKMbE58WaE61uVD+PKyh8xdM398UnjPBLotW2sjG5MzHARwta/+NtMBCBA0t2WQblGYBvq5vsiZpWokwno+A==", - "dev": true, - "peer": true - }, - "node_modules/os-locale": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz", - "integrity": "sha512-PRT7ZORmwu2MEFt4/fv3Q+mEfN4zetKxufQrkShY2oGvUms9r8otu5HfdyIFHkYXjO7laNsoVGmM2MANfuTA8g==", + "node_modules/wrap-ansi/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, "dependencies": { - "lcid": "^1.0.0" + "color-name": "~1.1.4" }, "engines": { - "node": ">=0.10.0" + "node": ">=7.0.0" } }, - "node_modules/os-tmpdir": { + "node_modules/wrap-ansi/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/wrappy": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "dev": true + }, + "node_modules/ws": { + "version": "7.5.10", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.10.tgz", + "integrity": "sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ==", "dev": true, "engines": { - "node": ">=0.10.0" + "node": ">=8.3.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } } }, - "node_modules/p-cancelable": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-3.0.0.tgz", - "integrity": "sha512-mlVgR3PGuzlo0MmTdk4cXqXWlwQDLnONTAg6sm62XkMJEiRxN3GL3SffkYvqwonbkJBcrI7Uvv5Zh9yjvn2iUw==", + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true, "engines": { - "node": ">=12.20" + "node": ">=10" } }, - "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/yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", "dev": true, - "peer": true, "dependencies": { - "p-try": "^1.0.0" + "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": ">=4" + "node": ">=10" } }, - "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/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, - "peer": true, - "dependencies": { - "p-limit": "^1.1.0" - }, "engines": { - "node": ">=4" + "node": ">=10" } }, - "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==", + "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, - "peer": true, "dependencies": { - "aggregate-error": "^3.0.0" + "camelcase": "^6.0.0", + "decamelize": "^4.0.0", + "flat": "^5.0.2", + "is-plain-obj": "^2.1.0" }, "engines": { "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" } }, - "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/yn": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", + "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", "dev": true, "peer": true, "engines": { - "node": ">=4" + "node": ">=6" } }, - "node_modules/param-case": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/param-case/-/param-case-2.1.1.tgz", - "integrity": "sha512-eQE845L6ot89sk2N8liD8HAuH4ca6Vvr7VWAWwt7+kvvG5aBcPmmphQ68JsEG2qa9n1TykS2DLeMt363AAH8/w==", + "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==", "dev": true, - "dependencies": { - "no-case": "^2.2.0" - } - }, - "node_modules/parent-module": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", - "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", - "dev": true, - "dependencies": { - "callsites": "^3.0.0" - }, "engines": { - "node": ">=6" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } + } + }, + "dependencies": { + "@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 }, - "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==" + "@aws-crypto/sha256-js": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-js/-/sha256-js-1.2.2.tgz", + "integrity": "sha512-Nr1QJIbW/afYYGzYvrF70LtaHrIRtd4TNAglX8BvlfxJLZ45SAmueIKYl5tWoNBPzp65ymXGFK0Bb1vZUpuc9g==", + "dev": true, + "requires": { + "@aws-crypto/util": "^1.2.2", + "@aws-sdk/types": "^3.1.0", + "tslib": "^1.11.1" + } }, - "node_modules/parse-json": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", - "integrity": "sha512-QR/GGaKCkhwk1ePQNYDRKYZ3mwU9ypsKhB0XyFnLQdomyEqk3e8wpW3V5Jp88zbxK4n5ST1nqo+g9juTpownhQ==", + "@aws-crypto/util": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-1.2.2.tgz", + "integrity": "sha512-H8PjG5WJ4wz0UXAFXeJjWCW1vkvIJ3qUUD+rGRwJ2/hj+xT58Qle2MTql/2MGzkU+1JLAFuR6aJpLAjHwhmwwg==", "dev": true, - "dependencies": { - "error-ex": "^1.2.0" - }, - "engines": { - "node": ">=0.10.0" + "requires": { + "@aws-sdk/types": "^3.1.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" } }, - "node_modules/parse5": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz", - "integrity": "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==", + "@aws-sdk/types": { + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.696.0.tgz", + "integrity": "sha512-9rTvUJIAj5d3//U5FDPWGJ1nFJLuWb30vugGOrWk7aNZ6y9tuA3PI7Cc9dP8WEXKVyK1vuuk8rSFP2iqXnlgrw==", "dev": true, - "dependencies": { - "entities": "^4.4.0" + "requires": { + "@smithy/types": "^3.7.1", + "tslib": "^2.6.2" }, - "funding": { - "url": "https://github.com/inikulin/parse5?sponsor=1" + "dependencies": { + "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/parse5-htmlparser2-tree-adapter": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-7.0.0.tgz", - "integrity": "sha512-B77tOZrqqfUfnVcOrUvfdLbz4pu4RopLD/4vmu3HUPswwTA8OH0EMW9BlWR2B0RCoiZRAHEUu7IxeP1Pd1UU+g==", + "@aws-sdk/util-utf8-browser": { + "version": "3.259.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-utf8-browser/-/util-utf8-browser-3.259.0.tgz", + "integrity": "sha512-UvFa/vR+e19XookZF8RzFZBrw2EUkQWxiBW0yYQAhvk3C+QVGl0H3ouca8LDBlBfQKXwmW3huo/59H8rwb1wJw==", "dev": true, - "dependencies": { - "domhandler": "^5.0.2", - "parse5": "^7.0.0" + "requires": { + "tslib": "^2.3.1" }, - "funding": { - "url": "https://github.com/inikulin/parse5?sponsor=1" + "dependencies": { + "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/parseurl": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", - "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", - "engines": { - "node": ">= 0.8" + "@babel/code-frame": { + "version": "7.24.2", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.2.tgz", + "integrity": "sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==", + "dev": true, + "requires": { + "@babel/highlight": "^7.24.2", + "picocolors": "^1.0.0" } }, - "node_modules/pascal-case": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/pascal-case/-/pascal-case-2.0.1.tgz", - "integrity": "sha512-qjS4s8rBOJa2Xm0jmxXiyh1+OFf6ekCWOvUaRgAQSktzlTbMotS0nmG9gyYAybCWBcuP4fsBeRCKNwGBnMe2OQ==", + "@babel/helper-validator-identifier": { + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.5.tgz", + "integrity": "sha512-3q93SSKX2TWCG30M2G2kwaKeTYgEUp5Snjuj8qm729SObL6nbtUldAi37qbxkD5gg3xnBio+f9nqpSepGZMvxA==", + "dev": true + }, + "@babel/highlight": { + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.5.tgz", + "integrity": "sha512-8lLmua6AVh/8SLJRRVD6V8p73Hir9w5mJrhE+IPpILG31KKlI9iz5zmBYKcWPS59qSfgP9RaSBQSHHE81WKuEw==", "dev": true, - "dependencies": { - "camel-case": "^3.0.0", - "upper-case-first": "^1.1.0" + "requires": { + "@babel/helper-validator-identifier": "^7.24.5", + "chalk": "^2.4.2", + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" } }, - "node_modules/path-case": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/path-case/-/path-case-2.1.1.tgz", - "integrity": "sha512-Ou0N05MioItesaLr9q8TtHVWmJ6fxWdqKB2RohFmNWVyJ+2zeKIeDNWAN6B/Pe7wpzWChhZX6nONYmOnMeJQ/Q==", + "@bytecodealliance/preview2-shim": { + "version": "0.17.0", + "resolved": "https://registry.npmjs.org/@bytecodealliance/preview2-shim/-/preview2-shim-0.17.0.tgz", + "integrity": "sha512-JorcEwe4ud0x5BS/Ar2aQWOQoFzjq/7jcnxYXCvSMh0oRm0dQXzOA+hqLDBnOMks1LLBA7dmiLLsEBl09Yd6iQ==", + "dev": true + }, + "@colors/colors": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz", + "integrity": "sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==", "dev": true, - "dependencies": { - "no-case": "^2.2.0" - } + "optional": true }, - "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==", + "@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==", "dev": true, "peer": true, - "engines": { - "node": ">=4" + "requires": { + "@jridgewell/trace-mapping": "0.3.9" + }, + "dependencies": { + "@jridgewell/trace-mapping": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", + "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", + "dev": true, + "peer": true, + "requires": { + "@jridgewell/resolve-uri": "^3.0.3", + "@jridgewell/sourcemap-codec": "^1.4.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==", + "@eslint-community/eslint-utils": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.1.tgz", + "integrity": "sha512-s3O3waFUrMV8P/XaF/+ZTp1X9XBZW1a4B97ZnjQF2KYWaFD2A8KyFBsrsfSjEmjn3RGWAIuvlneuZm3CUK3jbA==", "dev": true, - "engines": { - "node": ">=0.10.0" + "requires": { + "eslint-visitor-keys": "^3.4.3" + }, + "dependencies": { + "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 + } } }, - "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==" - }, - "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==" + "@eslint-community/regexpp": { + "version": "4.12.1", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.1.tgz", + "integrity": "sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==", + "dev": true }, - "node_modules/path-type": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", - "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "@eslint/config-array": { + "version": "0.19.1", + "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.19.1.tgz", + "integrity": "sha512-fo6Mtm5mWyKjA/Chy1BYTdn5mGJoDNjC7C64ug20ADsRDGrA85bN3uK3MaKbeRkRuuIEAR5N33Jr1pbm411/PA==", "dev": true, - "engines": { - "node": ">=8" + "requires": { + "@eslint/object-schema": "^2.1.5", + "debug": "^4.3.1", + "minimatch": "^3.1.2" } }, - "node_modules/pathval": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.1.tgz", - "integrity": "sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==", - "engines": { - "node": "*" + "@eslint/core": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.9.1.tgz", + "integrity": "sha512-GuUdqkyyzQI5RMIWkHhvTWLCyLo1jNK3vzkSyaExH5kHPDHcuL2VOpHjmMY+y3+NC69qAKToBqldTBgYeLSr9Q==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.15" } }, - "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" + "@eslint/eslintrc": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.2.0.tgz", + "integrity": "sha512-grOjVNN8P3hjJn/eIETF1wwd12DdnwFDoyceUJLYYdkpbwq3nLi+4fqrTAONx7XDALqlL220wC/RHSC/QTI/0w==", + "dev": true, + "requires": { + "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": ">=0.12" + "dependencies": { + "globals": { + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-14.0.0.tgz", + "integrity": "sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==", + "dev": true + } } }, - "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==" + "@eslint/js": { + "version": "9.16.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.16.0.tgz", + "integrity": "sha512-tw2HxzQkrbeuvyj1tG2Yqq+0H9wGoI2IMk4EOsQeX+vmd75FtJAzf+gTA69WF+baUKRYQ3x2kbLE08js5OsTVg==", + "dev": true }, - "node_modules/picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" + "@eslint/object-schema": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.5.tgz", + "integrity": "sha512-o0bhxnL89h5Bae5T318nFoFzGy+YE5i/gGkoPAgkmTVdRKTiv3p8JHevPiPaMwoloKfEiiaHlawCqaZMqRm+XQ==", + "dev": true }, - "node_modules/picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "@eslint/plugin-kit": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.2.4.tgz", + "integrity": "sha512-zSkKow6H5Kdm0ZUQUB2kV5JIXqoG0+uH5YADhaEHswm664N9Db8dXSi0nMJpacpMf+MyyglF1vnZohpEg5yUtg==", "dev": true, - "engines": { - "node": ">=8.6" + "requires": { + "levn": "^0.4.1" }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" + "dependencies": { + "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, + "requires": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + } + }, + "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 + }, + "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, + "requires": { + "prelude-ls": "^1.2.1" + } + } } }, - "node_modules/pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "@ethersproject/abi": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/abi/-/abi-5.7.0.tgz", + "integrity": "sha512-351ktp42TiRcYB3H1OP8yajPeAQstMW/yCFokj/AthP9bLHzQFPlOrxOcwYEDkUAICmOHljvN4K39OMTMUa9RA==", "dev": true, - "engines": { - "node": ">=6" + "requires": { + "@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" } }, - "node_modules/pinkie": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", - "integrity": "sha512-MnUuEycAemtSaeFSjXKW/aroV7akBbY+Sv+RkyqFjgAe73F+MR0TBWKBRDkmfWq/HiFmdavfZ1G7h4SPZXaCSg==", + "@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==", "dev": true, - "engines": { - "node": ">=0.10.0" + "requires": { + "@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" } }, - "node_modules/pinkie-promise": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", - "integrity": "sha512-0Gni6D4UcLTbv9c57DfxDGdr41XfgUjqWZu492f0cIGr16zDU06BWP/RAEvOuo7CQ0CNjHaLlM59YJJFm3NWlw==", + "@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==", "dev": true, - "dependencies": { - "pinkie": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" + "requires": { + "@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" } }, - "node_modules/pkg-up": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/pkg-up/-/pkg-up-3.1.0.tgz", - "integrity": "sha512-nDywThFk1i4BQK4twPQ6TA4RT8bDY96yeuCVBWL3ePARCiEKDRSrNGbFIgUJpLp+XeIR65v8ra7WuJOFUBtkMA==", + "@ethersproject/address": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/address/-/address-5.7.0.tgz", + "integrity": "sha512-9wYhYt7aghVGo758POM5nqcOMaE168Q6aRLJZwUmiqSrAungkG74gSSeKEIR7ukixesdRZGPgVqme6vmxs1fkA==", "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "find-up": "^3.0.0" - }, - "engines": { - "node": ">=8" + "requires": { + "@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" } }, - "node_modules/pkg-up/node_modules/find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "@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==", "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "locate-path": "^3.0.0" - }, - "engines": { - "node": ">=6" + "requires": { + "@ethersproject/bytes": "^5.7.0" } }, - "node_modules/pkg-up/node_modules/locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "@ethersproject/basex": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/basex/-/basex-5.7.0.tgz", + "integrity": "sha512-ywlh43GwZLv2Voc2gQVTKBoVQ1mti3d8HK5aMxsfu/nRDnMmNqaSJ3r3n85HBByT8OpoY96SXM1FogC533T4zw==", "dev": true, - "optional": true, "peer": true, - "dependencies": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - }, - "engines": { - "node": ">=6" + "requires": { + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/properties": "^5.7.0" } }, - "node_modules/pkg-up/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==", + "@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==", "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "p-try": "^2.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "requires": { + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/logger": "^5.7.0", + "bn.js": "^5.2.1" } }, - "node_modules/pkg-up/node_modules/p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "@ethersproject/bytes": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.7.0.tgz", + "integrity": "sha512-nsbxwgFXWh9NyYWo+U8atvmMsSdKJprTcICAkvbBffT75qDocbuggBU0SJiVK2MuTrp0q+xvLkTnGMPK1+uA9A==", "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "p-limit": "^2.0.0" - }, - "engines": { - "node": ">=6" + "requires": { + "@ethersproject/logger": "^5.7.0" } }, - "node_modules/pkg-up/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==", + "@ethersproject/constants": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/constants/-/constants-5.7.0.tgz", + "integrity": "sha512-DHI+y5dBNvkpYUMiRQyxRBYBefZkJfo70VUkUAsRjcPs47muV9evftfZ0PJVCXYbAiCgght0DtcF9srFQmIgWA==", "dev": true, - "optional": true, - "peer": true, - "engines": { - "node": ">=6" + "requires": { + "@ethersproject/bignumber": "^5.7.0" } }, - "node_modules/pluralize": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-8.0.0.tgz", - "integrity": "sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==", + "@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==", "dev": true, - "engines": { - "node": ">=4" + "peer": true, + "requires": { + "@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" } }, - "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==", - "engines": { - "node": ">= 0.4" + "@ethersproject/hash": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/hash/-/hash-5.7.0.tgz", + "integrity": "sha512-qX5WrQfnah1EFnO5zJv1v46a8HW0+E5xuBBDTwMFZLuVTx0tbU2kkx15NqdjxecrLGatQN9FGQKpb1FKdHCt+g==", + "dev": true, + "requires": { + "@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" } }, - "node_modules/pouchdb": { - "version": "7.3.0", - "resolved": "https://registry.npmjs.org/pouchdb/-/pouchdb-7.3.0.tgz", - "integrity": "sha512-OwsIQGXsfx3TrU1pLruj6PGSwFH+h5k4hGNxFkZ76Um7/ZI8F5TzUHFrpldVVIhfXYi2vP31q0q7ot1FSLFYOw==", - "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "abort-controller": "3.0.0", - "argsarray": "0.0.1", - "buffer-from": "1.1.2", - "clone-buffer": "1.0.0", - "double-ended-queue": "2.1.0-0", - "fetch-cookie": "0.11.0", - "immediate": "3.3.0", - "inherits": "2.0.4", - "level": "6.0.1", - "level-codec": "9.0.2", - "level-write-stream": "1.0.0", - "leveldown": "5.6.0", - "levelup": "4.4.0", - "ltgt": "2.2.1", - "node-fetch": "2.6.7", - "readable-stream": "1.1.14", - "spark-md5": "3.0.2", - "through2": "3.0.2", - "uuid": "8.3.2", - "vuvuzela": "1.0.3" - } - }, - "node_modules/pouchdb-abstract-mapreduce": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/pouchdb-abstract-mapreduce/-/pouchdb-abstract-mapreduce-7.3.1.tgz", - "integrity": "sha512-0zKXVFBvrfc1KnN0ggrB762JDmZnUpePHywo9Bq3Jy+L1FnoG7fXM5luFfvv5/T0gEw+ZTIwoocZECMnESBI9w==", + "@ethersproject/hdnode": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/hdnode/-/hdnode-5.7.0.tgz", + "integrity": "sha512-OmyYo9EENBPPf4ERhR7oj6uAtUAhYGqOnIS+jE5pTXvdKBS99ikzq1E7Iv0ZQZ5V36Lqx1qZLeak0Ra16qpeOg==", "dev": true, - "optional": true, "peer": true, - "dependencies": { - "pouchdb-binary-utils": "7.3.1", - "pouchdb-collate": "7.3.1", - "pouchdb-collections": "7.3.1", - "pouchdb-errors": "7.3.1", - "pouchdb-fetch": "7.3.1", - "pouchdb-mapreduce-utils": "7.3.1", - "pouchdb-md5": "7.3.1", - "pouchdb-utils": "7.3.1" + "requires": { + "@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" } }, - "node_modules/pouchdb-adapter-leveldb-core": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/pouchdb-adapter-leveldb-core/-/pouchdb-adapter-leveldb-core-7.3.1.tgz", - "integrity": "sha512-mxShHlqLMPz2gChrgtA9okV1ogFmQrRAoM/O4EN0CrQWPLXqYtpL1f7sI2asIvFe7SmpnvbLx7kkZyFmLTfwjA==", + "@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==", "dev": true, - "optional": true, "peer": true, - "dependencies": { - "argsarray": "0.0.1", - "buffer-from": "1.1.2", - "double-ended-queue": "2.1.0-0", - "levelup": "4.4.0", - "pouchdb-adapter-utils": "7.3.1", - "pouchdb-binary-utils": "7.3.1", - "pouchdb-collections": "7.3.1", - "pouchdb-errors": "7.3.1", - "pouchdb-json": "7.3.1", - "pouchdb-md5": "7.3.1", - "pouchdb-merge": "7.3.1", - "pouchdb-utils": "7.3.1", - "sublevel-pouchdb": "7.3.1", - "through2": "3.0.2" - } - }, - "node_modules/pouchdb-adapter-leveldb-core/node_modules/abstract-leveldown": { - "version": "6.2.3", - "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-6.2.3.tgz", - "integrity": "sha512-BsLm5vFMRUrrLeCcRc+G0t2qOaTzpoJQLOubq2XM72eNpjF5UdU5o/5NvlNhx95XHcAvcl8OMXr4mlg/fRgUXQ==", + "requires": { + "@ethersproject/abstract-signer": "^5.7.0", + "@ethersproject/address": "^5.7.0", + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/hdnode": "^5.7.0", + "@ethersproject/keccak256": "^5.7.0", + "@ethersproject/logger": "^5.7.0", + "@ethersproject/pbkdf2": "^5.7.0", + "@ethersproject/properties": "^5.7.0", + "@ethersproject/random": "^5.7.0", + "@ethersproject/strings": "^5.7.0", + "@ethersproject/transactions": "^5.7.0", + "aes-js": "3.0.0", + "scrypt-js": "3.0.1" + } + }, + "@ethersproject/keccak256": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/keccak256/-/keccak256-5.7.0.tgz", + "integrity": "sha512-2UcPboeL/iW+pSg6vZ6ydF8tCnv3Iu/8tUmLLzWWGzxWKFFqOBQFLo6uLUv6BDrLgCDfN28RJ/wtByx+jZ4KBg==", "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "buffer": "^5.5.0", - "immediate": "^3.2.3", - "level-concat-iterator": "~2.0.0", - "level-supports": "~1.0.0", - "xtend": "~4.0.0" - }, - "engines": { - "node": ">=6" + "requires": { + "@ethersproject/bytes": "^5.7.0", + "js-sha3": "0.8.0" } }, - "node_modules/pouchdb-adapter-leveldb-core/node_modules/buffer": { + "@ethersproject/logger": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.7.0.tgz", + "integrity": "sha512-0odtFdXu/XHtjQXJYA3u9G0G8btm0ND5Cu8M7i5vhEcE8/HmF4Lbdqanwyv4uQTr2tx6b7fQRmgLrsnpQlmnig==", + "dev": true + }, + "@ethersproject/networks": { "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "resolved": "https://registry.npmjs.org/@ethersproject/networks/-/networks-5.7.1.tgz", + "integrity": "sha512-n/MufjFYv3yFcUyfhnXotyDlNdFb7onmkSy8aQERi2PjNcnWQ66xXxa3XlS8nCcA8aJKJjIIMNJTC7tu80GwpQ==", "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" - } - ], - "optional": true, - "peer": true, - "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" + "requires": { + "@ethersproject/logger": "^5.7.0" } }, - "node_modules/pouchdb-adapter-leveldb-core/node_modules/deferred-leveldown": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/deferred-leveldown/-/deferred-leveldown-5.3.0.tgz", - "integrity": "sha512-a59VOT+oDy7vtAbLRCZwWgxu2BaCfd5Hk7wxJd48ei7I+nsg8Orlb9CLG0PMZienk9BSUKgeAqkO2+Lw+1+Ukw==", + "@ethersproject/pbkdf2": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/pbkdf2/-/pbkdf2-5.7.0.tgz", + "integrity": "sha512-oR/dBRZR6GTyaofd86DehG72hY6NpAjhabkhxgr3X2FpJtJuodEl2auADWBZfhDHgVCbu3/H/Ocq2uC6dpNjjw==", "dev": true, - "optional": true, "peer": true, - "dependencies": { - "abstract-leveldown": "~6.2.1", - "inherits": "^2.0.3" - }, - "engines": { - "node": ">=6" + "requires": { + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/sha2": "^5.7.0" } }, - "node_modules/pouchdb-adapter-leveldb-core/node_modules/level-concat-iterator": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/level-concat-iterator/-/level-concat-iterator-2.0.1.tgz", - "integrity": "sha512-OTKKOqeav2QWcERMJR7IS9CUo1sHnke2C0gkSmcR7QuEtFNLLzHQAvnMw8ykvEcv0Qtkg0p7FOwP1v9e5Smdcw==", + "@ethersproject/properties": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/properties/-/properties-5.7.0.tgz", + "integrity": "sha512-J87jy8suntrAkIZtecpxEPxY//szqr1mlBaYlQ0r4RCaiD2hjheqF9s1LVE8vVuJCXisjIP+JgtK/Do54ej4Sw==", "dev": true, - "optional": true, - "peer": true, - "engines": { - "node": ">=6" + "requires": { + "@ethersproject/logger": "^5.7.0" } }, - "node_modules/pouchdb-adapter-leveldb-core/node_modules/level-errors": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/level-errors/-/level-errors-2.0.1.tgz", - "integrity": "sha512-UVprBJXite4gPS+3VznfgDSU8PTRuVX0NXwoWW50KLxd2yw4Y1t2JUR5In1itQnudZqRMT9DlAM3Q//9NCjCFw==", + "@ethersproject/providers": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/@ethersproject/providers/-/providers-5.7.2.tgz", + "integrity": "sha512-g34EWZ1WWAVgr4aptGlVBF8mhl3VWjv+8hoAnzStu8Ah22VHBsuGzP17eb6xDVRzw895G4W7vvx60lFFur/1Rg==", "dev": true, - "optional": true, "peer": true, - "dependencies": { - "errno": "~0.1.1" + "requires": { + "@ethersproject/abstract-provider": "^5.7.0", + "@ethersproject/abstract-signer": "^5.7.0", + "@ethersproject/address": "^5.7.0", + "@ethersproject/base64": "^5.7.0", + "@ethersproject/basex": "^5.7.0", + "@ethersproject/bignumber": "^5.7.0", + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/constants": "^5.7.0", + "@ethersproject/hash": "^5.7.0", + "@ethersproject/logger": "^5.7.0", + "@ethersproject/networks": "^5.7.0", + "@ethersproject/properties": "^5.7.0", + "@ethersproject/random": "^5.7.0", + "@ethersproject/rlp": "^5.7.0", + "@ethersproject/sha2": "^5.7.0", + "@ethersproject/strings": "^5.7.0", + "@ethersproject/transactions": "^5.7.0", + "@ethersproject/web": "^5.7.0", + "bech32": "1.1.4", + "ws": "7.4.6" }, - "engines": { - "node": ">=6" + "dependencies": { + "bech32": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/bech32/-/bech32-1.1.4.tgz", + "integrity": "sha512-s0IrSOzLlbvX7yp4WBfPITzpAU8sqQcpsmwXDiKwrG4r491vwCO/XpejasRNl0piBMe/DvP4Tz0mIS/X1DPJBQ==", + "dev": true, + "peer": true + }, + "ws": { + "version": "7.4.6", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.4.6.tgz", + "integrity": "sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A==", + "dev": true, + "peer": true, + "requires": {} + } } }, - "node_modules/pouchdb-adapter-leveldb-core/node_modules/level-iterator-stream": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/level-iterator-stream/-/level-iterator-stream-4.0.2.tgz", - "integrity": "sha512-ZSthfEqzGSOMWoUGhTXdX9jv26d32XJuHz/5YnuHZzH6wldfWMOVwI9TBtKcya4BKTyTt3XVA0A3cF3q5CY30Q==", + "@ethersproject/random": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/random/-/random-5.7.0.tgz", + "integrity": "sha512-19WjScqRA8IIeWclFme75VMXSBvi4e6InrUNuaR4s5pTF2qNhcGdCUwdxUVGtDDqC00sDLCO93jPQoDUH4HVmQ==", "dev": true, - "optional": true, "peer": true, - "dependencies": { - "inherits": "^2.0.4", - "readable-stream": "^3.4.0", - "xtend": "^4.0.2" - }, - "engines": { - "node": ">=6" + "requires": { + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/logger": "^5.7.0" } }, - "node_modules/pouchdb-adapter-leveldb-core/node_modules/level-supports": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/level-supports/-/level-supports-1.0.1.tgz", - "integrity": "sha512-rXM7GYnW8gsl1vedTJIbzOrRv85c/2uCMpiiCzO2fndd06U/kUXEEU9evYn4zFggBOg36IsBW8LzqIpETwwQzg==", + "@ethersproject/rlp": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/rlp/-/rlp-5.7.0.tgz", + "integrity": "sha512-rBxzX2vK8mVF7b0Tol44t5Tb8gomOHkj5guL+HhzQ1yBh/ydjGnpw6at+X6Iw0Kp3OzzzkcKp8N9r0W4kYSs9w==", "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "xtend": "^4.0.2" - }, - "engines": { - "node": ">=6" + "requires": { + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/logger": "^5.7.0" } }, - "node_modules/pouchdb-adapter-leveldb-core/node_modules/levelup": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/levelup/-/levelup-4.4.0.tgz", - "integrity": "sha512-94++VFO3qN95cM/d6eBXvd894oJE0w3cInq9USsyQzzoJxmiYzPAocNcuGCPGGjoXqDVJcr3C1jzt1TSjyaiLQ==", + "@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==", "dev": true, - "optional": true, "peer": true, - "dependencies": { - "deferred-leveldown": "~5.3.0", - "level-errors": "~2.0.0", - "level-iterator-stream": "~4.0.0", - "level-supports": "~1.0.0", - "xtend": "~4.0.0" - }, - "engines": { - "node": ">=6" + "requires": { + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/logger": "^5.7.0", + "hash.js": "1.1.7" } }, - "node_modules/pouchdb-adapter-memory": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/pouchdb-adapter-memory/-/pouchdb-adapter-memory-7.3.1.tgz", - "integrity": "sha512-iHdWGJAHONqQv0we3Oi1MYen69ZS8McLW9wUyaAYcWTJnAIIAr2ZM0/TeTDVSHfMUwYqEYk7X8jRtJZEMwLnwg==", + "@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==", "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "memdown": "1.4.1", - "pouchdb-adapter-leveldb-core": "7.3.1", - "pouchdb-utils": "7.3.1" + "requires": { + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/logger": "^5.7.0", + "@ethersproject/properties": "^5.7.0", + "bn.js": "^5.2.1", + "elliptic": "6.5.4", + "hash.js": "1.1.7" } }, - "node_modules/pouchdb-adapter-utils": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/pouchdb-adapter-utils/-/pouchdb-adapter-utils-7.3.1.tgz", - "integrity": "sha512-uKLG6dClwTs/sLIJ4WkLAi9wlnDBpOnfyhpeAgOjlOGN/XLz5nKHrA4UJRnURDyc+uv79S9r/Unc4hVpmbSPUw==", + "@ethersproject/solidity": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/solidity/-/solidity-5.7.0.tgz", + "integrity": "sha512-HmabMd2Dt/raavyaGukF4XxizWKhKQ24DoLtdNbBmNKUOPqwjsKQSdV9GQtj9CBEea9DlzETlVER1gYeXXBGaA==", "dev": true, - "optional": true, "peer": true, - "dependencies": { - "pouchdb-binary-utils": "7.3.1", - "pouchdb-collections": "7.3.1", - "pouchdb-errors": "7.3.1", - "pouchdb-md5": "7.3.1", - "pouchdb-merge": "7.3.1", - "pouchdb-utils": "7.3.1" + "requires": { + "@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" } }, - "node_modules/pouchdb-binary-utils": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/pouchdb-binary-utils/-/pouchdb-binary-utils-7.3.1.tgz", - "integrity": "sha512-crZJNfAEOnUoRk977Qtmk4cxEv6sNKllQ6vDDKgQrQLFjMUXma35EHzNyIJr1s76J77Q4sqKQAmxz9Y40yHGtw==", + "@ethersproject/strings": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/strings/-/strings-5.7.0.tgz", + "integrity": "sha512-/9nu+lj0YswRNSH0NXYqrh8775XNyEdUQAuf3f+SmOrnVewcJ5SBNAjF7lpgehKi4abvNNXyf+HX86czCdJ8Mg==", "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "buffer-from": "1.1.2" + "requires": { + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/constants": "^5.7.0", + "@ethersproject/logger": "^5.7.0" } }, - "node_modules/pouchdb-collate": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/pouchdb-collate/-/pouchdb-collate-7.3.1.tgz", - "integrity": "sha512-o4gyGqDMLMSNzf6EDTr3eHaH/JRMoqRhdc+eV+oA8u00nTBtr9wD+jypVe2LbgKLJ4NWqx2qVkXiTiQdUFtsLQ==", - "dev": true, - "optional": true, - "peer": true - }, - "node_modules/pouchdb-collections": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/pouchdb-collections/-/pouchdb-collections-7.3.1.tgz", - "integrity": "sha512-yUyDqR+OJmtwgExOSJegpBJXDLAEC84TWnbAYycyh+DZoA51Yw0+XVQF5Vh8Ii90/Ut2xo88fmrmp0t6kqom8w==", - "dev": true, - "optional": true, - "peer": true - }, - "node_modules/pouchdb-debug": { - "version": "7.2.1", - "resolved": "https://registry.npmjs.org/pouchdb-debug/-/pouchdb-debug-7.2.1.tgz", - "integrity": "sha512-eP3ht/AKavLF2RjTzBM6S9gaI2/apcW6xvaKRQhEdOfiANqerFuksFqHCal3aikVQuDO+cB/cw+a4RyJn/glBw==", + "@ethersproject/transactions": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/transactions/-/transactions-5.7.0.tgz", + "integrity": "sha512-kmcNicCp1lp8qanMTC3RIikGgoJ80ztTyvtsFvCYpSCfkjhD0jZ2LOrnbcuxuToLIUYYf+4XwD1rP+B/erDIhQ==", "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "debug": "3.1.0" + "requires": { + "@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" } }, - "node_modules/pouchdb-debug/node_modules/debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "@ethersproject/units": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/units/-/units-5.7.0.tgz", + "integrity": "sha512-pD3xLMy3SJu9kG5xDGI7+xhTEmGXlEqXU4OfNapmfnxLVY4EMSSRp7j1k7eezutBPH7RBN/7QPnwR7hzNlEFeg==", "dev": true, - "optional": true, "peer": true, - "dependencies": { - "ms": "2.0.0" + "requires": { + "@ethersproject/bignumber": "^5.7.0", + "@ethersproject/constants": "^5.7.0", + "@ethersproject/logger": "^5.7.0" } }, - "node_modules/pouchdb-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, - "optional": true, - "peer": true - }, - "node_modules/pouchdb-errors": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/pouchdb-errors/-/pouchdb-errors-7.3.1.tgz", - "integrity": "sha512-Zktz4gnXEUcZcty8FmyvtYUYsHskoST05m6H5/E2gg/0mCfEXq/XeyyLkZHaZmqD0ZPS9yNmASB1VaFWEKEaDw==", + "@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==", "dev": true, - "optional": true, "peer": true, - "dependencies": { - "inherits": "2.0.4" + "requires": { + "@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" } }, - "node_modules/pouchdb-fetch": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/pouchdb-fetch/-/pouchdb-fetch-7.3.1.tgz", - "integrity": "sha512-205xAtvdHRPQ4fp1h9+RmT9oQabo9gafuPmWsS9aEl3ER54WbY8Vaj1JHZGbU4KtMTYvW7H5088zLS7Nrusuag==", + "@ethersproject/web": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/@ethersproject/web/-/web-5.7.1.tgz", + "integrity": "sha512-Gueu8lSvyjBWL4cYsWsjh6MtMwM0+H4HvqFPZfB6dV8ctbP9zFAO73VG1cMWae0FLPCtz0peKPpZY8/ugJJX2w==", "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "abort-controller": "3.0.0", - "fetch-cookie": "0.11.0", - "node-fetch": "2.6.7" + "requires": { + "@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" } }, - "node_modules/pouchdb-find": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/pouchdb-find/-/pouchdb-find-7.3.1.tgz", - "integrity": "sha512-AeqUfAVY1c7IFaY36BRT0vIz9r4VTKq/YOWTmiqndOZUQ/pDGxyO2fNFal6NN3PyYww0JijlD377cPvhnrhJVA==", + "@ethersproject/wordlists": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/wordlists/-/wordlists-5.7.0.tgz", + "integrity": "sha512-S2TFNJNfHWVHNE6cNDjbVlZ6MgE17MIxMbMg2zv3wn+3XSJGosL1m9ZVv3GXCf/2ymSsQ+hRI5IzoMJTG6aoVA==", "dev": true, - "optional": true, "peer": true, - "dependencies": { - "pouchdb-abstract-mapreduce": "7.3.1", - "pouchdb-collate": "7.3.1", - "pouchdb-errors": "7.3.1", - "pouchdb-fetch": "7.3.1", - "pouchdb-md5": "7.3.1", - "pouchdb-selector-core": "7.3.1", - "pouchdb-utils": "7.3.1" + "requires": { + "@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" } }, - "node_modules/pouchdb-json": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/pouchdb-json/-/pouchdb-json-7.3.1.tgz", - "integrity": "sha512-AyOKsmc85/GtHjMZyEacqzja8qLVfycS1hh1oskR+Bm5PIITX52Fb8zyi0hEetV6VC0yuGbn0RqiLjJxQePeqQ==", - "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "vuvuzela": "1.0.3" - } + "@fastify/busboy": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/@fastify/busboy/-/busboy-2.1.1.tgz", + "integrity": "sha512-vBZP4NlzfOlerQTnba4aqZoMhE/a9HY7HRqoOPaETQcSQuWEIyZMHGfVu6w9wGtGK5fED5qRs2DteVCjOH60sA==", + "dev": true }, - "node_modules/pouchdb-mapreduce-utils": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/pouchdb-mapreduce-utils/-/pouchdb-mapreduce-utils-7.3.1.tgz", - "integrity": "sha512-oUMcq82+4pTGQ6dtrhgORHOVHZSr6w/5tFIUGlv7RABIDvJarL4snMawADjlpiEwPdiQ/ESG8Fqt8cxqvqsIgg==", - "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "argsarray": "0.0.1", - "inherits": "2.0.4", - "pouchdb-collections": "7.3.1", - "pouchdb-utils": "7.3.1" - } + "@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 }, - "node_modules/pouchdb-md5": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/pouchdb-md5/-/pouchdb-md5-7.3.1.tgz", - "integrity": "sha512-aDV8ui/mprnL3xmt0gT/81DFtTtJiKyn+OxIAbwKPMfz/rDFdPYvF0BmDC9QxMMzGfkV+JJUjU6at0PPs2mRLg==", + "@humanfs/node": { + "version": "0.16.6", + "resolved": "https://registry.npmjs.org/@humanfs/node/-/node-0.16.6.tgz", + "integrity": "sha512-YuI2ZHQL78Q5HbhDiBA1X4LmYdXCKCMQIfw0pw7piHJwyREFebJUvrQN4cMssyES6x+vfUbx1CIpaQUKYdQZOw==", "dev": true, - "optional": true, - "peer": true, + "requires": { + "@humanfs/core": "^0.19.1", + "@humanwhocodes/retry": "^0.3.0" + }, "dependencies": { - "pouchdb-binary-utils": "7.3.1", - "spark-md5": "3.0.2" + "@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 + } } }, - "node_modules/pouchdb-merge": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/pouchdb-merge/-/pouchdb-merge-7.3.1.tgz", - "integrity": "sha512-FeK3r35mKimokf2PQ2tUI523QWyZ4lYZ0Yd75FfSch/SPY6wIokz5XBZZ6PHdu5aOJsEKzoLUxr8CpSg9DhcAw==", + "@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "dev": true + }, + "@humanwhocodes/retry": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.4.1.tgz", + "integrity": "sha512-c7hNEllBlenFTHBky65mhq8WD2kbN9Q6gk0bTk8lSBvc554jpXSkST1iePudpt7+A/AQvuHs9EMqjHDXMY1lrA==", + "dev": true + }, + "@jridgewell/resolve-uri": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", + "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", "dev": true, - "optional": true, "peer": true }, - "node_modules/pouchdb-selector-core": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/pouchdb-selector-core/-/pouchdb-selector-core-7.3.1.tgz", - "integrity": "sha512-HBX+nNGXcaL9z0uNpwSMRq2GNZd3EZXW+fe9rJHS0hvJohjZL7aRJLoaXfEdHPRTNW+CpjM3Rny60eGekQdI/w==", + "@jridgewell/sourcemap-codec": { + "version": "1.4.14", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", + "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "pouchdb-collate": "7.3.1", - "pouchdb-utils": "7.3.1" - } + "peer": true }, - "node_modules/pouchdb-utils": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/pouchdb-utils/-/pouchdb-utils-7.3.1.tgz", - "integrity": "sha512-R3hHBo1zTdTu/NFs3iqkcaQAPwhIH0gMIdfVKd5lbDYlmP26rCG5pdS+v7NuoSSFLJ4xxnaGV+Gjf4duYsJ8wQ==", + "@mempool/mempool.js": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@mempool/mempool.js/-/mempool.js-2.3.0.tgz", + "integrity": "sha512-FrN9WjZCEyyLodrTPQxmlWDh8B/UGK0jlKfVNzJxqzQ1IMPo/Hpdws8xwYEcsks5JqsaxbjLwaC3GAtJ6Brd0A==", "dev": true, - "optional": true, - "peer": true, + "requires": { + "axios": "0.24.0", + "ws": "8.3.0" + }, "dependencies": { - "argsarray": "0.0.1", - "clone-buffer": "1.0.0", - "immediate": "3.3.0", - "inherits": "2.0.4", - "pouchdb-collections": "7.3.1", - "pouchdb-errors": "7.3.1", - "pouchdb-md5": "7.3.1", - "uuid": "8.3.2" + "ws": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.3.0.tgz", + "integrity": "sha512-Gs5EZtpqZzLvmIM59w4igITU57lrtYVFneaa434VROv4thzJyV6UjIL3D42lslWlI+D4KzLYnxSwtfuiO79sNw==", + "dev": true, + "requires": {} + } } }, - "node_modules/pouchdb/node_modules/abstract-leveldown": { - "version": "6.2.3", - "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-6.2.3.tgz", - "integrity": "sha512-BsLm5vFMRUrrLeCcRc+G0t2qOaTzpoJQLOubq2XM72eNpjF5UdU5o/5NvlNhx95XHcAvcl8OMXr4mlg/fRgUXQ==", + "@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, - "optional": true, - "peer": true, - "dependencies": { - "buffer": "^5.5.0", - "immediate": "^3.2.3", - "level-concat-iterator": "~2.0.0", - "level-supports": "~1.0.0", - "xtend": "~4.0.0" + "requires": { + "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": ">=6" - } - }, - "node_modules/pouchdb/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" - } - ], - "optional": true, - "peer": true, "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" + "@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, + "requires": { + "@types/node": "*" + } + }, + "base-x": { + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/base-x/-/base-x-3.0.10.tgz", + "integrity": "sha512-7d0s06rR9rYaIWHkpfLIFICM/tkSVdoPC9qYAQRpxn9DdKNWNsKC0uk++akckyLq16Tx2WIinnZ6WRriAt6njQ==", + "dev": true, + "requires": { + "safe-buffer": "^5.0.1" + } + }, + "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 + }, + "bs58": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/bs58/-/bs58-4.0.1.tgz", + "integrity": "sha512-Ok3Wdf5vOIlBrgCvTq96gBkJw+JUEzdBgyaza5HLtPm7yTHkjRy8+JzNyHF7BHa0bNWOQIp3m5YF0nnFcOIKLw==", + "dev": true, + "requires": { + "base-x": "^3.0.2" + } + }, + "bs58check": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/bs58check/-/bs58check-2.1.2.tgz", + "integrity": "sha512-0TS1jicxdU09dwJMNZtVAfzPi6Q6QeN0pM1Fkzrjn+XYHvzMKPU3pHVpva+769iNVSfIYWf7LJ6WR+BuuMf8cA==", + "dev": true, + "requires": { + "bs58": "^4.0.0", + "create-hash": "^1.1.0", + "safe-buffer": "^5.1.2" + } + }, + "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, + "requires": { + "@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" + } + }, + "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, + "requires": { + "@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/pouchdb/node_modules/deferred-leveldown": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/deferred-leveldown/-/deferred-leveldown-5.3.0.tgz", - "integrity": "sha512-a59VOT+oDy7vtAbLRCZwWgxu2BaCfd5Hk7wxJd48ei7I+nsg8Orlb9CLG0PMZienk9BSUKgeAqkO2+Lw+1+Ukw==", + "@noble/curves": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.2.0.tgz", + "integrity": "sha512-oYclrNgRaM9SsBUBVbb8M6DTV7ZHRTKugureoYEncY5c65HOmRzvSiTE3y5CYaPYJA/GVkrhXEoF0M3Ya9PMnw==", "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "abstract-leveldown": "~6.2.1", - "inherits": "^2.0.3" + "requires": { + "@noble/hashes": "1.3.2" }, - "engines": { - "node": ">=6" - } - }, - "node_modules/pouchdb/node_modules/level": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/level/-/level-6.0.1.tgz", - "integrity": "sha512-psRSqJZCsC/irNhfHzrVZbmPYXDcEYhA5TVNwr+V92jF44rbf86hqGp8fiT702FyiArScYIlPSBTDUASCVNSpw==", - "dev": true, - "optional": true, - "peer": true, "dependencies": { - "level-js": "^5.0.0", - "level-packager": "^5.1.0", - "leveldown": "^5.4.0" - }, - "engines": { - "node": ">=8.6.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/level" + "@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 + } } }, - "node_modules/pouchdb/node_modules/level-codec": { - "version": "9.0.2", - "resolved": "https://registry.npmjs.org/level-codec/-/level-codec-9.0.2.tgz", - "integrity": "sha512-UyIwNb1lJBChJnGfjmO0OR+ezh2iVu1Kas3nvBS/BzGnx79dv6g7unpKIDNPMhfdTEGoc7mC8uAu51XEtX+FHQ==", - "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "buffer": "^5.6.0" - }, - "engines": { - "node": ">=6" - } + "@noble/hashes": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.1.2.tgz", + "integrity": "sha512-KYRCASVTv6aeUi1tsF8/vpyR7zpfs3FUzy2Jqm+MU+LmUKhQ0y2FpfwqkCcxSg2ua4GALJd8k2R76WxwZGbQpA==", + "dev": true }, - "node_modules/pouchdb/node_modules/level-concat-iterator": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/level-concat-iterator/-/level-concat-iterator-2.0.1.tgz", - "integrity": "sha512-OTKKOqeav2QWcERMJR7IS9CUo1sHnke2C0gkSmcR7QuEtFNLLzHQAvnMw8ykvEcv0Qtkg0p7FOwP1v9e5Smdcw==", - "dev": true, - "optional": true, - "peer": true, - "engines": { - "node": ">=6" - } + "@noble/secp256k1": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/@noble/secp256k1/-/secp256k1-1.6.3.tgz", + "integrity": "sha512-T04e4iTurVy7I8Sw4+c5OSN9/RkPlo1uKxAomtxQNLq8j1uPAqnsqG1bqvY3Jv7c13gyr6dui0zmh/I3+f/JaQ==", + "dev": true }, - "node_modules/pouchdb/node_modules/level-errors": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/level-errors/-/level-errors-2.0.1.tgz", - "integrity": "sha512-UVprBJXite4gPS+3VznfgDSU8PTRuVX0NXwoWW50KLxd2yw4Y1t2JUR5In1itQnudZqRMT9DlAM3Q//9NCjCFw==", + "@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, - "optional": true, - "peer": true, - "dependencies": { - "errno": "~0.1.1" - }, - "engines": { - "node": ">=6" + "requires": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" } }, - "node_modules/pouchdb/node_modules/level-iterator-stream": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/level-iterator-stream/-/level-iterator-stream-4.0.2.tgz", - "integrity": "sha512-ZSthfEqzGSOMWoUGhTXdX9jv26d32XJuHz/5YnuHZzH6wldfWMOVwI9TBtKcya4BKTyTt3XVA0A3cF3q5CY30Q==", - "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "inherits": "^2.0.4", - "readable-stream": "^3.4.0", - "xtend": "^4.0.2" - }, - "engines": { - "node": ">=6" - } + "@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true }, - "node_modules/pouchdb/node_modules/level-iterator-stream/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==", + "@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" + "requires": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" } }, - "node_modules/pouchdb/node_modules/level-supports": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/level-supports/-/level-supports-1.0.1.tgz", - "integrity": "sha512-rXM7GYnW8gsl1vedTJIbzOrRv85c/2uCMpiiCzO2fndd06U/kUXEEU9evYn4zFggBOg36IsBW8LzqIpETwwQzg==", + "@nomicfoundation/edr": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/@nomicfoundation/edr/-/edr-0.6.5.tgz", + "integrity": "sha512-tAqMslLP+/2b2sZP4qe9AuGxG3OkQ5gGgHE4isUuq6dUVjwCRPFhAOhpdFl+OjY5P3yEv3hmq9HjUGRa2VNjng==", "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "xtend": "^4.0.2" - }, - "engines": { - "node": ">=6" + "requires": { + "@nomicfoundation/edr-darwin-arm64": "0.6.5", + "@nomicfoundation/edr-darwin-x64": "0.6.5", + "@nomicfoundation/edr-linux-arm64-gnu": "0.6.5", + "@nomicfoundation/edr-linux-arm64-musl": "0.6.5", + "@nomicfoundation/edr-linux-x64-gnu": "0.6.5", + "@nomicfoundation/edr-linux-x64-musl": "0.6.5", + "@nomicfoundation/edr-win32-x64-msvc": "0.6.5" } }, - "node_modules/pouchdb/node_modules/levelup": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/levelup/-/levelup-4.4.0.tgz", - "integrity": "sha512-94++VFO3qN95cM/d6eBXvd894oJE0w3cInq9USsyQzzoJxmiYzPAocNcuGCPGGjoXqDVJcr3C1jzt1TSjyaiLQ==", - "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "deferred-leveldown": "~5.3.0", - "level-errors": "~2.0.0", - "level-iterator-stream": "~4.0.0", - "level-supports": "~1.0.0", - "xtend": "~4.0.0" - }, - "engines": { - "node": ">=6" - } + "@nomicfoundation/edr-darwin-arm64": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-darwin-arm64/-/edr-darwin-arm64-0.6.5.tgz", + "integrity": "sha512-A9zCCbbNxBpLgjS1kEJSpqxIvGGAX4cYbpDYCU2f3jVqOwaZ/NU761y1SvuCRVpOwhoCXqByN9b7HPpHi0L4hw==", + "dev": true }, - "node_modules/pouchdb/node_modules/readable-stream": { - "version": "1.1.14", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", - "integrity": "sha512-+MeVjFf4L44XUkhM1eYbD8fyEsxcV81pqMSR5gblfcLCHfZvbrqy4/qYHE+/R5HoBUT11WV5O08Cr1n3YXkWVQ==", - "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "0.0.1", - "string_decoder": "~0.10.x" - } + "@nomicfoundation/edr-darwin-x64": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-darwin-x64/-/edr-darwin-x64-0.6.5.tgz", + "integrity": "sha512-x3zBY/v3R0modR5CzlL6qMfFMdgwd6oHrWpTkuuXnPFOX8SU31qq87/230f4szM+ukGK8Hi+mNq7Ro2VF4Fj+w==", + "dev": true }, - "node_modules/pouchdb/node_modules/readable-stream/node_modules/string_decoder": { - "version": "0.10.31", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "integrity": "sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==", - "dev": true, - "optional": true, - "peer": true + "@nomicfoundation/edr-linux-arm64-gnu": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-linux-arm64-gnu/-/edr-linux-arm64-gnu-0.6.5.tgz", + "integrity": "sha512-HGpB8f1h8ogqPHTyUpyPRKZxUk2lu061g97dOQ/W4CxevI0s/qiw5DB3U3smLvSnBHKOzYS1jkxlMeGN01ky7A==", + "dev": true }, - "node_modules/precond": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/precond/-/precond-0.2.3.tgz", - "integrity": "sha512-QCYG84SgGyGzqJ/vlMsxeXd/pgL/I94ixdNFyh1PusWmTCyVfPJjZ1K1jvHtsbfnXQs2TSkEP2fR7QiMZAnKFQ==", - "engines": { - "node": ">= 0.6" - } + "@nomicfoundation/edr-linux-arm64-musl": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-linux-arm64-musl/-/edr-linux-arm64-musl-0.6.5.tgz", + "integrity": "sha512-ESvJM5Y9XC03fZg9KaQg3Hl+mbx7dsSkTIAndoJS7X2SyakpL9KZpOSYrDk135o8s9P9lYJdPOyiq+Sh+XoCbQ==", + "dev": true }, - "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" - } + "@nomicfoundation/edr-linux-x64-gnu": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-linux-x64-gnu/-/edr-linux-x64-gnu-0.6.5.tgz", + "integrity": "sha512-HCM1usyAR1Ew6RYf5AkMYGvHBy64cPA5NMbaeY72r0mpKaH3txiMyydcHibByOGdQ8iFLWpyUdpl1egotw+Tgg==", + "dev": true }, - "node_modules/prettier": { - "version": "2.8.8", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz", - "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==", + "@nomicfoundation/edr-linux-x64-musl": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-linux-x64-musl/-/edr-linux-x64-musl-0.6.5.tgz", + "integrity": "sha512-nB2uFRyczhAvWUH7NjCsIO6rHnQrof3xcCe6Mpmnzfl2PYcGyxN7iO4ZMmRcQS7R1Y670VH6+8ZBiRn8k43m7A==", + "dev": true + }, + "@nomicfoundation/edr-win32-x64-msvc": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-win32-x64-msvc/-/edr-win32-x64-msvc-0.6.5.tgz", + "integrity": "sha512-B9QD/4DSSCFtWicO8A3BrsnitO1FPv7axB62wq5Q+qeJ50yJlTmyeGY3cw62gWItdvy2mh3fRM6L1LpnHiB77A==", + "dev": true + }, + "@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, - "bin": { - "prettier": "bin-prettier.js" - }, - "engines": { - "node": ">=10.13.0" - }, - "funding": { - "url": "https://github.com/prettier/prettier?sponsor=1" + "requires": { + "@nomicfoundation/ethereumjs-util": "9.0.4" } }, - "node_modules/prettier-plugin-solidity": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/prettier-plugin-solidity/-/prettier-plugin-solidity-1.0.0.tgz", - "integrity": "sha512-gRJCeZ7imbWtNYN2SudjJoPmka5r6jcd2cSTV6FC3pVCtY6LFZbeQQjpKufUEp88hXBAAnkOTOh7TA5xwj9M3A==", + "@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 + }, + "@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": { - "@solidity-parser/parser": "^0.14.5", - "emoji-regex": "^10.2.1", - "escape-string-regexp": "^4.0.0", - "semver": "^7.3.8", - "solidity-comments-extractor": "^0.0.7", - "string-width": "^4.2.3" - }, - "engines": { - "node": ">=12" + "requires": { + "@nomicfoundation/ethereumjs-common": "4.0.4", + "@nomicfoundation/ethereumjs-rlp": "5.0.4", + "@nomicfoundation/ethereumjs-util": "9.0.4", + "ethereum-cryptography": "0.1.3" }, - "peerDependencies": { - "prettier": "^2.3.0" - } - }, - "node_modules/prettier-plugin-solidity/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.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.2.tgz", - "integrity": "sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "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==", - "engines": { - "node": ">= 0.6.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==" - }, - "node_modules/promise-to-callback": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/promise-to-callback/-/promise-to-callback-1.0.0.tgz", - "integrity": "sha512-uhMIZmKM5ZteDMfLgJnoSq9GCwsNKrYau73Awf1jIy6/eUcuuZ3P+CD9zUv0kJsIUbU+x6uLNIhXhLHDs1pNPA==", "dependencies": { - "is-fn": "^1.0.0", - "set-immediate-shim": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" + "base-x": { + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/base-x/-/base-x-3.0.10.tgz", + "integrity": "sha512-7d0s06rR9rYaIWHkpfLIFICM/tkSVdoPC9qYAQRpxn9DdKNWNsKC0uk++akckyLq16Tx2WIinnZ6WRriAt6njQ==", + "dev": true, + "requires": { + "safe-buffer": "^5.0.1" + } + }, + "bs58": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/bs58/-/bs58-4.0.1.tgz", + "integrity": "sha512-Ok3Wdf5vOIlBrgCvTq96gBkJw+JUEzdBgyaza5HLtPm7yTHkjRy8+JzNyHF7BHa0bNWOQIp3m5YF0nnFcOIKLw==", + "dev": true, + "requires": { + "base-x": "^3.0.2" + } + }, + "bs58check": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/bs58check/-/bs58check-2.1.2.tgz", + "integrity": "sha512-0TS1jicxdU09dwJMNZtVAfzPi6Q6QeN0pM1Fkzrjn+XYHvzMKPU3pHVpva+769iNVSfIYWf7LJ6WR+BuuMf8cA==", + "dev": true, + "requires": { + "bs58": "^4.0.0", + "create-hash": "^1.1.0", + "safe-buffer": "^5.1.2" + } + }, + "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, + "requires": { + "@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/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==", + "@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": { - "graceful-fs": "^4.2.4", - "retry": "^0.12.0", - "signal-exit": "^3.0.2" - } - }, - "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==", - "dependencies": { - "forwarded": "0.2.0", - "ipaddr.js": "1.9.1" + "requires": { + "@nomicfoundation/ethereumjs-rlp": "5.0.4", + "ethereum-cryptography": "0.1.3" }, - "engines": { - "node": ">= 0.10" - } - }, - "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==", - "dev": true, - "optional": true, - "peer": true - }, - "node_modules/prr": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", - "integrity": "sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==" - }, - "node_modules/psl": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", - "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==" - }, - "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==", "dependencies": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, - "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==", - "engines": { - "node": ">=6" - } - }, - "node_modules/pure-rand": { - "version": "5.0.5", - "resolved": "https://registry.npmjs.org/pure-rand/-/pure-rand-5.0.5.tgz", - "integrity": "sha512-BwQpbqxSCBJVpamI6ydzcKqyFmnd5msMWUGvzXLm1aXvusbbgkbOto/EUPM00hjveJEaJtdbhUjKSzWRhQVkaw==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://github.com/sponsors/dubzzz" + "base-x": { + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/base-x/-/base-x-3.0.10.tgz", + "integrity": "sha512-7d0s06rR9rYaIWHkpfLIFICM/tkSVdoPC9qYAQRpxn9DdKNWNsKC0uk++akckyLq16Tx2WIinnZ6WRriAt6njQ==", + "dev": true, + "requires": { + "safe-buffer": "^5.0.1" + } }, - { - "type": "opencollective", - "url": "https://opencollective.com/fast-check" - } - ] - }, - "node_modules/qs": { - "version": "6.11.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", - "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", - "dependencies": { - "side-channel": "^1.0.4" - }, - "engines": { - "node": ">=0.6" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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==", - "dependencies": { - "decode-uri-component": "^0.2.0", - "object-assign": "^4.1.0", - "strict-uri-encode": "^1.0.0" - }, - "engines": { - "node": ">=0.10.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" + "bs58": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/bs58/-/bs58-4.0.1.tgz", + "integrity": "sha512-Ok3Wdf5vOIlBrgCvTq96gBkJw+JUEzdBgyaza5HLtPm7yTHkjRy8+JzNyHF7BHa0bNWOQIp3m5YF0nnFcOIKLw==", + "dev": true, + "requires": { + "base-x": "^3.0.2" + } }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" + "bs58check": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/bs58check/-/bs58check-2.1.2.tgz", + "integrity": "sha512-0TS1jicxdU09dwJMNZtVAfzPi6Q6QeN0pM1Fkzrjn+XYHvzMKPU3pHVpva+769iNVSfIYWf7LJ6WR+BuuMf8cA==", + "dev": true, + "requires": { + "bs58": "^4.0.0", + "create-hash": "^1.1.0", + "safe-buffer": "^5.1.2" + } }, - { - "type": "consulting", - "url": "https://feross.org/support" + "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, + "requires": { + "@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/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==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/randombytes": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", - "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", - "dependencies": { - "safe-buffer": "^5.1.0" - } - }, - "node_modules/range-parser": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", - "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/raw-body": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz", - "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==", - "dependencies": { - "bytes": "3.1.2", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" - }, - "engines": { - "node": ">= 0.8" } }, - "node_modules/read-pkg": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", - "integrity": "sha512-7BGwRHqt4s/uVbuyoeejRn4YmFnYZiFl4AuaeXHlgZf3sONF0SOGlxs2Pw8g6hCKupo08RafIO5YXFNOKTfwsQ==", + "@nomicfoundation/hardhat-chai-matchers": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/@nomicfoundation/hardhat-chai-matchers/-/hardhat-chai-matchers-2.0.8.tgz", + "integrity": "sha512-Z5PiCXH4xhNLASROlSUOADfhfpfhYO6D7Hn9xp8PddmHey0jq704cr6kfU8TRrQ4PUZbpfsZadPj+pCfZdjPIg==", "dev": true, - "dependencies": { - "load-json-file": "^1.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" + "peer": true, + "requires": { + "@types/chai-as-promised": "^7.1.3", + "chai-as-promised": "^7.1.1", + "deep-eql": "^4.0.1", + "ordinal": "^1.0.3" } }, - "node_modules/read-pkg-up": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", - "integrity": "sha512-WD9MTlNtI55IwYUS27iHh9tK3YoIVhxis8yKhLpTqWtml739uXc9NWTpxoHkfZf3+DkCCsXox94/VWZniuZm6A==", + "@nomicfoundation/hardhat-ethers": { + "version": "3.0.8", + "resolved": "https://registry.npmjs.org/@nomicfoundation/hardhat-ethers/-/hardhat-ethers-3.0.8.tgz", + "integrity": "sha512-zhOZ4hdRORls31DTOqg+GmEZM0ujly8GGIuRY7t7szEk2zW/arY1qDug/py8AEktT00v5K+b6RvbVog+va51IA==", "dev": true, - "dependencies": { - "find-up": "^1.0.0", - "read-pkg": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" + "requires": { + "debug": "^4.1.1", + "lodash.isequal": "^4.5.0" } }, - "node_modules/read-pkg-up/node_modules/find-up": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", - "integrity": "sha512-jvElSjyuo4EMQGoTwo1uJU5pQMwTW5lS1x05zzfJuTIyLR3zwO27LYrxNg+dlvKpGOuGy/MzBdXh80g0ve5+HA==", + "@nomicfoundation/hardhat-ignition": { + "version": "0.15.8", + "resolved": "https://registry.npmjs.org/@nomicfoundation/hardhat-ignition/-/hardhat-ignition-0.15.8.tgz", + "integrity": "sha512-TN8TFQokcd7VyqGfbXO+KS8Q4K/gmsOFlv8dPnt/N596AncgV2Igxh5C3O+KVez11PDHNqoj1JzcDzzNVHrIRw==", "dev": true, - "dependencies": { - "path-exists": "^2.0.0", - "pinkie-promise": "^2.0.0" + "peer": true, + "requires": { + "@nomicfoundation/ignition-core": "^0.15.8", + "@nomicfoundation/ignition-ui": "^0.15.8", + "chalk": "^4.0.0", + "debug": "^4.3.2", + "fs-extra": "^10.0.0", + "json5": "^2.2.3", + "prompts": "^2.4.2" }, - "engines": { - "node": ">=0.10.0" + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "peer": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "peer": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "peer": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "peer": true + }, + "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, + "peer": true, + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + } + }, + "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, + "peer": true + }, + "jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "dev": true, + "peer": true, + "requires": { + "graceful-fs": "^4.1.6", + "universalify": "^2.0.0" + } + }, + "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, + "peer": true, + "requires": { + "has-flag": "^4.0.0" + } + }, + "universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "dev": true, + "peer": true + } } }, - "node_modules/read-pkg-up/node_modules/path-exists": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", - "integrity": "sha512-yTltuKuhtNeFJKa1PiRzfLAU5182q1y4Eb4XCJ3PBqyzEDkAZRzBrKKBct682ls9reBVHf9udYLN5Nd+K1B9BQ==", + "@nomicfoundation/hardhat-ignition-ethers": { + "version": "0.15.8", + "resolved": "https://registry.npmjs.org/@nomicfoundation/hardhat-ignition-ethers/-/hardhat-ignition-ethers-0.15.8.tgz", + "integrity": "sha512-5Ev8cXBKgqqOsFXxWe8iijsRabWGd/Vclx3SC903KeKVePdssVsZcYTtRNRcIwRcPJ0RIKJPIZz7MNDo64l3+w==", "dev": true, - "dependencies": { - "pinkie-promise": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } + "peer": true, + "requires": {} }, - "node_modules/read-pkg/node_modules/path-type": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", - "integrity": "sha512-S4eENJz1pkiQn9Znv33Q+deTOKmbl+jj1Fl+qiP/vYezj+S8x+J3Uo0ISrx/QoEvIlOaDWJhPaRd1flJ9HXZqg==", + "@nomicfoundation/hardhat-network-helpers": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/@nomicfoundation/hardhat-network-helpers/-/hardhat-network-helpers-1.0.12.tgz", + "integrity": "sha512-xTNQNI/9xkHvjmCJnJOTyqDSl8uq1rKb2WOVmixQxFtRd7Oa3ecO8zM0cyC2YmOK+jHB9WPZ+F/ijkHg1CoORA==", "dev": true, - "dependencies": { - "graceful-fs": "^4.1.2", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" + "peer": true, + "requires": { + "ethereumjs-util": "^7.1.4" } }, - "node_modules/read-pkg/node_modules/pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", + "@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, - "engines": { - "node": ">=0.10.0" - } + "requires": {} }, - "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==", - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" + "@nomicfoundation/hardhat-verify": { + "version": "2.0.12", + "resolved": "https://registry.npmjs.org/@nomicfoundation/hardhat-verify/-/hardhat-verify-2.0.12.tgz", + "integrity": "sha512-Lg3Nu7DCXASQRVI/YysjuAX2z8jwOCbS0w5tz2HalWGSTZThqA0v9N0v0psHbKNqzPJa8bNOeapIVSziyJTnAg==", + "dev": true, + "peer": true, + "requires": { + "@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" }, - "engines": { - "node": ">= 6" + "dependencies": { + "cbor": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/cbor/-/cbor-8.1.0.tgz", + "integrity": "sha512-DwGjNW9omn6EwP70aXsn7FQJx5kO12tX0bZkaTjzdVFM6/7nhA4t0EENocKGx6D2Bch9PE2KzCUf5SceBdeijg==", + "dev": true, + "peer": true, + "requires": { + "nofilter": "^3.1.0" + } + } } }, - "node_modules/readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "@nomicfoundation/ignition-core": { + "version": "0.15.8", + "resolved": "https://registry.npmjs.org/@nomicfoundation/ignition-core/-/ignition-core-0.15.8.tgz", + "integrity": "sha512-U+CmTjKU9uwvh7qIabqboy/K/sDoClDgpsFRHoFvAj87DPDkXYb/mZBSkXPTU1wxTxrW6GTFE4lG3e7LAyF+kw==", "dev": true, - "dependencies": { - "picomatch": "^2.2.1" - }, - "engines": { - "node": ">=8.10.0" + "peer": true, + "requires": { + "@ethersproject/address": "5.6.1", + "@nomicfoundation/solidity-analyzer": "^0.1.1", + "cbor": "^9.0.0", + "debug": "^4.3.2", + "ethers": "^6.7.0", + "fs-extra": "^10.0.0", + "immer": "10.0.2", + "lodash": "4.17.21", + "ndjson": "2.0.0" + }, + "dependencies": { + "@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, + "peer": true, + "requires": { + "@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" + } + }, + "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, + "peer": true, + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + } + }, + "jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "dev": true, + "peer": true, + "requires": { + "graceful-fs": "^4.1.6", + "universalify": "^2.0.0" + } + }, + "universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "dev": true, + "peer": true + } } }, - "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==", + "@nomicfoundation/ignition-ui": { + "version": "0.15.8", + "resolved": "https://registry.npmjs.org/@nomicfoundation/ignition-ui/-/ignition-ui-0.15.8.tgz", + "integrity": "sha512-VUD5MsWrrv7E2P0AJO01pV8w8m66Du0uwBKXM0oUV5DRIzqm6eYHt9eCDb1KBINDpiFxOQiuyWQMdeKxgPp3qw==", "dev": true, - "dependencies": { - "resolve": "^1.1.6" - }, - "engines": { - "node": ">= 0.10" - } + "peer": true }, - "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==", + "@nomicfoundation/slang": { + "version": "0.18.3", + "resolved": "https://registry.npmjs.org/@nomicfoundation/slang/-/slang-0.18.3.tgz", + "integrity": "sha512-YqAWgckqbHM0/CZxi9Nlf4hjk9wUNLC9ngWCWBiqMxPIZmzsVKYuChdlrfeBPQyvQQBoOhbx+7C1005kLVQDZQ==", "dev": true, - "dependencies": { - "minimatch": "^3.0.5" - }, - "engines": { - "node": ">=6.0.0" + "requires": { + "@bytecodealliance/preview2-shim": "0.17.0" } }, - "node_modules/redux": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/redux/-/redux-3.7.2.tgz", - "integrity": "sha512-pNqnf9q1hI5HHZRBkj3bAngGZW/JMCmexDlOxw4XagXY2o1327nHH54LoTjiPJ0gizoqPDRqWyX/00g0hD6w+A==", + "@nomicfoundation/solidity-analyzer": { + "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, - "peer": true, - "dependencies": { - "lodash": "^4.2.1", - "lodash-es": "^4.2.1", - "loose-envify": "^1.1.0", - "symbol-observable": "^1.0.3" + "requires": { + "@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/redux-saga": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/redux-saga/-/redux-saga-1.0.0.tgz", - "integrity": "sha512-GvJWs/SzMvEQgeaw6sRMXnS2FghlvEGsHiEtTLpJqc/FHF3I5EE/B+Hq5lyHZ8LSoT2r/X/46uWvkdCnK9WgHA==", + "@nomicfoundation/solidity-analyzer-darwin-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, - "peer": true, - "dependencies": { - "@redux-saga/core": "^1.0.0" - } + "optional": true }, - "node_modules/regenerator-runtime": { - "version": "0.13.11", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", - "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==" + "@nomicfoundation/solidity-analyzer-darwin-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, + "optional": true }, - "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==", + "@nomicfoundation/solidity-analyzer-linux-arm64-gnu": { + "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, - "dependencies": { - "call-bind": "^1.0.6", - "define-properties": "^1.2.1", - "es-errors": "^1.3.0", - "set-function-name": "^2.0.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } + "optional": true }, - "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", - "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" - }, - "engines": { - "node": ">= 6" - } + "@nomicfoundation/solidity-analyzer-linux-arm64-musl": { + "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, + "optional": true }, - "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==", - "engines": { - "node": ">=0.6" - } + "@nomicfoundation/solidity-analyzer-linux-x64-gnu": { + "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, + "optional": true }, - "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.", - "bin": { - "uuid": "bin/uuid" - } + "@nomicfoundation/solidity-analyzer-linux-x64-musl": { + "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, + "optional": true }, - "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==", - "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==", + "@nomicfoundation/solidity-analyzer-win32-x64-msvc": { + "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, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/require-main-filename": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", - "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==" + "optional": true }, - "node_modules/reselect": { - "version": "4.1.7", - "resolved": "https://registry.npmjs.org/reselect/-/reselect-4.1.7.tgz", - "integrity": "sha512-Zu1xbUt3/OPwsXL46hvOOoQrap2azE7ZQbokq61BQfiXvhewsKDwhMeZjTX9sX0nvw1t/U5Audyn1I9P/m9z0A==", - "dev": true, - "peer": true + "@openzeppelin/contracts": { + "version": "4.9.6", + "resolved": "https://registry.npmjs.org/@openzeppelin/contracts/-/contracts-4.9.6.tgz", + "integrity": "sha512-xSmezSupL+y9VkHZJGDoCBpmnB2ogM13ccaYDWqJTfS3dbuHkgjuwDFUmaFauBCboQMGB/S5UqUl2y54X99BmA==" }, - "node_modules/reselect-tree": { - "version": "1.3.7", - "resolved": "https://registry.npmjs.org/reselect-tree/-/reselect-tree-1.3.7.tgz", - "integrity": "sha512-kZN+C1cVJ6fFN2smSb0l4UvYZlRzttgnu183svH4NrU22cBY++ikgr2QT75Uuk4MYpv5gXSVijw4c5U6cx6GKg==", - "dev": true, - "peer": true, - "dependencies": { - "debug": "^3.1.0", - "json-pointer": "^0.6.1", - "reselect": "^4.0.0" - } + "@openzeppelin/contracts-upgradeable": { + "version": "4.9.6", + "resolved": "https://registry.npmjs.org/@openzeppelin/contracts-upgradeable/-/contracts-upgradeable-4.9.6.tgz", + "integrity": "sha512-m4iHazOsOCv1DgM7eD7GupTJ+NFVujRZt1wzddDPSVGpWdKq1SKkla5htKG7+IS4d2XOCtzkUNwRZ7Vq5aEUMA==" }, - "node_modules/reselect-tree/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "@openzeppelin/defender-sdk-base-client": { + "version": "1.15.2", + "resolved": "https://registry.npmjs.org/@openzeppelin/defender-sdk-base-client/-/defender-sdk-base-client-1.15.2.tgz", + "integrity": "sha512-N3ZTeH8TXyklL7yNPMLUv0dxQwT78DTkOEDhzMS2/QE2FxbXrclSseoeeXxl6UYI61RBtZKn+okbSsbwiB5QWQ==", "dev": true, - "peer": true, - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/resolve": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz", - "integrity": "sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==", - "dependencies": { - "path-parse": "^1.0.6" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "requires": { + "amazon-cognito-identity-js": "^6.3.6", + "async-retry": "^1.3.3" } }, - "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==" - }, - "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==", + "@openzeppelin/defender-sdk-deploy-client": { + "version": "1.15.2", + "resolved": "https://registry.npmjs.org/@openzeppelin/defender-sdk-deploy-client/-/defender-sdk-deploy-client-1.15.2.tgz", + "integrity": "sha512-zspzMqh+OC8arXAkgBqTUDVO+NfCkt54UrsmQHbA3UAjr5TiDXKycBKU5ORb01hE+2gAmoPwEpDW9uS2VLg33A==", "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/responselike": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/responselike/-/responselike-2.0.1.tgz", - "integrity": "sha512-4gl03wn3hj1HP3yzgdI7d3lCkF95F21Pz4BPGvKHinyQzALR5CapwC8yIi0Rh58DEMQ/SguC03wFj2k0M/mHhw==", - "dependencies": { - "lowercase-keys": "^2.0.0" + "requires": { + "@openzeppelin/defender-sdk-base-client": "^1.15.2", + "axios": "^1.7.2", + "lodash": "^4.17.21" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/responselike/node_modules/lowercase-keys": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", - "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==", - "engines": { - "node": ">=8" - } - }, - "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, - "optional": true, - "peer": true, "dependencies": { - "onetime": "^5.1.0", - "signal-exit": "^3.0.2" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/retry": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", - "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==", - "dev": true, - "engines": { - "node": ">= 4" - } - }, - "node_modules/reusify": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", - "dev": true, - "engines": { - "iojs": ">=1.0.0", - "node": ">=0.10.0" + "axios": { + "version": "1.7.9", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.9.tgz", + "integrity": "sha512-LhLcE7Hbiryz8oMDdDptSrWowmB4Bl6RCt6sIJKpRB4XtVf0iEgewX3au/pJqm+Py1kCASkb/FFKjxQaLtxJvw==", + "dev": true, + "requires": { + "follow-redirects": "^1.15.6", + "form-data": "^4.0.0", + "proxy-from-env": "^1.1.0" + } + }, + "form-data": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.1.tgz", + "integrity": "sha512-tzN8e4TX8+kkxGPK8D5u0FNmjPUjw3lwC9lSLxxoB/+GtsJG91CO8bSWy73APlgAZzZbXEYZJuxjkHH2w+Ezhw==", + "dev": true, + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + } + } } }, - "node_modules/rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "@openzeppelin/defender-sdk-network-client": { + "version": "1.15.2", + "resolved": "https://registry.npmjs.org/@openzeppelin/defender-sdk-network-client/-/defender-sdk-network-client-1.15.2.tgz", + "integrity": "sha512-9r9pegc1aR7xzP9fmj1zvkk0OXMRJE10JabxxiJzAQQgmNXDeTGI6W5bFgrNJfxzcImNGqddJ3K4weKdLyL21A==", "dev": true, - "dependencies": { - "glob": "^7.1.3" + "requires": { + "@openzeppelin/defender-sdk-base-client": "^1.15.2", + "axios": "^1.7.2", + "lodash": "^4.17.21" }, - "bin": { - "rimraf": "bin.js" - } - }, - "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" + "axios": { + "version": "1.7.9", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.9.tgz", + "integrity": "sha512-LhLcE7Hbiryz8oMDdDptSrWowmB4Bl6RCt6sIJKpRB4XtVf0iEgewX3au/pJqm+Py1kCASkb/FFKjxQaLtxJvw==", + "dev": true, + "requires": { + "follow-redirects": "^1.15.6", + "form-data": "^4.0.0", + "proxy-from-env": "^1.1.0" + } + }, + "form-data": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.1.tgz", + "integrity": "sha512-tzN8e4TX8+kkxGPK8D5u0FNmjPUjw3lwC9lSLxxoB/+GtsJG91CO8bSWy73APlgAZzZbXEYZJuxjkHH2w+Ezhw==", + "dev": true, + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + } + } } }, - "node_modules/ripemd160-min": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/ripemd160-min/-/ripemd160-min-0.0.6.tgz", - "integrity": "sha512-+GcJgQivhs6S9qvLogusiTcS9kQUfgR75whKuy5jIhuiOfQuJ8fjqxV6EGD5duH1Y/FawFUMtMhyeq3Fbnib8A==", + "@openzeppelin/hardhat-upgrades": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@openzeppelin/hardhat-upgrades/-/hardhat-upgrades-3.7.0.tgz", + "integrity": "sha512-dTnqqTIZUOyEzL62FIusZPeac9CqTD+x3Q5h+46JBALgS9DubUq/jXMhiE3JKLco3RELZQCh/9GYKBoUA0R2DQ==", "dev": true, - "engines": { - "node": ">=8" - } - }, - "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==", - "dependencies": { - "bn.js": "^5.2.0" + "requires": { + "@openzeppelin/defender-sdk-base-client": "^1.14.4", + "@openzeppelin/defender-sdk-deploy-client": "^1.14.4", + "@openzeppelin/defender-sdk-network-client": "^1.14.4", + "@openzeppelin/upgrades-core": "^1.41.0", + "chalk": "^4.1.0", + "debug": "^4.1.1", + "ethereumjs-util": "^7.1.5", + "proper-lockfile": "^4.1.1", + "undici": "^6.11.1" }, - "bin": { - "rlp": "bin/rlp" - } - }, - "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" + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "dependencies": { - "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" + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" + "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 }, - { - "type": "consulting", - "url": "https://feross.org/support" + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + }, + "undici": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/undici/-/undici-6.21.0.tgz", + "integrity": "sha512-BUgJXc752Kou3oOIuU1i+yZZypyZRqNPW0vqoMPl8VaoalSfeR0D8/t4iAS3yirs79SSMTxTag+ZC86uswv+Cw==", + "dev": true } - ], - "peer": true, - "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==" - }, - "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==", + "@openzeppelin/upgrades-core": { + "version": "1.41.0", + "resolved": "https://registry.npmjs.org/@openzeppelin/upgrades-core/-/upgrades-core-1.41.0.tgz", + "integrity": "sha512-+oryinqZnxkiZvg7bWqWX4Ki/CNwVUZEqC6Elpi5PQoahpL3/6Sq9xjIozD5AiI2O61h8JHQ+A//5NtczyavJw==", "dev": true, + "requires": { + "@nomicfoundation/slang": "^0.18.3", + "cbor": "^9.0.0", + "chalk": "^4.1.0", + "compare-versions": "^6.0.0", + "debug": "^4.1.1", + "ethereumjs-util": "^7.0.3", + "minimatch": "^9.0.5", + "minimist": "^1.2.7", + "proper-lockfile": "^4.1.1", + "solidity-ast": "^0.4.51" + }, "dependencies": { - "call-bind": "^1.0.7", - "get-intrinsic": "^1.2.4", - "has-symbols": "^1.0.3", - "isarray": "^2.0.5" - }, - "engines": { - "node": ">=0.4" - }, - "funding": { - "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 - }, - "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" + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" + "brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0" + } }, - { - "type": "consulting", - "url": "https://feross.org/support" + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "dev": true, + "requires": { + "brace-expansion": "^2.0.1" + } + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } } - ] - }, - "node_modules/safe-event-emitter": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/safe-event-emitter/-/safe-event-emitter-1.0.1.tgz", - "integrity": "sha512-e1wFe99A91XYYxoQbcq2ZJUWurxEyP8vfz7A7vuUe1s95q8r5ebraVaA1BukYJcpM6V16ugWoD9vngi8Ccu5fg==", - "deprecated": "Renamed to @metamask/safe-event-emitter", - "dependencies": { - "events": "^3.0.0" } }, - "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==", + "@rsksmart/btc-transaction-solidity-helper": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/@rsksmart/btc-transaction-solidity-helper/-/btc-transaction-solidity-helper-0.2.1.tgz", + "integrity": "sha512-Ios++Hrnqfh4BZpsYUxMCeVsVw39G4AOnBvGn6WSLD8AQEGGbZk11IqoCEvrfSqppXSCEFzcDXbxA8nSjLwVhg==" + }, + "@rsksmart/pmt-builder": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@rsksmart/pmt-builder/-/pmt-builder-3.0.0.tgz", + "integrity": "sha512-HML2VJqMwXYtqiggAyojupH/k80KkhfnhUzwXNsnzuu7FftHOFvAOgJZb5Fh+tZ8UKek0vf4eT0pvqkYCU1xDQ==", "dev": true, - "dependencies": { - "call-bind": "^1.0.6", - "es-errors": "^1.3.0", - "is-regex": "^1.1.4" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "requires": { + "chai": "^4.3.4", + "mocha": "^10.0.0" } }, - "node_modules/safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + "@scure/base": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@scure/base/-/base-1.1.1.tgz", + "integrity": "sha512-ZxOhsSyxYwLJj3pLZCefNitxsj093tb2vq90mp2txoYeBqbcjDjqFhyM8eUjq/uFm6zJ+mUuqxlS2FkuSY1MTA==", + "dev": 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==", + "@scure/bip32": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@scure/bip32/-/bip32-1.1.0.tgz", + "integrity": "sha512-ftTW3kKX54YXLCxH6BB7oEEoJfoE2pIgw7MINKAs5PsS6nqKPuKk1haTF/EuHmYqG330t5GSrdmtRuHaY1a62Q==", "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" - }, - "bin": { - "istanbul": "lib/cli.js" + "requires": { + "@noble/hashes": "~1.1.1", + "@noble/secp256k1": "~1.6.0", + "@scure/base": "~1.1.0" } }, - "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==", + "@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==", "dev": true, - "dependencies": { - "sprintf-js": "~1.0.2" + "requires": { + "@noble/hashes": "~1.1.1", + "@scure/base": "~1.1.0" } }, - "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 + "@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, + "requires": { + "@sentry/hub": "5.30.0", + "@sentry/minimal": "5.30.0", + "@sentry/types": "5.30.0", + "@sentry/utils": "5.30.0", + "tslib": "^1.9.3" + } }, - "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==", + "@sentry/hub": { + "version": "5.30.0", + "resolved": "https://registry.npmjs.org/@sentry/hub/-/hub-5.30.0.tgz", + "integrity": "sha512-2tYrGnzb1gKz2EkMDQcfLrDTvmGcQPuWxLnJKXJvYTQDGLlEvi2tWz1VIHjunmOvJrB5aIQLhm+dcMRwFZDCqQ==", "dev": true, - "dependencies": { - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "2 || 3", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" + "requires": { + "@sentry/types": "5.30.0", + "@sentry/utils": "5.30.0", + "tslib": "^1.9.3" } }, - "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==", + "@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, - "engines": { - "node": ">=0.10.0" + "requires": { + "@sentry/hub": "5.30.0", + "@sentry/types": "5.30.0", + "tslib": "^1.9.3" } }, - "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==", + "@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, - "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" + "requires": { + "@sentry/core": "5.30.0", + "@sentry/hub": "5.30.0", + "@sentry/tracing": "5.30.0", + "@sentry/types": "5.30.0", + "@sentry/utils": "5.30.0", + "cookie": "^0.4.1", + "https-proxy-agent": "^5.0.0", + "lru_map": "^0.3.3", + "tslib": "^1.9.3" } }, - "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==", + "@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, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, - "engines": { - "node": ">=4" + "requires": { + "@sentry/hub": "5.30.0", + "@sentry/minimal": "5.30.0", + "@sentry/types": "5.30.0", + "@sentry/utils": "5.30.0", + "tslib": "^1.9.3" } }, - "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==", + "@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 }, - "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==", + "@sentry/utils": { + "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": { - "has-flag": "^1.0.0" - }, - "engines": { - "node": ">=0.8.0" + "requires": { + "@sentry/types": "5.30.0", + "tslib": "^1.9.3" } }, - "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/secp256k1": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/secp256k1/-/secp256k1-4.0.3.tgz", - "integrity": "sha512-NLZVf+ROMxwtEj3Xa562qgv2BK5e2WNmXPiOdVIPLgs6lyTzMvBq0aWTYMI5XCP9jZMVKOcqZLw/Wc4vDkuxhA==", - "hasInstallScript": true, - "dependencies": { - "elliptic": "^6.5.4", - "node-addon-api": "^2.0.0", - "node-gyp-build": "^4.2.0" + "@smithy/types": { + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/@smithy/types/-/types-3.7.1.tgz", + "integrity": "sha512-XKLcLXZY7sUQgvvWyeaL/qwNPp6V3dWcUjqrQKjSb+tzYiCy340R/c64LV5j+Tnb2GhmunEX0eou+L+m2hJNYA==", + "dev": true, + "requires": { + "tslib": "^2.6.2" }, - "engines": { - "node": ">=10.0.0" + "dependencies": { + "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/semaphore": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/semaphore/-/semaphore-1.1.0.tgz", - "integrity": "sha512-O4OZEaNtkMd/K0i6js9SL+gqy0ZCBMgUvlSqHKi4IBdjhe7wB8pwztUk1BbZ1fmrvpwFrPbHzqd2w5pTcJH6LA==", - "engines": { - "node": ">=0.8.0" + "@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, + "requires": { + "antlr4ts": "^0.5.0-alpha.4" } }, - "node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "bin": { - "semver": "bin/semver.js" - } + "@tsconfig/node10": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.11.tgz", + "integrity": "sha512-DcRjDCujK/kCk/cUe8Xz8ZSpm8mS3mNNpta+jGCA6USEDfktlNvm1+IuZ9eTcDbNk41BHwpHHeW+N1lKCz4zOw==", + "dev": true, + "peer": true }, - "node_modules/send": { - "version": "0.18.0", - "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", - "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", - "dependencies": { - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "mime": "1.6.0", - "ms": "2.1.3", - "on-finished": "2.4.1", - "range-parser": "~1.2.1", - "statuses": "2.0.1" - }, - "engines": { - "node": ">= 0.8.0" - } + "@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, + "peer": true }, - "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==", - "dependencies": { - "ms": "2.0.0" - } + "@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, + "peer": true }, - "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==" + "@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, + "peer": true }, - "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==" + "@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, + "peer": true, + "requires": { + "lodash": "^4.17.15", + "ts-essentials": "^7.0.1" + } }, - "node_modules/sentence-case": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/sentence-case/-/sentence-case-2.1.1.tgz", - "integrity": "sha512-ENl7cYHaK/Ktwk5OTD+aDbQ3uC8IByu/6Bkg+HDv8Mm+XnBnppVNalcfJTNsp1ibstKh030/JKQQWglDvtKwEQ==", + "@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, + "peer": true, + "requires": { + "fs-extra": "^9.1.0" + }, "dependencies": { - "no-case": "^2.2.0", - "upper-case-first": "^1.1.2" + "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, + "peer": true, + "requires": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + } + }, + "jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "dev": true, + "peer": true, + "requires": { + "graceful-fs": "^4.1.6", + "universalify": "^2.0.0" + } + }, + "universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "dev": true, + "peer": true + } } }, - "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==", + "@types/bn.js": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/@types/bn.js/-/bn.js-5.1.1.tgz", + "integrity": "sha512-qNrYbZqMx0uJAfKnKclPh+dTwK33KfLHYqtyODwd5HnXOjnkhc4qgn3BrK6RWyGZm5+sIFE7Q7Vz6QQtJB7w7g==", "dev": true, - "dependencies": { - "randombytes": "^2.1.0" + "requires": { + "@types/node": "*" } }, - "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==", - "dependencies": { - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "parseurl": "~1.3.3", - "send": "0.18.0" - }, - "engines": { - "node": ">= 0.8.0" + "@types/chai": { + "version": "4.3.20", + "resolved": "https://registry.npmjs.org/@types/chai/-/chai-4.3.20.tgz", + "integrity": "sha512-/pC9HAB5I/xMlc5FP77qjCnI16ChlJfW0tGa0IUcFn38VJrTV6DeZ60NU5KZBtaOZqjdpwTWohz5HU1RrhiYxQ==", + "dev": true, + "peer": true + }, + "@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, + "peer": true, + "requires": { + "@types/chai": "*" } }, - "node_modules/servify": { - "version": "0.1.12", - "resolved": "https://registry.npmjs.org/servify/-/servify-0.1.12.tgz", - "integrity": "sha512-/xE6GvsKKqyo1BAY+KxOWXcLpPsUUyji7Qg3bVD7hh1eRze5bR1uYiuDA/k3Gof1s9BTzQZEJK8sNcNGFIzeWw==", - "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" + "@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, + "peer": true, + "requires": { + "@types/node": "*" } }, - "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==" + "@types/estree": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz", + "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==", + "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==", - "dependencies": { - "define-data-property": "^1.1.4", - "es-errors": "^1.3.0", - "function-bind": "^1.1.2", - "get-intrinsic": "^1.2.4", - "gopd": "^1.0.1", - "has-property-descriptors": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" + "@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, + "peer": true, + "requires": { + "@types/node": "*" } }, - "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==", + "@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": { - "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": ">= 0.4" + "peer": true, + "requires": { + "@types/minimatch": "*", + "@types/node": "*" } }, - "node_modules/set-immediate-shim": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz", - "integrity": "sha512-Li5AOqrZWCVA2n5kryzEmqai6bKSIvpz5oUJHPVj6+dsbD3X1ixtsY5tEnsaNpH3pFAHmG8eIHUrtEtohrg+UQ==", - "engines": { - "node": ">=0.10.0" - } + "@types/json-schema": { + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", + "dev": true }, - "node_modules/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==" + "@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/setprototypeof": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", - "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" + "@types/minimatch": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-5.1.2.tgz", + "integrity": "sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA==", + "dev": true, + "peer": 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": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - }, - "bin": { - "sha.js": "bin.js" + "@types/mocha": { + "version": "10.0.10", + "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-10.0.10.tgz", + "integrity": "sha512-xPyYSz1cMPnJQhl0CLMH68j3gprKZaTjG3s5Vi+fDgx+uhG9NOXwbVt52eFS8ECyXhyKcjDLCBEqBExKuiZb7Q==", + "dev": true, + "peer": true + }, + "@types/node": { + "version": "22.7.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.7.5.tgz", + "integrity": "sha512-jML7s2NAzMWc//QSJ1a3prpk78cOPchGvXJsC3C6R6PSMoooztvRVQEz89gmBTBY1SPMaqo5teB4uNHPdetShQ==", + "dev": true, + "requires": { + "undici-types": "~6.19.2" } }, - "node_modules/sha3": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/sha3/-/sha3-2.1.4.tgz", - "integrity": "sha512-S8cNxbyb0UGUM2VhRD4Poe5N58gJnJsLJ5vC7FYWGUmGhcsj4++WaIOBFVDxlG0W3To6xBuiRh+i0Qp2oNCOtg==", + "@types/pbkdf2": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@types/pbkdf2/-/pbkdf2-3.1.0.tgz", + "integrity": "sha512-Cf63Rv7jCQ0LaL8tNXmEyqTHuIJxRdlS5vMh1mj5voN4+QFhVZnlZruezqpWYDiJ8UTzhP0VmeLXCmBk66YrMQ==", "dev": true, - "dependencies": { - "buffer": "6.0.3" + "requires": { + "@types/node": "*" } }, - "node_modules/shallowequal": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/shallowequal/-/shallowequal-1.1.0.tgz", - "integrity": "sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ==", + "@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, "peer": 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": { - "glob": "^7.0.0", - "interpret": "^1.0.0", - "rechoir": "^0.6.2" - }, - "bin": { - "shjs": "bin/shjs" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/side-channel": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", - "dependencies": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "dev": true - }, - "node_modules/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==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] + "@types/qs": { + "version": "6.9.7", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", + "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==", + "dev": true, + "peer": 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==", - "dependencies": { - "decompress-response": "^3.3.0", - "once": "^1.3.1", - "simple-concat": "^1.0.0" + "@types/secp256k1": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@types/secp256k1/-/secp256k1-4.0.3.tgz", + "integrity": "sha512-Da66lEIFeIz9ltsdMZcpQvmrmmoqrfju8pm1BH8WbYjZSwUgCwXLb9C+9XYogwBITnbsSaMdVPb2ekf7TV+03w==", + "dev": true, + "requires": { + "@types/node": "*" } }, - "node_modules/slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "@typescript-eslint/eslint-plugin": { + "version": "8.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.18.0.tgz", + "integrity": "sha512-NR2yS7qUqCL7AIxdJUQf2MKKNDVNaig/dEB0GBLU7D+ZdHgK1NoH/3wsgO3OnPVipn51tG3MAwaODEGil70WEw==", "dev": true, - "engines": { - "node": ">=8" + "requires": { + "@eslint-community/regexpp": "^4.10.0", + "@typescript-eslint/scope-manager": "8.18.0", + "@typescript-eslint/type-utils": "8.18.0", + "@typescript-eslint/utils": "8.18.0", + "@typescript-eslint/visitor-keys": "8.18.0", + "graphemer": "^1.4.0", + "ignore": "^5.3.1", + "natural-compare": "^1.4.0", + "ts-api-utils": "^1.3.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==", + "@typescript-eslint/parser": { + "version": "8.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.18.0.tgz", + "integrity": "sha512-hgUZ3kTEpVzKaK3uNibExUYm6SKKOmTU2BOxBSvOYwtJEPdVQ70kZJpPjstlnhCHcuc2WGfSbpKlb/69ttyN5Q==", "dev": true, - "dependencies": { - "ansi-styles": "^4.0.0", - "astral-regex": "^2.0.0", - "is-fullwidth-code-point": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/slice-ansi?sponsor=1" + "requires": { + "@typescript-eslint/scope-manager": "8.18.0", + "@typescript-eslint/types": "8.18.0", + "@typescript-eslint/typescript-estree": "8.18.0", + "@typescript-eslint/visitor-keys": "8.18.0", + "debug": "^4.3.4" } }, - "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==", + "@typescript-eslint/scope-manager": { + "version": "8.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.18.0.tgz", + "integrity": "sha512-PNGcHop0jkK2WVYGotk/hxj+UFLhXtGPiGtiaWgVBVP1jhMoMCHlTyJA+hEj4rszoSdLTK3fN4oOatrL0Cp+Xw==", "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "requires": { + "@typescript-eslint/types": "8.18.0", + "@typescript-eslint/visitor-keys": "8.18.0" } }, - "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==", + "@typescript-eslint/type-utils": { + "version": "8.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.18.0.tgz", + "integrity": "sha512-er224jRepVAVLnMF2Q7MZJCq5CsdH2oqjP4dT7K6ij09Kyd+R21r7UVJrF0buMVdZS5QRhDzpvzAxHxabQadow==", "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" + "requires": { + "@typescript-eslint/typescript-estree": "8.18.0", + "@typescript-eslint/utils": "8.18.0", + "debug": "^4.3.4", + "ts-api-utils": "^1.3.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==", + "@typescript-eslint/types": { + "version": "8.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.18.0.tgz", + "integrity": "sha512-FNYxgyTCAnFwTrzpBGq+zrnoTO4x0c1CKYY5MuUTzpScqmY5fmsh2o3+57lqdI3NZucBDCzDgdEbIaNfAjAHQA==", "dev": true }, - "node_modules/snake-case": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/snake-case/-/snake-case-2.1.0.tgz", - "integrity": "sha512-FMR5YoPFwOLuh4rRz92dywJjyKYZNLpMn1R5ujVpIYkbA9p01fq8RMg0FkO4M+Yobt4MjHeLTJVm5xFFBHSV2Q==", + "@typescript-eslint/typescript-estree": { + "version": "8.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.18.0.tgz", + "integrity": "sha512-rqQgFRu6yPkauz+ms3nQpohwejS8bvgbPyIDq13cgEDbkXt4LH4OkDMT0/fN1RUtzG8e8AKJyDBoocuQh8qNeg==", "dev": true, + "requires": { + "@typescript-eslint/types": "8.18.0", + "@typescript-eslint/visitor-keys": "8.18.0", + "debug": "^4.3.4", + "fast-glob": "^3.3.2", + "is-glob": "^4.0.3", + "minimatch": "^9.0.4", + "semver": "^7.6.0", + "ts-api-utils": "^1.3.0" + }, "dependencies": { - "no-case": "^2.2.0" + "brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0" + } + }, + "minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "dev": true, + "requires": { + "brace-expansion": "^2.0.1" + } + }, + "semver": { + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", + "dev": true + } } }, - "node_modules/solc": { - "version": "0.8.3", - "resolved": "https://registry.npmjs.org/solc/-/solc-0.8.3.tgz", - "integrity": "sha512-VZvSHtwe2zAsoviClIpWjvrg22bIZ0pLtzFrYD9BtPfR7mhMZYwpptnzRizNaSvMngTR+gB9Ul8IyL5xaC7+jw==", + "@typescript-eslint/utils": { + "version": "8.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.18.0.tgz", + "integrity": "sha512-p6GLdY383i7h5b0Qrfbix3Vc3+J2k6QWw6UMUeY5JGfm3C5LbZ4QIZzJNoNOfgyRe0uuYKjvVOsO/jD4SJO+xg==", "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" - }, - "bin": { - "solcjs": "solcjs" - }, - "engines": { - "node": ">=8.0.0" + "requires": { + "@eslint-community/eslint-utils": "^4.4.0", + "@typescript-eslint/scope-manager": "8.18.0", + "@typescript-eslint/types": "8.18.0", + "@typescript-eslint/typescript-estree": "8.18.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==", + "@typescript-eslint/visitor-keys": { + "version": "8.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.18.0.tgz", + "integrity": "sha512-pCh/qEA8Lb1wVIqNvBke8UaRjJ6wrAWkJO5yyIbs8Yx6TNGYyfNjOo61tLv+WwLvoLPp4BQ8B7AHKijl8NGUfw==", "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" + "requires": { + "@typescript-eslint/types": "8.18.0", + "eslint-visitor-keys": "^4.2.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==", + "abbrev": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.0.9.tgz", + "integrity": "sha512-LEyx4aLEC3x6T0UguF6YILf+ntvmOaWsVfENmIW0E9H09vKlLDGelMjjSm0jkDHALj8A8quZ/HapKNigzwge+Q==", "dev": true, - "optionalDependencies": { - "graceful-fs": "^4.1.6" - } + "peer": true }, - "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==", + "acorn": { + "version": "8.14.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.0.tgz", + "integrity": "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==", + "dev": true + }, + "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, - "bin": { - "semver": "bin/semver" - } + "requires": {} }, - "node_modules/solhint": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/solhint/-/solhint-3.4.1.tgz", - "integrity": "sha512-pzZn2RlZhws1XwvLPVSsxfHrwsteFf5eySOhpAytzXwKQYbTCJV6z8EevYDiSVKMpWrvbKpEtJ055CuEmzp4Xg==", + "acorn-walk": { + "version": "8.3.4", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.4.tgz", + "integrity": "sha512-ueEepnujpqee2o5aIYnvHU6C0A42MNdsIDeqy5BydrkuC5R1ZuUFnm27EeFJGoEHJQgn3uleRvmTXaJgfXbt4g==", "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": "^6.3.0", - "strip-ansi": "^6.0.1", - "table": "^6.8.1", - "text-table": "^0.2.0" - }, - "bin": { - "solhint": "solhint.js" - }, - "optionalDependencies": { - "prettier": "^2.8.3" + "peer": true, + "requires": { + "acorn": "^8.11.0" } }, - "node_modules/solhint/node_modules/@solidity-parser/parser": { - "version": "0.16.0", - "resolved": "https://registry.npmjs.org/@solidity-parser/parser/-/parser-0.16.0.tgz", - "integrity": "sha512-ESipEcHyRHg4Np4SqBCfcXwyxxna1DgFVz69bgpLV8vzl/NP1DtcKsJ4dJZXWQhY/Z4J2LeKBiOkOVZn9ct33Q==", + "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 + }, + "aes-js": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/aes-js/-/aes-js-3.0.0.tgz", + "integrity": "sha512-H7wUZRn8WpTq9jocdxQ2c8x2sKo9ZVmzfRE13GiNJXfp7NcKYEdvl3vspKjXox6RIG2VtaRe4JFvxG4rqp2Zuw==", "dev": true, - "dependencies": { - "antlr4ts": "^0.5.0-alpha.4" + "peer": true + }, + "agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "dev": true, + "requires": { + "debug": "4" } }, - "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==", + "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": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "requires": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" } }, - "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==", + "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": { - "balanced-match": "^1.0.0" + "requires": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" } }, - "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==", + "amazon-cognito-identity-js": { + "version": "6.3.12", + "resolved": "https://registry.npmjs.org/amazon-cognito-identity-js/-/amazon-cognito-identity-js-6.3.12.tgz", + "integrity": "sha512-s7NKDZgx336cp+oDeUtB2ZzT8jWJp/v2LWuYl+LQtMEODe22RF1IJ4nRiDATp+rp1pTffCZcm44Quw4jx2bqNg==", "dev": true, + "requires": { + "@aws-crypto/sha256-js": "1.2.2", + "buffer": "4.9.2", + "fast-base64-decode": "^1.0.0", + "isomorphic-unfetch": "^3.0.0", + "js-cookie": "^2.2.1" + }, "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" + "buffer": { + "version": "4.9.2", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.2.tgz", + "integrity": "sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg==", + "dev": true, + "requires": { + "base64-js": "^1.0.2", + "ieee754": "^1.1.4", + "isarray": "^1.0.0" + } + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "dev": true + } } }, - "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==", + "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, - "engines": { - "node": ">=14" - } + "optional": true, + "peer": 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==", + "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": { - "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" + "requires": { + "string-width": "^4.1.0" } }, - "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" - } + "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/solhint/node_modules/minimatch": { - "version": "5.1.6", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", - "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "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": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=10" + "requires": { + "type-fest": "^0.21.3" } }, - "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" - }, - "engines": { - "node": ">=8" - } + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true }, - "node_modules/solidity-ast": { - "version": "0.4.56", - "resolved": "https://registry.npmjs.org/solidity-ast/-/solidity-ast-0.4.56.tgz", - "integrity": "sha512-HgmsA/Gfklm/M8GFbCX/J1qkVH0spXHgALCNZ8fA8x5X+MFdn/8CP2gr5OVyXjXw6RZTPC/Sxl2RUDQOXyNMeA==", + "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": { - "array.prototype.findlast": "^1.2.2" + "requires": { + "color-convert": "^1.9.0" } }, - "node_modules/solidity-comments-extractor": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/solidity-comments-extractor/-/solidity-comments-extractor-0.0.7.tgz", - "integrity": "sha512-wciNMLg/Irp8OKGrh3S2tfvZiZ0NEyILfcRCXCD4mp7SgK/i9gzLfhY2hY7VMCQJ3kH9UB9BzNdibIVMchzyYw==", + "antlr4": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/antlr4/-/antlr4-4.13.0.tgz", + "integrity": "sha512-zooUbt+UscjnWyOrsuY/tVFL4rwrAGwOivpQmvmUDE22hy/lUA467Rc1rcixyRwcRUIXFYBwv7+dClDSHdmmew==", "dev": true }, - "node_modules/solidity-coverage": { - "version": "0.8.12", - "resolved": "https://registry.npmjs.org/solidity-coverage/-/solidity-coverage-0.8.12.tgz", - "integrity": "sha512-8cOB1PtjnjFRqOgwFiD8DaUsYJtVJ6+YdXQtSZDrLGf8cdhhh8xzTtGzVTGeBf15kTv0v7lYPJlV/az7zLEPJw==", - "dev": true, - "dependencies": { - "@ethersproject/abi": "^5.0.9", - "@solidity-parser/parser": "^0.18.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": { - "hardhat": "^2.11.0" - } - }, - "node_modules/solidity-coverage/node_modules/@solidity-parser/parser": { - "version": "0.18.0", - "resolved": "https://registry.npmjs.org/@solidity-parser/parser/-/parser-0.18.0.tgz", - "integrity": "sha512-yfORGUIPgLck41qyN7nbwJRAx17/jAIXCTanHOJZhB6PJ1iAk/84b/xlsVKFSyNyLXIj0dhppoE0+CRws7wlzA==", + "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/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==", + "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": { - "graceful-fs": "^4.2.0", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - }, - "engines": { - "node": ">=6 <7 || >=8" + "requires": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" } }, - "node_modules/solidity-coverage/node_modules/semver": { - "version": "7.6.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.2.tgz", - "integrity": "sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w==", + "arg": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", + "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", "dev": true, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } + "peer": true }, - "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": { - "amdefine": ">=0.0.4" - }, - "engines": { - "node": ">=0.8.0" - } + "argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true }, - "node_modules/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==", + "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, - "peer": true, - "dependencies": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } + "peer": true }, - "node_modules/source-map-support/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "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, - "peer": true, - "engines": { - "node": ">=0.10.0" + "requires": { + "call-bind": "^1.0.5", + "is-array-buffer": "^3.0.4" } }, - "node_modules/spark-md5": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/spark-md5/-/spark-md5-3.0.2.tgz", - "integrity": "sha512-wcFzz9cDfbuqe0FZzfi2or1sgyIrsDwmPwfZC4hiNidPdPINjeUwNfv5kldczoEAcjl9Y1L3SM7Uz2PUEQzxQw==", + "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, - "optional": true, "peer": true }, - "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==", + "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": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "node_modules/spdx-exceptions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", - "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", - "dev": true + "peer": 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==", + "array.prototype.findlast": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/array.prototype.findlast/-/array.prototype.findlast-1.2.5.tgz", + "integrity": "sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==", "dev": true, - "dependencies": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" + "requires": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "es-shim-unscopables": "^1.0.2" } }, - "node_modules/spdx-license-ids": { - "version": "3.0.13", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.13.tgz", - "integrity": "sha512-XkD+zwiqXHikFZm4AX/7JSCXA98U5Db4AFd5XUg/+9UNtnH75+Z9KxtpYiJZx36mUDVOwH83pl7yvCer6ewM3w==", - "dev": true - }, - "node_modules/sprintf-js": { + "arraybuffer.prototype.slice": { "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", - "dev": true - }, - "node_modules/sshpk": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.17.0.tgz", - "integrity": "sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ==", - "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_modules/sshpk/node_modules/tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==" - }, - "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==", + "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.3.tgz", + "integrity": "sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==", "dev": true, - "peer": true, - "dependencies": { - "type-fest": "^0.7.1" - }, - "engines": { - "node": ">=6" + "requires": { + "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" } }, - "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==", + "asap": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", + "integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==", "dev": true, - "peer": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", - "engines": { - "node": ">= 0.8" - } + "peer": true }, - "node_modules/strict-uri-encode": { + "assertion-error": { "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==", - "engines": { - "node": ">=0.10.0" - } + "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz", + "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==", + "dev": true }, - "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" - } + "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/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" + "astral-regex": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", + "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", + "dev": true + }, + "async-retry": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/async-retry/-/async-retry-1.3.3.tgz", + "integrity": "sha512-wfr/jstw9xNi/0teMHrRW7dsz3Lt5ARhYNZ2ewpadnhaIp5mbALhOAP+EAdsC7t4Z6wqsDVv9+W6gm1Dk9mEyw==", + "dev": true, + "requires": { + "retry": "0.13.1" }, - "engines": { - "node": ">=8" + "dependencies": { + "retry": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz", + "integrity": "sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==", + "dev": true + } } }, - "node_modules/string-width/node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + "asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", + "dev": true }, - "node_modules/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==", + "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, - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.0", - "es-object-atoms": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } + "peer": true }, - "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==", + "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": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-object-atoms": "^1.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "requires": { + "possible-typed-array-names": "^1.0.0" } }, - "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==", + "axios": { + "version": "0.24.0", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.24.0.tgz", + "integrity": "sha512-Q6cWsys88HoPgAaFAVUb0WpPk0O8iTeisR9IMqy9G8AbO4NlpVknrnQS03zzF9PGAWgO3cgletO3VjV/P7VztA==", "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" + "requires": { + "follow-redirects": "^1.14.4" } }, - "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" - } + "balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true }, - "node_modules/strip-bom": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", - "integrity": "sha512-kwrX1y7czp1E69n2ajbG65mIo9dqvJ+8aBQXOGVxqwvNbsXdFM6Lq37dLAY3mknUwru8CfcCbfOLL/gMo+fi3g==", - "dev": true, - "dependencies": { - "is-utf8": "^0.2.0" - }, - "engines": { - "node": ">=0.10.0" - } + "base-x": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/base-x/-/base-x-5.0.0.tgz", + "integrity": "sha512-sMW3VGSX1QWVFA6l8U62MLKz29rRfpTlYdCqLdpLo1/Yd4zZwSbnUaDfciIAowAqvq7YFnWq9hrhdg1KYgc1lQ==", + "dev": true }, - "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==", - "dependencies": { - "is-hex-prefixed": "1.0.0" - }, - "engines": { - "node": ">=6.5.0", - "npm": ">=3" - } + "base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "dev": true }, - "node_modules/strip-indent": { + "bech32": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-2.0.0.tgz", - "integrity": "sha512-RsSNPLpq6YUL7QYy44RnPVTn/lcVZtb48Uof3X5JLbF4zD/Gs7ZFDv2HWol+leoQN2mT86LAzSshGfkTlSOpsA==", - "dev": true, - "engines": { - "node": ">=4" - } + "resolved": "https://registry.npmjs.org/bech32/-/bech32-2.0.0.tgz", + "integrity": "sha512-LcknSilhIGatDAsY1ak2I8VtGaHNhgMSYVxFrGLXv+xLHytaKZKcaUJJUE7qmBr7h33o5YQwP55pMI0xmkpJwg==", + "dev": true }, - "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": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } + "binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "dev": true }, - "node_modules/sublevel-pouchdb": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/sublevel-pouchdb/-/sublevel-pouchdb-7.3.1.tgz", - "integrity": "sha512-n+4fK72F/ORdqPwoGgMGYeOrW2HaPpW9o9k80bT1B3Cim5BSvkKkr9WbWOWynni/GHkbCEdvLVFJL1ktosAdhQ==", - "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "inherits": "2.0.4", - "level-codec": "9.0.2", - "ltgt": "2.2.1", - "readable-stream": "1.1.14" - } + "bip174": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/bip174/-/bip174-2.1.1.tgz", + "integrity": "sha512-mdFV5+/v0XyNYXjBS6CQPLo9ekCx4gtKZFnJm5PMto7Fs9hTTDpkkzOB7/FtluRI6JbUUAu+snTYfJRgHLZbZQ==", + "dev": true }, - "node_modules/sublevel-pouchdb/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" + "bitcoinjs-lib": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/bitcoinjs-lib/-/bitcoinjs-lib-6.0.1.tgz", + "integrity": "sha512-x/7D4jDj/MMkmO6t3p2CSDXTqpwZ/jRsRiJDmaiXabrR9XRo7jwby8HRn7EyK1h24rKFFI7vI0ay4czl6bDOZQ==", + "dev": true, + "requires": { + "bech32": "^2.0.0", + "bip174": "^2.0.1", + "bs58check": "^2.1.2", + "create-hash": "^1.1.0", + "typeforce": "^1.11.3", + "varuint-bitcoin": "^1.1.2", + "wif": "^2.0.1" + }, + "dependencies": { + "base-x": { + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/base-x/-/base-x-3.0.10.tgz", + "integrity": "sha512-7d0s06rR9rYaIWHkpfLIFICM/tkSVdoPC9qYAQRpxn9DdKNWNsKC0uk++akckyLq16Tx2WIinnZ6WRriAt6njQ==", + "dev": true, + "requires": { + "safe-buffer": "^5.0.1" + } }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" + "bs58": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/bs58/-/bs58-4.0.1.tgz", + "integrity": "sha512-Ok3Wdf5vOIlBrgCvTq96gBkJw+JUEzdBgyaza5HLtPm7yTHkjRy8+JzNyHF7BHa0bNWOQIp3m5YF0nnFcOIKLw==", + "dev": true, + "requires": { + "base-x": "^3.0.2" + } }, - { - "type": "consulting", - "url": "https://feross.org/support" + "bs58check": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/bs58check/-/bs58check-2.1.2.tgz", + "integrity": "sha512-0TS1jicxdU09dwJMNZtVAfzPi6Q6QeN0pM1Fkzrjn+XYHvzMKPU3pHVpva+769iNVSfIYWf7LJ6WR+BuuMf8cA==", + "dev": true, + "requires": { + "bs58": "^4.0.0", + "create-hash": "^1.1.0", + "safe-buffer": "^5.1.2" + } } - ], - "optional": true, - "peer": true, - "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" } }, - "node_modules/sublevel-pouchdb/node_modules/level-codec": { - "version": "9.0.2", - "resolved": "https://registry.npmjs.org/level-codec/-/level-codec-9.0.2.tgz", - "integrity": "sha512-UyIwNb1lJBChJnGfjmO0OR+ezh2iVu1Kas3nvBS/BzGnx79dv6g7unpKIDNPMhfdTEGoc7mC8uAu51XEtX+FHQ==", + "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 + }, + "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==", + "dev": true + }, + "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, - "optional": true, - "peer": true, - "dependencies": { - "buffer": "^5.6.0" + "requires": { + "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": ">=6" + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + }, + "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 + } } }, - "node_modules/sublevel-pouchdb/node_modules/readable-stream": { - "version": "1.1.14", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", - "integrity": "sha512-+MeVjFf4L44XUkhM1eYbD8fyEsxcV81pqMSR5gblfcLCHfZvbrqy4/qYHE+/R5HoBUT11WV5O08Cr1n3YXkWVQ==", + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "0.0.1", - "string_decoder": "~0.10.x" + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" } }, - "node_modules/sublevel-pouchdb/node_modules/string_decoder": { - "version": "0.10.31", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "integrity": "sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==", + "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, - "optional": true, - "peer": 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==", - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" + "requires": { + "fill-range": "^7.1.1" } }, - "node_modules/swap-case": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/swap-case/-/swap-case-1.1.2.tgz", - "integrity": "sha512-BAmWG6/bx8syfc6qXPprof3Mn5vQgf5dwdUNJhsNqU9WdPt5P+ES/wQ5bxfijy8zwZgZZHslC3iAsxsuQMCzJQ==", + "brorand": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", + "integrity": "sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==", + "dev": true + }, + "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 + }, + "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": { - "lower-case": "^1.1.1", - "upper-case": "^1.1.1" + "requires": { + "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/swarm-js": { - "version": "0.1.42", - "resolved": "https://registry.npmjs.org/swarm-js/-/swarm-js-0.1.42.tgz", - "integrity": "sha512-BV7c/dVlA3R6ya1lMlSSNPLYrntt0LUq4YMgy3iwpCIc6rZnS5W2wUoctarZ5pXlpKtxDDf9hNziEkcfrxdhqQ==", - "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" + "bs58": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/bs58/-/bs58-6.0.0.tgz", + "integrity": "sha512-PD0wEnEYg6ijszw/u8s+iI3H17cTymlrwkKhDhPZq+Sokl3AU4htyBFTjAeNAlCCmg0f53g6ih3jATyCKftTfw==", + "dev": true, + "requires": { + "base-x": "^5.0.0" } }, - "node_modules/swarm-js/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==", - "dependencies": { - "defer-to-connect": "^2.0.0" + "bs58check": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/bs58check/-/bs58check-3.0.1.tgz", + "integrity": "sha512-hjuuJvoWEybo7Hn/0xOrczQKKEKD63WguEjlhLExYs2wUBcebDC1jDNK17eEAD2lYfw82d5ASC1d7K3SWszjaQ==", + "dev": true, + "requires": { + "@noble/hashes": "^1.2.0", + "bs58": "^5.0.0" }, - "engines": { - "node": ">=10" - } - }, - "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==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" + "dependencies": { + "@noble/hashes": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.3.1.tgz", + "integrity": "sha512-EbqwksQwz9xDRGfDST86whPBgM65E0OH/pCgqW0GBVzO22bNE+NuIbeTb714+IfSjU3aRk47EUvXIb5bTsenKA==", + "dev": true }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" + "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==", + "dev": true }, - { - "type": "consulting", - "url": "https://feross.org/support" + "bs58": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/bs58/-/bs58-5.0.0.tgz", + "integrity": "sha512-r+ihvQJvahgYT50JD05dyJNKlmmSlMoOGwn1lCcEzanPglg7TxYjioQUYehQ9mAR/+hOSd2jRc/Z2y5UxBymvQ==", + "dev": true, + "requires": { + "base-x": "^4.0.0" + } } - ], - "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" } }, - "node_modules/swarm-js/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==", - "dependencies": { - "mimic-response": "^3.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } + "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/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==", - "dependencies": { - "graceful-fs": "^4.1.2", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } + "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/swarm-js/node_modules/got": { - "version": "11.8.6", - "resolved": "https://registry.npmjs.org/got/-/got-11.8.6.tgz", - "integrity": "sha512-6tfZ91bOr7bOXnK7PRDCGBLa1H4U080YHNaAQ2KsMGlLEzRbk44nsZF2E1IeRc3vtJHPVbKCYgdFbaGO2ljd8g==", - "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" - }, - "engines": { - "node": ">=10.19.0" - }, - "funding": { - "url": "https://github.com/sindresorhus/got?sponsor=1" + "bufferutil": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/bufferutil/-/bufferutil-4.0.7.tgz", + "integrity": "sha512-kukuqc39WOHtdxtw4UScxF/WVnMFVSQVKhtx3AjZJzhd0RGZZldcrfSEbVsWWe6KNH253574cq5F+wpv0G9pJw==", + "dev": true, + "optional": true, + "peer": true, + "requires": { + "node-gyp-build": "^4.3.0" } }, - "node_modules/swarm-js/node_modules/lowercase-keys": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", - "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==", - "engines": { - "node": ">=8" + "bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "dev": true + }, + "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, + "requires": { + "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" } }, - "node_modules/swarm-js/node_modules/mimic-response": { + "callsites": { "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==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true + }, + "camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "dev": true + }, + "caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==", + "dev": true, + "peer": true + }, + "cbor": { + "version": "9.0.2", + "resolved": "https://registry.npmjs.org/cbor/-/cbor-9.0.2.tgz", + "integrity": "sha512-JPypkxsB10s9QOWwa6zwPzqE1Md3vqpPc+cai4sAecuCsRyAtAl/pMyhPlMbT/xtPnm2dznJZYRLui57qiRhaQ==", + "dev": true, + "requires": { + "nofilter": "^3.1.0" } }, - "node_modules/swarm-js/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==", - "engines": { - "node": ">=8" + "chai": { + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/chai/-/chai-4.3.7.tgz", + "integrity": "sha512-HLnAzZ2iupm25PlN0xFreAlBA5zaBSv3og0DdeGA4Ar6h6rJ3A0rolRUKJhSF2V10GZKDgWF/VmAEsNWjCRB+A==", + "dev": true, + "requires": { + "assertion-error": "^1.1.0", + "check-error": "^1.0.2", + "deep-eql": "^4.1.2", + "get-func-name": "^2.0.0", + "loupe": "^2.3.1", + "pathval": "^1.1.1", + "type-detect": "^4.0.5" } }, - "node_modules/symbol-observable": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.2.0.tgz", - "integrity": "sha512-e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ==", + "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, "peer": true, - "engines": { - "node": ">=0.10.0" + "requires": { + "check-error": "^1.0.2" } }, - "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==", + "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": { - "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" + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" } }, - "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==", + "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": { - "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" + "peer": true + }, + "check-error": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.2.tgz", + "integrity": "sha512-BrgHpW9NURQgzoNyjfq0Wu6VFO6D7IZEmJNdtgNqpzGG8RuNFHt2jQxWlAs4HMe119chBnv+34syEZtc6IhLtA==", + "dev": true + }, + "chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "dev": true, + "requires": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "fsevents": "~2.3.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" } }, - "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==", + "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/tar": { - "version": "4.4.19", - "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.19.tgz", - "integrity": "sha512-a20gEsvHnWe0ygBY8JbxoM4w3SJdhc7ZAuxkLqh+nvNQN2IOt0B5lLgM490X5Hl8FF0dl0tOf2ewFYAlIFgzVA==", - "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" - }, - "engines": { - "node": ">=4.5" + "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==", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" } }, - "node_modules/testrpc": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/testrpc/-/testrpc-0.0.1.tgz", - "integrity": "sha512-afH1hO+SQ/VPlmaLUFj2636QMeDvPCeQMc/9RBMW0IfjNe9gFD9Ra3ShqYkB7py0do1ZcCna/9acHyzTJ+GcNA==", - "deprecated": "testrpc has been renamed to ganache-cli, please use this package from now on.", + "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 }, - "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==", + "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/through2": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/through2/-/through2-3.0.2.tgz", - "integrity": "sha512-enaDQ4MUyP2W6ZyT6EsMzqBPZaM/avg8iuo+l2d3QCs0J+6RaqkHV/2/lOwDTueBHeJ/2LG9lrLW3d5rWPucuQ==", + "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, - "optional": true, "peer": true, + "requires": { + "colors": "^1.1.2", + "object-assign": "^4.1.0", + "string-width": "^2.1.1" + }, "dependencies": { - "inherits": "^2.0.4", - "readable-stream": "2 || 3" + "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, + "peer": true + }, + "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, + "peer": true + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "peer": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + } + }, + "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, + "peer": true, + "requires": { + "ansi-regex": "^3.0.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==", - "engines": { - "node": ">=0.10.0" + "cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "dev": true, + "requires": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" } }, - "node_modules/tiny-typed-emitter": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/tiny-typed-emitter/-/tiny-typed-emitter-2.1.0.tgz", - "integrity": "sha512-qVtvMxeXbVej0cQWKqVSSAHmKZEHAvxdF8HEUBFWts8h+xEo5m/lEiPakuyZ3BnCBjOD8i24kzNOiOLLgsSxhA==", + "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, - "optional": true, - "peer": true + "requires": { + "color-name": "1.1.3" + } }, - "node_modules/title-case": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/title-case/-/title-case-2.1.1.tgz", - "integrity": "sha512-EkJoZ2O3zdCz3zJsYCsxyq2OC5hrxR9mfdd5I+w8h/tmFfeOxJ+vvkxsKxdmN0WtS9zLdHEgfgVOiMVgv+Po4Q==", + "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 + }, + "colors": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/colors/-/colors-1.4.0.tgz", + "integrity": "sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA==", "dev": true, - "dependencies": { - "no-case": "^2.2.0", - "upper-case": "^1.0.3" - } + "peer": true }, - "node_modules/tmp": { - "version": "0.0.33", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", - "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", "dev": true, - "dependencies": { - "os-tmpdir": "~1.0.2" - }, - "engines": { - "node": ">=0.6.0" + "requires": { + "delayed-stream": "~1.0.0" } }, - "node_modules/to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", - "engines": { - "node": ">=4" - } + "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/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==", + "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": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/toidentifier": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", - "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", - "engines": { - "node": ">=0.6" + "peer": true, + "requires": { + "array-back": "^3.1.0", + "find-replace": "^3.0.0", + "lodash.camelcase": "^4.3.0", + "typical": "^4.0.0" } }, - "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==", - "dependencies": { - "psl": "^1.1.28", - "punycode": "^2.1.1" + "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, + "peer": true, + "requires": { + "array-back": "^4.0.2", + "chalk": "^2.4.2", + "table-layout": "^1.0.2", + "typical": "^5.2.0" }, - "engines": { - "node": ">=0.8" + "dependencies": { + "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, + "peer": true + }, + "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, + "peer": true + } } }, - "node_modules/tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" + "commander": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", + "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==", + "dev": true + }, + "compare-versions": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/compare-versions/-/compare-versions-6.1.0.tgz", + "integrity": "sha512-LNZQXhqUvqUTotpZ00qLSaify3b4VFD588aRr8MKFw4CMUr98ytzCW5wDH5qx/DEY5kCDXcbcRuCqL0szEf2tg==", + "dev": true + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true }, - "node_modules/truffle": { - "version": "5.8.0", - "resolved": "https://registry.npmjs.org/truffle/-/truffle-5.8.0.tgz", - "integrity": "sha512-UoC6w5vpFWBd/79TVr3tg+TdVMKhzrGtqR0u7hAmshB5edb52A9IIXoRZZOnagQg/eDAZBukDZ8cKbGMbVEACA==", + "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, - "hasInstallScript": true, "peer": true, - "dependencies": { - "@truffle/db-loader": "^0.2.19", - "@truffle/debugger": "^11.0.30", - "app-module-path": "^2.2.0", - "ganache": "7.7.6", - "mocha": "10.1.0", - "original-require": "^1.0.1" - }, - "bin": { - "truffle": "build/cli.bundled.js" + "requires": { + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^2.2.2", + "typedarray": "^0.0.6" }, - "optionalDependencies": { - "@truffle/db": "^2.0.19" - } - }, - "node_modules/truffle-assertions": { - "version": "0.9.2", - "resolved": "https://registry.npmjs.org/truffle-assertions/-/truffle-assertions-0.9.2.tgz", - "integrity": "sha512-9g2RhaxU2F8DeWhqoGQvL/bV8QVoSnQ6PY+ZPvYRP5eF7+/8LExb4mjLx/FeliLTjc3Tv1SABG05Gu5qQ/ErmA==", "dependencies": { - "assertion-error": "^1.1.0", - "lodash.isequal": "^4.5.0" + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "dev": true, + "peer": true + }, + "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, + "peer": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "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, + "peer": true + }, + "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, + "peer": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } } }, - "node_modules/truffle-contract-size": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/truffle-contract-size/-/truffle-contract-size-2.0.1.tgz", - "integrity": "sha512-AIKPwHPC/1pZwtVjgUcgcK23k6gWxKhn4ZnKLr339uieb94UgAUeIwGUkfc87T+0lqgC6ePY7YhsFeoZK2YEsA==", - "dependencies": { - "cli-table": "^0.3.1", - "yargs": "^15.3.1" - } + "cookie": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz", + "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==", + "dev": true }, - "node_modules/truffle-contract-size/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" + "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, + "peer": true + }, + "cosmiconfig": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.2.0.tgz", + "integrity": "sha512-3rTMnFJA1tCOPwRxtgF4wd7Ab2qvDbL8jX+3smjIbS4HlZBagTlpERbdN7iAbWlrfxE3M8c27kTwTawQ7st+OQ==", + "dev": true, + "requires": { + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "parse-json": "^5.0.0", + "path-type": "^4.0.0" }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "dependencies": { + "parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + } + } } }, - "node_modules/truffle-contract-size/node_modules/camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "engines": { - "node": ">=6" + "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==", + "dev": true, + "requires": { + "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/truffle-contract-size/node_modules/cliui": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", - "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", - "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^6.2.0" + "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==", + "dev": true, + "requires": { + "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/truffle-contract-size/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" + "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, + "peer": true + }, + "cross-spawn": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", + "dev": true, + "requires": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" }, - "engines": { - "node": ">=7.0.0" + "dependencies": { + "which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + } } }, - "node_modules/truffle-contract-size/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==" + "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, + "peer": true }, - "node_modules/truffle-contract-size/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==", - "engines": { - "node": ">=0.10.0" + "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, + "requires": { + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" } }, - "node_modules/truffle-contract-size/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==", - "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=8" + "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, + "requires": { + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" } }, - "node_modules/truffle-contract-size/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==", - "dependencies": { - "p-locate": "^4.1.0" - }, - "engines": { - "node": ">=8" + "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, + "requires": { + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" } }, - "node_modules/truffle-contract-size/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==", - "dependencies": { - "p-try": "^2.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "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, + "peer": true + }, + "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==", + "dev": true, + "requires": { + "ms": "^2.1.3" } }, - "node_modules/truffle-contract-size/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==", - "dependencies": { - "p-limit": "^2.2.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/truffle-contract-size/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==", - "engines": { - "node": ">=6" - } - }, - "node_modules/truffle-contract-size/node_modules/path-exists": { + "decamelize": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "engines": { - "node": ">=8" - } + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-4.0.0.tgz", + "integrity": "sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==", + "dev": true }, - "node_modules/truffle-contract-size/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==", - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=8" + "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, + "requires": { + "type-detect": "^4.0.0" } }, - "node_modules/truffle-contract-size/node_modules/y18n": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", - "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==" - }, - "node_modules/truffle-contract-size/node_modules/yargs": { - "version": "15.4.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", - "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", - "dependencies": { - "cliui": "^6.0.0", - "decamelize": "^1.2.0", - "find-up": "^4.1.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^4.2.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^18.1.2" - }, - "engines": { - "node": ">=8" - } + "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, + "peer": true }, - "node_modules/truffle-contract-size/node_modules/yargs-parser": { - "version": "18.1.3", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", - "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", - "dependencies": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - }, - "engines": { - "node": ">=6" - } + "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/truffle/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==", + "define-data-property": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", + "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", "dev": true, - "peer": true, - "engines": { - "node": ">=6" + "requires": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "gopd": "^1.0.1" } }, - "node_modules/truffle/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==", + "define-properties": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", + "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", "dev": true, - "peer": true, + "requires": { + "define-data-property": "^1.0.1", + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + }, "dependencies": { - "balanced-match": "^1.0.0" + "object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dev": true + } } }, - "node_modules/truffle/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, - "peer": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } + "delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "dev": true }, - "node_modules/truffle/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, - "peer": true, - "dependencies": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } + "depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "dev": true }, - "node_modules/truffle/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, - "peer": true, - "engines": { - "node": ">=8" - } + "diff": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz", + "integrity": "sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==", + "dev": true }, - "node_modules/truffle/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==", + "difflib": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/difflib/-/difflib-0.2.4.tgz", + "integrity": "sha512-9YVwmMb0wQHQNr5J9m6BSj6fk4pfGITGQOOs+D9Fl+INODWFOfvhIU1hNv6GgR1RBoC/9NJcwu77zShxV0kT7w==", "dev": true, "peer": true, - "dependencies": { - "p-locate": "^5.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "requires": { + "heap": ">= 0.2.0" } }, - "node_modules/truffle/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==", + "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, "peer": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=10" + "requires": { + "path-type": "^4.0.0" } }, - "node_modules/truffle/node_modules/mocha": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/mocha/-/mocha-10.1.0.tgz", - "integrity": "sha512-vUF7IYxEoN7XhQpFLxQAEMtE4W91acW4B6En9l97MwE9stL1A9gusXfoHZCLVHDUJ/7V5+lbCM6yMqzo5vNymg==", + "dotenv": { + "version": "16.3.1", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.3.1.tgz", + "integrity": "sha512-IPzF4w4/Rd94bA9imS68tZBaYyBWSCE47V1RGuMrB94iyTOIEwRmVL2x/4An+6mETpLrKJ5hQkB8W4kFAadeIQ==", + "dev": true + }, + "elliptic": { + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", + "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", "dev": true, - "peer": 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": "7.2.0", - "he": "1.2.0", - "js-yaml": "4.1.0", - "log-symbols": "4.1.0", - "minimatch": "5.0.1", - "ms": "2.1.3", - "nanoid": "3.3.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" - }, - "bin": { - "_mocha": "bin/_mocha", - "mocha": "bin/mocha.js" - }, - "engines": { - "node": ">= 14.0.0" + "requires": { + "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" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/mochajs" + "dependencies": { + "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/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, - "peer": true + "emoji-regex": { + "version": "10.2.1", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-10.2.1.tgz", + "integrity": "sha512-97g6QgOk8zlDRdgq1WxwgTMgEWGVAQvB5Fdpgc1MkNy56la5SKP9GsMXKDOdqwn90/41a8yPwIGk1Y6WVbeMQA==", + "dev": true }, - "node_modules/truffle/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==", + "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, - "peer": true, - "dependencies": { - "yocto-queue": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "requires": { + "ansi-colors": "^4.1.1" } }, - "node_modules/truffle/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==", + "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 + }, + "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, - "peer": true, - "dependencies": { - "p-limit": "^3.0.2" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "requires": { + "is-arrayish": "^0.2.1" } }, - "node_modules/truffle/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, - "peer": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/truffle/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, - "peer": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" - } - }, - "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, - "peer": true - }, - "node_modules/tsort": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/tsort/-/tsort-0.0.1.tgz", - "integrity": "sha512-Tyrf5mxF8Ofs1tNoxA13lFeZ2Zrbd6cKbuH3V+MQ5sb6DtBj5FjrXVsRWT8YvNAQTqNoz66dz1WsbigI22aEnw==", + "es-abstract": { + "version": "1.23.3", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.3.tgz", + "integrity": "sha512-e+HfNH61Bj1X9/jLc5v1owaLYuHdeHHSQlkhCBiTK8rBvKaULl/beGMxwrMXjpYrv4pz22BlY570vVePA2ho4A==", "dev": true, - "peer": true - }, - "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==", - "dependencies": { - "safe-buffer": "^5.0.1" + "requires": { + "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.8", + "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.6", + "unbox-primitive": "^1.0.2", + "which-typed-array": "^1.1.15" }, - "engines": { - "node": "*" - } - }, - "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==" - }, - "node_modules/type": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/type/-/type-1.2.0.tgz", - "integrity": "sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg==" - }, - "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" - }, - "engines": { - "node": ">= 0.8.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==", - "engines": { - "node": ">=4" + "object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dev": true + } } }, - "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==", + "es-define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz", + "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==", "dev": true, - "peer": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "requires": { + "get-intrinsic": "^1.2.4" } }, - "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==", - "dependencies": { - "media-typer": "0.3.0", - "mime-types": "~2.1.24" - }, - "engines": { - "node": ">= 0.6" - } + "es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "dev": true }, - "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==", + "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": { - "call-bind": "^1.0.7", - "es-errors": "^1.3.0", - "is-typed-array": "^1.1.13" - }, - "engines": { - "node": ">= 0.4" + "requires": { + "es-errors": "^1.3.0" } }, - "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==", + "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": { - "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" + "requires": { + "get-intrinsic": "^1.2.4", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.1" } }, - "node_modules/typed-array-byte-offset": { + "es-shim-unscopables": { "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==", + "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": { - "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" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "requires": { + "hasown": "^2.0.0" } }, - "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==", + "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": { - "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": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "requires": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" } }, - "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==", - "dependencies": { - "is-typedarray": "^1.0.0" - } + "escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "dev": true }, - "node_modules/typeforce": { - "version": "1.18.0", - "resolved": "https://registry.npmjs.org/typeforce/-/typeforce-1.18.0.tgz", - "integrity": "sha512-7uc1O8h1M1g0rArakJdf0uLRSSgFcYexrVoKo+bzJd32gd4gDy2L/Z+8/FjPnU9ydY3pEnVPtr9FyscYY60K1g==", + "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 }, - "node_modules/typescript-compare": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/typescript-compare/-/typescript-compare-0.0.2.tgz", - "integrity": "sha512-8ja4j7pMHkfLJQO2/8tut7ub+J3Lw2S3061eJLFQcvs3tsmJKp8KG5NtpLn7KcY2w08edF74BSVN7qJS0U6oHA==", + "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, "peer": true, - "dependencies": { - "typescript-logic": "^0.0.0" + "requires": { + "esprima": "^2.7.1", + "estraverse": "^1.9.1", + "esutils": "^2.0.2", + "optionator": "^0.8.1", + "source-map": "~0.2.0" } }, - "node_modules/typescript-logic": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/typescript-logic/-/typescript-logic-0.0.0.tgz", - "integrity": "sha512-zXFars5LUkI3zP492ls0VskH3TtdeHCqu0i7/duGt60i5IGPIpAHE/DWo5FqJ6EjQ15YKXrt+AETjv60Dat34Q==", - "dev": true, - "peer": true - }, - "node_modules/typescript-tuple": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/typescript-tuple/-/typescript-tuple-2.2.1.tgz", - "integrity": "sha512-Zcr0lbt8z5ZdEzERHAMAniTiIKerFCMgd7yjq1fPnDJ43et/k9twIFQMUYff9k5oXcsQ0WpvFcgzK2ZKASoW6Q==", - "dev": true, - "peer": true, + "eslint": { + "version": "9.16.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.16.0.tgz", + "integrity": "sha512-whp8mSQI4C8VXd+fLgSM0lh3UlmcFtVwUQjyKCFfsp+2ItAIYhlq/hqGahGqHE6cv9unM41VlqKk2VtKYR2TaA==", + "dev": true, + "requires": { + "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/regexpp": "^4.12.1", + "@eslint/config-array": "^0.19.0", + "@eslint/core": "^0.9.0", + "@eslint/eslintrc": "^3.2.0", + "@eslint/js": "9.16.0", + "@eslint/plugin-kit": "^0.2.3", + "@humanfs/node": "^0.16.6", + "@humanwhocodes/module-importer": "^1.0.1", + "@humanwhocodes/retry": "^0.4.1", + "@types/estree": "^1.0.6", + "@types/json-schema": "^7.0.15", + "ajv": "^6.12.4", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.5", + "debug": "^4.3.2", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^8.2.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" + }, "dependencies": { - "typescript-compare": "^0.0.2" + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "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 + }, + "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, + "requires": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + } + }, + "glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, + "requires": { + "is-glob": "^4.0.3" + } + }, + "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 + }, + "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, + "requires": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + } + }, + "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, + "requires": { + "p-locate": "^5.0.0" + } + }, + "optionator": { + "version": "0.9.4", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz", + "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==", + "dev": true, + "requires": { + "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" + } + }, + "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, + "requires": { + "yocto-queue": "^0.1.0" + } + }, + "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, + "requires": { + "p-limit": "^3.0.2" + } + }, + "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 + }, + "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 + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + }, + "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, + "requires": { + "prelude-ls": "^1.2.1" + } + } } }, - "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==", + "eslint-scope": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.2.0.tgz", + "integrity": "sha512-PHlWUfG6lvPc3yvP5A4PNyBL1W8fkDUccmI21JUu/+GKZBoH/W5u6usENXUrWFRsyoW5ACUjFGgAFQp5gUlb/A==", "dev": true, - "optional": true, - "bin": { - "uglifyjs": "bin/uglifyjs" + "requires": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" }, - "engines": { - "node": ">=0.8.0" + "dependencies": { + "estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true + } } }, - "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==" + "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 }, - "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==", + "espree": { + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-10.3.0.tgz", + "integrity": "sha512-0QYC8b24HWY8zjRnDTL6RiHfDbAWn63qb4LMj1Z4b076A4une81+z03Kg7l7mn/48PUTqoLptSXez8oknU8Clg==", "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" + "requires": { + "acorn": "^8.14.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^4.2.0" } }, - "node_modules/undici": { - "version": "5.28.4", - "resolved": "https://registry.npmjs.org/undici/-/undici-5.28.4.tgz", - "integrity": "sha512-72RFADWFqKmUb2hmmvNODKL3p9hcB6Gt2DOQMis1SEBaV6a4MH8soBvzg+95CYhCKPFedut2JY9bMfrDl9D23g==", + "esprima": { + "version": "2.7.3", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz", + "integrity": "sha512-OarPfz0lFCiW4/AV2Oy1Rp9qu0iusTKqykwTspGCZtPxmF81JR4MmIebvF1F9+UOKth2ZubLQ4XGGaU+hSn99A==", "dev": true, - "peer": true, - "dependencies": { - "@fastify/busboy": "^2.0.0" - }, - "engines": { - "node": ">=14.0" - } - }, - "node_modules/universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "engines": { - "node": ">= 4.0.0" - } - }, - "node_modules/unpipe": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", - "engines": { - "node": ">= 0.8" - } + "peer": true }, - "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==", - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - } - ], - "dependencies": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" - }, - "bin": { - "browserslist-lint": "cli.js" + "esquery": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.6.0.tgz", + "integrity": "sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==", + "dev": true, + "requires": { + "estraverse": "^5.1.0" }, - "peerDependencies": { - "browserslist": ">= 4.21.0" + "dependencies": { + "estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true + } } }, - "node_modules/upper-case": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/upper-case/-/upper-case-1.1.3.tgz", - "integrity": "sha512-WRbjgmYzgXkCV7zNVpy5YgrHgbBv126rMALQQMrmzOVC4GM2waQ9x7xtm8VU+1yF2kWyPzI9zbZ48n4vSxwfSA==", - "dev": true - }, - "node_modules/upper-case-first": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/upper-case-first/-/upper-case-first-1.1.2.tgz", - "integrity": "sha512-wINKYvI3Db8dtjikdAqoBbZoP6Q+PZUyfMR7pmwHzjC2quzSkUq5DmPrTtPEqHaz8AGtmsB4TqwapMTM1QAQOQ==", + "esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", "dev": true, + "requires": { + "estraverse": "^5.2.0" + }, "dependencies": { - "upper-case": "^1.1.1" + "estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "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": { - "punycode": "^2.1.0" - } + "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, + "peer": true }, - "node_modules/url-set-query": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/url-set-query/-/url-set-query-1.0.0.tgz", - "integrity": "sha512-3AChu4NiXquPfeckE5R5cGdiHCMWJx1dwCWOmWIL4KHAziJNOFIYJlpGFeKDvwLPHovZRCxK3cYlwzqI9Vp+Gg==" + "esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "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, + "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, + "peer": true, + "requires": { + "@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" + }, "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", - "integrity": "sha512-E8VjFIQ/TyQgp+TZfS6l8yp/xWppSAHzidGiRrqe4bK4XP9pTRyKFgGJpO3SN7zdX4DeomTrwaseCHovfpFcqQ==" - }, - "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==", - "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" - } - }, - "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==", - "engines": { - "node": ">= 0.4.0" - } - }, - "node_modules/uuid": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", - "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", - "dev": true, - "peer": true, - "bin": { - "uuid": "dist/bin/uuid" - } - }, - "node_modules/validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", - "dev": true, - "dependencies": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "node_modules/value-or-promise": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/value-or-promise/-/value-or-promise-1.0.11.tgz", - "integrity": "sha512-41BrgH+dIbCFXClcSapVs5M6GkENd3gQOJpEfPDNa71LsUGMXDL0jMWpI/Rh7WhX+Aalfz2TTS3Zt5pUsbnhLg==", - "dev": true, - "optional": true, - "peer": true, - "engines": { - "node": ">=12" - } - }, - "node_modules/varint": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/varint/-/varint-5.0.2.tgz", - "integrity": "sha512-lKxKYG6H03yCZUpAGOPOsMcGxd1RHCu1iKvEHYDPmTyq2HueGhD73ssNBqqQWfvYs04G9iUFRvmAVLW20Jw6ow==" - }, - "node_modules/varuint-bitcoin": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/varuint-bitcoin/-/varuint-bitcoin-1.1.2.tgz", - "integrity": "sha512-4EVb+w4rx+YfVM32HQX42AbbT7/1f5zwAYhIujKXKk8NQK+JfRVl3pqT3hjNn/L+RstigmGGKVwHA/P0wgITZw==", - "dev": true, - "dependencies": { - "safe-buffer": "^5.1.1" - } - }, - "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==", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/verror": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==", - "engines": [ - "node >=0.6.0" - ], - "dependencies": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" - } - }, - "node_modules/vuvuzela": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/vuvuzela/-/vuvuzela-1.0.3.tgz", - "integrity": "sha512-Tm7jR1xTzBbPW+6y1tknKiEhz04Wf/1iZkcTJjSFcpNko43+dFW6+OOeQe9taJIug3NdfUAjFKgUSyQrIKaDvQ==", - "dev": true, - "optional": true, - "peer": true - }, - "node_modules/web3": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/web3/-/web3-1.10.0.tgz", - "integrity": "sha512-YfKY9wSkGcM8seO+daR89oVTcbu18NsVfvOngzqMYGUU0pPSQmE57qQDvQzUeoIOHAnXEBNzrhjQJmm8ER0rng==", - "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" - } - }, - "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==", - "hasInstallScript": true, - "dependencies": { - "@types/node": "^12.12.6", - "got": "12.1.0", - "swarm-js": "^0.1.40" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "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/web3-core": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/web3-core/-/web3-core-1.10.0.tgz", - "integrity": "sha512-fWySwqy2hn3TL89w5TM8wXF1Z2Q6frQTKHWmP0ppRQorEK8NcHJRfeMiv/mQlSKoTS1F6n/nv2uyZsixFycjYQ==", - "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" - } - }, - "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==", - "dependencies": { - "web3-eth-iban": "1.10.0", - "web3-utils": "1.10.0" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "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==", - "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" - } - }, - "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==", - "dependencies": { - "eventemitter3": "4.0.4" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "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==", - "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/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==", - "dependencies": { - "eventemitter3": "4.0.4", - "web3-core-helpers": "1.10.0" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "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==" - }, - "node_modules/web3-core/node_modules/bignumber.js": { - "version": "9.1.1", - "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.1.1.tgz", - "integrity": "sha512-pHm4LsMJ6lzgNGVfZHjMoO8sdoRhOzOH4MLmY65Jg70bpxCKu5iOHNJyfF6OyvYw7t8Fpf35RuzUyqnQsj8Vig==", - "engines": { - "node": "*" - } - }, - "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==", - "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" - } - }, - "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==", - "dependencies": { - "@ethersproject/abi": "^5.6.3", - "web3-utils": "1.10.0" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "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==", - "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" - } - }, - "node_modules/web3-eth-accounts/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==", - "dependencies": { - "crc-32": "^1.2.0", - "ethereumjs-util": "^7.1.1" - } - }, - "node_modules/web3-eth-accounts/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==", - "dependencies": { - "@ethereumjs/common": "^2.5.0", - "ethereumjs-util": "^7.1.2" - } - }, - "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==", - "dependencies": { - "bn.js": "^4.11.6", - "elliptic": "^6.4.0", - "xhr-request-promise": "^0.1.2" - } - }, - "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/web3-eth-accounts/node_modules/uuid": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.0.tgz", - "integrity": "sha512-MXcSTerfPa4uqyzStbRoTgt5XIe3x5+42+q1sDuy3R5MDk66URdLMOZe5aPX/SQd+kuYAh0FdP/pO28IkQyTeg==", - "bin": { - "uuid": "dist/bin/uuid" - } - }, - "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==", - "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" - } - }, - "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==", - "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" - } - }, - "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==", - "dependencies": { - "bn.js": "^5.2.1", - "web3-utils": "1.10.0" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "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==", - "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/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==" - }, - "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==", - "dependencies": { - "web3-core": "1.10.0", - "web3-core-method": "1.10.0", - "web3-utils": "1.10.0" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/web3-provider-engine": { - "version": "16.0.3", - "resolved": "https://registry.npmjs.org/web3-provider-engine/-/web3-provider-engine-16.0.3.tgz", - "integrity": "sha512-Q3bKhGqLfMTdLvkd4TtkGYJHcoVQ82D1l8jTIwwuJp/sAp7VHnRYb9YJ14SW/69VMWoOhSpPLZV2tWb9V0WJoA==", - "dependencies": { - "@ethereumjs/tx": "^3.3.0", - "async": "^2.5.0", - "backoff": "^2.5.0", - "clone": "^2.0.0", - "cross-fetch": "^2.1.0", - "eth-block-tracker": "^4.4.2", - "eth-json-rpc-filters": "^4.2.1", - "eth-json-rpc-infura": "^5.1.0", - "eth-json-rpc-middleware": "^6.0.0", - "eth-rpc-errors": "^3.0.0", - "eth-sig-util": "^1.4.2", - "ethereumjs-block": "^1.2.2", - "ethereumjs-util": "^5.1.5", - "ethereumjs-vm": "^2.3.4", - "json-stable-stringify": "^1.0.1", - "promise-to-callback": "^1.0.0", - "readable-stream": "^2.2.9", - "request": "^2.85.0", - "semaphore": "^1.0.3", - "ws": "^5.1.1", - "xhr": "^2.2.0", - "xtend": "^4.0.1" - }, - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/web3-provider-engine/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/web3-provider-engine/node_modules/bs58check": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/bs58check/-/bs58check-2.1.2.tgz", - "integrity": "sha512-0TS1jicxdU09dwJMNZtVAfzPi6Q6QeN0pM1Fkzrjn+XYHvzMKPU3pHVpva+769iNVSfIYWf7LJ6WR+BuuMf8cA==", - "dependencies": { - "bs58": "^4.0.0", - "create-hash": "^1.1.0", - "safe-buffer": "^5.1.2" - } - }, - "node_modules/web3-provider-engine/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==", - "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-provider-engine/node_modules/ethereumjs-util": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.2.1.tgz", - "integrity": "sha512-v3kT+7zdyCm1HIqWlLNrHGqHGLpGYIhjeHxQjnDXjLT2FyGJDsd3LWMYUo7pAFRrk86CR3nUJfhC81CCoJNNGQ==", - "dependencies": { - "bn.js": "^4.11.0", - "create-hash": "^1.1.2", - "elliptic": "^6.5.2", - "ethereum-cryptography": "^0.1.3", - "ethjs-util": "^0.1.3", - "rlp": "^2.0.0", - "safe-buffer": "^5.1.1" - } - }, - "node_modules/web3-provider-engine/node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" - }, - "node_modules/web3-provider-engine/node_modules/readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "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-provider-engine/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/web3-provider-engine/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==", - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, - "node_modules/web3-provider-engine/node_modules/ws": { - "version": "5.2.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-5.2.3.tgz", - "integrity": "sha512-jZArVERrMsKUatIdnLzqvcfydI85dvd/Fp1u/VOpfdDWQ4c9qWXe+VIeAbQ5FrDwciAkr+lzofXLz3Kuf26AOA==", - "dependencies": { - "async-limiter": "~1.0.0" - } - }, - "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==", - "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" - } - }, - "node_modules/web3-providers-http/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==", - "dependencies": { - "node-fetch": "^2.6.12" - } - }, - "node_modules/web3-providers-http/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==", - "dependencies": { - "whatwg-url": "^5.0.0" - }, - "engines": { - "node": "4.x || >=6.0.0" - }, - "peerDependencies": { - "encoding": "^0.1.0" - }, - "peerDependenciesMeta": { - "encoding": { - "optional": true - } - } - }, - "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==", - "dependencies": { - "oboe": "2.1.5", - "web3-core-helpers": "1.10.0" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "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==", - "dependencies": { - "eventemitter3": "4.0.4", - "web3-core-helpers": "1.10.0", - "websocket": "^1.0.32" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/web3-shh": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/web3-shh/-/web3-shh-1.10.0.tgz", - "integrity": "sha512-uNUUuNsO2AjX41GJARV9zJibs11eq6HtOe6Wr0FtRUcj8SN6nHeYIzwstAvJ4fXA53gRqFMTxdntHEt9aXVjpg==", - "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" - } - }, - "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==", - "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==", - "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==", - "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==" - }, - "node_modules/whatwg-fetch": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-2.0.4.tgz", - "integrity": "sha512-dcQ1GWpOD/eEQ97k66aiEVpNnapVj90/+R+SXTPYGHpYBBypfKJEQjLrvMZ7YXbKm21gXd4NcuxUTjiv1YtLng==" - }, - "node_modules/whatwg-mimetype": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-3.0.0.tgz", - "integrity": "sha512-nt+N2dzIutVRxARx1nghPKGv1xHikU7HKdfafKkLNLindmPU/ch3U31NOCGGA/dmPcmb1VlofO0vnKAcsm0o/Q==", - "dev": true, - "optional": true, - "peer": true, - "engines": { - "node": ">=12" - } - }, - "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==", - "dependencies": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" - } - }, - "node_modules/which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "dev": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "which": "bin/which" - } - }, - "node_modules/which-boxed-primitive": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", - "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", - "dev": true, - "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" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/which-module": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha512-B+enWhmw6cjfVC7kS8Pj9pCrKSc5txArRyaYGe088shv/FGWH+0Rjx/xPgtsWfsUtS27FkP697E4DDhgrgoc0Q==" - }, - "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==", - "dependencies": { - "available-typed-arrays": "^1.0.7", - "call-bind": "^1.0.7", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-tostringtag": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/wif": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/wif/-/wif-2.0.6.tgz", - "integrity": "sha512-HIanZn1zmduSF+BQhkE+YXIbEiH0xPr1012QbFEGB0xsKqJii0/SqJjyn8dFv6y36kOznMgMB+LGcbZTJ1xACQ==", - "dev": true, - "dependencies": { - "bs58check": "<3.0.0" - } - }, - "node_modules/wif/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, - "dependencies": { - "bs58": "^4.0.0", - "create-hash": "^1.1.0", - "safe-buffer": "^5.1.2" - } - }, - "node_modules/window-size": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.2.0.tgz", - "integrity": "sha512-UD7d8HFA2+PZsbKyaOCEy8gMh1oDtHgJh1LfgjQ4zVXmYjAT/kvz3PueITKuqDiIXQe7yzpPnxX3lNc+AhQMyw==", - "dev": true, - "bin": { - "window-size": "cli.js" - }, - "engines": { - "node": ">= 0.10.0" - } - }, - "node_modules/word-wrap": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", - "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/wordwrap": { - "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/workerpool": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.2.1.tgz", - "integrity": "sha512-ILEIE97kDZvF9Wb9f6h5aXK4swSlKGUcOEGiIYb2OOu/IrDU9iwj0fD//SsA6E5ibwJxpEvhullJY4Sl4GcpAw==", - "dev": true - }, - "node_modules/wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - } - }, - "node_modules/wrap-ansi/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/wrap-ansi/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/wrap-ansi/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" - }, - "node_modules/write-stream": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/write-stream/-/write-stream-0.4.3.tgz", - "integrity": "sha512-IJrvkhbAnj89W/GAVdVgbnPiVw5Ntg/B4tc/MUCIEwj/g6JIww1DWJyB/yBMT3yw2/TkT6IUZ0+IYef3flEw8A==", - "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "readable-stream": "~0.0.2" - } - }, - "node_modules/write-stream/node_modules/readable-stream": { - "version": "0.0.4", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-0.0.4.tgz", - "integrity": "sha512-azrivNydKRYt7zwLV5wWUK7YzKTWs3q87xSmY6DlHapPrCvaT6ZrukvM5erV+yCSSPmZT8zkSdttOHQpWWm9zw==", - "dev": true, - "optional": true, - "peer": true - }, - "node_modules/ws": { - "version": "7.5.9", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz", - "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", - "dev": true, - "peer": true, - "engines": { - "node": ">=8.3.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": "^5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - }, - "node_modules/xhr": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/xhr/-/xhr-2.6.0.tgz", - "integrity": "sha512-/eCGLb5rxjx5e3mF1A7s+pLlR6CGyqWN91fv1JgER5mVWg1MZmlhBvy9kjcsOdRk8RrIujotWyJamfyrp+WIcA==", - "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==", - "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==", - "dependencies": { - "xhr-request": "^1.1.0" - } - }, - "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/xss": { - "version": "1.0.14", - "resolved": "https://registry.npmjs.org/xss/-/xss-1.0.14.tgz", - "integrity": "sha512-og7TEJhXvn1a7kzZGQ7ETjdQVS2UfZyTlsEdDOqvQF7GoxNfY+0YLCzBy1kPdsDDx4QuNAonQPddpsn6Xl/7sw==", - "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "commander": "^2.20.3", - "cssfilter": "0.0.10" - }, - "bin": { - "xss": "bin/xss" - }, - "engines": { - "node": ">= 0.10.0" - } - }, - "node_modules/xss/node_modules/commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true, - "optional": true, - "peer": true - }, - "node_modules/xtend": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", - "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", - "engines": { - "node": ">=0.4" - } - }, - "node_modules/y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/yaeti": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/yaeti/-/yaeti-0.0.6.tgz", - "integrity": "sha512-MvQa//+KcZCUkBTIC9blM+CU9J2GzuTytsOUwf2lidtvkx/6gnEp1QvJv34t9vdjhFmha/mUiNDbN0D0mJWdug==", - "engines": { - "node": ">=0.10.32" - } - }, - "node_modules/yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" - }, - "node_modules/yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", - "dev": true, - "dependencies": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.0", - "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/yargs-parser": { - "version": "20.2.4", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.4.tgz", - "integrity": "sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "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, - "dependencies": { - "camelcase": "^6.0.0", - "decamelize": "^4.0.0", - "flat": "^5.0.2", - "is-plain-obj": "^2.1.0" - }, - "engines": { - "node": ">=10" - } - }, - "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==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - } - }, - "dependencies": { - "@ampproject/remapping": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", - "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", - "peer": true, - "requires": { - "@jridgewell/gen-mapping": "^0.1.0", - "@jridgewell/trace-mapping": "^0.3.9" - } - }, - "@apollo/protobufjs": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/@apollo/protobufjs/-/protobufjs-1.2.7.tgz", - "integrity": "sha512-Lahx5zntHPZia35myYDBRuF58tlwPskwHc5CWBZC/4bMKB6siTBWwtMrkqXcsNwQiFSzSx5hKdRPUmemrEp3Gg==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "@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.0", - "long": "^4.0.0" - } - }, - "@apollo/usage-reporting-protobuf": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@apollo/usage-reporting-protobuf/-/usage-reporting-protobuf-4.1.0.tgz", - "integrity": "sha512-hXouMuw5pQVkzi8dgMybmr6Y11+eRmMQVoB5TF0HyTwAg9SOq/v3OCuiYqcVUKdBcskU9Msp+XvjAk0GKpWCwQ==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "@apollo/protobufjs": "1.2.7" - } - }, - "@apollo/utils.dropunuseddefinitions": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@apollo/utils.dropunuseddefinitions/-/utils.dropunuseddefinitions-1.1.0.tgz", - "integrity": "sha512-jU1XjMr6ec9pPoL+BFWzEPW7VHHulVdGKMkPAMiCigpVIT11VmCbnij0bWob8uS3ODJ65tZLYKAh/55vLw2rbg==", - "dev": true, - "optional": true, - "peer": true, - "requires": {} - }, - "@apollo/utils.keyvaluecache": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@apollo/utils.keyvaluecache/-/utils.keyvaluecache-1.0.2.tgz", - "integrity": "sha512-p7PVdLPMnPzmXSQVEsy27cYEjVON+SH/Wb7COyW3rQN8+wJgT1nv9jZouYtztWW8ZgTkii5T6tC9qfoDREd4mg==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "@apollo/utils.logger": "^1.0.0", - "lru-cache": "7.10.1 - 7.13.1" - }, - "dependencies": { - "lru-cache": { - "version": "7.13.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.13.1.tgz", - "integrity": "sha512-CHqbAq7NFlW3RSnoWXLJBxCWaZVBrfa9UEHId2M3AW8iEBurbqduNexEUCGc3SHc6iCYXNJCDi903LajSVAEPQ==", - "dev": true, - "optional": true, - "peer": true - } - } - }, - "@apollo/utils.logger": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@apollo/utils.logger/-/utils.logger-1.0.1.tgz", - "integrity": "sha512-XdlzoY7fYNK4OIcvMD2G94RoFZbzTQaNP0jozmqqMudmaGo2I/2Jx71xlDJ801mWA/mbYRihyaw6KJii7k5RVA==", - "dev": true, - "optional": true, - "peer": true - }, - "@apollo/utils.printwithreducedwhitespace": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@apollo/utils.printwithreducedwhitespace/-/utils.printwithreducedwhitespace-1.1.0.tgz", - "integrity": "sha512-GfFSkAv3n1toDZ4V6u2d7L4xMwLA+lv+6hqXicMN9KELSJ9yy9RzuEXaX73c/Ry+GzRsBy/fdSUGayGqdHfT2Q==", - "dev": true, - "optional": true, - "peer": true, - "requires": {} - }, - "@apollo/utils.removealiases": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@apollo/utils.removealiases/-/utils.removealiases-1.0.0.tgz", - "integrity": "sha512-6cM8sEOJW2LaGjL/0vHV0GtRaSekrPQR4DiywaApQlL9EdROASZU5PsQibe2MWeZCOhNrPRuHh4wDMwPsWTn8A==", - "dev": true, - "optional": true, - "peer": true, - "requires": {} - }, - "@apollo/utils.sortast": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@apollo/utils.sortast/-/utils.sortast-1.1.0.tgz", - "integrity": "sha512-VPlTsmUnOwzPK5yGZENN069y6uUHgeiSlpEhRnLFYwYNoJHsuJq2vXVwIaSmts015WTPa2fpz1inkLYByeuRQA==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "lodash.sortby": "^4.7.0" - } - }, - "@apollo/utils.stripsensitiveliterals": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@apollo/utils.stripsensitiveliterals/-/utils.stripsensitiveliterals-1.2.0.tgz", - "integrity": "sha512-E41rDUzkz/cdikM5147d8nfCFVKovXxKBcjvLEQ7bjZm/cg9zEcXvS6vFY8ugTubI3fn6zoqo0CyU8zT+BGP9w==", - "dev": true, - "optional": true, - "peer": true, - "requires": {} - }, - "@apollo/utils.usagereporting": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@apollo/utils.usagereporting/-/utils.usagereporting-1.0.1.tgz", - "integrity": "sha512-6dk+0hZlnDbahDBB2mP/PZ5ybrtCJdLMbeNJD+TJpKyZmSY6bA3SjI8Cr2EM9QA+AdziywuWg+SgbWUF3/zQqQ==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "@apollo/usage-reporting-protobuf": "^4.0.0", - "@apollo/utils.dropunuseddefinitions": "^1.1.0", - "@apollo/utils.printwithreducedwhitespace": "^1.1.0", - "@apollo/utils.removealiases": "1.0.0", - "@apollo/utils.sortast": "^1.1.0", - "@apollo/utils.stripsensitiveliterals": "^1.2.0" - } - }, - "@apollographql/apollo-tools": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/@apollographql/apollo-tools/-/apollo-tools-0.5.4.tgz", - "integrity": "sha512-shM3q7rUbNyXVVRkQJQseXv6bnYM3BUma/eZhwXR4xsuM+bqWnJKvW7SAfRjP7LuSCocrexa5AXhjjawNHrIlw==", - "dev": true, - "optional": true, - "peer": true, - "requires": {} - }, - "@apollographql/graphql-playground-html": { - "version": "1.6.29", - "resolved": "https://registry.npmjs.org/@apollographql/graphql-playground-html/-/graphql-playground-html-1.6.29.tgz", - "integrity": "sha512-xCcXpoz52rI4ksJSdOCxeOCn2DLocxwHf9dVT/Q90Pte1LX+LY+91SFtJF3KXVHH8kEin+g1KKCQPKBjZJfWNA==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "xss": "^1.0.8" - } - }, - "@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==", - "requires": { - "@babel/highlight": "^7.24.2", - "picocolors": "^1.0.0" - } - }, - "@babel/compat-data": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.20.5.tgz", - "integrity": "sha512-KZXo2t10+/jxmkhNXc7pZTqRvSOIvVv/+lJwHS+B2rErwOyjuVRh60yVpb7liQ1U5t7lLJ1bz+t8tSypUZdm0g==" - }, - "@babel/core": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.20.5.tgz", - "integrity": "sha512-UdOWmk4pNWTm/4DlPUl/Pt4Gz4rcEMb7CY0Y3eJl5Yz1vI8ZJGmHWaVE55LoxRjdpx0z259GE9U5STA9atUinQ==", - "peer": true, - "requires": { - "@ampproject/remapping": "^2.1.0", - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.20.5", - "@babel/helper-compilation-targets": "^7.20.0", - "@babel/helper-module-transforms": "^7.20.2", - "@babel/helpers": "^7.20.5", - "@babel/parser": "^7.20.5", - "@babel/template": "^7.18.10", - "@babel/traverse": "^7.20.5", - "@babel/types": "^7.20.5", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.2", - "json5": "^2.2.1", - "semver": "^6.3.0" - } - }, - "@babel/generator": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.5.tgz", - "integrity": "sha512-x32i4hEXvr+iI0NEoEfDKzlemF8AmtOP8CcrRaEcpzysWuoEb1KknpcvMsHKPONoKZiDuItklgWhB18xEhr9PA==", - "peer": true, - "requires": { - "@babel/types": "^7.24.5", - "@jridgewell/gen-mapping": "^0.3.5", - "@jridgewell/trace-mapping": "^0.3.25", - "jsesc": "^2.5.1" - }, - "dependencies": { - "@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==", - "peer": true, - "requires": { - "@jridgewell/set-array": "^1.2.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.24" - } - } - } - }, - "@babel/helper-compilation-targets": { - "version": "7.20.0", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.0.tgz", - "integrity": "sha512-0jp//vDGp9e8hZzBc6N/KwA5ZK3Wsm/pfm4CrY7vzegkVxc65SgSn6wYOnwHe9Js9HRQ1YTCKLGPzDtaS3RoLQ==", - "requires": { - "@babel/compat-data": "^7.20.0", - "@babel/helper-validator-option": "^7.18.6", - "browserslist": "^4.21.3", - "semver": "^6.3.0" - } - }, - "@babel/helper-define-polyfill-provider": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.3.tgz", - "integrity": "sha512-z5aQKU4IzbqCC1XH0nAqfsFLMVSo22SBKUc0BxGrLkolTdPTructy0ToNnlO2zA4j9Q/7pjMZf0DSY+DSTYzww==", - "requires": { - "@babel/helper-compilation-targets": "^7.17.7", - "@babel/helper-plugin-utils": "^7.16.7", - "debug": "^4.1.1", - "lodash.debounce": "^4.0.8", - "resolve": "^1.14.2", - "semver": "^6.1.2" - } - }, - "@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==", - "peer": true - }, - "@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==", - "peer": true, - "requires": { - "@babel/template": "^7.22.15", - "@babel/types": "^7.23.0" - } - }, - "@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==", - "peer": true, - "requires": { - "@babel/types": "^7.22.5" - } - }, - "@babel/helper-module-imports": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz", - "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==", - "requires": { - "@babel/types": "^7.18.6" - } - }, - "@babel/helper-module-transforms": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.20.2.tgz", - "integrity": "sha512-zvBKyJXRbmK07XhMuujYoJ48B5yvvmM6+wcpv6Ivj4Yg6qO7NOZOSnvZN9CRl1zz1Z4cKf8YejmCMh8clOoOeA==", - "peer": true, - "requires": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-simple-access": "^7.20.2", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/helper-validator-identifier": "^7.19.1", - "@babel/template": "^7.18.10", - "@babel/traverse": "^7.20.1", - "@babel/types": "^7.20.2" - } - }, - "@babel/helper-plugin-utils": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz", - "integrity": "sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ==" - }, - "@babel/helper-simple-access": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz", - "integrity": "sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA==", - "peer": true, - "requires": { - "@babel/types": "^7.20.2" - } - }, - "@babel/helper-split-export-declaration": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.5.tgz", - "integrity": "sha512-5CHncttXohrHk8GWOFCcCl4oRD9fKosWlIRgWm4ql9VYioKm52Mk2xsmoohvm7f3JoiLSM5ZgJuRaf5QZZYd3Q==", - "peer": true, - "requires": { - "@babel/types": "^7.24.5" - } - }, - "@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==" - }, - "@babel/helper-validator-identifier": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.5.tgz", - "integrity": "sha512-3q93SSKX2TWCG30M2G2kwaKeTYgEUp5Snjuj8qm729SObL6nbtUldAi37qbxkD5gg3xnBio+f9nqpSepGZMvxA==" - }, - "@babel/helper-validator-option": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz", - "integrity": "sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw==" - }, - "@babel/helpers": { - "version": "7.20.6", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.20.6.tgz", - "integrity": "sha512-Pf/OjgfgFRW5bApskEz5pvidpim7tEDPlFtKcNRXWmfHGn9IEI2W2flqRQXTFb7gIPTyK++N6rVHuwKut4XK6w==", - "peer": true, - "requires": { - "@babel/template": "^7.18.10", - "@babel/traverse": "^7.20.5", - "@babel/types": "^7.20.5" - } - }, - "@babel/highlight": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.5.tgz", - "integrity": "sha512-8lLmua6AVh/8SLJRRVD6V8p73Hir9w5mJrhE+IPpILG31KKlI9iz5zmBYKcWPS59qSfgP9RaSBQSHHE81WKuEw==", - "requires": { - "@babel/helper-validator-identifier": "^7.24.5", - "chalk": "^2.4.2", - "js-tokens": "^4.0.0", - "picocolors": "^1.0.0" - } - }, - "@babel/parser": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.5.tgz", - "integrity": "sha512-EOv5IK8arwh3LI47dz1b0tKUb/1uhHAnHJOrjgtQMIpu1uXd9mlFrJg9IUgGUgZ41Ch0K8REPTYpO7B76b4vJg==", - "peer": true - }, - "@babel/plugin-transform-runtime": { - "version": "7.19.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.19.6.tgz", - "integrity": "sha512-PRH37lz4JU156lYFW1p8OxE5i7d6Sl/zV58ooyr+q1J1lnQPyg5tIiXlIwNVhJaY4W3TmOtdc8jqdXQcB1v5Yw==", - "requires": { - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-plugin-utils": "^7.19.0", - "babel-plugin-polyfill-corejs2": "^0.3.3", - "babel-plugin-polyfill-corejs3": "^0.6.0", - "babel-plugin-polyfill-regenerator": "^0.4.1", - "semver": "^6.3.0" - } - }, - "@babel/runtime": { - "version": "7.20.6", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.20.6.tgz", - "integrity": "sha512-Q+8MqP7TiHMWzSfwiJwXCjyf4GYA4Dgw3emg/7xmwsdLJOZUp+nMqcOwOzzYheuM1rhDu8FSj2l0aoMygEuXuA==", - "requires": { - "regenerator-runtime": "^0.13.11" - } - }, - "@babel/template": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", - "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", - "peer": true, - "requires": { - "@babel/code-frame": "^7.23.5", - "@babel/parser": "^7.24.0", - "@babel/types": "^7.24.0" - } - }, - "@babel/traverse": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.5.tgz", - "integrity": "sha512-7aaBLeDQ4zYcUFDUD41lJc1fG8+5IU9DaNSJAgal866FGvmD5EbWQgnEC6kO1gGLsX0esNkfnJSndbTXA3r7UA==", - "peer": true, - "requires": { - "@babel/code-frame": "^7.24.2", - "@babel/generator": "^7.24.5", - "@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.24.5", - "@babel/parser": "^7.24.5", - "@babel/types": "^7.24.5", - "debug": "^4.3.1", - "globals": "^11.1.0" - } - }, - "@babel/types": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.5.tgz", - "integrity": "sha512-6mQNsaLeXTw0nxYUYu+NSa4Hx4BlF1x1x8/PMFbiR+GBSr+2DkECc69b8hgy2frEodNcvPffeH8YfWd3LI6jhQ==", - "requires": { - "@babel/helper-string-parser": "^7.24.1", - "@babel/helper-validator-identifier": "^7.24.5", - "to-fast-properties": "^2.0.0" - } - }, - "@ensdomains/address-encoder": { - "version": "0.1.9", - "resolved": "https://registry.npmjs.org/@ensdomains/address-encoder/-/address-encoder-0.1.9.tgz", - "integrity": "sha512-E2d2gP4uxJQnDu2Kfg1tHNspefzbLT8Tyjrm5sEuim32UkU2sm5xL4VXtgc2X33fmPEw9+jUMpGs4veMbf+PYg==", - "dev": true, - "requires": { - "bech32": "^1.1.3", - "blakejs": "^1.1.0", - "bn.js": "^4.11.8", - "bs58": "^4.0.1", - "crypto-addr-codec": "^0.1.7", - "nano-base32": "^1.0.1", - "ripemd160": "^2.0.2" - }, - "dependencies": { - "bech32": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/bech32/-/bech32-1.1.4.tgz", - "integrity": "sha512-s0IrSOzLlbvX7yp4WBfPITzpAU8sqQcpsmwXDiKwrG4r491vwCO/XpejasRNl0piBMe/DvP4Tz0mIS/X1DPJBQ==", - "dev": true - }, - "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 - } - } - }, - "@ensdomains/ens": { - "version": "0.4.5", - "resolved": "https://registry.npmjs.org/@ensdomains/ens/-/ens-0.4.5.tgz", - "integrity": "sha512-JSvpj1iNMFjK6K+uVl4unqMoa9rf5jopb8cya5UGBWz23Nw8hSNT7efgUx4BTlAPAgpNlEioUfeTyQ6J9ZvTVw==", - "dev": true, - "requires": { - "bluebird": "^3.5.2", - "eth-ens-namehash": "^2.0.8", - "solc": "^0.4.20", - "testrpc": "0.0.1", - "web3-utils": "^1.0.0-beta.31" - }, - "dependencies": { - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", - "dev": true - }, - "camelcase": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", - "integrity": "sha512-4nhGqUkc4BqbBBB4Q6zLuD7lzzrHYrjKGeYaEji/3tFR5VdJu9v+LilhGIVe8wxEJPPOeWo7eg8dwY13TZ1BNg==", - "dev": true - }, - "cliui": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", - "integrity": "sha512-0yayqDxWQbqk3ojkYqUKqaAQ6AfNKeKWRNA8kR0WXzAsdHpP4BIaOmMAG87JGuO6qcobyW4GjxHd9PmhEd+T9w==", - "dev": true, - "requires": { - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wrap-ansi": "^2.0.0" - } - }, - "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 - }, - "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, - "requires": { - "graceful-fs": "^4.1.2", - "jsonfile": "^2.1.0", - "klaw": "^1.0.0", - "path-is-absolute": "^1.0.0", - "rimraf": "^2.2.8" - } - }, - "get-caller-file": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", - "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha512-1pqUqRjkhPJ9miNq9SwMfdvi6lBJcd6eFxvfaivQhaH3SgisfiuudvFntdKOmxuee/77l+FPjKrQjWvmPjWrRw==", - "dev": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "jsonfile": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-2.4.0.tgz", - "integrity": "sha512-PKllAqbgLgxHaj8TElYymKCAgrASebJrWpTnEkOaTowt23VKXXN0sUeriJ+eh7y6ufb/CC5ap11pz71/cM0hUw==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.6" - } - }, - "require-from-string": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-1.2.1.tgz", - "integrity": "sha512-H7AkJWMobeskkttHyhTVtS0fxpFLjxhbfMa6Bk3wimP7sdPRGL3EyCg3sAQenFfAe+xQ+oAc85Nmtvq0ROM83Q==", - "dev": true - }, - "require-main-filename": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz", - "integrity": "sha512-IqSUtOVP4ksd1C/ej5zeEh/BIP2ajqpn8c5x+q99gvcIG/Qf0cud5raVnE/Dwd0ua9TXYDoDc0RE5hBSdz22Ug==", - "dev": true - }, - "semver": { - "version": "5.7.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", - "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", - "dev": true - }, - "solc": { - "version": "0.4.26", - "resolved": "https://registry.npmjs.org/solc/-/solc-0.4.26.tgz", - "integrity": "sha512-o+c6FpkiHd+HPjmjEVpQgH7fqZ14tJpXhho+/bQXlXbliLIS/xjXb42Vxh+qQY1WCSTMQ0+a5vR9vi0MfhU6mA==", - "dev": true, - "requires": { - "fs-extra": "^0.30.0", - "memorystream": "^0.3.1", - "require-from-string": "^1.1.0", - "semver": "^5.3.0", - "yargs": "^4.7.1" - } - }, - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha512-0XsVpQLnVCXHJfyEs8tC0zpTVIr5PKKsQtkT29IwupnPTjtPmQ3xT/4yCREF9hYkV/3M3kzcUTSAZT6a6h81tw==", - "dev": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "which-module": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-1.0.0.tgz", - "integrity": "sha512-F6+WgncZi/mJDrammbTuHe1q0R5hOXv/mBaiNA2TCNT/LTHusX0V+CJnj9XT8ki5ln2UZyyddDgHfCzyrOH7MQ==", - "dev": true - }, - "wrap-ansi": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", - "integrity": "sha512-vAaEaDM946gbNpH5pLVNR+vX2ht6n0Bt3GXwVB1AuAqZosOvHNF3P7wDnh8KLkSqgUh0uh77le7Owgoz+Z9XBw==", - "dev": true, - "requires": { - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1" - } - }, - "y18n": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.2.tgz", - "integrity": "sha512-uGZHXkHnhF0XeeAPgnKfPv1bgKAYyVvmNL1xlKsPYZPaIHxGti2hHqvOCQv71XMsLxu1QjergkqogUnms5D3YQ==", - "dev": true - }, - "yargs": { - "version": "4.8.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-4.8.1.tgz", - "integrity": "sha512-LqodLrnIDM3IFT+Hf/5sxBnEGECrfdC1uIbgZeJmESCSo4HoCAaKEus8MylXHAkdacGc0ye+Qa+dpkuom8uVYA==", - "dev": true, - "requires": { - "cliui": "^3.2.0", - "decamelize": "^1.1.1", - "get-caller-file": "^1.0.1", - "lodash.assign": "^4.0.3", - "os-locale": "^1.4.0", - "read-pkg-up": "^1.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^1.0.1", - "set-blocking": "^2.0.0", - "string-width": "^1.0.1", - "which-module": "^1.0.0", - "window-size": "^0.2.0", - "y18n": "^3.2.1", - "yargs-parser": "^2.4.1" - } - }, - "yargs-parser": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-2.4.1.tgz", - "integrity": "sha512-9pIKIJhnI5tonzG6OnCFlz/yln8xHYcGl+pn3xR0Vzff0vzN1PbNRaelgfgRUwZ3s4i3jvxT9WhmUGL4whnasA==", - "dev": true, - "requires": { - "camelcase": "^3.0.0", - "lodash.assign": "^4.0.6" - } - } - } - }, - "@ensdomains/ensjs": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@ensdomains/ensjs/-/ensjs-2.1.0.tgz", - "integrity": "sha512-GRbGPT8Z/OJMDuxs75U/jUNEC0tbL0aj7/L/QQznGYKm/tiasp+ndLOaoULy9kKJFC0TBByqfFliEHDgoLhyog==", - "dev": true, - "requires": { - "@babel/runtime": "^7.4.4", - "@ensdomains/address-encoder": "^0.1.7", - "@ensdomains/ens": "0.4.5", - "@ensdomains/resolver": "0.2.4", - "content-hash": "^2.5.2", - "eth-ens-namehash": "^2.0.8", - "ethers": "^5.0.13", - "js-sha3": "^0.8.0" - }, - "dependencies": { - "ethers": { - "version": "5.7.2", - "resolved": "https://registry.npmjs.org/ethers/-/ethers-5.7.2.tgz", - "integrity": "sha512-wswUsmWo1aOK8rR7DIKiWSw9DbLWe6x98Jrn8wcTflTVvaXhAMaB5zGAXy0GYQEQp9iO1iSHWVyARQm11zUtyg==", - "dev": true, - "requires": { - "@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" - } - } - } - }, - "@ensdomains/resolver": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/@ensdomains/resolver/-/resolver-0.2.4.tgz", - "integrity": "sha512-bvaTH34PMCbv6anRa9I/0zjLJgY4EuznbEMgbV77JBCQ9KNC46rzi0avuxpOfu+xDjPEtSFGqVEOr5GlUSGudA==", - "dev": true - }, - "@ethereumjs/common": { - "version": "2.6.5", - "resolved": "https://registry.npmjs.org/@ethereumjs/common/-/common-2.6.5.tgz", - "integrity": "sha512-lRyVQOeCDaIVtgfbowla32pzeDv2Obr8oR8Put5RdUBNRGr1VGPGQNGP6elWIpgK3YdpzqTOh4GyUGOureVeeA==", - "requires": { - "crc-32": "^1.2.0", - "ethereumjs-util": "^7.1.5" - } - }, - "@ethereumjs/tx": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/@ethereumjs/tx/-/tx-3.5.2.tgz", - "integrity": "sha512-gQDNJWKrSDGu2w7w0PzVXVBNMzb7wwdDOmOqczmhNjqFxFuIbhVJDwiGEnxFNC2/b8ifcZzY7MLcluizohRzNw==", - "requires": { - "@ethereumjs/common": "^2.6.4", - "ethereumjs-util": "^7.1.5" - } - }, - "@ethersproject/abi": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/abi/-/abi-5.7.0.tgz", - "integrity": "sha512-351ktp42TiRcYB3H1OP8yajPeAQstMW/yCFokj/AthP9bLHzQFPlOrxOcwYEDkUAICmOHljvN4K39OMTMUa9RA==", - "requires": { - "@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/abstract-provider": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/abstract-provider/-/abstract-provider-5.7.0.tgz", - "integrity": "sha512-R41c9UkchKCpAqStMYUpdunjo3pkEvZC3FAwZn5S5MGbXoMQOHIdHItezTETxAO5bevtMApSyEhn9+CHcDsWBw==", - "requires": { - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/networks": "^5.7.0", - "@ethersproject/properties": "^5.7.0", - "@ethersproject/transactions": "^5.7.0", - "@ethersproject/web": "^5.7.0" - } - }, - "@ethersproject/abstract-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==", - "requires": { - "@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/address": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/address/-/address-5.7.0.tgz", - "integrity": "sha512-9wYhYt7aghVGo758POM5nqcOMaE168Q6aRLJZwUmiqSrAungkG74gSSeKEIR7ukixesdRZGPgVqme6vmxs1fkA==", - "requires": { - "@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/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==", - "requires": { - "@ethersproject/bytes": "^5.7.0" - } - }, - "@ethersproject/basex": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/basex/-/basex-5.7.0.tgz", - "integrity": "sha512-ywlh43GwZLv2Voc2gQVTKBoVQ1mti3d8HK5aMxsfu/nRDnMmNqaSJ3r3n85HBByT8OpoY96SXM1FogC533T4zw==", - "dev": true, - "requires": { - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/properties": "^5.7.0" - } - }, - "@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==", - "requires": { - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "bn.js": "^5.2.1" - } - }, - "@ethersproject/bytes": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.7.0.tgz", - "integrity": "sha512-nsbxwgFXWh9NyYWo+U8atvmMsSdKJprTcICAkvbBffT75qDocbuggBU0SJiVK2MuTrp0q+xvLkTnGMPK1+uA9A==", - "requires": { - "@ethersproject/logger": "^5.7.0" - } - }, - "@ethersproject/constants": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/constants/-/constants-5.7.0.tgz", - "integrity": "sha512-DHI+y5dBNvkpYUMiRQyxRBYBefZkJfo70VUkUAsRjcPs47muV9evftfZ0PJVCXYbAiCgght0DtcF9srFQmIgWA==", - "requires": { - "@ethersproject/bignumber": "^5.7.0" - } - }, - "@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==", - "dev": true, - "requires": { - "@ethersproject/abi": "^5.7.0", - "@ethersproject/abstract-provider": "^5.7.0", - "@ethersproject/abstract-signer": "^5.7.0", - "@ethersproject/address": "^5.7.0", - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/constants": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/properties": "^5.7.0", - "@ethersproject/transactions": "^5.7.0" - } - }, - "@ethersproject/hash": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/hash/-/hash-5.7.0.tgz", - "integrity": "sha512-qX5WrQfnah1EFnO5zJv1v46a8HW0+E5xuBBDTwMFZLuVTx0tbU2kkx15NqdjxecrLGatQN9FGQKpb1FKdHCt+g==", - "requires": { - "@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/hdnode": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/hdnode/-/hdnode-5.7.0.tgz", - "integrity": "sha512-OmyYo9EENBPPf4ERhR7oj6uAtUAhYGqOnIS+jE5pTXvdKBS99ikzq1E7Iv0ZQZ5V36Lqx1qZLeak0Ra16qpeOg==", - "dev": true, - "requires": { - "@ethersproject/abstract-signer": "^5.7.0", - "@ethersproject/basex": "^5.7.0", - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/pbkdf2": "^5.7.0", - "@ethersproject/properties": "^5.7.0", - "@ethersproject/sha2": "^5.7.0", - "@ethersproject/signing-key": "^5.7.0", - "@ethersproject/strings": "^5.7.0", - "@ethersproject/transactions": "^5.7.0", - "@ethersproject/wordlists": "^5.7.0" - } - }, - "@ethersproject/json-wallets": { - "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==", - "dev": true, - "requires": { - "@ethersproject/abstract-signer": "^5.7.0", - "@ethersproject/address": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/hdnode": "^5.7.0", - "@ethersproject/keccak256": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/pbkdf2": "^5.7.0", - "@ethersproject/properties": "^5.7.0", - "@ethersproject/random": "^5.7.0", - "@ethersproject/strings": "^5.7.0", - "@ethersproject/transactions": "^5.7.0", - "aes-js": "3.0.0", - "scrypt-js": "3.0.1" - } - }, - "@ethersproject/keccak256": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/keccak256/-/keccak256-5.7.0.tgz", - "integrity": "sha512-2UcPboeL/iW+pSg6vZ6ydF8tCnv3Iu/8tUmLLzWWGzxWKFFqOBQFLo6uLUv6BDrLgCDfN28RJ/wtByx+jZ4KBg==", - "requires": { - "@ethersproject/bytes": "^5.7.0", - "js-sha3": "0.8.0" - } - }, - "@ethersproject/logger": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.7.0.tgz", - "integrity": "sha512-0odtFdXu/XHtjQXJYA3u9G0G8btm0ND5Cu8M7i5vhEcE8/HmF4Lbdqanwyv4uQTr2tx6b7fQRmgLrsnpQlmnig==" - }, - "@ethersproject/networks": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/@ethersproject/networks/-/networks-5.7.1.tgz", - "integrity": "sha512-n/MufjFYv3yFcUyfhnXotyDlNdFb7onmkSy8aQERi2PjNcnWQ66xXxa3XlS8nCcA8aJKJjIIMNJTC7tu80GwpQ==", - "requires": { - "@ethersproject/logger": "^5.7.0" - } - }, - "@ethersproject/pbkdf2": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/pbkdf2/-/pbkdf2-5.7.0.tgz", - "integrity": "sha512-oR/dBRZR6GTyaofd86DehG72hY6NpAjhabkhxgr3X2FpJtJuodEl2auADWBZfhDHgVCbu3/H/Ocq2uC6dpNjjw==", - "dev": true, - "requires": { - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/sha2": "^5.7.0" - } - }, - "@ethersproject/properties": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/properties/-/properties-5.7.0.tgz", - "integrity": "sha512-J87jy8suntrAkIZtecpxEPxY//szqr1mlBaYlQ0r4RCaiD2hjheqF9s1LVE8vVuJCXisjIP+JgtK/Do54ej4Sw==", - "requires": { - "@ethersproject/logger": "^5.7.0" - } - }, - "@ethersproject/providers": { - "version": "5.7.2", - "resolved": "https://registry.npmjs.org/@ethersproject/providers/-/providers-5.7.2.tgz", - "integrity": "sha512-g34EWZ1WWAVgr4aptGlVBF8mhl3VWjv+8hoAnzStu8Ah22VHBsuGzP17eb6xDVRzw895G4W7vvx60lFFur/1Rg==", - "dev": true, - "requires": { - "@ethersproject/abstract-provider": "^5.7.0", - "@ethersproject/abstract-signer": "^5.7.0", - "@ethersproject/address": "^5.7.0", - "@ethersproject/base64": "^5.7.0", - "@ethersproject/basex": "^5.7.0", - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/constants": "^5.7.0", - "@ethersproject/hash": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/networks": "^5.7.0", - "@ethersproject/properties": "^5.7.0", - "@ethersproject/random": "^5.7.0", - "@ethersproject/rlp": "^5.7.0", - "@ethersproject/sha2": "^5.7.0", - "@ethersproject/strings": "^5.7.0", - "@ethersproject/transactions": "^5.7.0", - "@ethersproject/web": "^5.7.0", - "bech32": "1.1.4", - "ws": "7.4.6" - }, - "dependencies": { - "bech32": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/bech32/-/bech32-1.1.4.tgz", - "integrity": "sha512-s0IrSOzLlbvX7yp4WBfPITzpAU8sqQcpsmwXDiKwrG4r491vwCO/XpejasRNl0piBMe/DvP4Tz0mIS/X1DPJBQ==", - "dev": true - }, - "ws": { - "version": "7.4.6", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.4.6.tgz", - "integrity": "sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A==", - "dev": true, - "requires": {} - } - } - }, - "@ethersproject/random": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/random/-/random-5.7.0.tgz", - "integrity": "sha512-19WjScqRA8IIeWclFme75VMXSBvi4e6InrUNuaR4s5pTF2qNhcGdCUwdxUVGtDDqC00sDLCO93jPQoDUH4HVmQ==", - "dev": true, - "requires": { - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/logger": "^5.7.0" - } - }, - "@ethersproject/rlp": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/rlp/-/rlp-5.7.0.tgz", - "integrity": "sha512-rBxzX2vK8mVF7b0Tol44t5Tb8gomOHkj5guL+HhzQ1yBh/ydjGnpw6at+X6Iw0Kp3OzzzkcKp8N9r0W4kYSs9w==", - "requires": { - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/logger": "^5.7.0" - } - }, - "@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==", - "dev": true, - "requires": { - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "hash.js": "1.1.7" - } - }, - "@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==", - "requires": { - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/properties": "^5.7.0", - "bn.js": "^5.2.1", - "elliptic": "6.5.4", - "hash.js": "1.1.7" - } - }, - "@ethersproject/solidity": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/solidity/-/solidity-5.7.0.tgz", - "integrity": "sha512-HmabMd2Dt/raavyaGukF4XxizWKhKQ24DoLtdNbBmNKUOPqwjsKQSdV9GQtj9CBEea9DlzETlVER1gYeXXBGaA==", - "dev": true, - "requires": { - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/keccak256": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/sha2": "^5.7.0", - "@ethersproject/strings": "^5.7.0" - } - }, - "@ethersproject/strings": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/strings/-/strings-5.7.0.tgz", - "integrity": "sha512-/9nu+lj0YswRNSH0NXYqrh8775XNyEdUQAuf3f+SmOrnVewcJ5SBNAjF7lpgehKi4abvNNXyf+HX86czCdJ8Mg==", - "requires": { - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/constants": "^5.7.0", - "@ethersproject/logger": "^5.7.0" - } - }, - "@ethersproject/transactions": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/transactions/-/transactions-5.7.0.tgz", - "integrity": "sha512-kmcNicCp1lp8qanMTC3RIikGgoJ80ztTyvtsFvCYpSCfkjhD0jZ2LOrnbcuxuToLIUYYf+4XwD1rP+B/erDIhQ==", - "requires": { - "@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/units": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/units/-/units-5.7.0.tgz", - "integrity": "sha512-pD3xLMy3SJu9kG5xDGI7+xhTEmGXlEqXU4OfNapmfnxLVY4EMSSRp7j1k7eezutBPH7RBN/7QPnwR7hzNlEFeg==", - "dev": true, - "requires": { - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/constants": "^5.7.0", - "@ethersproject/logger": "^5.7.0" - } - }, - "@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==", - "dev": true, - "requires": { - "@ethersproject/abstract-provider": "^5.7.0", - "@ethersproject/abstract-signer": "^5.7.0", - "@ethersproject/address": "^5.7.0", - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/hash": "^5.7.0", - "@ethersproject/hdnode": "^5.7.0", - "@ethersproject/json-wallets": "^5.7.0", - "@ethersproject/keccak256": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/properties": "^5.7.0", - "@ethersproject/random": "^5.7.0", - "@ethersproject/signing-key": "^5.7.0", - "@ethersproject/transactions": "^5.7.0", - "@ethersproject/wordlists": "^5.7.0" - } - }, - "@ethersproject/web": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/@ethersproject/web/-/web-5.7.1.tgz", - "integrity": "sha512-Gueu8lSvyjBWL4cYsWsjh6MtMwM0+H4HvqFPZfB6dV8ctbP9zFAO73VG1cMWae0FLPCtz0peKPpZY8/ugJJX2w==", - "requires": { - "@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/wordlists": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/wordlists/-/wordlists-5.7.0.tgz", - "integrity": "sha512-S2TFNJNfHWVHNE6cNDjbVlZ6MgE17MIxMbMg2zv3wn+3XSJGosL1m9ZVv3GXCf/2ymSsQ+hRI5IzoMJTG6aoVA==", - "dev": true, - "requires": { - "@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" - } - }, - "@fastify/busboy": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/@fastify/busboy/-/busboy-2.1.1.tgz", - "integrity": "sha512-vBZP4NlzfOlerQTnba4aqZoMhE/a9HY7HRqoOPaETQcSQuWEIyZMHGfVu6w9wGtGK5fED5qRs2DteVCjOH60sA==", - "dev": true, - "peer": true - }, - "@graphql-tools/batch-execute": { - "version": "8.5.1", - "resolved": "https://registry.npmjs.org/@graphql-tools/batch-execute/-/batch-execute-8.5.1.tgz", - "integrity": "sha512-hRVDduX0UDEneVyEWtc2nu5H2PxpfSfM/riUlgZvo/a/nG475uyehxR5cFGvTEPEQUKY3vGIlqvtRigzqTfCew==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "@graphql-tools/utils": "8.9.0", - "dataloader": "2.1.0", - "tslib": "^2.4.0", - "value-or-promise": "1.0.11" - }, - "dependencies": { - "tslib": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", - "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==", - "dev": true, - "optional": true, - "peer": true - } - } - }, - "@graphql-tools/delegate": { - "version": "8.8.1", - "resolved": "https://registry.npmjs.org/@graphql-tools/delegate/-/delegate-8.8.1.tgz", - "integrity": "sha512-NDcg3GEQmdEHlnF7QS8b4lM1PSF+DKeFcIlLEfZFBvVq84791UtJcDj8734sIHLukmyuAxXMfA1qLd2l4lZqzA==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "@graphql-tools/batch-execute": "8.5.1", - "@graphql-tools/schema": "8.5.1", - "@graphql-tools/utils": "8.9.0", - "dataloader": "2.1.0", - "tslib": "~2.4.0", - "value-or-promise": "1.0.11" - }, - "dependencies": { - "tslib": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.1.tgz", - "integrity": "sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA==", - "dev": true, - "optional": true, - "peer": true - } - } - }, - "@graphql-tools/merge": { - "version": "8.3.1", - "resolved": "https://registry.npmjs.org/@graphql-tools/merge/-/merge-8.3.1.tgz", - "integrity": "sha512-BMm99mqdNZbEYeTPK3it9r9S6rsZsQKtlqJsSBknAclXq2pGEfOxjcIZi+kBSkHZKPKCRrYDd5vY0+rUmIHVLg==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "@graphql-tools/utils": "8.9.0", - "tslib": "^2.4.0" - }, - "dependencies": { - "tslib": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", - "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==", - "dev": true, - "optional": true, - "peer": true - } - } - }, - "@graphql-tools/mock": { - "version": "8.7.19", - "resolved": "https://registry.npmjs.org/@graphql-tools/mock/-/mock-8.7.19.tgz", - "integrity": "sha512-LT2boYM+Y1vGFEhzmC7xDFRL8RPG20FbNcuk2/hHGH0Kh8K1hkItvL89tul3Pl7N6xerOnDZ3c3fx7Ls5GuFxA==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "@graphql-tools/schema": "9.0.17", - "@graphql-tools/utils": "9.2.1", - "fast-json-stable-stringify": "^2.1.0", - "tslib": "^2.4.0" - }, - "dependencies": { - "@graphql-tools/merge": { - "version": "8.4.0", - "resolved": "https://registry.npmjs.org/@graphql-tools/merge/-/merge-8.4.0.tgz", - "integrity": "sha512-3XYCWe0d3I4F1azNj1CdShlbHfTIfiDgj00R9uvFH8tHKh7i1IWN3F7QQYovcHKhayaR6zPok3YYMESYQcBoaA==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "@graphql-tools/utils": "9.2.1", - "tslib": "^2.4.0" - } - }, - "@graphql-tools/schema": { - "version": "9.0.17", - "resolved": "https://registry.npmjs.org/@graphql-tools/schema/-/schema-9.0.17.tgz", - "integrity": "sha512-HVLq0ecbkuXhJlpZ50IHP5nlISqH2GbNgjBJhhRzHeXhfwlUOT4ISXGquWTmuq61K0xSaO0aCjMpxe4QYbKTng==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "@graphql-tools/merge": "8.4.0", - "@graphql-tools/utils": "9.2.1", - "tslib": "^2.4.0", - "value-or-promise": "1.0.12" - } - }, - "@graphql-tools/utils": { - "version": "9.2.1", - "resolved": "https://registry.npmjs.org/@graphql-tools/utils/-/utils-9.2.1.tgz", - "integrity": "sha512-WUw506Ql6xzmOORlriNrD6Ugx+HjVgYxt9KCXD9mHAak+eaXSwuGGPyE60hy9xaDEoXKBsG7SkG69ybitaVl6A==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "@graphql-typed-document-node/core": "^3.1.1", - "tslib": "^2.4.0" - } - }, - "tslib": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", - "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==", - "dev": true, - "optional": true, - "peer": true - }, - "value-or-promise": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/value-or-promise/-/value-or-promise-1.0.12.tgz", - "integrity": "sha512-Z6Uz+TYwEqE7ZN50gwn+1LCVo9ZVrpxRPOhOLnncYkY1ZzOYtrX8Fwf/rFktZ8R5mJms6EZf5TqNOMeZmnPq9Q==", - "dev": true, - "optional": true, - "peer": true - } - } - }, - "@graphql-tools/schema": { - "version": "8.5.1", - "resolved": "https://registry.npmjs.org/@graphql-tools/schema/-/schema-8.5.1.tgz", - "integrity": "sha512-0Esilsh0P/qYcB5DKQpiKeQs/jevzIadNTaT0jeWklPMwNbT7yMX4EqZany7mbeRRlSRwMzNzL5olyFdffHBZg==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "@graphql-tools/merge": "8.3.1", - "@graphql-tools/utils": "8.9.0", - "tslib": "^2.4.0", - "value-or-promise": "1.0.11" - }, - "dependencies": { - "tslib": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", - "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==", - "dev": true, - "optional": true, - "peer": true - } - } - }, - "@graphql-tools/utils": { - "version": "8.9.0", - "resolved": "https://registry.npmjs.org/@graphql-tools/utils/-/utils-8.9.0.tgz", - "integrity": "sha512-pjJIWH0XOVnYGXCqej8g/u/tsfV4LvLlj0eATKQu5zwnxd/TiTHq7Cg313qUPTFFHZ3PP5wJ15chYVtLDwaymg==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "tslib": "^2.4.0" - }, - "dependencies": { - "tslib": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", - "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==", - "dev": true, - "optional": true, - "peer": true - } - } - }, - "@graphql-typed-document-node/core": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/@graphql-typed-document-node/core/-/core-3.1.2.tgz", - "integrity": "sha512-9anpBMM9mEgZN4wr2v8wHJI2/u5TnnggewRN6OlvXTTnuVyoY19X6rOv9XTqKRw6dcGKwZsBi8n0kDE2I5i4VA==", - "dev": true, - "optional": true, - "peer": true, - "requires": {} - }, - "@josephg/resolvable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@josephg/resolvable/-/resolvable-1.0.1.tgz", - "integrity": "sha512-CtzORUwWTTOTqfVtHaKRJ0I1kNQd1bpn3sUh8I3nJDVY+5/M/Oe1DnEWzPQvqq/xPIIkzzzIP7mfCoAjFRvDhg==", - "dev": true, - "optional": true, - "peer": true - }, - "@jridgewell/gen-mapping": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", - "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", - "peer": true, - "requires": { - "@jridgewell/set-array": "^1.0.0", - "@jridgewell/sourcemap-codec": "^1.4.10" - } - }, - "@jridgewell/resolve-uri": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", - "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", - "peer": true - }, - "@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==", - "peer": true - }, - "@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==", - "peer": true - }, - "@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==", - "peer": true, - "requires": { - "@jridgewell/resolve-uri": "^3.1.0", - "@jridgewell/sourcemap-codec": "^1.4.14" - } - }, - "@mempool/mempool.js": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@mempool/mempool.js/-/mempool.js-2.3.0.tgz", - "integrity": "sha512-FrN9WjZCEyyLodrTPQxmlWDh8B/UGK0jlKfVNzJxqzQ1IMPo/Hpdws8xwYEcsks5JqsaxbjLwaC3GAtJ6Brd0A==", - "dev": true, - "requires": { - "axios": "0.24.0", - "ws": "8.3.0" - }, - "dependencies": { - "axios": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.24.0.tgz", - "integrity": "sha512-Q6cWsys88HoPgAaFAVUb0WpPk0O8iTeisR9IMqy9G8AbO4NlpVknrnQS03zzF9PGAWgO3cgletO3VjV/P7VztA==", - "dev": true, - "requires": { - "follow-redirects": "^1.14.4" - } - }, - "ws": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.3.0.tgz", - "integrity": "sha512-Gs5EZtpqZzLvmIM59w4igITU57lrtYVFneaa434VROv4thzJyV6UjIL3D42lslWlI+D4KzLYnxSwtfuiO79sNw==", - "dev": true, - "requires": {} - } - } - }, - "@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==", - "requires": { - "ethereumjs-abi": "^0.6.8", - "ethereumjs-util": "^6.2.1", - "ethjs-util": "^0.1.6", - "tweetnacl": "^1.0.3", - "tweetnacl-util": "^0.15.1" - }, - "dependencies": { - "@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==", - "requires": { - "@types/node": "*" - } - }, - "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==" - }, - "bs58check": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/bs58check/-/bs58check-2.1.2.tgz", - "integrity": "sha512-0TS1jicxdU09dwJMNZtVAfzPi6Q6QeN0pM1Fkzrjn+XYHvzMKPU3pHVpva+769iNVSfIYWf7LJ6WR+BuuMf8cA==", - "requires": { - "bs58": "^4.0.0", - "create-hash": "^1.1.0", - "safe-buffer": "^5.1.2" - } - }, - "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==", - "requires": { - "@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" - } - }, - "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==", - "requires": { - "@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" - } - } - } - }, - "@metamask/safe-event-emitter": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@metamask/safe-event-emitter/-/safe-event-emitter-2.0.0.tgz", - "integrity": "sha512-/kSXhY692qiV1MXu6EeOZvg5nECLclxNXcKCxJ3cXQgYuRymRHpdx/t7JXfsK+JLjwA1e1c1/SBrlQYpusC29Q==" - }, - "@noble/hashes": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.1.2.tgz", - "integrity": "sha512-KYRCASVTv6aeUi1tsF8/vpyR7zpfs3FUzy2Jqm+MU+LmUKhQ0y2FpfwqkCcxSg2ua4GALJd8k2R76WxwZGbQpA==" - }, - "@noble/secp256k1": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/@noble/secp256k1/-/secp256k1-1.6.3.tgz", - "integrity": "sha512-T04e4iTurVy7I8Sw4+c5OSN9/RkPlo1uKxAomtxQNLq8j1uPAqnsqG1bqvY3Jv7c13gyr6dui0zmh/I3+f/JaQ==" - }, - "@nodelib/fs.scandir": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", - "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", - "dev": true, - "requires": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" - } - }, - "@nodelib/fs.stat": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", - "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", - "dev": true - }, - "@nodelib/fs.walk": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", - "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", - "dev": true, - "requires": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" - } - }, - "@nomicfoundation/ethereumjs-block": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@nomicfoundation/ethereumjs-block/-/ethereumjs-block-4.0.0.tgz", - "integrity": "sha512-bk8uP8VuexLgyIZAHExH1QEovqx0Lzhc9Ntm63nCRKLHXIZkobaFaeCVwTESV7YkPKUk7NiK11s8ryed4CS9yA==", - "dev": true, - "peer": true, - "requires": { - "@nomicfoundation/ethereumjs-common": "^3.0.0", - "@nomicfoundation/ethereumjs-rlp": "^4.0.0", - "@nomicfoundation/ethereumjs-trie": "^5.0.0", - "@nomicfoundation/ethereumjs-tx": "^4.0.0", - "@nomicfoundation/ethereumjs-util": "^8.0.0", - "ethereum-cryptography": "0.1.3" - }, - "dependencies": { - "bs58check": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/bs58check/-/bs58check-2.1.2.tgz", - "integrity": "sha512-0TS1jicxdU09dwJMNZtVAfzPi6Q6QeN0pM1Fkzrjn+XYHvzMKPU3pHVpva+769iNVSfIYWf7LJ6WR+BuuMf8cA==", - "dev": true, - "peer": true, - "requires": { - "bs58": "^4.0.0", - "create-hash": "^1.1.0", - "safe-buffer": "^5.1.2" - } - }, - "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, - "peer": true, - "requires": { - "@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" - } - } - } - }, - "@nomicfoundation/ethereumjs-blockchain": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/@nomicfoundation/ethereumjs-blockchain/-/ethereumjs-blockchain-6.0.0.tgz", - "integrity": "sha512-pLFEoea6MWd81QQYSReLlLfH7N9v7lH66JC/NMPN848ySPPQA5renWnE7wPByfQFzNrPBuDDRFFULMDmj1C0xw==", - "dev": true, - "peer": true, - "requires": { - "@nomicfoundation/ethereumjs-block": "^4.0.0", - "@nomicfoundation/ethereumjs-common": "^3.0.0", - "@nomicfoundation/ethereumjs-ethash": "^2.0.0", - "@nomicfoundation/ethereumjs-rlp": "^4.0.0", - "@nomicfoundation/ethereumjs-trie": "^5.0.0", - "@nomicfoundation/ethereumjs-util": "^8.0.0", - "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" - }, - "dependencies": { - "bs58check": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/bs58check/-/bs58check-2.1.2.tgz", - "integrity": "sha512-0TS1jicxdU09dwJMNZtVAfzPi6Q6QeN0pM1Fkzrjn+XYHvzMKPU3pHVpva+769iNVSfIYWf7LJ6WR+BuuMf8cA==", - "dev": true, - "peer": true, - "requires": { - "bs58": "^4.0.0", - "create-hash": "^1.1.0", - "safe-buffer": "^5.1.2" - } - }, - "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, - "peer": true, - "requires": { - "@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" - } - } - } - }, - "@nomicfoundation/ethereumjs-common": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@nomicfoundation/ethereumjs-common/-/ethereumjs-common-3.0.0.tgz", - "integrity": "sha512-WS7qSshQfxoZOpHG/XqlHEGRG1zmyjYrvmATvc4c62+gZXgre1ymYP8ZNgx/3FyZY0TWe9OjFlKOfLqmgOeYwA==", - "dev": true, - "peer": true, - "requires": { - "@nomicfoundation/ethereumjs-util": "^8.0.0", - "crc-32": "^1.2.0" - } - }, - "@nomicfoundation/ethereumjs-ethash": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@nomicfoundation/ethereumjs-ethash/-/ethereumjs-ethash-2.0.0.tgz", - "integrity": "sha512-WpDvnRncfDUuXdsAXlI4lXbqUDOA+adYRQaEezIkxqDkc+LDyYDbd/xairmY98GnQzo1zIqsIL6GB5MoMSJDew==", - "dev": true, - "peer": true, - "requires": { - "@nomicfoundation/ethereumjs-block": "^4.0.0", - "@nomicfoundation/ethereumjs-rlp": "^4.0.0", - "@nomicfoundation/ethereumjs-util": "^8.0.0", - "abstract-level": "^1.0.3", - "bigint-crypto-utils": "^3.0.23", - "ethereum-cryptography": "0.1.3" - }, - "dependencies": { - "bs58check": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/bs58check/-/bs58check-2.1.2.tgz", - "integrity": "sha512-0TS1jicxdU09dwJMNZtVAfzPi6Q6QeN0pM1Fkzrjn+XYHvzMKPU3pHVpva+769iNVSfIYWf7LJ6WR+BuuMf8cA==", - "dev": true, - "peer": true, - "requires": { - "bs58": "^4.0.0", - "create-hash": "^1.1.0", - "safe-buffer": "^5.1.2" - } - }, - "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, - "peer": true, - "requires": { - "@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" - } - } - } - }, - "@nomicfoundation/ethereumjs-evm": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@nomicfoundation/ethereumjs-evm/-/ethereumjs-evm-1.0.0.tgz", - "integrity": "sha512-hVS6qRo3V1PLKCO210UfcEQHvlG7GqR8iFzp0yyjTg2TmJQizcChKgWo8KFsdMw6AyoLgLhHGHw4HdlP8a4i+Q==", - "dev": true, - "peer": true, - "requires": { - "@nomicfoundation/ethereumjs-common": "^3.0.0", - "@nomicfoundation/ethereumjs-util": "^8.0.0", - "@types/async-eventemitter": "^0.2.1", - "async-eventemitter": "^0.2.4", - "debug": "^4.3.3", - "ethereum-cryptography": "0.1.3", - "mcl-wasm": "^0.7.1", - "rustbn.js": "~0.2.0" - }, - "dependencies": { - "bs58check": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/bs58check/-/bs58check-2.1.2.tgz", - "integrity": "sha512-0TS1jicxdU09dwJMNZtVAfzPi6Q6QeN0pM1Fkzrjn+XYHvzMKPU3pHVpva+769iNVSfIYWf7LJ6WR+BuuMf8cA==", - "dev": true, - "peer": true, - "requires": { - "bs58": "^4.0.0", - "create-hash": "^1.1.0", - "safe-buffer": "^5.1.2" - } - }, - "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, - "peer": true, - "requires": { - "@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" - } - } - } - }, - "@nomicfoundation/ethereumjs-rlp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@nomicfoundation/ethereumjs-rlp/-/ethereumjs-rlp-4.0.0.tgz", - "integrity": "sha512-GaSOGk5QbUk4eBP5qFbpXoZoZUj/NrW7MRa0tKY4Ew4c2HAS0GXArEMAamtFrkazp0BO4K5p2ZCG3b2FmbShmw==", - "dev": true, - "peer": true - }, - "@nomicfoundation/ethereumjs-statemanager": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@nomicfoundation/ethereumjs-statemanager/-/ethereumjs-statemanager-1.0.0.tgz", - "integrity": "sha512-jCtqFjcd2QejtuAMjQzbil/4NHf5aAWxUc+CvS0JclQpl+7M0bxMofR2AJdtz+P3u0ke2euhYREDiE7iSO31vQ==", - "dev": true, - "peer": true, - "requires": { - "@nomicfoundation/ethereumjs-common": "^3.0.0", - "@nomicfoundation/ethereumjs-rlp": "^4.0.0", - "@nomicfoundation/ethereumjs-trie": "^5.0.0", - "@nomicfoundation/ethereumjs-util": "^8.0.0", - "debug": "^4.3.3", - "ethereum-cryptography": "0.1.3", - "functional-red-black-tree": "^1.0.1" - }, - "dependencies": { - "bs58check": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/bs58check/-/bs58check-2.1.2.tgz", - "integrity": "sha512-0TS1jicxdU09dwJMNZtVAfzPi6Q6QeN0pM1Fkzrjn+XYHvzMKPU3pHVpva+769iNVSfIYWf7LJ6WR+BuuMf8cA==", - "dev": true, - "peer": true, - "requires": { - "bs58": "^4.0.0", - "create-hash": "^1.1.0", - "safe-buffer": "^5.1.2" - } - }, - "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, - "peer": true, - "requires": { - "@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" - } - } - } - }, - "@nomicfoundation/ethereumjs-trie": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@nomicfoundation/ethereumjs-trie/-/ethereumjs-trie-5.0.0.tgz", - "integrity": "sha512-LIj5XdE+s+t6WSuq/ttegJzZ1vliwg6wlb+Y9f4RlBpuK35B9K02bO7xU+E6Rgg9RGptkWd6TVLdedTI4eNc2A==", - "dev": true, - "peer": true, - "requires": { - "@nomicfoundation/ethereumjs-rlp": "^4.0.0", - "@nomicfoundation/ethereumjs-util": "^8.0.0", - "ethereum-cryptography": "0.1.3", - "readable-stream": "^3.6.0" - }, - "dependencies": { - "bs58check": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/bs58check/-/bs58check-2.1.2.tgz", - "integrity": "sha512-0TS1jicxdU09dwJMNZtVAfzPi6Q6QeN0pM1Fkzrjn+XYHvzMKPU3pHVpva+769iNVSfIYWf7LJ6WR+BuuMf8cA==", - "dev": true, - "peer": true, - "requires": { - "bs58": "^4.0.0", - "create-hash": "^1.1.0", - "safe-buffer": "^5.1.2" - } - }, - "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, - "peer": true, - "requires": { - "@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" - } - } - } - }, - "@nomicfoundation/ethereumjs-tx": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@nomicfoundation/ethereumjs-tx/-/ethereumjs-tx-4.0.0.tgz", - "integrity": "sha512-Gg3Lir2lNUck43Kp/3x6TfBNwcWC9Z1wYue9Nz3v4xjdcv6oDW9QSMJxqsKw9QEGoBBZ+gqwpW7+F05/rs/g1w==", - "dev": true, - "peer": true, - "requires": { - "@nomicfoundation/ethereumjs-common": "^3.0.0", - "@nomicfoundation/ethereumjs-rlp": "^4.0.0", - "@nomicfoundation/ethereumjs-util": "^8.0.0", - "ethereum-cryptography": "0.1.3" - }, - "dependencies": { - "bs58check": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/bs58check/-/bs58check-2.1.2.tgz", - "integrity": "sha512-0TS1jicxdU09dwJMNZtVAfzPi6Q6QeN0pM1Fkzrjn+XYHvzMKPU3pHVpva+769iNVSfIYWf7LJ6WR+BuuMf8cA==", - "dev": true, - "peer": true, - "requires": { - "bs58": "^4.0.0", - "create-hash": "^1.1.0", - "safe-buffer": "^5.1.2" - } - }, - "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, - "peer": true, - "requires": { - "@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" - } - } - } - }, - "@nomicfoundation/ethereumjs-util": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/@nomicfoundation/ethereumjs-util/-/ethereumjs-util-8.0.0.tgz", - "integrity": "sha512-2emi0NJ/HmTG+CGY58fa+DQuAoroFeSH9gKu9O6JnwTtlzJtgfTixuoOqLEgyyzZVvwfIpRueuePb8TonL1y+A==", - "dev": true, - "peer": true, - "requires": { - "@nomicfoundation/ethereumjs-rlp": "^4.0.0-beta.2", - "ethereum-cryptography": "0.1.3" - }, - "dependencies": { - "bs58check": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/bs58check/-/bs58check-2.1.2.tgz", - "integrity": "sha512-0TS1jicxdU09dwJMNZtVAfzPi6Q6QeN0pM1Fkzrjn+XYHvzMKPU3pHVpva+769iNVSfIYWf7LJ6WR+BuuMf8cA==", - "dev": true, - "peer": true, - "requires": { - "bs58": "^4.0.0", - "create-hash": "^1.1.0", - "safe-buffer": "^5.1.2" - } - }, - "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, - "peer": true, - "requires": { - "@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" - } - } - } - }, - "@nomicfoundation/ethereumjs-vm": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/@nomicfoundation/ethereumjs-vm/-/ethereumjs-vm-6.0.0.tgz", - "integrity": "sha512-JMPxvPQ3fzD063Sg3Tp+UdwUkVxMoo1uML6KSzFhMH3hoQi/LMuXBoEHAoW83/vyNS9BxEe6jm6LmT5xdeEJ6w==", - "dev": true, - "peer": true, - "requires": { - "@nomicfoundation/ethereumjs-block": "^4.0.0", - "@nomicfoundation/ethereumjs-blockchain": "^6.0.0", - "@nomicfoundation/ethereumjs-common": "^3.0.0", - "@nomicfoundation/ethereumjs-evm": "^1.0.0", - "@nomicfoundation/ethereumjs-rlp": "^4.0.0", - "@nomicfoundation/ethereumjs-statemanager": "^1.0.0", - "@nomicfoundation/ethereumjs-trie": "^5.0.0", - "@nomicfoundation/ethereumjs-tx": "^4.0.0", - "@nomicfoundation/ethereumjs-util": "^8.0.0", - "@types/async-eventemitter": "^0.2.1", - "async-eventemitter": "^0.2.4", - "debug": "^4.3.3", - "ethereum-cryptography": "0.1.3", - "functional-red-black-tree": "^1.0.1", - "mcl-wasm": "^0.7.1", - "rustbn.js": "~0.2.0" - }, - "dependencies": { - "bs58check": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/bs58check/-/bs58check-2.1.2.tgz", - "integrity": "sha512-0TS1jicxdU09dwJMNZtVAfzPi6Q6QeN0pM1Fkzrjn+XYHvzMKPU3pHVpva+769iNVSfIYWf7LJ6WR+BuuMf8cA==", - "dev": true, - "peer": true, - "requires": { - "bs58": "^4.0.0", - "create-hash": "^1.1.0", - "safe-buffer": "^5.1.2" - } - }, - "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, - "peer": true, - "requires": { - "@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" - } - } - } - }, - "@nomicfoundation/solidity-analyzer": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer/-/solidity-analyzer-0.1.0.tgz", - "integrity": "sha512-xGWAiVCGOycvGiP/qrlf9f9eOn7fpNbyJygcB0P21a1MDuVPlKt0Srp7rvtBEutYQ48ouYnRXm33zlRnlTOPHg==", - "dev": true, - "peer": true, - "requires": { - "@nomicfoundation/solidity-analyzer-darwin-arm64": "0.1.0", - "@nomicfoundation/solidity-analyzer-darwin-x64": "0.1.0", - "@nomicfoundation/solidity-analyzer-freebsd-x64": "0.1.0", - "@nomicfoundation/solidity-analyzer-linux-arm64-gnu": "0.1.0", - "@nomicfoundation/solidity-analyzer-linux-arm64-musl": "0.1.0", - "@nomicfoundation/solidity-analyzer-linux-x64-gnu": "0.1.0", - "@nomicfoundation/solidity-analyzer-linux-x64-musl": "0.1.0", - "@nomicfoundation/solidity-analyzer-win32-arm64-msvc": "0.1.0", - "@nomicfoundation/solidity-analyzer-win32-ia32-msvc": "0.1.0", - "@nomicfoundation/solidity-analyzer-win32-x64-msvc": "0.1.0" - } - }, - "@nomicfoundation/solidity-analyzer-darwin-arm64": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer-darwin-arm64/-/solidity-analyzer-darwin-arm64-0.1.0.tgz", - "integrity": "sha512-vEF3yKuuzfMHsZecHQcnkUrqm8mnTWfJeEVFHpg+cO+le96xQA4lAJYdUan8pXZohQxv1fSReQsn4QGNuBNuCw==", - "dev": true, - "optional": true, - "peer": true - }, - "@nomicfoundation/solidity-analyzer-darwin-x64": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer-darwin-x64/-/solidity-analyzer-darwin-x64-0.1.0.tgz", - "integrity": "sha512-dlHeIg0pTL4dB1l9JDwbi/JG6dHQaU1xpDK+ugYO8eJ1kxx9Dh2isEUtA4d02cQAl22cjOHTvifAk96A+ItEHA==", - "dev": true, - "optional": true, - "peer": true - }, - "@nomicfoundation/solidity-analyzer-freebsd-x64": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer-freebsd-x64/-/solidity-analyzer-freebsd-x64-0.1.0.tgz", - "integrity": "sha512-WFCZYMv86WowDA4GiJKnebMQRt3kCcFqHeIomW6NMyqiKqhK1kIZCxSLDYsxqlx396kKLPN1713Q1S8tu68GKg==", - "dev": true, - "optional": true, - "peer": true - }, - "@nomicfoundation/solidity-analyzer-linux-arm64-gnu": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer-linux-arm64-gnu/-/solidity-analyzer-linux-arm64-gnu-0.1.0.tgz", - "integrity": "sha512-DTw6MNQWWlCgc71Pq7CEhEqkb7fZnS7oly13pujs4cMH1sR0JzNk90Mp1zpSCsCs4oKan2ClhMlLKtNat/XRKQ==", - "dev": true, - "optional": true, - "peer": true - }, - "@nomicfoundation/solidity-analyzer-linux-arm64-musl": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer-linux-arm64-musl/-/solidity-analyzer-linux-arm64-musl-0.1.0.tgz", - "integrity": "sha512-wUpUnR/3GV5Da88MhrxXh/lhb9kxh9V3Jya2NpBEhKDIRCDmtXMSqPMXHZmOR9DfCwCvG6vLFPr/+YrPCnUN0w==", - "dev": true, - "optional": true, - "peer": true - }, - "@nomicfoundation/solidity-analyzer-linux-x64-gnu": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer-linux-x64-gnu/-/solidity-analyzer-linux-x64-gnu-0.1.0.tgz", - "integrity": "sha512-lR0AxK1x/MeKQ/3Pt923kPvwigmGX3OxeU5qNtQ9pj9iucgk4PzhbS3ruUeSpYhUxG50jN4RkIGwUMoev5lguw==", - "dev": true, - "optional": true, - "peer": true - }, - "@nomicfoundation/solidity-analyzer-linux-x64-musl": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer-linux-x64-musl/-/solidity-analyzer-linux-x64-musl-0.1.0.tgz", - "integrity": "sha512-A1he/8gy/JeBD3FKvmI6WUJrGrI5uWJNr5Xb9WdV+DK0F8msuOqpEByLlnTdLkXMwW7nSl3awvLezOs9xBHJEg==", - "dev": true, - "optional": true, - "peer": true - }, - "@nomicfoundation/solidity-analyzer-win32-arm64-msvc": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer-win32-arm64-msvc/-/solidity-analyzer-win32-arm64-msvc-0.1.0.tgz", - "integrity": "sha512-7x5SXZ9R9H4SluJZZP8XPN+ju7Mx+XeUMWZw7ZAqkdhP5mK19I4vz3x0zIWygmfE8RT7uQ5xMap0/9NPsO+ykw==", - "dev": true, - "optional": true, - "peer": true - }, - "@nomicfoundation/solidity-analyzer-win32-ia32-msvc": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer-win32-ia32-msvc/-/solidity-analyzer-win32-ia32-msvc-0.1.0.tgz", - "integrity": "sha512-m7w3xf+hnE774YRXu+2mGV7RiF3QJtUoiYU61FascCkQhX3QMQavh7saH/vzb2jN5D24nT/jwvaHYX/MAM9zUw==", - "dev": true, - "optional": true, - "peer": true - }, - "@nomicfoundation/solidity-analyzer-win32-x64-msvc": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer-win32-x64-msvc/-/solidity-analyzer-win32-x64-msvc-0.1.0.tgz", - "integrity": "sha512-xCuybjY0sLJQnJhupiFAXaek2EqF0AP0eBjgzaalPXSNvCEN6ZYHvUzdA50ENDVeSYFXcUsYf3+FsD3XKaeptA==", - "dev": true, - "optional": true, - "peer": true - }, - "@openzeppelin/contracts": { - "version": "4.9.6", - "resolved": "https://registry.npmjs.org/@openzeppelin/contracts/-/contracts-4.9.6.tgz", - "integrity": "sha512-xSmezSupL+y9VkHZJGDoCBpmnB2ogM13ccaYDWqJTfS3dbuHkgjuwDFUmaFauBCboQMGB/S5UqUl2y54X99BmA==" - }, - "@openzeppelin/contracts-upgradeable": { - "version": "4.9.6", - "resolved": "https://registry.npmjs.org/@openzeppelin/contracts-upgradeable/-/contracts-upgradeable-4.9.6.tgz", - "integrity": "sha512-m4iHazOsOCv1DgM7eD7GupTJ+NFVujRZt1wzddDPSVGpWdKq1SKkla5htKG7+IS4d2XOCtzkUNwRZ7Vq5aEUMA==" - }, - "@openzeppelin/truffle-upgrades": { - "version": "1.21.0", - "resolved": "https://registry.npmjs.org/@openzeppelin/truffle-upgrades/-/truffle-upgrades-1.21.0.tgz", - "integrity": "sha512-MKl0mSCLio4wNvKvSpXou0SEclbWfgLVJB1S2QXEP9bv55BB7+C+Iytc10Cx4JoKA+5Dup7c9C8g8H43yBD+lg==", - "dev": true, - "requires": { - "@openzeppelin/upgrades-core": "^1.30.0", - "@truffle/contract": "^4.3.26", - "chalk": "^4.1.0", - "debug": "^4.1.1", - "solidity-ast": "^0.4.26" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "@openzeppelin/upgrades-core": { - "version": "1.33.1", - "resolved": "https://registry.npmjs.org/@openzeppelin/upgrades-core/-/upgrades-core-1.33.1.tgz", - "integrity": "sha512-YRxIRhTY1b+j7+NUUu8Uuem5ugxKexEMVd8dBRWNgWeoN1gS1OCrhgUg0ytL+54vzQ+SGWZDfNnzjVuI1Cj1Zw==", - "dev": true, - "requires": { - "cbor": "^9.0.0", - "chalk": "^4.1.0", - "compare-versions": "^6.0.0", - "debug": "^4.1.1", - "ethereumjs-util": "^7.0.3", - "minimist": "^1.2.7", - "proper-lockfile": "^4.1.1", - "solidity-ast": "^0.4.51" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "@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==", - "dev": true, - "optional": true, - "peer": true - }, - "@protobufjs/base64": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@protobufjs/base64/-/base64-1.1.2.tgz", - "integrity": "sha512-AZkcAA5vnN/v4PDqKyMR5lx7hZttPDgClv83E//FMNhR2TMcLUhfRUBHCmSl0oi9zMgDDqRUJkSxO3wm85+XLg==", - "dev": true, - "optional": true, - "peer": true - }, - "@protobufjs/codegen": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@protobufjs/codegen/-/codegen-2.0.4.tgz", - "integrity": "sha512-YyFaikqM5sH0ziFZCN3xDC7zeGaB/d0IUb9CATugHWbd1FRFwWwt4ld4OYMPWu5a3Xe01mGAULCdqhMlPl29Jg==", - "dev": true, - "optional": true, - "peer": true - }, - "@protobufjs/eventemitter": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@protobufjs/eventemitter/-/eventemitter-1.1.0.tgz", - "integrity": "sha512-j9ednRT81vYJ9OfVuXG6ERSTdEL1xVsNgqpkxMsbIabzSo3goCjDIveeGv5d03om39ML71RdmrGNjG5SReBP/Q==", - "dev": true, - "optional": true, - "peer": true - }, - "@protobufjs/fetch": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@protobufjs/fetch/-/fetch-1.1.0.tgz", - "integrity": "sha512-lljVXpqXebpsijW71PZaCYeIcE5on1w5DlQy5WH6GLbFryLUrBD4932W/E2BSpfRJWseIL4v/KPgBFxDOIdKpQ==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "@protobufjs/aspromise": "^1.1.1", - "@protobufjs/inquire": "^1.1.0" - } - }, - "@protobufjs/float": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@protobufjs/float/-/float-1.0.2.tgz", - "integrity": "sha512-Ddb+kVXlXst9d+R9PfTIxh1EdNkgoRe5tOX6t01f1lYWOvJnSPDBlG241QLzcyPdoNTsblLUdujGSE4RzrTZGQ==", - "dev": true, - "optional": true, - "peer": true - }, - "@protobufjs/inquire": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@protobufjs/inquire/-/inquire-1.1.0.tgz", - "integrity": "sha512-kdSefcPdruJiFMVSbn801t4vFK7KB/5gd2fYvrxhuJYg8ILrmn9SKSX2tZdV6V+ksulWqS7aXjBcRXl3wHoD9Q==", - "dev": true, - "optional": true, - "peer": true - }, - "@protobufjs/path": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@protobufjs/path/-/path-1.1.2.tgz", - "integrity": "sha512-6JOcJ5Tm08dOHAbdR3GrvP+yUUfkjG5ePsHYczMFLq3ZmMkAD98cDgcT2iA1lJ9NVwFd4tH/iSSoe44YWkltEA==", - "dev": true, - "optional": true, - "peer": true - }, - "@protobufjs/pool": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@protobufjs/pool/-/pool-1.1.0.tgz", - "integrity": "sha512-0kELaGSIDBKvcgS4zkjz1PeddatrjYcmMWOlAuAPwAeccUrPHdUqo/J6LiymHHEiJT5NrF1UVwxY14f+fy4WQw==", - "dev": true, - "optional": true, - "peer": true - }, - "@protobufjs/utf8": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@protobufjs/utf8/-/utf8-1.1.0.tgz", - "integrity": "sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw==", - "dev": true, - "optional": true, - "peer": true - }, - "@redux-saga/core": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/@redux-saga/core/-/core-1.2.2.tgz", - "integrity": "sha512-0qr5oleOAmI5WoZLRA6FEa30M4qKZcvx+ZQOQw+RqFeH8t20bvhE329XSPsNfTVP8C6qyDsXOSjuoV+g3+8zkg==", - "dev": true, - "peer": true, - "requires": { - "@babel/runtime": "^7.6.3", - "@redux-saga/deferred": "^1.2.1", - "@redux-saga/delay-p": "^1.2.1", - "@redux-saga/is": "^1.1.3", - "@redux-saga/symbols": "^1.1.3", - "@redux-saga/types": "^1.2.1", - "redux": "^4.0.4", - "typescript-tuple": "^2.2.1" - }, - "dependencies": { - "redux": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/redux/-/redux-4.2.1.tgz", - "integrity": "sha512-LAUYz4lc+Do8/g7aeRa8JkyDErK6ekstQaqWQrNRW//MY1TvCEpMtpTWvlQ+FPbWCx+Xixu/6SHt5N0HR+SB4w==", - "dev": true, - "peer": true, - "requires": { - "@babel/runtime": "^7.9.2" - } - } - } - }, - "@redux-saga/deferred": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@redux-saga/deferred/-/deferred-1.2.1.tgz", - "integrity": "sha512-cmin3IuuzMdfQjA0lG4B+jX+9HdTgHZZ+6u3jRAOwGUxy77GSlTi4Qp2d6PM1PUoTmQUR5aijlA39scWWPF31g==", - "dev": true, - "peer": true - }, - "@redux-saga/delay-p": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@redux-saga/delay-p/-/delay-p-1.2.1.tgz", - "integrity": "sha512-MdiDxZdvb1m+Y0s4/hgdcAXntpUytr9g0hpcOO1XFVyyzkrDu3SKPgBFOtHn7lhu7n24ZKIAT1qtKyQjHqRd+w==", - "dev": true, - "peer": true, - "requires": { - "@redux-saga/symbols": "^1.1.3" - } - }, - "@redux-saga/is": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@redux-saga/is/-/is-1.1.3.tgz", - "integrity": "sha512-naXrkETG1jLRfVfhOx/ZdLj0EyAzHYbgJWkXbB3qFliPcHKiWbv/ULQryOAEKyjrhiclmr6AMdgsXFyx7/yE6Q==", - "dev": true, - "peer": true, - "requires": { - "@redux-saga/symbols": "^1.1.3", - "@redux-saga/types": "^1.2.1" - } - }, - "@redux-saga/symbols": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@redux-saga/symbols/-/symbols-1.1.3.tgz", - "integrity": "sha512-hCx6ZvU4QAEUojETnX8EVg4ubNLBFl1Lps4j2tX7o45x/2qg37m3c6v+kSp8xjDJY+2tJw4QB3j8o8dsl1FDXg==", - "dev": true, - "peer": true - }, - "@redux-saga/types": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@redux-saga/types/-/types-1.2.1.tgz", - "integrity": "sha512-1dgmkh+3so0+LlBWRhGA33ua4MYr7tUOj+a9Si28vUi0IUFNbff1T3sgpeDJI/LaC75bBYnQ0A3wXjn0OrRNBA==", - "dev": true, - "peer": true - }, - "@rsksmart/btc-transaction-solidity-helper": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/@rsksmart/btc-transaction-solidity-helper/-/btc-transaction-solidity-helper-0.2.1.tgz", - "integrity": "sha512-Ios++Hrnqfh4BZpsYUxMCeVsVw39G4AOnBvGn6WSLD8AQEGGbZk11IqoCEvrfSqppXSCEFzcDXbxA8nSjLwVhg==" - }, - "@rsksmart/pmt-builder": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@rsksmart/pmt-builder/-/pmt-builder-3.0.0.tgz", - "integrity": "sha512-HML2VJqMwXYtqiggAyojupH/k80KkhfnhUzwXNsnzuu7FftHOFvAOgJZb5Fh+tZ8UKek0vf4eT0pvqkYCU1xDQ==", - "dev": true, - "requires": { - "chai": "^4.3.4", - "mocha": "^10.0.0" - } - }, - "@scure/base": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@scure/base/-/base-1.1.1.tgz", - "integrity": "sha512-ZxOhsSyxYwLJj3pLZCefNitxsj093tb2vq90mp2txoYeBqbcjDjqFhyM8eUjq/uFm6zJ+mUuqxlS2FkuSY1MTA==" - }, - "@scure/bip32": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@scure/bip32/-/bip32-1.1.0.tgz", - "integrity": "sha512-ftTW3kKX54YXLCxH6BB7oEEoJfoE2pIgw7MINKAs5PsS6nqKPuKk1haTF/EuHmYqG330t5GSrdmtRuHaY1a62Q==", - "requires": { - "@noble/hashes": "~1.1.1", - "@noble/secp256k1": "~1.6.0", - "@scure/base": "~1.1.0" - } - }, - "@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==", - "requires": { - "@noble/hashes": "~1.1.1", - "@scure/base": "~1.1.0" - } - }, - "@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, - "peer": true, - "requires": { - "@sentry/hub": "5.30.0", - "@sentry/minimal": "5.30.0", - "@sentry/types": "5.30.0", - "@sentry/utils": "5.30.0", - "tslib": "^1.9.3" - } - }, - "@sentry/hub": { - "version": "5.30.0", - "resolved": "https://registry.npmjs.org/@sentry/hub/-/hub-5.30.0.tgz", - "integrity": "sha512-2tYrGnzb1gKz2EkMDQcfLrDTvmGcQPuWxLnJKXJvYTQDGLlEvi2tWz1VIHjunmOvJrB5aIQLhm+dcMRwFZDCqQ==", - "dev": true, - "peer": true, - "requires": { - "@sentry/types": "5.30.0", - "@sentry/utils": "5.30.0", - "tslib": "^1.9.3" - } - }, - "@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, - "peer": true, - "requires": { - "@sentry/hub": "5.30.0", - "@sentry/types": "5.30.0", - "tslib": "^1.9.3" - } - }, - "@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, - "peer": true, - "requires": { - "@sentry/core": "5.30.0", - "@sentry/hub": "5.30.0", - "@sentry/tracing": "5.30.0", - "@sentry/types": "5.30.0", - "@sentry/utils": "5.30.0", - "cookie": "^0.4.1", - "https-proxy-agent": "^5.0.0", - "lru_map": "^0.3.3", - "tslib": "^1.9.3" - } - }, - "@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, - "peer": true, - "requires": { - "@sentry/hub": "5.30.0", - "@sentry/minimal": "5.30.0", - "@sentry/types": "5.30.0", - "@sentry/utils": "5.30.0", - "tslib": "^1.9.3" - } - }, - "@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, - "peer": true - }, - "@sentry/utils": { - "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, - "peer": true, - "requires": { - "@sentry/types": "5.30.0", - "tslib": "^1.9.3" - } - }, - "@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==" - }, - "@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, - "requires": { - "antlr4ts": "^0.5.0-alpha.4" - } - }, - "@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==", - "requires": { - "defer-to-connect": "^2.0.1" - } - }, - "@truffle/abi-utils": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@truffle/abi-utils/-/abi-utils-1.0.3.tgz", - "integrity": "sha512-AWhs01HCShaVKjml7Z4AbVREr/u4oiWxCcoR7Cktm0mEvtT04pvnxW5xB/cI4znRkrbPdFQlFt67kgrAjesYkw==", - "dev": true, - "requires": { - "change-case": "3.0.2", - "fast-check": "3.1.1", - "web3-utils": "1.10.0" - } - }, - "@truffle/blockchain-utils": { - "version": "0.1.9", - "resolved": "https://registry.npmjs.org/@truffle/blockchain-utils/-/blockchain-utils-0.1.9.tgz", - "integrity": "sha512-RHfumgbIVo68Rv9ofDYfynjnYZIfP/f1vZy4RoqkfYAO+fqfc58PDRzB1WAGq2U6GPuOnipOJxQhnqNnffORZg==", - "dev": true - }, - "@truffle/code-utils": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@truffle/code-utils/-/code-utils-3.0.4.tgz", - "integrity": "sha512-MWK3TMisIFaBpSjK7tt1GoQan7DQDBqT2iSsdQOGD74C7r9NMwsIdnL2EYoB/DPcEJ7B8yP4grlG2fQTrPF96g==", - "dev": true, - "peer": true, - "requires": { - "cbor": "^5.2.0" - }, - "dependencies": { - "bignumber.js": { - "version": "9.1.1", - "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.1.1.tgz", - "integrity": "sha512-pHm4LsMJ6lzgNGVfZHjMoO8sdoRhOzOH4MLmY65Jg70bpxCKu5iOHNJyfF6OyvYw7t8Fpf35RuzUyqnQsj8Vig==", - "dev": true, - "peer": true - }, - "cbor": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/cbor/-/cbor-5.2.0.tgz", - "integrity": "sha512-5IMhi9e1QU76ppa5/ajP1BmMWZ2FHkhAhjeVKQ/EFCgYSEaeVaoGtL7cxJskf9oCCk+XjzaIdc3IuU/dbA/o2A==", - "dev": true, - "peer": true, - "requires": { - "bignumber.js": "^9.0.1", - "nofilter": "^1.0.4" - } - }, - "nofilter": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/nofilter/-/nofilter-1.0.4.tgz", - "integrity": "sha512-N8lidFp+fCz+TD51+haYdbDGrcBWwuHX40F5+z0qkUjMJ5Tp+rdSuAkMJ9N9eoolDlEVTf6u5icM+cNKkKW2mA==", - "dev": true, - "peer": true - } - } - }, - "@truffle/codec": { - "version": "0.15.3", - "resolved": "https://registry.npmjs.org/@truffle/codec/-/codec-0.15.3.tgz", - "integrity": "sha512-8dRxZEaPS+Qo9v90zl+zQ8RSSqNCd88yrdUS5mSfEGMsmiixR5l3R85c8QfV73B4WNYlMLTa9mC0JmhG1vqz2Q==", - "dev": true, - "peer": true, - "requires": { - "@truffle/abi-utils": "^1.0.1", - "@truffle/compile-common": "^0.9.6", - "big.js": "^6.0.3", - "bn.js": "^5.1.3", - "cbor": "^5.2.0", - "debug": "^4.3.1", - "lodash": "^4.17.21", - "semver": "7.3.7", - "utf8": "^3.0.0", - "web3-utils": "1.10.0" - }, - "dependencies": { - "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==", - "dev": true, - "peer": true - }, - "cbor": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/cbor/-/cbor-5.2.0.tgz", - "integrity": "sha512-5IMhi9e1QU76ppa5/ajP1BmMWZ2FHkhAhjeVKQ/EFCgYSEaeVaoGtL7cxJskf9oCCk+XjzaIdc3IuU/dbA/o2A==", - "dev": true, - "peer": true, - "requires": { - "bignumber.js": "^9.0.1", - "nofilter": "^1.0.4" - } - }, - "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, - "peer": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "nofilter": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/nofilter/-/nofilter-1.0.4.tgz", - "integrity": "sha512-N8lidFp+fCz+TD51+haYdbDGrcBWwuHX40F5+z0qkUjMJ5Tp+rdSuAkMJ9N9eoolDlEVTf6u5icM+cNKkKW2mA==", - "dev": true, - "peer": true - }, - "semver": { - "version": "7.3.7", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", - "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", - "dev": true, - "peer": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true, - "peer": true - } - } - }, - "@truffle/compile-common": { - "version": "0.9.8", - "resolved": "https://registry.npmjs.org/@truffle/compile-common/-/compile-common-0.9.8.tgz", - "integrity": "sha512-DTpiyo32t/YhLI1spn84D3MHYHrnoVqO+Gp7ZHrYNwDs86mAxtNiH5lsVzSb8cPgiqlvNsRCU9nm9R0YmKMTBQ==", - "dev": true, - "requires": { - "@truffle/error": "^0.2.2", - "colors": "1.4.0" - } - }, - "@truffle/config": { - "version": "1.3.60", - "resolved": "https://registry.npmjs.org/@truffle/config/-/config-1.3.60.tgz", - "integrity": "sha512-ccpdafmky4sC9th0KgJiQsDMPqsgKLC0vgaCebBHTbOvkWHjKB5G7NDXYBd6ex3GGU3Jvs3j4sjvI2TTO+fsdw==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "@truffle/error": "^0.2.1", - "@truffle/events": "^0.1.24", - "@truffle/provider": "^0.3.12", - "conf": "^10.1.2", - "debug": "^4.3.1", - "find-up": "^2.1.0", - "lodash": "^4.17.21", - "original-require": "^1.0.1" - } - }, - "@truffle/contract": { - "version": "4.6.29", - "resolved": "https://registry.npmjs.org/@truffle/contract/-/contract-4.6.29.tgz", - "integrity": "sha512-gbgmC2YdcSD4QGvx3GWGIVhyQxEPkChcC2a3D5d9aj2XfV3f6+FQw5PuL1wreA3I222ggZQqzbvMvhpp8gWs4Q==", - "dev": true, - "requires": { - "@ensdomains/ensjs": "^2.1.0", - "@truffle/blockchain-utils": "^0.1.8", - "@truffle/contract-schema": "^3.4.15", - "@truffle/debug-utils": "^6.0.56", - "@truffle/error": "^0.2.1", - "@truffle/interface-adapter": "^0.5.36", - "bignumber.js": "^7.2.1", - "debug": "^4.3.1", - "ethers": "^4.0.32", - "web3": "1.10.0", - "web3-core-helpers": "1.10.0", - "web3-core-promievent": "1.10.0", - "web3-eth-abi": "1.10.0", - "web3-utils": "1.10.0" - } - }, - "@truffle/contract-schema": { - "version": "3.4.16", - "resolved": "https://registry.npmjs.org/@truffle/contract-schema/-/contract-schema-3.4.16.tgz", - "integrity": "sha512-g0WNYR/J327DqtJPI70ubS19K1Fth/1wxt2jFqLsPmz5cGZVjCwuhiie+LfBde4/Mc9QR8G+L3wtmT5cyoBxAg==", - "dev": true, - "requires": { - "ajv": "^6.10.0", - "debug": "^4.3.1" - } - }, - "@truffle/dashboard-message-bus-client": { - "version": "0.1.11", - "resolved": "https://registry.npmjs.org/@truffle/dashboard-message-bus-client/-/dashboard-message-bus-client-0.1.11.tgz", - "integrity": "sha512-ABoKtaogh5KjOw0UM5/6wYuhg4T5cMPVSSNF1rv4j3s2XGzExx3vUObvXqNO6I8gZ8xuvzClw4RmcEk8JkM8yA==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "@truffle/dashboard-message-bus-common": "^0.1.6", - "@truffle/promise-tracker": "^0.1.6", - "axios": "1.2.4", - "debug": "^4.3.1", - "delay": "^5.0.0", - "isomorphic-ws": "^4.0.1", - "node-abort-controller": "^3.0.1", - "tiny-typed-emitter": "^2.1.0", - "ws": "^7.2.0" - } - }, - "@truffle/dashboard-message-bus-common": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/@truffle/dashboard-message-bus-common/-/dashboard-message-bus-common-0.1.7.tgz", - "integrity": "sha512-jN7q8LBmwQRldSzT/YJE33mnDLrp3EFFDuZyLwtQGInlfcRTXcr5yPY42jxr3Ln19dQe2Chx3I6dWtDByeKLIQ==", - "dev": true, - "optional": true, - "peer": true - }, - "@truffle/db": { - "version": "2.0.34", - "resolved": "https://registry.npmjs.org/@truffle/db/-/db-2.0.34.tgz", - "integrity": "sha512-EP8Vnfwimt0G3hMcxPAtvsXrLaWPVUZLhwKWziyZdr/JJGSBG3J+z1iQ7qlZLJAxnBm2cJge+1/s2AdHWihAJA==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "@graphql-tools/delegate": "^8.4.3", - "@graphql-tools/schema": "^8.3.1", - "@truffle/abi-utils": "^1.0.2", - "@truffle/code-utils": "^3.0.3", - "@truffle/config": "^1.3.60", - "abstract-leveldown": "^7.2.0", - "apollo-server": "^3.11.0", - "debug": "^4.3.1", - "fs-extra": "^9.1.0", - "graphql": "^15.3.0", - "graphql-tag": "^2.12.6", - "json-stable-stringify": "^1.0.1", - "pascal-case": "^2.0.1", - "pluralize": "^8.0.0", - "pouchdb": "7.3.0", - "pouchdb-adapter-memory": "^7.1.1", - "pouchdb-debug": "^7.1.1", - "pouchdb-find": "^7.0.0", - "web3-utils": "1.10.0" - }, - "dependencies": { - "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==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "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" - } - }, - "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, - "optional": true, - "peer": true, - "requires": { - "at-least-node": "^1.0.0", - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - } - }, - "jsonfile": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", - "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "graceful-fs": "^4.1.6", - "universalify": "^2.0.0" - } - }, - "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==", - "dev": true, - "optional": true, - "peer": true - }, - "universalify": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", - "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==", - "dev": true, - "optional": true, - "peer": true - } - } - }, - "@truffle/db-loader": { - "version": "0.2.34", - "resolved": "https://registry.npmjs.org/@truffle/db-loader/-/db-loader-0.2.34.tgz", - "integrity": "sha512-bZqKL9s4eKd5Hbm85aPljOYiVW/tuQflDKYBycKHJYRzrNsf+9XYlUi8jUs3BBEtcEka+oZcHosBWpO1lfOlWw==", - "dev": true, - "peer": true, - "requires": { - "@truffle/db": "^2.0.34" - } - }, - "@truffle/debug-utils": { - "version": "6.0.57", - "resolved": "https://registry.npmjs.org/@truffle/debug-utils/-/debug-utils-6.0.57.tgz", - "integrity": "sha512-Q6oI7zLaeNLB69ixjwZk2UZEWBY6b2OD1sjLMGDKBGR7GaHYiw96GLR2PFgPH1uwEeLmV4N78LYaQCrDsHbNeA==", - "dev": true, - "requires": { - "@truffle/codec": "^0.17.3", - "@trufflesuite/chromafi": "^3.0.0", - "bn.js": "^5.1.3", - "chalk": "^2.4.2", - "debug": "^4.3.1", - "highlightjs-solidity": "^2.0.6" - }, - "dependencies": { - "@truffle/codec": { - "version": "0.17.3", - "resolved": "https://registry.npmjs.org/@truffle/codec/-/codec-0.17.3.tgz", - "integrity": "sha512-Ko/+dsnntNyrJa57jUD9u4qx9nQby+H4GsUO6yjiCPSX0TQnEHK08XWqBSg0WdmCH2+h0y1nr2CXSx8gbZapxg==", - "dev": true, - "requires": { - "@truffle/abi-utils": "^1.0.3", - "@truffle/compile-common": "^0.9.8", - "big.js": "^6.0.3", - "bn.js": "^5.1.3", - "cbor": "^5.2.0", - "debug": "^4.3.1", - "lodash": "^4.17.21", - "semver": "^7.5.4", - "utf8": "^3.0.0", - "web3-utils": "1.10.0" - } - }, - "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==", - "dev": true - }, - "cbor": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/cbor/-/cbor-5.2.0.tgz", - "integrity": "sha512-5IMhi9e1QU76ppa5/ajP1BmMWZ2FHkhAhjeVKQ/EFCgYSEaeVaoGtL7cxJskf9oCCk+XjzaIdc3IuU/dbA/o2A==", - "dev": true, - "requires": { - "bignumber.js": "^9.0.1", - "nofilter": "^1.0.4" - } - }, - "nofilter": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/nofilter/-/nofilter-1.0.4.tgz", - "integrity": "sha512-N8lidFp+fCz+TD51+haYdbDGrcBWwuHX40F5+z0qkUjMJ5Tp+rdSuAkMJ9N9eoolDlEVTf6u5icM+cNKkKW2mA==", - "dev": true - }, - "semver": { - "version": "7.6.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.2.tgz", - "integrity": "sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w==", - "dev": true - } - } - }, - "@truffle/debugger": { - "version": "11.1.5", - "resolved": "https://registry.npmjs.org/@truffle/debugger/-/debugger-11.1.5.tgz", - "integrity": "sha512-zRVmxVhxNHxJEaqsuHvCLdDAKr4QJiVwf7PI/iwP4YFEt9cjyEMEM9iKLU9nntuqvzWewgerlFpGdyGJYYwyrA==", - "dev": true, - "peer": true, - "requires": { - "@ensdomains/ensjs": "^2.1.0", - "@truffle/abi-utils": "^1.0.1", - "@truffle/codec": "^0.15.3", - "@truffle/source-map-utils": "^1.3.114", - "bn.js": "^5.1.3", - "debug": "^4.3.1", - "json-pointer": "^0.6.1", - "json-stable-stringify": "^1.0.1", - "lodash": "^4.17.21", - "redux": "^3.7.2", - "redux-saga": "1.0.0", - "reselect-tree": "^1.3.7", - "semver": "7.3.7", - "web3": "1.10.0", - "web3-eth-abi": "1.10.0" - }, - "dependencies": { - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "peer": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "semver": { - "version": "7.3.7", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", - "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", - "dev": true, - "peer": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true, - "peer": true - } - } - }, - "@truffle/error": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/@truffle/error/-/error-0.2.2.tgz", - "integrity": "sha512-TqbzJ0O8DHh34cu8gDujnYl4dUl6o2DE4PR6iokbybvnIm/L2xl6+Gv1VC+YJS45xfH83Yo3/Zyg/9Oq8/xZWg==", - "dev": true - }, - "@truffle/events": { - "version": "0.1.24", - "resolved": "https://registry.npmjs.org/@truffle/events/-/events-0.1.24.tgz", - "integrity": "sha512-rS+jKDjmdM0g+14H/H8MzhohaTKsSS6plNNzO95MIcUs0Ytinu1DXfSkUovDpgv5h2NcRoU0BMTKCR21Y3JiNw==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "@truffle/dashboard-message-bus-client": "^0.1.11", - "@truffle/spinners": "^0.2.4", - "debug": "^4.3.1", - "emittery": "^0.4.1", - "web3-utils": "1.10.0" - } - }, - "@truffle/hdwallet": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/@truffle/hdwallet/-/hdwallet-0.1.3.tgz", - "integrity": "sha512-kuikvLE+4WvVIj91CSrRVN92QGh+1Vlx8PRkxKQlvZjjE3J5NmvwfAs7b9poTeC4c6YfoHqwike1kfd1qYXO1w==", - "requires": { - "ethereum-cryptography": "1.1.2", - "keccak": "3.0.2", - "secp256k1": "4.0.3" - } - }, - "@truffle/hdwallet-provider": { - "version": "2.1.14", - "resolved": "https://registry.npmjs.org/@truffle/hdwallet-provider/-/hdwallet-provider-2.1.14.tgz", - "integrity": "sha512-KlUeEdIRWhaMJCsH0td03JcYM6lJ1IKFlNT8N6cjPJHuby1rwAadjRBG5PyXBeadOIcvm6tjKzftdRUauFiVDw==", - "requires": { - "@ethereumjs/common": "^2.4.0", - "@ethereumjs/tx": "^3.3.0", - "@metamask/eth-sig-util": "4.0.1", - "@truffle/hdwallet": "^0.1.3", - "@types/ethereum-protocol": "^1.0.0", - "@types/web3": "1.0.20", - "@types/web3-provider-engine": "^14.0.0", - "ethereum-cryptography": "1.1.2", - "ethereum-protocol": "^1.0.1", - "ethereumjs-util": "^7.1.5", - "web3": "1.10.0", - "web3-provider-engine": "16.0.3" - } - }, - "@truffle/interface-adapter": { - "version": "0.5.36", - "resolved": "https://registry.npmjs.org/@truffle/interface-adapter/-/interface-adapter-0.5.36.tgz", - "integrity": "sha512-e6ECu9YDJuQjjxphdtJatHGgjlGsX/a3rQwqG2kBrK4cynGJdlejoo2iv/7Dj97wgIMIr1qH3L2WDrfTNF+K1g==", - "dev": true, - "requires": { - "bn.js": "^5.1.3", - "ethers": "^4.0.32", - "web3": "1.10.0" - } - }, - "@truffle/promise-tracker": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/@truffle/promise-tracker/-/promise-tracker-0.1.7.tgz", - "integrity": "sha512-NiPXNJvdei8MRZRUjEZoL0Y7TPDR1TaeCfGUgB3md6Q7TBiqSKo2p5OT36JO106B2j57SLmXOiDn8fLb+u2sjA==", - "dev": true, - "optional": true, - "peer": true - }, - "@truffle/provider": { - "version": "0.3.12", - "resolved": "https://registry.npmjs.org/@truffle/provider/-/provider-0.3.12.tgz", - "integrity": "sha512-R7zS1eyY8H37ExkMxmMqa6bFN4UYLiYSCc+4g/8IjEU2lZXhKWUXA2gWzuMPT+XWfAu+IrC1PqLIHQgYe05EVA==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "@truffle/error": "^0.2.1", - "@truffle/interface-adapter": "^0.5.36", - "debug": "^4.3.1", - "web3": "1.10.0" - } - }, - "@truffle/source-map-utils": { - "version": "1.3.119", - "resolved": "https://registry.npmjs.org/@truffle/source-map-utils/-/source-map-utils-1.3.119.tgz", - "integrity": "sha512-TFYi3XvanY8WZBOfBwDHQe9HfZUXJ2ejnmFNjsq1//sbM4fUNWjeNshGqkWGxfKPh3OAzXgD4iTnPG3YeXM8YQ==", - "dev": true, - "peer": true, - "requires": { - "@truffle/code-utils": "^3.0.4", - "@truffle/codec": "^0.17.3", - "debug": "^4.3.1", - "json-pointer": "^0.6.1", - "node-interval-tree": "^1.3.3", - "web3-utils": "1.10.0" - }, - "dependencies": { - "@truffle/codec": { - "version": "0.17.3", - "resolved": "https://registry.npmjs.org/@truffle/codec/-/codec-0.17.3.tgz", - "integrity": "sha512-Ko/+dsnntNyrJa57jUD9u4qx9nQby+H4GsUO6yjiCPSX0TQnEHK08XWqBSg0WdmCH2+h0y1nr2CXSx8gbZapxg==", - "dev": true, - "peer": true, - "requires": { - "@truffle/abi-utils": "^1.0.3", - "@truffle/compile-common": "^0.9.8", - "big.js": "^6.0.3", - "bn.js": "^5.1.3", - "cbor": "^5.2.0", - "debug": "^4.3.1", - "lodash": "^4.17.21", - "semver": "^7.5.4", - "utf8": "^3.0.0", - "web3-utils": "1.10.0" - } - }, - "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==", - "dev": true, - "peer": true - }, - "cbor": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/cbor/-/cbor-5.2.0.tgz", - "integrity": "sha512-5IMhi9e1QU76ppa5/ajP1BmMWZ2FHkhAhjeVKQ/EFCgYSEaeVaoGtL7cxJskf9oCCk+XjzaIdc3IuU/dbA/o2A==", - "dev": true, - "peer": true, - "requires": { - "bignumber.js": "^9.0.1", - "nofilter": "^1.0.4" - } - }, - "nofilter": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/nofilter/-/nofilter-1.0.4.tgz", - "integrity": "sha512-N8lidFp+fCz+TD51+haYdbDGrcBWwuHX40F5+z0qkUjMJ5Tp+rdSuAkMJ9N9eoolDlEVTf6u5icM+cNKkKW2mA==", - "dev": true, - "peer": true - }, - "semver": { - "version": "7.6.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.2.tgz", - "integrity": "sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w==", - "dev": true, - "peer": true - } - } - }, - "@truffle/spinners": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/@truffle/spinners/-/spinners-0.2.5.tgz", - "integrity": "sha512-emYyLEuoY62MQV/RNjyVIuTPEjMyIA0WiYMG2N3yfh8OSjD/TC0HRc2oyDWtVkNNox/5D2tH2m5fFB8HOt80FQ==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "@trufflesuite/spinnies": "^0.1.1" - } - }, - "@trufflesuite/chromafi": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@trufflesuite/chromafi/-/chromafi-3.0.0.tgz", - "integrity": "sha512-oqWcOqn8nT1bwlPPfidfzS55vqcIDdpfzo3HbU9EnUmcSTX+I8z0UyUFI3tZQjByVJulbzxHxUGS3ZJPwK/GPQ==", - "dev": true, - "requires": { - "camelcase": "^4.1.0", - "chalk": "^2.3.2", - "cheerio": "^1.0.0-rc.2", - "detect-indent": "^5.0.0", - "highlight.js": "^10.4.1", - "lodash.merge": "^4.6.2", - "strip-ansi": "^4.0.0", - "strip-indent": "^2.0.0" - }, - "dependencies": { - "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 - }, - "camelcase": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", - "integrity": "sha512-FxAv7HpHrXbh3aPo4o2qxHay2lkLY3x5Mw3KeE4KQE8ysVfziWeRZDwcjauvwBSGEC/nXUPzZy8zeh4HokqOnw==", - "dev": true - }, - "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, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "@trufflesuite/spinnies": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@trufflesuite/spinnies/-/spinnies-0.1.1.tgz", - "integrity": "sha512-jltEtmFJj6xmQqr85gP8OqBHCEiId+zw+uAsb3DyLLRD17O6sySW6Afa2Z/jpzSafj+32ssDfLJ+c0of1NLqcA==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "chalk": "^4.1.2", - "cli-cursor": "^3.1.0", - "strip-ansi": "^6.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true, - "optional": true, - "peer": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "optional": true, - "peer": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "@types/accepts": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/@types/accepts/-/accepts-1.3.5.tgz", - "integrity": "sha512-jOdnI/3qTpHABjM5cx1Hc0sKsPoYCp+DP/GJRGtDlPd7fiV9oXGGIcjW/ZOxLIvjGz8MA+uMZI9metHlgqbgwQ==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "@types/node": "*" - } - }, - "@types/async-eventemitter": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/@types/async-eventemitter/-/async-eventemitter-0.2.1.tgz", - "integrity": "sha512-M2P4Ng26QbAeITiH7w1d7OxtldgfAe0wobpyJzVK/XOb0cUGKU2R4pfAhqcJBXAe2ife5ZOhSv4wk7p+ffURtg==", - "dev": true, - "peer": true - }, - "@types/bn.js": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/@types/bn.js/-/bn.js-5.1.1.tgz", - "integrity": "sha512-qNrYbZqMx0uJAfKnKclPh+dTwK33KfLHYqtyODwd5HnXOjnkhc4qgn3BrK6RWyGZm5+sIFE7Q7Vz6QQtJB7w7g==", - "requires": { - "@types/node": "*" - } - }, - "@types/body-parser": { - "version": "1.19.2", - "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.2.tgz", - "integrity": "sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "@types/connect": "*", - "@types/node": "*" - } - }, - "@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==", - "requires": { - "@types/http-cache-semantics": "*", - "@types/keyv": "^3.1.4", - "@types/node": "*", - "@types/responselike": "^1.0.0" - } - }, - "@types/connect": { - "version": "3.4.35", - "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz", - "integrity": "sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "@types/node": "*" - } - }, - "@types/cors": { - "version": "2.8.12", - "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.12.tgz", - "integrity": "sha512-vt+kDhq/M2ayberEtJcIN/hxXy1Pk+59g2FV/ZQceeaTyCtCucjL2Q7FXlFjtWn4n15KCr1NE2lNNFhp0lEThw==", - "dev": true, - "optional": true, - "peer": true - }, - "@types/ethereum-protocol": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@types/ethereum-protocol/-/ethereum-protocol-1.0.2.tgz", - "integrity": "sha512-Ri/hwt4UckZlF7eqhhAQcXsNvcgQmSJOKZteLco1/5NsRcneW/cJuQcrQNILN2Ohs9WUQjeGW3ZRRNqkEVMzuQ==", - "requires": { - "bignumber.js": "7.2.1" - } - }, - "@types/express": { - "version": "4.17.14", - "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.14.tgz", - "integrity": "sha512-TEbt+vaPFQ+xpxFLFssxUDXj5cWCxZJjIcB7Yg0k0GMHGtgtQgpvx/MUQUeAkNbA9AAGrwkAsoeItdTgS7FMyg==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "@types/body-parser": "*", - "@types/express-serve-static-core": "^4.17.18", - "@types/qs": "*", - "@types/serve-static": "*" - } - }, - "@types/express-serve-static-core": { - "version": "4.17.33", - "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.33.tgz", - "integrity": "sha512-TPBqmR/HRYI3eC2E5hmiivIzv+bidAfXofM+sbonAGvyDhySGw9/PQZFt2BLOrjUUR++4eJVpx6KnLQK1Fk9tA==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "@types/node": "*", - "@types/qs": "*", - "@types/range-parser": "*" - } - }, - "@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, - "requires": { - "@types/minimatch": "*", - "@types/node": "*" - } - }, - "@types/http-cache-semantics": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.0.1.tgz", - "integrity": "sha512-SZs7ekbP8CN0txVG2xVRH6EgKmEm31BOxA07vkFaETzZz1xh+cbt8BcI0slpymvwhx5dlFnQG2rTlPVQn+iRPQ==" - }, - "@types/keyv": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/@types/keyv/-/keyv-3.1.4.tgz", - "integrity": "sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg==", - "requires": { - "@types/node": "*" - } - }, - "@types/long": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@types/long/-/long-4.0.2.tgz", - "integrity": "sha512-MqTGEo5bj5t157U6fA/BiDynNkn0YknVdh48CMPkTSpFTVmvao5UQmm7uEF6xBEo7qIMAlY/JSleYaE6VOdpaA==", - "dev": true, - "optional": true, - "peer": true - }, - "@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, - "peer": true - }, - "@types/mime": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@types/mime/-/mime-3.0.1.tgz", - "integrity": "sha512-Y4XFY5VJAuw0FgAqPNd6NNoV44jbq9Bz2L7Rh/J6jLTiHBSBJa9fxqQIvkIld4GsoDOcCbvzOUAbLPsSKKg+uA==", - "dev": true, - "optional": true, - "peer": true - }, - "@types/minimatch": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-5.1.2.tgz", - "integrity": "sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA==", - "dev": true - }, - "@types/node": { - "version": "18.11.14", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.11.14.tgz", - "integrity": "sha512-0KXV57tENYmmJMl+FekeW9V3O/rlcqGQQJ/hNh9r8pKIj304pskWuEd8fCyNT86g/TpO0gcOTiLzsHLEURFMIQ==" - }, - "@types/pbkdf2": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@types/pbkdf2/-/pbkdf2-3.1.0.tgz", - "integrity": "sha512-Cf63Rv7jCQ0LaL8tNXmEyqTHuIJxRdlS5vMh1mj5voN4+QFhVZnlZruezqpWYDiJ8UTzhP0VmeLXCmBk66YrMQ==", - "requires": { - "@types/node": "*" - } - }, - "@types/qs": { - "version": "6.9.7", - "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", - "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==", - "dev": true, - "optional": true, - "peer": true - }, - "@types/range-parser": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz", - "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==", - "dev": true, - "optional": true, - "peer": true - }, - "@types/responselike": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@types/responselike/-/responselike-1.0.0.tgz", - "integrity": "sha512-85Y2BjiufFzaMIlvJDvTTB8Fxl2xfLo4HgmHzVBz08w4wDePCTjYw66PdrolO0kzli3yam/YCgRufyo1DdQVTA==", - "requires": { - "@types/node": "*" - } - }, - "@types/secp256k1": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@types/secp256k1/-/secp256k1-4.0.3.tgz", - "integrity": "sha512-Da66lEIFeIz9ltsdMZcpQvmrmmoqrfju8pm1BH8WbYjZSwUgCwXLb9C+9XYogwBITnbsSaMdVPb2ekf7TV+03w==", - "requires": { - "@types/node": "*" - } - }, - "@types/serve-static": { - "version": "1.15.1", - "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.1.tgz", - "integrity": "sha512-NUo5XNiAdULrJENtJXZZ3fHtfMolzZwczzBbnAeBbqBwG+LaG6YaJtuwzwGSQZ2wsCrxjEhNNjAkKigy3n8teQ==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "@types/mime": "*", - "@types/node": "*" - } - }, - "@types/underscore": { - "version": "1.11.4", - "resolved": "https://registry.npmjs.org/@types/underscore/-/underscore-1.11.4.tgz", - "integrity": "sha512-uO4CD2ELOjw8tasUrAhvnn2W4A0ZECOvMjCivJr4gA9pGgjv+qxKWY9GLTMVEK8ej85BxQOocUyE7hImmSQYcg==" - }, - "@types/web3": { - "version": "1.0.20", - "resolved": "https://registry.npmjs.org/@types/web3/-/web3-1.0.20.tgz", - "integrity": "sha512-KTDlFuYjzCUlBDGt35Ir5QRtyV9klF84MMKUsEJK10sTWga/71V+8VYLT7yysjuBjaOx2uFYtIWNGoz3yrNDlg==", - "requires": { - "@types/bn.js": "*", - "@types/underscore": "*" - } - }, - "@types/web3-provider-engine": { - "version": "14.0.1", - "resolved": "https://registry.npmjs.org/@types/web3-provider-engine/-/web3-provider-engine-14.0.1.tgz", - "integrity": "sha512-SaAfLJY/40wKFDsNFwaNfwqFSL6kVhTx9JD18qM+Gaw1qdAXLYF/6E7TIqWEdoG4so6fki/zxURP5NsoCePYJw==", - "requires": { - "@types/ethereum-protocol": "*" - } - }, - "abbrev": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.0.9.tgz", - "integrity": "sha512-LEyx4aLEC3x6T0UguF6YILf+ntvmOaWsVfENmIW0E9H09vKlLDGelMjjSm0jkDHALj8A8quZ/HapKNigzwge+Q==", - "dev": true - }, - "abort-controller": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", - "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==", - "dev": true, - "peer": true, - "requires": { - "event-target-shim": "^5.0.0" - } - }, - "abortcontroller-polyfill": { - "version": "1.7.5", - "resolved": "https://registry.npmjs.org/abortcontroller-polyfill/-/abortcontroller-polyfill-1.7.5.tgz", - "integrity": "sha512-JMJ5soJWP18htbbxJjG7bG6yuI6pRhgJ0scHHTfkUjf6wjP912xZWvM+A4sJK3gqd9E8fcPbDnOefbA9Th/FIQ==" - }, - "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==", - "dev": true, - "peer": true, - "requires": { - "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" - } - }, - "abstract-leveldown": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-2.6.3.tgz", - "integrity": "sha512-2++wDf/DYqkPR3o5tbfdhF96EfMApo1GpPfzOsR/ZYXdkSmELlvOOEAl9iKkRsktMPHdGjO4rtkBpf2I7TiTeA==", - "requires": { - "xtend": "~4.0.0" - } - }, - "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==", - "requires": { - "mime-types": "~2.1.34", - "negotiator": "0.6.3" - } - }, - "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, - "peer": true - }, - "aes-js": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/aes-js/-/aes-js-3.0.0.tgz", - "integrity": "sha512-H7wUZRn8WpTq9jocdxQ2c8x2sKo9ZVmzfRE13GiNJXfp7NcKYEdvl3vspKjXox6RIG2VtaRe4JFvxG4rqp2Zuw==", - "dev": true - }, - "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, - "peer": true, - "requires": { - "debug": "4" - } - }, - "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, - "peer": true, - "requires": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" - } - }, - "ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "ajv-formats": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", - "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "ajv": "^8.0.0" - }, - "dependencies": { - "ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - } - }, - "json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true, - "optional": true, - "peer": true - } - } - }, - "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 - }, - "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, - "peer": true - }, - "ansi-escapes": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", - "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", - "dev": true, - "peer": true, - "requires": { - "type-fest": "^0.21.3" - } - }, - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" - }, - "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==", - "requires": { - "color-convert": "^1.9.0" - } - }, - "antlr4": { - "version": "4.13.0", - "resolved": "https://registry.npmjs.org/antlr4/-/antlr4-4.13.0.tgz", - "integrity": "sha512-zooUbt+UscjnWyOrsuY/tVFL4rwrAGwOivpQmvmUDE22hy/lUA467Rc1rcixyRwcRUIXFYBwv7+dClDSHdmmew==", - "dev": true - }, - "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 - }, - "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, - "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - } - }, - "apollo-datasource": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/apollo-datasource/-/apollo-datasource-3.3.2.tgz", - "integrity": "sha512-L5TiS8E2Hn/Yz7SSnWIVbZw0ZfEIXZCa5VUiVxD9P53JvSrf4aStvsFDlGWPvpIdCR+aly2CfoB79B9/JjKFqg==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "@apollo/utils.keyvaluecache": "^1.0.1", - "apollo-server-env": "^4.2.1" - } - }, - "apollo-reporting-protobuf": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/apollo-reporting-protobuf/-/apollo-reporting-protobuf-3.4.0.tgz", - "integrity": "sha512-h0u3EbC/9RpihWOmcSsvTW2O6RXVaD/mPEjfrPkxRPTEPWqncsgOoRJw+wih4OqfH3PvTJvoEIf4LwKrUaqWog==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "@apollo/protobufjs": "1.2.6" - }, - "dependencies": { - "@apollo/protobufjs": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/@apollo/protobufjs/-/protobufjs-1.2.6.tgz", - "integrity": "sha512-Wqo1oSHNUj/jxmsVp4iR3I480p6qdqHikn38lKrFhfzcDJ7lwd7Ck7cHRl4JE81tWNArl77xhnG/OkZhxKBYOw==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "@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.0", - "@types/node": "^10.1.0", - "long": "^4.0.0" - } - }, - "@types/node": { - "version": "10.17.60", - "resolved": "https://registry.npmjs.org/@types/node/-/node-10.17.60.tgz", - "integrity": "sha512-F0KIgDJfy2nA3zMLmWGKxcH2ZVEtCZXHHdOQs2gSaQ27+lNeEfGxzkIw90aXswATX7AZ33tahPbzy6KAfUreVw==", - "dev": true, - "optional": true, - "peer": true - } - } - }, - "apollo-server": { - "version": "3.12.0", - "resolved": "https://registry.npmjs.org/apollo-server/-/apollo-server-3.12.0.tgz", - "integrity": "sha512-wZHLgBoIdGxr/YpPTG5RwNnS+B2y70T/nCegCnU6Yl+H3PXB92OIguLMhdJIZVjukIOhiQT12dNIehqLQ+1hMQ==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "@types/express": "4.17.14", - "apollo-server-core": "^3.12.0", - "apollo-server-express": "^3.12.0", - "express": "^4.17.1" - } - }, - "apollo-server-core": { - "version": "3.13.0", - "resolved": "https://registry.npmjs.org/apollo-server-core/-/apollo-server-core-3.13.0.tgz", - "integrity": "sha512-v/g6DR6KuHn9DYSdtQijz8dLOkP78I5JSVJzPkARhDbhpH74QNwrQ2PP2URAPPEDJ2EeZNQDX8PvbYkAKqg+kg==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "@apollo/utils.keyvaluecache": "^1.0.1", - "@apollo/utils.logger": "^1.0.0", - "@apollo/utils.usagereporting": "^1.0.0", - "@apollographql/apollo-tools": "^0.5.3", - "@apollographql/graphql-playground-html": "1.6.29", - "@graphql-tools/mock": "^8.1.2", - "@graphql-tools/schema": "^8.0.0", - "@josephg/resolvable": "^1.0.0", - "apollo-datasource": "^3.3.2", - "apollo-reporting-protobuf": "^3.4.0", - "apollo-server-env": "^4.2.1", - "apollo-server-errors": "^3.3.1", - "apollo-server-plugin-base": "^3.7.2", - "apollo-server-types": "^3.8.0", - "async-retry": "^1.2.1", - "fast-json-stable-stringify": "^2.1.0", - "graphql-tag": "^2.11.0", - "loglevel": "^1.6.8", - "lru-cache": "^6.0.0", - "node-abort-controller": "^3.0.1", - "sha.js": "^2.4.11", - "uuid": "^9.0.0", - "whatwg-mimetype": "^3.0.0" - }, - "dependencies": { - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "uuid": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.0.tgz", - "integrity": "sha512-MXcSTerfPa4uqyzStbRoTgt5XIe3x5+42+q1sDuy3R5MDk66URdLMOZe5aPX/SQd+kuYAh0FdP/pO28IkQyTeg==", - "dev": true, - "optional": true, - "peer": true - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true, - "optional": true, - "peer": true - } - } - }, - "apollo-server-env": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/apollo-server-env/-/apollo-server-env-4.2.1.tgz", - "integrity": "sha512-vm/7c7ld+zFMxibzqZ7SSa5tBENc4B0uye9LTfjJwGoQFY5xsUPH5FpO5j0bMUDZ8YYNbrF9SNtzc5Cngcr90g==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "node-fetch": "^2.6.7" - } - }, - "apollo-server-errors": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/apollo-server-errors/-/apollo-server-errors-3.3.1.tgz", - "integrity": "sha512-xnZJ5QWs6FixHICXHxUfm+ZWqqxrNuPlQ+kj5m6RtEgIpekOPssH/SD9gf2B4HuWV0QozorrygwZnux8POvyPA==", - "dev": true, - "optional": true, - "peer": true, - "requires": {} - }, - "apollo-server-express": { - "version": "3.12.0", - "resolved": "https://registry.npmjs.org/apollo-server-express/-/apollo-server-express-3.12.0.tgz", - "integrity": "sha512-m8FaGPUfDOEGSm7QRWRmUUGjG/vqvpQoorkId9/FXkC57fz/A59kEdrzkMt9538Xgsa5AV+X4MEWLJhTvlW3LQ==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "@types/accepts": "^1.3.5", - "@types/body-parser": "1.19.2", - "@types/cors": "2.8.12", - "@types/express": "4.17.14", - "@types/express-serve-static-core": "4.17.31", - "accepts": "^1.3.5", - "apollo-server-core": "^3.12.0", - "apollo-server-types": "^3.8.0", - "body-parser": "^1.19.0", - "cors": "^2.8.5", - "parseurl": "^1.3.3" - }, - "dependencies": { - "@types/express-serve-static-core": { - "version": "4.17.31", - "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.31.tgz", - "integrity": "sha512-DxMhY+NAsTwMMFHBTtJFNp5qiHKJ7TeqOo23zVEM9alT1Ml27Q3xcTH0xwxn7Q0BbMcVEJOs/7aQtUWupUQN3Q==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "@types/node": "*", - "@types/qs": "*", - "@types/range-parser": "*" - } - } - } - }, - "apollo-server-plugin-base": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/apollo-server-plugin-base/-/apollo-server-plugin-base-3.7.2.tgz", - "integrity": "sha512-wE8dwGDvBOGehSsPTRZ8P/33Jan6/PmL0y0aN/1Z5a5GcbFhDaaJCjK5cav6npbbGL2DPKK0r6MPXi3k3N45aw==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "apollo-server-types": "^3.8.0" - } - }, - "apollo-server-types": { - "version": "3.8.0", - "resolved": "https://registry.npmjs.org/apollo-server-types/-/apollo-server-types-3.8.0.tgz", - "integrity": "sha512-ZI/8rTE4ww8BHktsVpb91Sdq7Cb71rdSkXELSwdSR0eXu600/sY+1UXhTWdiJvk+Eq5ljqoHLwLbY2+Clq2b9A==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "@apollo/utils.keyvaluecache": "^1.0.1", - "@apollo/utils.logger": "^1.0.0", - "apollo-reporting-protobuf": "^3.4.0", - "apollo-server-env": "^4.2.1" - } - }, - "app-module-path": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/app-module-path/-/app-module-path-2.2.0.tgz", - "integrity": "sha512-gkco+qxENJV+8vFcDiiFhuoSvRXb2a/QPqpSoWhVz829VNJfOTnELbBmPmNKFxf3xdNnw4DWCkzkDaavcX/1YQ==", - "dev": true, - "peer": true - }, - "argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "dev": true - }, - "argsarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/argsarray/-/argsarray-0.0.1.tgz", - "integrity": "sha512-u96dg2GcAKtpTrBdDoFIM7PjcBA+6rSP0OR94MOReNRyUECL6MtQt5XXmRr4qrftYaef9+l5hcpO5te7sML1Cg==", - "dev": true, - "optional": true, - "peer": true - }, - "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, - "requires": { - "call-bind": "^1.0.5", - "is-array-buffer": "^3.0.4" - } - }, - "array-flatten": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==" - }, - "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 - }, - "array.prototype.findlast": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/array.prototype.findlast/-/array.prototype.findlast-1.2.5.tgz", - "integrity": "sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==", - "dev": true, - "requires": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.2", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.0.0", - "es-shim-unscopables": "^1.0.2" - } - }, - "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, - "requires": { - "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" - } - }, - "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==", - "requires": { - "safer-buffer": "~2.1.0" - } - }, - "assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==" - }, - "assertion-error": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz", - "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==" - }, - "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 - }, - "astral-regex": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", - "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", - "dev": true - }, - "async": { - "version": "2.6.4", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz", - "integrity": "sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==", - "requires": { - "lodash": "^4.17.14" - } - }, - "async-eventemitter": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/async-eventemitter/-/async-eventemitter-0.2.4.tgz", - "integrity": "sha512-pd20BwL7Yt1zwDFy+8MX8F1+WCT8aQeKj0kQnTrH9WaeRETlRamVhD0JtRPmrV4GfOJ2F9CvdQkZeZhnh2TuHw==", - "requires": { - "async": "^2.4.0" - } - }, - "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==" - }, - "async-mutex": { - "version": "0.2.6", - "resolved": "https://registry.npmjs.org/async-mutex/-/async-mutex-0.2.6.tgz", - "integrity": "sha512-Hs4R+4SPgamu6rSGW8C7cV9gaWUKEHykfzCCvIRuaVv636Ju10ZdeUbvb4TBEW0INuq2DHZqXbK4Nd3yG4RaRw==", - "requires": { - "tslib": "^2.0.0" - }, - "dependencies": { - "tslib": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.1.tgz", - "integrity": "sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA==" - } - } - }, - "async-retry": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/async-retry/-/async-retry-1.3.3.tgz", - "integrity": "sha512-wfr/jstw9xNi/0teMHrRW7dsz3Lt5ARhYNZ2ewpadnhaIp5mbALhOAP+EAdsC7t4Z6wqsDVv9+W6gm1Dk9mEyw==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "retry": "0.13.1" - }, - "dependencies": { - "retry": { - "version": "0.13.1", - "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz", - "integrity": "sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==", - "dev": true, - "optional": true, - "peer": true - } - } - }, - "asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" - }, - "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, - "optional": true, - "peer": true - }, - "atomically": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/atomically/-/atomically-1.7.0.tgz", - "integrity": "sha512-Xcz9l0z7y9yQ9rdDaxlmaI4uJHf/T8g9hOEzJcsEqX2SjCj4J20uK7+ldkDHMbpJDK76wF7xEIgxc/vSlsfw5w==", - "dev": true, - "optional": true, - "peer": true - }, - "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==", - "requires": { - "possible-typed-array-names": "^1.0.0" - } - }, - "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==" - }, - "aws4": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz", - "integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==" - }, - "axios": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.2.4.tgz", - "integrity": "sha512-lIQuCfBJvZB/Bv7+RWUqEJqNShGOVpk9v7P0ZWx5Ip0qY6u7JBAU6dzQPMLasU9vHL2uD8av/1FDJXj7n6c39w==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "follow-redirects": "^1.15.0", - "form-data": "^4.0.0", - "proxy-from-env": "^1.1.0" - }, - "dependencies": { - "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==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - } - } - } - }, - "babel-plugin-polyfill-corejs2": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.3.tgz", - "integrity": "sha512-8hOdmFYFSZhqg2C/JgLUQ+t52o5nirNwaWM2B9LWteozwIvM14VSwdsCAUET10qT+kmySAlseadmfeeSWFCy+Q==", - "requires": { - "@babel/compat-data": "^7.17.7", - "@babel/helper-define-polyfill-provider": "^0.3.3", - "semver": "^6.1.1" - } - }, - "babel-plugin-polyfill-corejs3": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.6.0.tgz", - "integrity": "sha512-+eHqR6OPcBhJOGgsIar7xoAB1GcSwVUA3XjAd7HJNzOXT4wv6/H7KIdA/Nc60cvUlDbKApmqNvD1B1bzOt4nyA==", - "requires": { - "@babel/helper-define-polyfill-provider": "^0.3.3", - "core-js-compat": "^3.25.1" - } - }, - "babel-plugin-polyfill-regenerator": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.4.1.tgz", - "integrity": "sha512-NtQGmyQDXjQqQ+IzRkBVwEOz9lQ4zxAQZgoAYEtU9dJjnl1Oc98qnN7jcp+bE7O7aYzVpavXE3/VKXNzUbh7aw==", - "requires": { - "@babel/helper-define-polyfill-provider": "^0.3.3" - } - }, - "backoff": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/backoff/-/backoff-2.5.0.tgz", - "integrity": "sha512-wC5ihrnUXmR2douXmXLCe5O3zg3GKIyvRi/hi58a/XyRxVI+3/yM0PYueQOZXPXQ9pxBislYkw+sF9b7C/RuMA==", - "requires": { - "precond": "0.2" - } - }, - "balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true - }, - "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==", - "requires": { - "safe-buffer": "^5.0.1" - } - }, - "base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==" - }, - "bcrypt-pbkdf": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", - "integrity": "sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==", - "requires": { - "tweetnacl": "^0.14.3" - }, - "dependencies": { - "tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==" - } - } - }, - "bech32": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/bech32/-/bech32-2.0.0.tgz", - "integrity": "sha512-LcknSilhIGatDAsY1ak2I8VtGaHNhgMSYVxFrGLXv+xLHytaKZKcaUJJUE7qmBr7h33o5YQwP55pMI0xmkpJwg==" - }, - "big-integer": { - "version": "1.6.36", - "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.36.tgz", - "integrity": "sha512-t70bfa7HYEA1D9idDbmuv7YbsbVkQ+Hp+8KFSul4aE5e/i1bjCNIRYJZlA8Q8p0r9T8cF/RVvwUgRA//FydEyg==", - "dev": true - }, - "big.js": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/big.js/-/big.js-6.2.1.tgz", - "integrity": "sha512-bCtHMwL9LeDIozFn+oNhhFoq+yQ3BNdnsLSASUxLciOb1vgvpHsIO1dsENiGMgbb4SkP5TrzWzRiLddn8ahVOQ==", - "dev": true - }, - "bigint-crypto-utils": { - "version": "3.1.7", - "resolved": "https://registry.npmjs.org/bigint-crypto-utils/-/bigint-crypto-utils-3.1.7.tgz", - "integrity": "sha512-zpCQpIE2Oy5WIQpjC9iYZf8Uh9QqoS51ZCooAcNvzv1AQ3VWdT52D0ksr1+/faeK8HVIej1bxXcP75YcqH3KPA==", - "dev": true, - "peer": true, - "requires": { - "bigint-mod-arith": "^3.1.0" - } - }, - "bigint-mod-arith": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/bigint-mod-arith/-/bigint-mod-arith-3.1.2.tgz", - "integrity": "sha512-nx8J8bBeiRR+NlsROFH9jHswW5HO8mgfOSqW0AmjicMMvaONDa8AO+5ViKDUUNytBPWiwfvZP4/Bj4Y3lUfvgQ==", - "dev": true, - "peer": true - }, - "bignumber.js": { - "version": "7.2.1", - "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-7.2.1.tgz", - "integrity": "sha512-S4XzBk5sMB+Rcb/LNcpzXr57VRTxgAvaAEDAl1AwRx27j00hT84O6OkteE7u8UB3NuaaygCRrEpqox4uDOrbdQ==" - }, - "binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", - "dev": true - }, - "bip174": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/bip174/-/bip174-2.1.1.tgz", - "integrity": "sha512-mdFV5+/v0XyNYXjBS6CQPLo9ekCx4gtKZFnJm5PMto7Fs9hTTDpkkzOB7/FtluRI6JbUUAu+snTYfJRgHLZbZQ==", - "dev": true - }, - "bitcoinjs-lib": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/bitcoinjs-lib/-/bitcoinjs-lib-6.0.1.tgz", - "integrity": "sha512-x/7D4jDj/MMkmO6t3p2CSDXTqpwZ/jRsRiJDmaiXabrR9XRo7jwby8HRn7EyK1h24rKFFI7vI0ay4czl6bDOZQ==", - "dev": true, - "requires": { - "bech32": "^2.0.0", - "bip174": "^2.0.1", - "bs58check": "^2.1.2", - "create-hash": "^1.1.0", - "typeforce": "^1.11.3", - "varuint-bitcoin": "^1.1.2", - "wif": "^2.0.1" - }, - "dependencies": { - "bs58check": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/bs58check/-/bs58check-2.1.2.tgz", - "integrity": "sha512-0TS1jicxdU09dwJMNZtVAfzPi6Q6QeN0pM1Fkzrjn+XYHvzMKPU3pHVpva+769iNVSfIYWf7LJ6WR+BuuMf8cA==", - "dev": true, - "requires": { - "bs58": "^4.0.0", - "create-hash": "^1.1.0", - "safe-buffer": "^5.1.2" - } - } - } - }, - "blakejs": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/blakejs/-/blakejs-1.2.1.tgz", - "integrity": "sha512-QXUSXI3QVc/gJME0dBpXrag1kbzOqCjCX8/b54ntNyW6sjtoqxqRk3LTmXzaJoh71zMsDCjM+47jS7XiwN/+fQ==" - }, - "bluebird": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", - "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==" - }, - "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==" - }, - "body-parser": { - "version": "1.20.2", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.2.tgz", - "integrity": "sha512-ml9pReCu3M61kGlqoTm2umSXTlRTuGTx0bfYj+uIUKKYycG5NtSbeetV3faSU6R7ajOPw0g/J1PvK4qNy7s5bA==", - "requires": { - "bytes": "3.1.2", - "content-type": "~1.0.5", - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "on-finished": "2.4.1", - "qs": "6.11.0", - "raw-body": "2.5.2", - "type-is": "~1.6.18", - "unpipe": "1.0.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - } - } - }, - "boolbase": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", - "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", - "dev": true - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "brorand": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", - "integrity": "sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==" - }, - "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, - "peer": true, - "requires": { - "abstract-level": "^1.0.2", - "catering": "^2.1.1", - "module-error": "^1.0.2", - "run-parallel-limit": "^1.1.0" - } - }, - "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 - }, - "browserify-aes": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", - "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", - "requires": { - "buffer-xor": "^1.0.3", - "cipher-base": "^1.0.0", - "create-hash": "^1.1.0", - "evp_bytestokey": "^1.0.3", - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "browserslist": { - "version": "4.21.4", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.4.tgz", - "integrity": "sha512-CBHJJdDmgjl3daYjN5Cp5kbTf1mUhZoS+beLklHIvkOWscs83YAhLlF3Wsh/lciQYAcbBJgTOD44VtG31ZM4Hw==", - "requires": { - "caniuse-lite": "^1.0.30001400", - "electron-to-chromium": "^1.4.251", - "node-releases": "^2.0.6", - "update-browserslist-db": "^1.0.9" - } - }, - "bs58": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/bs58/-/bs58-4.0.1.tgz", - "integrity": "sha512-Ok3Wdf5vOIlBrgCvTq96gBkJw+JUEzdBgyaza5HLtPm7yTHkjRy8+JzNyHF7BHa0bNWOQIp3m5YF0nnFcOIKLw==", - "requires": { - "base-x": "^3.0.2" - } - }, - "bs58check": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/bs58check/-/bs58check-3.0.1.tgz", - "integrity": "sha512-hjuuJvoWEybo7Hn/0xOrczQKKEKD63WguEjlhLExYs2wUBcebDC1jDNK17eEAD2lYfw82d5ASC1d7K3SWszjaQ==", - "dev": true, - "requires": { - "@noble/hashes": "^1.2.0", - "bs58": "^5.0.0" - }, - "dependencies": { - "@noble/hashes": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.3.1.tgz", - "integrity": "sha512-EbqwksQwz9xDRGfDST86whPBgM65E0OH/pCgqW0GBVzO22bNE+NuIbeTb714+IfSjU3aRk47EUvXIb5bTsenKA==", - "dev": true - }, - "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==", - "dev": true - }, - "bs58": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/bs58/-/bs58-5.0.0.tgz", - "integrity": "sha512-r+ihvQJvahgYT50JD05dyJNKlmmSlMoOGwn1lCcEzanPglg7TxYjioQUYehQ9mAR/+hOSd2jRc/Z2y5UxBymvQ==", - "dev": true, - "requires": { - "base-x": "^4.0.0" - } - } - } - }, - "btoa": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/btoa/-/btoa-1.2.1.tgz", - "integrity": "sha512-SB4/MIGlsiVkMcHmT+pSmIPoNDoHg+7cMzmt3Uxt628MTz2487DKSqK/fuhFBrkuqrYv5UCEnACpF4dTFNKc/g==" - }, - "buffer": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", - "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", - "dev": true, - "requires": { - "base64-js": "^1.3.1", - "ieee754": "^1.2.1" - } - }, - "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, - "peer": true - }, - "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==" - }, - "buffer-xor": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", - "integrity": "sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ==" - }, - "bufferutil": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/bufferutil/-/bufferutil-4.0.7.tgz", - "integrity": "sha512-kukuqc39WOHtdxtw4UScxF/WVnMFVSQVKhtx3AjZJzhd0RGZZldcrfSEbVsWWe6KNH253574cq5F+wpv0G9pJw==", - "requires": { - "node-gyp-build": "^4.3.0" - } - }, - "bytes": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", - "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==" - }, - "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==" - }, - "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==", - "requires": { - "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" - }, - "dependencies": { - "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==", - "requires": { - "pump": "^3.0.0" - } - }, - "lowercase-keys": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", - "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==" - } - } - }, - "call-bind": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz", - "integrity": "sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==", - "requires": { - "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" - } - }, - "callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true - }, - "camel-case": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-3.0.0.tgz", - "integrity": "sha512-+MbKztAYHXPr1jNTSKQF52VpcFjwY5RkR7fxksV8Doo4KAYc5Fl4UJRgthBbTmEx8C54DqahhbLJkDwjI3PI/w==", - "dev": true, - "requires": { - "no-case": "^2.2.0", - "upper-case": "^1.1.1" - } - }, - "camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", - "dev": true - }, - "caniuse-lite": { - "version": "1.0.30001439", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001439.tgz", - "integrity": "sha512-1MgUzEkoMO6gKfXflStpYgZDlFM7M/ck/bgfVCACO5vnAf0fXoNVHdWtqGU+MYca+4bL9Z5bpOVmR33cWW9G2A==" - }, - "caseless": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==" - }, - "catering": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/catering/-/catering-2.1.1.tgz", - "integrity": "sha512-K7Qy8O9p76sL3/3m7/zLKbRkyOlSZAgzEaLhyj2mXS8PsCud2Eo4hAb8aLtZqHh0QGqLcb9dlJSu6lHRVENm1w==", - "dev": true, - "peer": true - }, - "cbor": { - "version": "9.0.2", - "resolved": "https://registry.npmjs.org/cbor/-/cbor-9.0.2.tgz", - "integrity": "sha512-JPypkxsB10s9QOWwa6zwPzqE1Md3vqpPc+cai4sAecuCsRyAtAl/pMyhPlMbT/xtPnm2dznJZYRLui57qiRhaQ==", - "dev": true, - "requires": { - "nofilter": "^3.1.0" - } - }, - "chai": { - "version": "4.3.7", - "resolved": "https://registry.npmjs.org/chai/-/chai-4.3.7.tgz", - "integrity": "sha512-HLnAzZ2iupm25PlN0xFreAlBA5zaBSv3og0DdeGA4Ar6h6rJ3A0rolRUKJhSF2V10GZKDgWF/VmAEsNWjCRB+A==", - "requires": { - "assertion-error": "^1.1.0", - "check-error": "^1.0.2", - "deep-eql": "^4.1.2", - "get-func-name": "^2.0.0", - "loupe": "^2.3.1", - "pathval": "^1.1.1", - "type-detect": "^4.0.5" - } - }, - "chai-bn": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/chai-bn/-/chai-bn-0.3.1.tgz", - "integrity": "sha512-vuzEy0Cb+k8zqi2SHOmvZdRSbKcSOJfS1Nv8+6YDJIyCzfxkTCHLNRyjRIoRJ3WJtYb/c7OHjrvLoGeyO4A/gA==", - "requires": {} - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "change-case": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/change-case/-/change-case-3.0.2.tgz", - "integrity": "sha512-Mww+SLF6MZ0U6kdg11algyKd5BARbyM4TbFBepwowYSR5ClfQGCGtxNXgykpN0uF/bstWeaGDT4JWaDh8zWAHA==", - "dev": true, - "requires": { - "camel-case": "^3.0.0", - "constant-case": "^2.0.0", - "dot-case": "^2.1.0", - "header-case": "^1.0.0", - "is-lower-case": "^1.1.0", - "is-upper-case": "^1.1.0", - "lower-case": "^1.1.1", - "lower-case-first": "^1.0.0", - "no-case": "^2.3.2", - "param-case": "^2.1.0", - "pascal-case": "^2.0.0", - "path-case": "^2.1.0", - "sentence-case": "^2.1.0", - "snake-case": "^2.1.0", - "swap-case": "^1.1.0", - "title-case": "^2.1.0", - "upper-case": "^1.1.1", - "upper-case-first": "^1.1.0" - } - }, - "check-error": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.2.tgz", - "integrity": "sha512-BrgHpW9NURQgzoNyjfq0Wu6VFO6D7IZEmJNdtgNqpzGG8RuNFHt2jQxWlAs4HMe119chBnv+34syEZtc6IhLtA==" - }, - "checkpoint-store": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/checkpoint-store/-/checkpoint-store-1.1.0.tgz", - "integrity": "sha512-J/NdY2WvIx654cc6LWSq/IYFFCUf75fFTgwzFnmbqyORH4MwgiQCgswLLKBGzmsyTI5V7i5bp/So6sMbDWhedg==", - "requires": { - "functional-red-black-tree": "^1.0.1" - } - }, - "cheerio": { - "version": "1.0.0-rc.12", - "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.12.tgz", - "integrity": "sha512-VqR8m68vM46BNnuZ5NtnGBKIE/DfN0cRIzg9n40EIq9NOv90ayxLBXA8fXC5gquFRGJSTRqBq25Jt2ECLR431Q==", - "dev": true, - "requires": { - "cheerio-select": "^2.1.0", - "dom-serializer": "^2.0.0", - "domhandler": "^5.0.3", - "domutils": "^3.0.1", - "htmlparser2": "^8.0.1", - "parse5": "^7.0.0", - "parse5-htmlparser2-tree-adapter": "^7.0.0" - } - }, - "cheerio-select": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cheerio-select/-/cheerio-select-2.1.0.tgz", - "integrity": "sha512-9v9kG0LvzrlcungtnJtpGNxY+fzECQKhK4EGJX2vByejiMX84MFNQw4UxPJl3bFbTMw+Dfs37XaIkCwTZfLh4g==", - "dev": true, - "requires": { - "boolbase": "^1.0.0", - "css-select": "^5.1.0", - "css-what": "^6.1.0", - "domelementtype": "^2.3.0", - "domhandler": "^5.0.3", - "domutils": "^3.0.1" - } - }, - "chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", - "dev": true, - "requires": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "fsevents": "~2.3.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - } - }, - "chownr": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", - "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==" - }, - "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, - "peer": true - }, - "cids": { - "version": "0.7.5", - "resolved": "https://registry.npmjs.org/cids/-/cids-0.7.5.tgz", - "integrity": "sha512-zT7mPeghoWAu+ppn8+BS1tQ5qGmbMfB4AregnQjA/qHY3GC1m1ptI9GkWNlgeu38r7CuRdXB47uY2XgAYt6QVA==", - "requires": { - "buffer": "^5.5.0", - "class-is": "^1.1.0", - "multibase": "~0.6.0", - "multicodec": "^1.0.0", - "multihashes": "~0.4.15" - }, - "dependencies": { - "buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "requires": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" - } - }, - "multicodec": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/multicodec/-/multicodec-1.0.4.tgz", - "integrity": "sha512-NDd7FeS3QamVtbgfvu5h7fd1IlbaC4EQ0/pgU4zqE2vdHCmBGsUa0TiM8/TdSeG6BMPC92OOCf8F1ocE/Wkrrg==", - "requires": { - "buffer": "^5.6.0", - "varint": "^5.0.0" - } - } - } - }, - "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==", - "requires": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "class-is": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/class-is/-/class-is-1.1.0.tgz", - "integrity": "sha512-rhjH9AG1fvabIDoGRVH587413LPjTZgmDF9fOFCbFJQV4yuocX1mHxxvXI4g3cGwbVY9wAYIoKlg1N79frJKQw==" - }, - "classic-level": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/classic-level/-/classic-level-1.2.0.tgz", - "integrity": "sha512-qw5B31ANxSluWz9xBzklRWTUAJ1SXIdaVKTVS7HcTGKOAmExx65Wo5BUICW+YGORe2FOUaDghoI9ZDxj82QcFg==", - "dev": true, - "peer": true, - "requires": { - "abstract-level": "^1.0.2", - "catering": "^2.1.0", - "module-error": "^1.0.1", - "napi-macros": "~2.0.0", - "node-gyp-build": "^4.3.0" - } - }, - "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, - "peer": true - }, - "cli-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", - "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "restore-cursor": "^3.1.0" - } - }, - "cli-table": { - "version": "0.3.11", - "resolved": "https://registry.npmjs.org/cli-table/-/cli-table-0.3.11.tgz", - "integrity": "sha512-IqLQi4lO0nIB4tcdTpN4LCB9FI3uqrJZK7RC515EnhZ6qBaglkIgICb1wjeAqpdoOabm1+SuQtkXIPdYC93jhQ==", - "requires": { - "colors": "1.0.3" - }, - "dependencies": { - "colors": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/colors/-/colors-1.0.3.tgz", - "integrity": "sha512-pFGrxThWcWQ2MsAz6RtgeWe4NK2kUE1WfsrvvlctdII745EW9I0yflqhe7++M5LEc7bV2c/9/5zc8sFcpL0Drw==" - } - } - }, - "cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", - "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" - } - }, - "clone": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", - "integrity": "sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==" - }, - "clone-buffer": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/clone-buffer/-/clone-buffer-1.0.0.tgz", - "integrity": "sha512-KLLTJWrvwIP+OPfMn0x2PheDEP20RPUcGXj/ERegTgdmPEZylALQldygiqrPPu8P45uNuPs7ckmReLY6v/iA5g==", - "dev": true, - "optional": true, - "peer": true - }, - "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==", - "requires": { - "mimic-response": "^1.0.0" - } - }, - "code-point-at": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha512-RpAVKQA5T63xEj6/giIbUEtZwJ4UFIc3ZtvEkiaUERylqe8xb5IvqcgOurZLahv93CLKfxcw5YI+DZcUBRyLXA==", - "dev": true - }, - "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==", - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" - }, - "colors": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/colors/-/colors-1.4.0.tgz", - "integrity": "sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA==", - "dev": true - }, - "combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "requires": { - "delayed-stream": "~1.0.0" - } - }, - "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 - }, - "commander": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/commander/-/commander-3.0.2.tgz", - "integrity": "sha512-Gar0ASD4BDyKC4hl4DwHqDrmvjoxWKZigVnAbn5H1owvm4CxCPdb0HQDehwNYMJpla5+M2tPmPARzhtYuwpHow==", - "dev": true - }, - "compare-versions": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/compare-versions/-/compare-versions-6.1.0.tgz", - "integrity": "sha512-LNZQXhqUvqUTotpZ00qLSaify3b4VFD588aRr8MKFw4CMUr98ytzCW5wDH5qx/DEY5kCDXcbcRuCqL0szEf2tg==", - "dev": true - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", - "dev": true - }, - "conf": { - "version": "10.2.0", - "resolved": "https://registry.npmjs.org/conf/-/conf-10.2.0.tgz", - "integrity": "sha512-8fLl9F04EJqjSqH+QjITQfJF8BrOVaYr1jewVgSRAEWePfxT0sku4w2hrGQ60BC/TNLGQ2pgxNlTbWQmMPFvXg==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "ajv": "^8.6.3", - "ajv-formats": "^2.1.1", - "atomically": "^1.7.0", - "debounce-fn": "^4.0.0", - "dot-prop": "^6.0.1", - "env-paths": "^2.2.1", - "json-schema-typed": "^7.0.3", - "onetime": "^5.1.2", - "pkg-up": "^3.1.0", - "semver": "^7.3.5" - }, - "dependencies": { - "ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - } - }, - "json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true, - "optional": true, - "peer": true - }, - "semver": { - "version": "7.6.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.2.tgz", - "integrity": "sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w==", - "dev": true, - "optional": true, - "peer": true - } - } - }, - "constant-case": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/constant-case/-/constant-case-2.0.0.tgz", - "integrity": "sha512-eS0N9WwmjTqrOmR3o83F5vW8Z+9R1HnVz3xmzT2PMFug9ly+Au/fxRWlEBSb6LcZwspSsEn9Xs1uw9YgzAg1EQ==", - "dev": true, - "requires": { - "snake-case": "^2.1.0", - "upper-case": "^1.1.1" - } - }, - "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==", - "requires": { - "safe-buffer": "5.2.1" - } - }, - "content-hash": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/content-hash/-/content-hash-2.5.2.tgz", - "integrity": "sha512-FvIQKy0S1JaWV10sMsA7TRx8bpU+pqPkhbsfvOJAdjRXvYxEckAwQWGwtRjiaJfh+E0DvcWUGqcdjwMGFjsSdw==", - "requires": { - "cids": "^0.7.1", - "multicodec": "^0.5.5", - "multihashes": "^0.4.15" - } - }, - "content-type": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", - "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==" - }, - "convert-source-map": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", - "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", - "peer": true - }, - "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, - "peer": true - }, - "cookie-signature": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==" - }, - "core-js-compat": { - "version": "3.26.1", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.26.1.tgz", - "integrity": "sha512-622/KzTudvXCDLRw70iHW4KKs1aGpcRcowGWyYJr2DEBfRrd6hNJybxSWJFuZYD4ma86xhrwDDHxmDaIq4EA8A==", - "requires": { - "browserslist": "^4.21.4" - } - }, - "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==" - }, - "cors": { - "version": "2.8.5", - "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", - "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", - "requires": { - "object-assign": "^4", - "vary": "^1" - } - }, - "cosmiconfig": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.2.0.tgz", - "integrity": "sha512-3rTMnFJA1tCOPwRxtgF4wd7Ab2qvDbL8jX+3smjIbS4HlZBagTlpERbdN7iAbWlrfxE3M8c27kTwTawQ7st+OQ==", - "dev": true, - "requires": { - "import-fresh": "^3.2.1", - "js-yaml": "^4.1.0", - "parse-json": "^5.0.0", - "path-type": "^4.0.0" - }, - "dependencies": { - "parse-json": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", - "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-even-better-errors": "^2.3.0", - "lines-and-columns": "^1.1.6" - } - } - } - }, - "crc-32": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/crc-32/-/crc-32-1.2.2.tgz", - "integrity": "sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ==" - }, - "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==", - "requires": { - "cipher-base": "^1.0.1", - "inherits": "^2.0.1", - "md5.js": "^1.3.4", - "ripemd160": "^2.0.1", - "sha.js": "^2.4.0" - } - }, - "create-hmac": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", - "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", - "requires": { - "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" - } - }, - "cross-fetch": { - "version": "2.2.6", - "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-2.2.6.tgz", - "integrity": "sha512-9JZz+vXCmfKUZ68zAptS7k4Nu8e2qcibe7WVZYps7sAgk5R8GYTc+T1WR0v1rlP9HxgARmOX1UTIJZFytajpNA==", - "requires": { - "node-fetch": "^2.6.7", - "whatwg-fetch": "^2.0.4" - } - }, - "crypto-addr-codec": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/crypto-addr-codec/-/crypto-addr-codec-0.1.7.tgz", - "integrity": "sha512-X4hzfBzNhy4mAc3UpiXEC/L0jo5E8wAa9unsnA8nNXYzXjCcGk83hfC5avJWCSGT8V91xMnAS9AKMHmjw5+XCg==", - "dev": true, - "requires": { - "base-x": "^3.0.8", - "big-integer": "1.6.36", - "blakejs": "^1.1.0", - "bs58": "^4.0.1", - "ripemd160-min": "0.0.6", - "safe-buffer": "^5.2.0", - "sha3": "^2.1.1" - } - }, - "css-select": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz", - "integrity": "sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==", - "dev": true, - "requires": { - "boolbase": "^1.0.0", - "css-what": "^6.1.0", - "domhandler": "^5.0.2", - "domutils": "^3.0.1", - "nth-check": "^2.0.1" - } - }, - "css-what": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", - "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==", - "dev": true - }, - "cssfilter": { - "version": "0.0.10", - "resolved": "https://registry.npmjs.org/cssfilter/-/cssfilter-0.0.10.tgz", - "integrity": "sha512-FAaLDaplstoRsDR8XGYH51znUN0UY7nMc6Z9/fvE8EXGwvJE9hu7W2vHwx1+bd6gCYnln9nLbzxFTrcO9YQDZw==", - "dev": true, - "optional": true, - "peer": true - }, - "d": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/d/-/d-1.0.1.tgz", - "integrity": "sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==", - "requires": { - "es5-ext": "^0.10.50", - "type": "^1.0.1" - } - }, - "dashdash": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==", - "requires": { - "assert-plus": "^1.0.0" - } - }, - "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, - "requires": { - "call-bind": "^1.0.6", - "es-errors": "^1.3.0", - "is-data-view": "^1.0.1" - } - }, - "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, - "requires": { - "call-bind": "^1.0.7", - "es-errors": "^1.3.0", - "is-data-view": "^1.0.1" - } - }, - "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, - "requires": { - "call-bind": "^1.0.6", - "es-errors": "^1.3.0", - "is-data-view": "^1.0.1" - } - }, - "dataloader": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/dataloader/-/dataloader-2.1.0.tgz", - "integrity": "sha512-qTcEYLen3r7ojZNgVUaRggOI+KM7jrKxXeSHhogh/TWxYMeONEMqY+hmkobiYQozsGIyg9OYVzO4ZIfoB4I0pQ==", - "dev": true, - "optional": true, - "peer": true - }, - "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 - }, - "debounce-fn": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/debounce-fn/-/debounce-fn-4.0.0.tgz", - "integrity": "sha512-8pYCQiL9Xdcg0UPSD3d+0KMlOjp+KGU5EPwYddgzQ7DATsg4fuUDjQtsYLmWjnk2obnNHgV3vE2Y4jejSOJVBQ==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "mimic-fn": "^3.0.0" - } - }, - "debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "requires": { - "ms": "2.1.2" - } - }, - "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 - }, - "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==" - }, - "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==", - "requires": { - "mimic-response": "^1.0.0" - } - }, - "deep-eql": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-4.1.3.tgz", - "integrity": "sha512-WaEtAOpRA1MQ0eohqZjpGD8zdI0Ovsm8mmFhaDN8dvDZzyoUMcYDnf5Y6iu7HTXxf8JDS23qWa4a+hKCDyOPzw==", - "requires": { - "type-detect": "^4.0.0" - } - }, - "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 - }, - "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==" - }, - "deferred-leveldown": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/deferred-leveldown/-/deferred-leveldown-1.2.2.tgz", - "integrity": "sha512-uukrWD2bguRtXilKt6cAWKyoXrTSMo5m7crUdLfWQmu8kIm88w3QZoUL+6nhpfKVmhHANER6Re3sKoNoZ3IKMA==", - "requires": { - "abstract-leveldown": "~2.6.0" - } - }, - "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==", - "requires": { - "es-define-property": "^1.0.0", - "es-errors": "^1.3.0", - "gopd": "^1.0.1" - } - }, - "define-properties": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", - "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", - "dev": true, - "requires": { - "define-data-property": "^1.0.1", - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" - }, - "dependencies": { - "object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true - } - } - }, - "delay": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/delay/-/delay-5.0.0.tgz", - "integrity": "sha512-ReEBKkIfe4ya47wlPYf/gu5ib6yUG0/Aez0JQZQz94kiWtRQvZIQbTiehsnwHvLSWJnQdhVeqYue7Id1dKr0qw==", - "dev": true, - "optional": true, - "peer": true - }, - "delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==" - }, - "depd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", - "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==" - }, - "destroy": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", - "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==" - }, - "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 - }, - "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 - }, - "difflib": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/difflib/-/difflib-0.2.4.tgz", - "integrity": "sha512-9YVwmMb0wQHQNr5J9m6BSj6fk4pfGITGQOOs+D9Fl+INODWFOfvhIU1hNv6GgR1RBoC/9NJcwu77zShxV0kT7w==", - "dev": true, - "requires": { - "heap": ">= 0.2.0" - } - }, - "dir-glob": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", - "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", - "dev": true, - "requires": { - "path-type": "^4.0.0" - } - }, - "dom-serializer": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", - "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==", - "dev": true, - "requires": { - "domelementtype": "^2.3.0", - "domhandler": "^5.0.2", - "entities": "^4.2.0" - } - }, - "dom-walk": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/dom-walk/-/dom-walk-0.1.2.tgz", - "integrity": "sha512-6QvTW9mrGeIegrFXdtQi9pk7O/nSK6lSdXW2eqUspN5LWD7UTji2Fqw5V2YLjBpHEoU9Xl/eUWNpDeZvoyOv2w==" - }, - "domelementtype": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", - "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", - "dev": true - }, - "domhandler": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", - "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", - "dev": true, - "requires": { - "domelementtype": "^2.3.0" - } - }, - "domutils": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.1.0.tgz", - "integrity": "sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==", - "dev": true, - "requires": { - "dom-serializer": "^2.0.0", - "domelementtype": "^2.3.0", - "domhandler": "^5.0.3" - } - }, - "dot-case": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/dot-case/-/dot-case-2.1.1.tgz", - "integrity": "sha512-HnM6ZlFqcajLsyudHq7LeeLDr2rFAVYtDv/hV5qchQEidSck8j9OPUsXY9KwJv/lHMtYlX4DjRQqwFYa+0r8Ug==", - "dev": true, - "requires": { - "no-case": "^2.2.0" - } - }, - "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==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "is-obj": "^2.0.0" - } - }, - "dotenv": { - "version": "16.3.1", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.3.1.tgz", - "integrity": "sha512-IPzF4w4/Rd94bA9imS68tZBaYyBWSCE47V1RGuMrB94iyTOIEwRmVL2x/4An+6mETpLrKJ5hQkB8W4kFAadeIQ==", - "dev": true - }, - "double-ended-queue": { - "version": "2.1.0-0", - "resolved": "https://registry.npmjs.org/double-ended-queue/-/double-ended-queue-2.1.0-0.tgz", - "integrity": "sha512-+BNfZ+deCo8hMNpDqDnvT+c0XpJ5cUa6mqYq89bho2Ifze4URTqRkcwR399hWoTrTkbZ/XJYDgP6rc7pRgffEQ==", - "dev": true, - "optional": true, - "peer": true - }, - "ecc-jsbn": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", - "integrity": "sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw==", - "requires": { - "jsbn": "~0.1.0", - "safer-buffer": "^2.1.0" - } - }, - "ee-first": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==" - }, - "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==" - }, - "elliptic": { - "version": "6.5.4", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", - "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", - "requires": { - "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" - }, - "dependencies": { - "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==" - } - } - }, - "emittery": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.4.1.tgz", - "integrity": "sha512-r4eRSeStEGf6M5SKdrQhhLK5bOwOBxQhIE3YSTnZE3GpKiLfnnhE+tPtrJE79+eDJgm39BM6LSoI8SCx4HbwlQ==", - "dev": true, - "optional": true, - "peer": true - }, - "emoji-regex": { - "version": "10.2.1", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-10.2.1.tgz", - "integrity": "sha512-97g6QgOk8zlDRdgq1WxwgTMgEWGVAQvB5Fdpgc1MkNy56la5SKP9GsMXKDOdqwn90/41a8yPwIGk1Y6WVbeMQA==", - "dev": true - }, - "encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==" - }, - "encoding-down": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/encoding-down/-/encoding-down-6.3.0.tgz", - "integrity": "sha512-QKrV0iKR6MZVJV08QY0wp1e7vF6QbhnbQhb07bwpEyuz4uZiZgPlEGdkCROuFkUwdxlFaiPIhjyarH1ee/3vhw==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "abstract-leveldown": "^6.2.1", - "inherits": "^2.0.3", - "level-codec": "^9.0.0", - "level-errors": "^2.0.0" - }, - "dependencies": { - "abstract-leveldown": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-6.3.0.tgz", - "integrity": "sha512-TU5nlYgta8YrBMNpc9FwQzRbiXsj49gsALsXadbGHt9CROPzX5fB0rWDR5mtdpOOKa5XqRFpbj1QroPAoPzVjQ==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "buffer": "^5.5.0", - "immediate": "^3.2.3", - "level-concat-iterator": "~2.0.0", - "level-supports": "~1.0.0", - "xtend": "~4.0.0" - } - }, - "buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" - } - }, - "level-codec": { - "version": "9.0.2", - "resolved": "https://registry.npmjs.org/level-codec/-/level-codec-9.0.2.tgz", - "integrity": "sha512-UyIwNb1lJBChJnGfjmO0OR+ezh2iVu1Kas3nvBS/BzGnx79dv6g7unpKIDNPMhfdTEGoc7mC8uAu51XEtX+FHQ==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "buffer": "^5.6.0" - } - }, - "level-concat-iterator": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/level-concat-iterator/-/level-concat-iterator-2.0.1.tgz", - "integrity": "sha512-OTKKOqeav2QWcERMJR7IS9CUo1sHnke2C0gkSmcR7QuEtFNLLzHQAvnMw8ykvEcv0Qtkg0p7FOwP1v9e5Smdcw==", - "dev": true, - "optional": true, - "peer": true - }, - "level-errors": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/level-errors/-/level-errors-2.0.1.tgz", - "integrity": "sha512-UVprBJXite4gPS+3VznfgDSU8PTRuVX0NXwoWW50KLxd2yw4Y1t2JUR5In1itQnudZqRMT9DlAM3Q//9NCjCFw==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "errno": "~0.1.1" - } - }, - "level-supports": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/level-supports/-/level-supports-1.0.1.tgz", - "integrity": "sha512-rXM7GYnW8gsl1vedTJIbzOrRv85c/2uCMpiiCzO2fndd06U/kUXEEU9evYn4zFggBOg36IsBW8LzqIpETwwQzg==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "xtend": "^4.0.2" - } - } - } - }, - "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==", - "requires": { - "once": "^1.4.0" - } - }, - "end-stream": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/end-stream/-/end-stream-0.1.0.tgz", - "integrity": "sha512-Brl10T8kYnc75IepKizW6Y9liyW8ikz1B7n/xoHrJxoVSSjoqPn30sb7XVFfQERK4QfUMYRGs9dhWwtt2eu6uA==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "write-stream": "~0.4.3" - } - }, - "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, - "peer": true, - "requires": { - "ansi-colors": "^4.1.1" - } - }, - "entities": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", - "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", - "dev": true - }, - "env-paths": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", - "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", - "dev": true, - "peer": true - }, - "errno": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.8.tgz", - "integrity": "sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==", - "requires": { - "prr": "~1.0.1" - } - }, - "error-ex": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", - "dev": true, - "requires": { - "is-arrayish": "^0.2.1" - } - }, - "es-abstract": { - "version": "1.23.3", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.3.tgz", - "integrity": "sha512-e+HfNH61Bj1X9/jLc5v1owaLYuHdeHHSQlkhCBiTK8rBvKaULl/beGMxwrMXjpYrv4pz22BlY570vVePA2ho4A==", - "dev": true, - "requires": { - "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.8", - "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.6", - "unbox-primitive": "^1.0.2", - "which-typed-array": "^1.1.15" - }, - "dependencies": { - "object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true - } - } - }, - "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==", - "requires": { - "get-intrinsic": "^1.2.4" - } - }, - "es-errors": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", - "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==" - }, - "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, - "requires": { - "es-errors": "^1.3.0" - } - }, - "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, - "requires": { - "get-intrinsic": "^1.2.4", - "has-tostringtag": "^1.0.2", - "hasown": "^2.0.1" - } - }, - "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, - "requires": { - "hasown": "^2.0.0" - } - }, - "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, - "requires": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" - } - }, - "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==", - "requires": { - "es6-iterator": "^2.0.3", - "es6-symbol": "^3.1.3", - "esniff": "^2.0.1", - "next-tick": "^1.1.0" - } - }, - "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==", - "requires": { - "d": "1", - "es5-ext": "^0.10.35", - "es6-symbol": "^3.1.1" - } - }, - "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==" - }, - "es6-symbol": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.3.tgz", - "integrity": "sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==", - "requires": { - "d": "^1.0.1", - "ext": "^1.1.2" - } - }, - "escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==" - }, - "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==" - }, - "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==" - }, - "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, - "requires": { - "esprima": "^2.7.1", - "estraverse": "^1.9.1", - "esutils": "^2.0.2", - "optionator": "^0.8.1", - "source-map": "~0.2.0" - } - }, - "esniff": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/esniff/-/esniff-2.0.1.tgz", - "integrity": "sha512-kTUIGKQ/mDPFoJ0oVfcmyJn4iBDRptjNVIzwIFR7tqWXdVI9xfA2RMwY/gbSpJG3lkdWNEjLap/NqVHZiJsdfg==", - "requires": { - "d": "^1.0.1", - "es5-ext": "^0.10.62", - "event-emitter": "^0.3.5", - "type": "^2.7.2" - }, - "dependencies": { - "type": { - "version": "2.7.2", - "resolved": "https://registry.npmjs.org/type/-/type-2.7.2.tgz", - "integrity": "sha512-dzlvlNlt6AXU7EBSfpAscydQ7gXB+pPGsPnfJnZpiNJBDj7IaJzQlBZYGdEi4R9HmPdBv2XmWJ6YUtoTa7lmCw==" - } - } - }, - "esprima": { - "version": "2.7.3", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz", - "integrity": "sha512-OarPfz0lFCiW4/AV2Oy1Rp9qu0iusTKqykwTspGCZtPxmF81JR4MmIebvF1F9+UOKth2ZubLQ4XGGaU+hSn99A==", - "dev": true - }, - "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 - }, - "esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true - }, - "etag": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==" - }, - "eth-block-tracker": { - "version": "4.4.3", - "resolved": "https://registry.npmjs.org/eth-block-tracker/-/eth-block-tracker-4.4.3.tgz", - "integrity": "sha512-A8tG4Z4iNg4mw5tP1Vung9N9IjgMNqpiMoJ/FouSFwNCGHv2X0mmOYwtQOJzki6XN7r7Tyo01S29p7b224I4jw==", - "requires": { - "@babel/plugin-transform-runtime": "^7.5.5", - "@babel/runtime": "^7.5.5", - "eth-query": "^2.1.0", - "json-rpc-random-id": "^1.0.1", - "pify": "^3.0.0", - "safe-event-emitter": "^1.0.1" - }, - "dependencies": { - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==" - } - } - }, - "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==", - "requires": { - "idna-uts46-hx": "^2.3.1", - "js-sha3": "^0.5.7" - }, - "dependencies": { - "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==" - } - } - }, - "eth-json-rpc-filters": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/eth-json-rpc-filters/-/eth-json-rpc-filters-4.2.2.tgz", - "integrity": "sha512-DGtqpLU7bBg63wPMWg1sCpkKCf57dJ+hj/k3zF26anXMzkmtSBDExL8IhUu7LUd34f0Zsce3PYNO2vV2GaTzaw==", - "requires": { - "@metamask/safe-event-emitter": "^2.0.0", - "async-mutex": "^0.2.6", - "eth-json-rpc-middleware": "^6.0.0", - "eth-query": "^2.1.2", - "json-rpc-engine": "^6.1.0", - "pify": "^5.0.0" - }, - "dependencies": { - "pify": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-5.0.0.tgz", - "integrity": "sha512-eW/gHNMlxdSP6dmG6uJip6FXN0EQBwm2clYYd8Wul42Cwu/DK8HEftzsapcNdYe2MfLiIwZqsDk2RDEsTE79hA==" - } - } - }, - "eth-json-rpc-infura": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/eth-json-rpc-infura/-/eth-json-rpc-infura-5.1.0.tgz", - "integrity": "sha512-THzLye3PHUSGn1EXMhg6WTLW9uim7LQZKeKaeYsS9+wOBcamRiCQVGHa6D2/4P0oS0vSaxsBnU/J6qvn0MPdow==", - "requires": { - "eth-json-rpc-middleware": "^6.0.0", - "eth-rpc-errors": "^3.0.0", - "json-rpc-engine": "^5.3.0", - "node-fetch": "^2.6.0" - }, - "dependencies": { - "json-rpc-engine": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/json-rpc-engine/-/json-rpc-engine-5.4.0.tgz", - "integrity": "sha512-rAffKbPoNDjuRnXkecTjnsE3xLLrb00rEkdgalINhaYVYIxDwWtvYBr9UFbhTvPB1B2qUOLoFd/cV6f4Q7mh7g==", - "requires": { - "eth-rpc-errors": "^3.0.0", - "safe-event-emitter": "^1.0.1" - } - } - } - }, - "eth-json-rpc-middleware": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/eth-json-rpc-middleware/-/eth-json-rpc-middleware-6.0.0.tgz", - "integrity": "sha512-qqBfLU2Uq1Ou15Wox1s+NX05S9OcAEL4JZ04VZox2NS0U+RtCMjSxzXhLFWekdShUPZ+P8ax3zCO2xcPrp6XJQ==", - "requires": { - "btoa": "^1.2.1", - "clone": "^2.1.1", - "eth-query": "^2.1.2", - "eth-rpc-errors": "^3.0.0", - "eth-sig-util": "^1.4.2", - "ethereumjs-util": "^5.1.2", - "json-rpc-engine": "^5.3.0", - "json-stable-stringify": "^1.0.1", - "node-fetch": "^2.6.1", - "pify": "^3.0.0", - "safe-event-emitter": "^1.0.1" - }, - "dependencies": { - "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==" - }, - "bs58check": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/bs58check/-/bs58check-2.1.2.tgz", - "integrity": "sha512-0TS1jicxdU09dwJMNZtVAfzPi6Q6QeN0pM1Fkzrjn+XYHvzMKPU3pHVpva+769iNVSfIYWf7LJ6WR+BuuMf8cA==", - "requires": { - "bs58": "^4.0.0", - "create-hash": "^1.1.0", - "safe-buffer": "^5.1.2" - } - }, - "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==", - "requires": { - "@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" - } - }, - "ethereumjs-util": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.2.1.tgz", - "integrity": "sha512-v3kT+7zdyCm1HIqWlLNrHGqHGLpGYIhjeHxQjnDXjLT2FyGJDsd3LWMYUo7pAFRrk86CR3nUJfhC81CCoJNNGQ==", - "requires": { - "bn.js": "^4.11.0", - "create-hash": "^1.1.2", - "elliptic": "^6.5.2", - "ethereum-cryptography": "^0.1.3", - "ethjs-util": "^0.1.3", - "rlp": "^2.0.0", - "safe-buffer": "^5.1.1" - } - }, - "json-rpc-engine": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/json-rpc-engine/-/json-rpc-engine-5.4.0.tgz", - "integrity": "sha512-rAffKbPoNDjuRnXkecTjnsE3xLLrb00rEkdgalINhaYVYIxDwWtvYBr9UFbhTvPB1B2qUOLoFd/cV6f4Q7mh7g==", - "requires": { - "eth-rpc-errors": "^3.0.0", - "safe-event-emitter": "^1.0.1" - } - }, - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==" - } - } - }, - "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==", - "requires": { - "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" - }, - "dependencies": { - "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==" - }, - "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==" - }, - "ws": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-3.3.3.tgz", - "integrity": "sha512-nnWLa/NwZSt4KQJu51MYlCcSQ5g7INpOrOMt4XV8j4dqTXdmlUmSHQ8/oLC069ckre0fRsgfvsKwbTdtKLCDkA==", - "requires": { - "async-limiter": "~1.0.0", - "safe-buffer": "~5.1.0", - "ultron": "~1.1.0" - } - } - } - }, - "eth-query": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/eth-query/-/eth-query-2.1.2.tgz", - "integrity": "sha512-srES0ZcvwkR/wd5OQBRA1bIJMww1skfGS0s8wlwK3/oNP4+wnds60krvu5R1QbpRQjMmpG5OMIWro5s7gvDPsA==", - "requires": { - "json-rpc-random-id": "^1.0.0", - "xtend": "^4.0.1" - } - }, - "eth-rpc-errors": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/eth-rpc-errors/-/eth-rpc-errors-3.0.0.tgz", - "integrity": "sha512-iPPNHPrLwUlR9xCSYm7HHQjWBasor3+KZfRvwEWxMz3ca0yqnlBeJrnyphkGIXZ4J7AMAaOLmwy4AWhnxOiLxg==", - "requires": { - "fast-safe-stringify": "^2.0.6" - } - }, - "eth-sig-util": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/eth-sig-util/-/eth-sig-util-1.4.2.tgz", - "integrity": "sha512-iNZ576iTOGcfllftB73cPB5AN+XUQAT/T8xzsILsghXC1o8gJUqe3RHlcDqagu+biFpYQ61KQrZZJza8eRSYqw==", - "requires": { - "ethereumjs-abi": "git+https://github.com/ethereumjs/ethereumjs-abi.git", - "ethereumjs-util": "^5.1.1" - }, - "dependencies": { - "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==" - }, - "bs58check": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/bs58check/-/bs58check-2.1.2.tgz", - "integrity": "sha512-0TS1jicxdU09dwJMNZtVAfzPi6Q6QeN0pM1Fkzrjn+XYHvzMKPU3pHVpva+769iNVSfIYWf7LJ6WR+BuuMf8cA==", - "requires": { - "bs58": "^4.0.0", - "create-hash": "^1.1.0", - "safe-buffer": "^5.1.2" - } - }, - "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==", - "requires": { - "@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" - } - }, - "ethereumjs-util": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.2.1.tgz", - "integrity": "sha512-v3kT+7zdyCm1HIqWlLNrHGqHGLpGYIhjeHxQjnDXjLT2FyGJDsd3LWMYUo7pAFRrk86CR3nUJfhC81CCoJNNGQ==", - "requires": { - "bn.js": "^4.11.0", - "create-hash": "^1.1.2", - "elliptic": "^6.5.2", - "ethereum-cryptography": "^0.1.3", - "ethjs-util": "^0.1.3", - "rlp": "^2.0.0", - "safe-buffer": "^5.1.1" - } - } - } - }, - "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==", - "requires": { - "js-sha3": "^0.8.0" - } - }, - "ethereum-common": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/ethereum-common/-/ethereum-common-0.2.0.tgz", - "integrity": "sha512-XOnAR/3rntJgbCdGhqdaLIxDLWKLmsZOGhHdBKadEr6gEnJLH52k93Ou+TUdFaPN3hJc3isBZBal3U/XZ15abA==" - }, - "ethereum-cryptography": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-1.1.2.tgz", - "integrity": "sha512-XDSJlg4BD+hq9N2FjvotwUET9Tfxpxc3kWGE2AqUG5vcbeunnbImVk3cj6e/xT3phdW21mE8R5IugU4fspQDcQ==", - "requires": { - "@noble/hashes": "1.1.2", - "@noble/secp256k1": "1.6.3", - "@scure/bip32": "1.1.0", - "@scure/bip39": "1.1.0" - } - }, - "ethereum-protocol": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/ethereum-protocol/-/ethereum-protocol-1.0.1.tgz", - "integrity": "sha512-3KLX1mHuEsBW0dKG+c6EOJS1NBNqdCICvZW9sInmZTt5aY0oxmHVggYRE0lJu1tcnMD1K+AKHdLi6U43Awm1Vg==" - }, - "ethereumjs-abi": { - "version": "git+ssh://git@github.com/ethereumjs/ethereumjs-abi.git#ee3994657fa7a427238e6ba92a84d0b529bbcde0", - "from": "ethereumjs-abi@^0.6.8", - "requires": { - "bn.js": "^4.11.8", - "ethereumjs-util": "^6.0.0" - }, - "dependencies": { - "@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==", - "requires": { - "@types/node": "*" - } - }, - "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==" - }, - "bs58check": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/bs58check/-/bs58check-2.1.2.tgz", - "integrity": "sha512-0TS1jicxdU09dwJMNZtVAfzPi6Q6QeN0pM1Fkzrjn+XYHvzMKPU3pHVpva+769iNVSfIYWf7LJ6WR+BuuMf8cA==", - "requires": { - "bs58": "^4.0.0", - "create-hash": "^1.1.0", - "safe-buffer": "^5.1.2" - } - }, - "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==", - "requires": { - "@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" - } - }, - "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==", - "requires": { - "@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" - } - } - } - }, - "ethereumjs-account": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/ethereumjs-account/-/ethereumjs-account-2.0.5.tgz", - "integrity": "sha512-bgDojnXGjhMwo6eXQC0bY6UK2liSFUSMwwylOmQvZbSl/D7NXQ3+vrGO46ZeOgjGfxXmgIeVNDIiHw7fNZM4VA==", - "requires": { - "ethereumjs-util": "^5.0.0", - "rlp": "^2.0.0", - "safe-buffer": "^5.1.1" - }, - "dependencies": { - "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==" - }, - "bs58check": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/bs58check/-/bs58check-2.1.2.tgz", - "integrity": "sha512-0TS1jicxdU09dwJMNZtVAfzPi6Q6QeN0pM1Fkzrjn+XYHvzMKPU3pHVpva+769iNVSfIYWf7LJ6WR+BuuMf8cA==", - "requires": { - "bs58": "^4.0.0", - "create-hash": "^1.1.0", - "safe-buffer": "^5.1.2" - } - }, - "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==", - "requires": { - "@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" - } - }, - "ethereumjs-util": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.2.1.tgz", - "integrity": "sha512-v3kT+7zdyCm1HIqWlLNrHGqHGLpGYIhjeHxQjnDXjLT2FyGJDsd3LWMYUo7pAFRrk86CR3nUJfhC81CCoJNNGQ==", - "requires": { - "bn.js": "^4.11.0", - "create-hash": "^1.1.2", - "elliptic": "^6.5.2", - "ethereum-cryptography": "^0.1.3", - "ethjs-util": "^0.1.3", - "rlp": "^2.0.0", - "safe-buffer": "^5.1.1" - } - } - } - }, - "ethereumjs-block": { - "version": "1.7.1", - "resolved": "https://registry.npmjs.org/ethereumjs-block/-/ethereumjs-block-1.7.1.tgz", - "integrity": "sha512-B+sSdtqm78fmKkBq78/QLKJbu/4Ts4P2KFISdgcuZUPDm9x+N7qgBPIIFUGbaakQh8bzuquiRVbdmvPKqbILRg==", - "requires": { - "async": "^2.0.1", - "ethereum-common": "0.2.0", - "ethereumjs-tx": "^1.2.2", - "ethereumjs-util": "^5.0.0", - "merkle-patricia-tree": "^2.1.2" - }, - "dependencies": { - "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==" - }, - "bs58check": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/bs58check/-/bs58check-2.1.2.tgz", - "integrity": "sha512-0TS1jicxdU09dwJMNZtVAfzPi6Q6QeN0pM1Fkzrjn+XYHvzMKPU3pHVpva+769iNVSfIYWf7LJ6WR+BuuMf8cA==", - "requires": { - "bs58": "^4.0.0", - "create-hash": "^1.1.0", - "safe-buffer": "^5.1.2" - } - }, - "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==", - "requires": { - "@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" - } - }, - "ethereumjs-util": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.2.1.tgz", - "integrity": "sha512-v3kT+7zdyCm1HIqWlLNrHGqHGLpGYIhjeHxQjnDXjLT2FyGJDsd3LWMYUo7pAFRrk86CR3nUJfhC81CCoJNNGQ==", - "requires": { - "bn.js": "^4.11.0", - "create-hash": "^1.1.2", - "elliptic": "^6.5.2", - "ethereum-cryptography": "^0.1.3", - "ethjs-util": "^0.1.3", - "rlp": "^2.0.0", - "safe-buffer": "^5.1.1" - } - } - } - }, - "ethereumjs-common": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/ethereumjs-common/-/ethereumjs-common-1.5.2.tgz", - "integrity": "sha512-hTfZjwGX52GS2jcVO6E2sx4YuFnf0Fhp5ylo4pEPhEffNln7vS59Hr5sLnp3/QCazFLluuBZ+FZ6J5HTp0EqCA==" - }, - "ethereumjs-tx": { - "version": "1.3.7", - "resolved": "https://registry.npmjs.org/ethereumjs-tx/-/ethereumjs-tx-1.3.7.tgz", - "integrity": "sha512-wvLMxzt1RPhAQ9Yi3/HKZTn0FZYpnsmQdbKYfUUpi4j1SEIcbkd9tndVjcPrufY3V7j2IebOpC00Zp2P/Ay2kA==", - "requires": { - "ethereum-common": "^0.0.18", - "ethereumjs-util": "^5.0.0" - }, - "dependencies": { - "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==" - }, - "bs58check": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/bs58check/-/bs58check-2.1.2.tgz", - "integrity": "sha512-0TS1jicxdU09dwJMNZtVAfzPi6Q6QeN0pM1Fkzrjn+XYHvzMKPU3pHVpva+769iNVSfIYWf7LJ6WR+BuuMf8cA==", - "requires": { - "bs58": "^4.0.0", - "create-hash": "^1.1.0", - "safe-buffer": "^5.1.2" - } - }, - "ethereum-common": { - "version": "0.0.18", - "resolved": "https://registry.npmjs.org/ethereum-common/-/ethereum-common-0.0.18.tgz", - "integrity": "sha512-EoltVQTRNg2Uy4o84qpa2aXymXDJhxm7eos/ACOg0DG4baAbMjhbdAEsx9GeE8sC3XCxnYvrrzZDH8D8MtA2iQ==" - }, - "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==", - "requires": { - "@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" - } - }, - "ethereumjs-util": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.2.1.tgz", - "integrity": "sha512-v3kT+7zdyCm1HIqWlLNrHGqHGLpGYIhjeHxQjnDXjLT2FyGJDsd3LWMYUo7pAFRrk86CR3nUJfhC81CCoJNNGQ==", - "requires": { - "bn.js": "^4.11.0", - "create-hash": "^1.1.2", - "elliptic": "^6.5.2", - "ethereum-cryptography": "^0.1.3", - "ethjs-util": "^0.1.3", - "rlp": "^2.0.0", - "safe-buffer": "^5.1.1" - } - } - } - }, - "ethereumjs-util": { - "version": "7.1.5", - "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-7.1.5.tgz", - "integrity": "sha512-SDl5kKrQAudFBUe5OJM9Ac6WmMyYmXX/6sTmLZ3ffG2eY6ZIGBes3pEDxNN6V72WyOw4CPD5RomKdsa8DAAwLg==", - "requires": { - "@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" - }, - "dependencies": { - "bs58check": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/bs58check/-/bs58check-2.1.2.tgz", - "integrity": "sha512-0TS1jicxdU09dwJMNZtVAfzPi6Q6QeN0pM1Fkzrjn+XYHvzMKPU3pHVpva+769iNVSfIYWf7LJ6WR+BuuMf8cA==", - "requires": { - "bs58": "^4.0.0", - "create-hash": "^1.1.0", - "safe-buffer": "^5.1.2" - } - }, - "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==", - "requires": { - "@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" - } - } - } - }, - "ethereumjs-vm": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/ethereumjs-vm/-/ethereumjs-vm-2.6.0.tgz", - "integrity": "sha512-r/XIUik/ynGbxS3y+mvGnbOKnuLo40V5Mj1J25+HEO63aWYREIqvWeRO/hnROlMBE5WoniQmPmhiaN0ctiHaXw==", - "requires": { - "async": "^2.1.2", - "async-eventemitter": "^0.2.2", - "ethereumjs-account": "^2.0.3", - "ethereumjs-block": "~2.2.0", - "ethereumjs-common": "^1.1.0", - "ethereumjs-util": "^6.0.0", - "fake-merkle-patricia-tree": "^1.0.1", - "functional-red-black-tree": "^1.0.1", - "merkle-patricia-tree": "^2.3.2", - "rustbn.js": "~0.2.0", - "safe-buffer": "^5.1.1" - }, - "dependencies": { - "@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==", - "requires": { - "@types/node": "*" - } - }, - "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==" - }, - "bs58check": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/bs58check/-/bs58check-2.1.2.tgz", - "integrity": "sha512-0TS1jicxdU09dwJMNZtVAfzPi6Q6QeN0pM1Fkzrjn+XYHvzMKPU3pHVpva+769iNVSfIYWf7LJ6WR+BuuMf8cA==", - "requires": { - "bs58": "^4.0.0", - "create-hash": "^1.1.0", - "safe-buffer": "^5.1.2" - } - }, - "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==", - "requires": { - "@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" - } - }, - "ethereumjs-block": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/ethereumjs-block/-/ethereumjs-block-2.2.2.tgz", - "integrity": "sha512-2p49ifhek3h2zeg/+da6XpdFR3GlqY3BIEiqxGF8j9aSRIgkb7M1Ky+yULBKJOu8PAZxfhsYA+HxUk2aCQp3vg==", - "requires": { - "async": "^2.0.1", - "ethereumjs-common": "^1.5.0", - "ethereumjs-tx": "^2.1.1", - "ethereumjs-util": "^5.0.0", - "merkle-patricia-tree": "^2.1.2" - }, - "dependencies": { - "ethereumjs-util": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.2.1.tgz", - "integrity": "sha512-v3kT+7zdyCm1HIqWlLNrHGqHGLpGYIhjeHxQjnDXjLT2FyGJDsd3LWMYUo7pAFRrk86CR3nUJfhC81CCoJNNGQ==", - "requires": { - "bn.js": "^4.11.0", - "create-hash": "^1.1.2", - "elliptic": "^6.5.2", - "ethereum-cryptography": "^0.1.3", - "ethjs-util": "^0.1.3", - "rlp": "^2.0.0", - "safe-buffer": "^5.1.1" - } - } - } - }, - "ethereumjs-tx": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ethereumjs-tx/-/ethereumjs-tx-2.1.2.tgz", - "integrity": "sha512-zZEK1onCeiORb0wyCXUvg94Ve5It/K6GD1K+26KfFKodiBiS6d9lfCXlUKGBBdQ+bv7Day+JK0tj1K+BeNFRAw==", - "requires": { - "ethereumjs-common": "^1.5.0", - "ethereumjs-util": "^6.0.0" - } - }, - "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==", - "requires": { - "@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" - } - } - } - }, - "ethers": { - "version": "4.0.49", - "resolved": "https://registry.npmjs.org/ethers/-/ethers-4.0.49.tgz", - "integrity": "sha512-kPltTvWiyu+OktYy1IStSO16i2e7cS9D9OxZ81q2UUaiNPVrm/RTcbxamCXF9VUSKzJIdJV68EAIhTEVBalRWg==", - "dev": true, - "requires": { - "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" - }, - "dependencies": { - "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 - }, - "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==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "minimalistic-assert": "^1.0.0" - } - }, - "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 - }, - "scrypt-js": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/scrypt-js/-/scrypt-js-2.0.4.tgz", - "integrity": "sha512-4KsaGcPnuhtCZQCxFxN3GVYIhKFPTdLd8PLC552XwbMndtD0cjRFAhDuuydXQ0h08ZfPgzqe6EKHozpuH74iDw==", - "dev": true - }, - "setimmediate": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.4.tgz", - "integrity": "sha512-/TjEmXQVEzdod/FFskf3o7oOAsGhHf2j1dZqRFbDzq4F3mvvxflIIi4Hd3bLQE9y/CpwqfSQam5JakI/mi3Pog==", - "dev": true - }, - "uuid": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-2.0.1.tgz", - "integrity": "sha512-nWg9+Oa3qD2CQzHIP4qKUqwNfzKn8P0LtFhotaCTFchsV7ZfDhAybeip/HZVeMIpZi9JgY1E3nUlwaCmZT1sEg==", - "dev": true - } - } - }, - "ethjs-unit": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/ethjs-unit/-/ethjs-unit-0.1.6.tgz", - "integrity": "sha512-/Sn9Y0oKl0uqQuvgFk/zQgR7aw1g36qX/jzSQ5lSwlO0GigPymk4eGQfeNTD03w1dPOqfz8V77Cy43jH56pagw==", - "requires": { - "bn.js": "4.11.6", - "number-to-bn": "1.7.0" - }, - "dependencies": { - "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==" - } - } - }, - "ethjs-util": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/ethjs-util/-/ethjs-util-0.1.6.tgz", - "integrity": "sha512-CUnVOQq7gSpDHZVVrQW8ExxUETWrnrvXYvYz55wOU8Uj4VCgw56XC2B/fVqQN+f7gmrnRHSLVnFAwsCuNwji8w==", - "requires": { - "is-hex-prefixed": "1.0.0", - "strip-hex-prefix": "1.0.0" - } - }, - "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==", - "requires": { - "d": "1", - "es5-ext": "~0.10.14" - } - }, - "event-target-shim": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", - "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==", - "dev": true, - "peer": true - }, - "eventemitter3": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.4.tgz", - "integrity": "sha512-rlaVLnVxtxvoyLsQQFBx53YmXHDxRIzzTLbdfxqi4yocpSjAxXwkU0cScM5JgSKMqEhrZpnvQ2D9gjylR0AimQ==" - }, - "events": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", - "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==" - }, - "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==", - "requires": { - "md5.js": "^1.3.4", - "safe-buffer": "^5.1.1" - } - }, - "express": { - "version": "4.19.2", - "resolved": "https://registry.npmjs.org/express/-/express-4.19.2.tgz", - "integrity": "sha512-5T6nhjsT+EOMzuck8JjBHARTHfMht0POzlA60WV2pMD3gyXw2LZnZ+ueGdNxG+0calOJcWKbpFcuzLZ91YWq9Q==", - "requires": { - "accepts": "~1.3.8", - "array-flatten": "1.1.1", - "body-parser": "1.20.2", - "content-disposition": "0.5.4", - "content-type": "~1.0.4", - "cookie": "0.6.0", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "2.0.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "finalhandler": "1.2.0", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "merge-descriptors": "1.0.1", - "methods": "~1.1.2", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "path-to-regexp": "0.1.7", - "proxy-addr": "~2.0.7", - "qs": "6.11.0", - "range-parser": "~1.2.1", - "safe-buffer": "5.2.1", - "send": "0.18.0", - "serve-static": "1.15.0", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "type-is": "~1.6.18", - "utils-merge": "1.0.1", - "vary": "~1.1.2" - }, - "dependencies": { - "cookie": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.6.0.tgz", - "integrity": "sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==" - }, - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - } - } - }, - "ext": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/ext/-/ext-1.7.0.tgz", - "integrity": "sha512-6hxeJYaL110a9b5TEJSj0gojyHQAmA2ch5Os+ySCiA1QGdS697XWY1pzsrSjqA9LDEEgdB/KypIlR59RcLuHYw==", - "requires": { - "type": "^2.7.2" - }, - "dependencies": { - "type": { - "version": "2.7.2", - "resolved": "https://registry.npmjs.org/type/-/type-2.7.2.tgz", - "integrity": "sha512-dzlvlNlt6AXU7EBSfpAscydQ7gXB+pPGsPnfJnZpiNJBDj7IaJzQlBZYGdEi4R9HmPdBv2XmWJ6YUtoTa7lmCw==" - } - } - }, - "extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" - }, - "extsprintf": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g==" - }, - "fake-merkle-patricia-tree": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/fake-merkle-patricia-tree/-/fake-merkle-patricia-tree-1.0.1.tgz", - "integrity": "sha512-Tgq37lkc9pUIgIKw5uitNUKcgcYL3R6JvXtKQbOf/ZSavXbidsksgp/pAY6p//uhw0I4yoMsvTSovvVIsk/qxA==", - "requires": { - "checkpoint-store": "^1.1.0" - } - }, - "fast-check": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/fast-check/-/fast-check-3.1.1.tgz", - "integrity": "sha512-3vtXinVyuUKCKFKYcwXhGE6NtGWkqF8Yh3rvMZNzmwz8EPrgoc/v4pDdLHyLnCyCI5MZpZZkDEwFyXyEONOxpA==", - "dev": true, - "requires": { - "pure-rand": "^5.0.1" - } - }, - "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==" - }, - "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 - }, - "fast-glob": { - "version": "3.2.12", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz", - "integrity": "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==", - "dev": true, - "requires": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.4" - } - }, - "fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" - }, - "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 - }, - "fast-safe-stringify": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz", - "integrity": "sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==" - }, - "fastq": { - "version": "1.14.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.14.0.tgz", - "integrity": "sha512-eR2D+V9/ExcbF9ls441yIuN6TI2ED1Y2ZcA5BmMtJsOkWOFRJQ0Jt0g1UwqXJJVAb+V+umH5Dfr8oh4EVP7VVg==", - "dev": true, - "requires": { - "reusify": "^1.0.4" - } - }, - "fetch-cookie": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/fetch-cookie/-/fetch-cookie-0.11.0.tgz", - "integrity": "sha512-BQm7iZLFhMWFy5CZ/162sAGjBfdNWb7a8LEqqnzsHFhxT/X/SVj/z2t2nu3aJvjlbQkrAlTUApplPRjWyH4mhA==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "tough-cookie": "^2.3.3 || ^3.0.1 || ^4.0.0" - } - }, - "fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "finalhandler": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", - "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", - "requires": { - "debug": "2.6.9", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "statuses": "2.0.1", - "unpipe": "~1.0.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - } - } - }, - "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, - "peer": true, - "requires": { - "locate-path": "^2.0.0" - } - }, - "flat": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", - "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==", - "dev": true - }, - "follow-redirects": { - "version": "1.15.6", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.6.tgz", - "integrity": "sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA==", - "dev": true - }, - "for-each": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", - "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", - "requires": { - "is-callable": "^1.1.3" - } - }, - "foreach": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/foreach/-/foreach-2.0.6.tgz", - "integrity": "sha512-k6GAGDyqLe9JaebCsFCoudPPWfihKu8pylYXRlqP1J7ms39iPoTtk2fviNglIeQEwdh0bQeKJ01ZPyuyQvKzwg==", - "dev": true, - "peer": true - }, - "forever-agent": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw==" - }, - "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==", - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" - } - }, - "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==" - }, - "forwarded": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", - "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==" - }, - "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, - "peer": true - }, - "fresh": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==" - }, - "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, - "peer": true, - "requires": { - "graceful-fs": "^4.1.2", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } - }, - "fs-minipass": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-1.2.7.tgz", - "integrity": "sha512-GWSSJGFy4e9GUeCcbIkED+bgAoFyj7XF1mV8rma3QW4NIqX9Kyx79N/PF61H5udOV3aY1IaMLs6pGbH71nlCTA==", - "requires": { - "minipass": "^2.6.0" - } - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", - "dev": true - }, - "fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", - "dev": true, - "optional": true - }, - "function-bind": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", - "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==" - }, - "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, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "functions-have-names": "^1.2.3" - } - }, - "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==" - }, - "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 - }, - "ganache": { - "version": "7.7.6", - "resolved": "https://registry.npmjs.org/ganache/-/ganache-7.7.6.tgz", - "integrity": "sha512-1ba5CERykZijw1kIRGUKKPEUqTDU+sEMElYemAS42w1kunu+/3OS5v+eQsJQ+fCVMEmspploA7S9rEWBcyVsLg==", - "dev": true, - "peer": true, - "requires": { - "@trufflesuite/bigint-buffer": "1.1.10", - "@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", - "bufferutil": "4.0.5", - "emittery": "0.10.0", - "keccak": "3.0.2", - "leveldown": "6.1.0", - "secp256k1": "4.0.3", - "utf-8-validate": "5.0.7" - }, - "dependencies": { - "@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==", - "bundled": true, - "dev": true, - "peer": true, - "requires": { - "node-gyp-build": "4.4.0" - }, - "dependencies": { - "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==", - "bundled": true, - "dev": true, - "peer": true - } - } - }, - "@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==", - "dev": true, - "peer": true, - "requires": { - "@types/node": "*" - } - }, - "@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, - "peer": true - }, - "@types/node": { - "version": "17.0.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.0.tgz", - "integrity": "sha512-eMhwJXc931Ihh4tkU+Y7GiLzT/y/DBNpNtr4yU9O2w3SYBsr9NaOPhQlLKRmoWtI54uNwuo0IOUFQjVOTZYRvw==", - "dev": true, - "peer": true - }, - "@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==", - "dev": true, - "peer": true - }, - "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==", - "dev": true, - "peer": true, - "requires": { - "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" - }, - "dependencies": { - "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, - "peer": true - } - } - }, - "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==", - "bundled": true, - "dev": true, - "peer": true, - "requires": { - "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" - } - }, - "async": { - "version": "2.6.4", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz", - "integrity": "sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==", - "dev": true, - "peer": true, - "requires": { - "lodash": "^4.17.14" - } - }, - "async-eventemitter": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/async-eventemitter/-/async-eventemitter-0.2.4.tgz", - "integrity": "sha512-pd20BwL7Yt1zwDFy+8MX8F1+WCT8aQeKj0kQnTrH9WaeRETlRamVhD0JtRPmrV4GfOJ2F9CvdQkZeZhnh2TuHw==", - "dev": true, - "peer": true, - "requires": { - "async": "^2.4.0" - } - }, - "base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", - "bundled": true, - "dev": true, - "peer": true - }, - "brorand": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", - "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=", - "bundled": true, - "dev": true, - "peer": true - }, - "buffer": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", - "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", - "bundled": true, - "dev": true, - "peer": true, - "requires": { - "base64-js": "^1.3.1", - "ieee754": "^1.2.1" - } - }, - "bufferutil": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/bufferutil/-/bufferutil-4.0.5.tgz", - "integrity": "sha512-HTm14iMQKK2FjFLRTM5lAVcyaUzOnqbPtesFIvREgXpJHdQm8bWS+GkQgIkfaBYRHuCnea7w8UVNfwiAQhlr9A==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "node-gyp-build": "^4.3.0" - } - }, - "catering": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/catering/-/catering-2.1.0.tgz", - "integrity": "sha512-M5imwzQn6y+ODBfgi+cfgZv2hIUI6oYU/0f35Mdb1ujGeqeoI5tOnl9Q13DTH7LW+7er+NYq8stNOKZD/Z3U/A==", - "bundled": true, - "dev": true, - "peer": true, - "requires": { - "queue-tick": "^1.0.0" - } - }, - "elliptic": { - "version": "6.5.4", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", - "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", - "bundled": true, - "dev": true, - "peer": true, - "requires": { - "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" - }, - "dependencies": { - "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==", - "bundled": true, - "dev": true, - "peer": true - } - } - }, - "emittery": { - "version": "0.10.0", - "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.10.0.tgz", - "integrity": "sha512-AGvFfs+d0JKCJQ4o01ASQLGPmSCxgfU9RFXvzPvZdjKK8oscynksuJhWrSTSw7j7Ep/sZct5b5ZhYCi8S/t0HQ==", - "dev": true, - "peer": true - }, - "hash.js": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", - "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", - "bundled": true, - "dev": true, - "peer": true, - "requires": { - "inherits": "^2.0.3", - "minimalistic-assert": "^1.0.1" - } - }, - "hmac-drbg": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", - "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", - "bundled": true, - "dev": true, - "peer": true, - "requires": { - "hash.js": "^1.0.3", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.1" - } - }, - "ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "bundled": true, - "dev": true, - "peer": true - }, - "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "bundled": true, - "dev": true, - "peer": true - }, - "is-buffer": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", - "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==", - "bundled": true, - "dev": true, - "peer": true - }, - "keccak": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/keccak/-/keccak-3.0.2.tgz", - "integrity": "sha512-PyKKjkH53wDMLGrvmRGSNWgmSxZOUqbnXwKL9tmgbFYA1iAYqW21kfR7mZXV0MlESiefxQQE9X9fTa3X+2MPDQ==", - "bundled": true, - "dev": true, - "peer": true, - "requires": { - "node-addon-api": "^2.0.0", - "node-gyp-build": "^4.2.0", - "readable-stream": "^3.6.0" - } - }, - "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==", - "bundled": true, - "dev": true, - "peer": true, - "requires": { - "catering": "^2.1.0" - } - }, - "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==", - "bundled": true, - "dev": true, - "peer": true - }, - "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, - "peer": true, - "requires": { - "buffer": "^6.0.3", - "module-error": "^1.0.1" - } - }, - "leveldown": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/leveldown/-/leveldown-6.1.0.tgz", - "integrity": "sha512-8C7oJDT44JXxh04aSSsfcMI8YiaGRhOFI9/pMEL7nWJLVsWajDPTRxsSHTM2WcTVY5nXM+SuRHzPPi0GbnDX+w==", - "bundled": true, - "dev": true, - "peer": true, - "requires": { - "abstract-leveldown": "^7.2.0", - "napi-macros": "~2.0.0", - "node-gyp-build": "^4.3.0" - } - }, - "lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", - "dev": true, - "peer": true - }, - "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==", - "bundled": true, - "dev": true, - "peer": true - }, - "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=", - "bundled": true, - "dev": true, - "peer": true - }, - "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, - "peer": true - }, - "napi-macros": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/napi-macros/-/napi-macros-2.0.0.tgz", - "integrity": "sha512-A0xLykHtARfueITVDernsAWdtIMbOJgKgcluwENp3AlsKN/PloyO10HtmoqnFAQAcxPkgZN7wdfPfEd0zNGxbg==", - "bundled": true, - "dev": true, - "peer": true - }, - "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==", - "bundled": true, - "dev": true, - "peer": true - }, - "node-gyp-build": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.3.0.tgz", - "integrity": "sha512-iWjXZvmboq0ja1pUGULQBexmxq8CV4xBhX7VDOTbL7ZR4FOowwY/VOtRxBN/yKxmdGoIp4j5ysNT4u3S2pDQ3Q==", - "bundled": true, - "dev": true, - "peer": true - }, - "queue-microtask": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", - "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", - "bundled": true, - "dev": true, - "peer": true - }, - "queue-tick": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/queue-tick/-/queue-tick-1.0.0.tgz", - "integrity": "sha512-ULWhjjE8BmiICGn3G8+1L9wFpERNxkf8ysxkAer4+TFdRefDaXOCV5m92aMB9FtBVmn/8sETXLXY6BfW7hyaWQ==", - "bundled": true, - "dev": true, - "peer": true - }, - "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==", - "bundled": true, - "dev": true, - "peer": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, - "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==", - "bundled": true, - "dev": true, - "peer": true - }, - "secp256k1": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/secp256k1/-/secp256k1-4.0.3.tgz", - "integrity": "sha512-NLZVf+ROMxwtEj3Xa562qgv2BK5e2WNmXPiOdVIPLgs6lyTzMvBq0aWTYMI5XCP9jZMVKOcqZLw/Wc4vDkuxhA==", - "bundled": true, - "dev": true, - "peer": true, - "requires": { - "elliptic": "^6.5.4", - "node-addon-api": "^2.0.0", - "node-gyp-build": "^4.2.0" - } - }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "bundled": true, - "dev": true, - "peer": true, - "requires": { - "safe-buffer": "~5.2.0" - } - }, - "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==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "node-gyp-build": "^4.3.0" - } - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", - "bundled": true, - "dev": true, - "peer": true - } - } - }, - "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==", - "peer": true - }, - "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==" - }, - "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==" - }, - "get-intrinsic": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", - "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==", - "requires": { - "es-errors": "^1.3.0", - "function-bind": "^1.1.2", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3", - "hasown": "^2.0.0" - } - }, - "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==" - }, - "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, - "requires": { - "call-bind": "^1.0.5", - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.4" - } - }, - "getpass": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng==", - "requires": { - "assert-plus": "^1.0.0" - } - }, - "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, - "requires": { - "chalk": "^2.4.2", - "node-emoji": "^1.10.0" - } - }, - "glob": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", - "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", - "dev": true, - "requires": { - "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" - } - }, - "glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "requires": { - "is-glob": "^4.0.1" - } - }, - "global": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/global/-/global-4.4.0.tgz", - "integrity": "sha512-wv/LAoHdRE3BeTGz53FAamhGlPLhlssK45usmGFThIi4XqnBmjKQ16u+RNbP7WvigRZDxUsM0J3gcQ5yicaL0w==", - "requires": { - "min-document": "^2.19.0", - "process": "^0.11.10" - } - }, - "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, - "requires": { - "global-prefix": "^3.0.0" - } - }, - "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, - "requires": { - "ini": "^1.3.5", - "kind-of": "^6.0.2", - "which": "^1.3.1" - } - }, - "globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "peer": true - }, - "globalthis": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", - "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", - "dev": true, - "requires": { - "define-properties": "^1.2.1", - "gopd": "^1.0.1" - } - }, - "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, - "requires": { - "@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" - } - }, - "gopd": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", - "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", - "requires": { - "get-intrinsic": "^1.1.3" - } - }, - "got": { - "version": "12.1.0", - "resolved": "https://registry.npmjs.org/got/-/got-12.1.0.tgz", - "integrity": "sha512-hBv2ty9QN2RdbJJMK3hesmSkFTjVIHyIDDbssCKnSmq62edGgImJWD10Eb1k77TiV1bxloxqcFAVK8+9pkhOig==", - "requires": { - "@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" - }, - "dependencies": { - "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==" - }, - "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==", - "requires": { - "mimic-response": "^3.1.0" - } - }, - "http2-wrapper": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/http2-wrapper/-/http2-wrapper-2.2.0.tgz", - "integrity": "sha512-kZB0wxMo0sh1PehyjJUWRFEd99KC5TLjZ2cULC4f9iqJBAmKQQXEICjxl5iPJRwP40dpeHFqqhm7tYCvODpqpQ==", - "requires": { - "quick-lru": "^5.1.1", - "resolve-alpn": "^1.2.0" - } - }, - "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==" - } - } - }, - "graceful-fs": { - "version": "4.2.10", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", - "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" - }, - "graphql": { - "version": "15.8.0", - "resolved": "https://registry.npmjs.org/graphql/-/graphql-15.8.0.tgz", - "integrity": "sha512-5gghUc24tP9HRznNpV2+FIoq3xKkj5dTQqf4v0CpdPbFVwFkWoxOM+o+2OC9ZSvjEMTjfmG9QT+gcvggTwW1zw==", - "dev": true, - "optional": true, - "peer": true - }, - "graphql-tag": { - "version": "2.12.6", - "resolved": "https://registry.npmjs.org/graphql-tag/-/graphql-tag-2.12.6.tgz", - "integrity": "sha512-FdSNcu2QQcWnM2VNvSCCDCVS5PpPqpzgFT8+GXzqJuoDd0CBncxCY278u4mhRO7tMgo2JjgJA5aZ+nWSQ/Z+xg==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "tslib": "^2.1.0" - }, - "dependencies": { - "tslib": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", - "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==", - "dev": true, - "optional": true, - "peer": true - } - } - }, - "handlebars": { - "version": "4.7.7", - "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.7.tgz", - "integrity": "sha512-aAcXm5OAfE/8IXkcZvCepKU3VzW1/39Fb5ZuqMtgI/hT8X2YgoMvBY5dLhq/cpOvw7Lk1nK/UF71aLG/ZnVYRA==", - "dev": true, - "requires": { - "minimist": "^1.2.5", - "neo-async": "^2.6.0", - "source-map": "^0.6.1", - "uglify-js": "^3.1.4", - "wordwrap": "^1.0.0" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } - } - }, - "har-schema": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", - "integrity": "sha512-Oqluz6zhGX8cyRaTQlFMPw80bSJVG2x/cFb8ZPhUILGgHka9SsokCCOQgpveePerqidZOrT14ipqfJb7ILcW5Q==" - }, - "har-validator": { - "version": "5.1.5", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", - "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", - "requires": { - "ajv": "^6.12.3", - "har-schema": "^2.0.0" - } - }, - "hardhat": { - "version": "2.12.4", - "resolved": "https://registry.npmjs.org/hardhat/-/hardhat-2.12.4.tgz", - "integrity": "sha512-rc9S2U/4M+77LxW1Kg7oqMMmjl81tzn5rNFARhbXKUA1am/nhfMJEujOjuKvt+ZGMiZ11PYSe8gyIpB/aRNDgw==", - "dev": true, - "peer": true, - "requires": { - "@ethersproject/abi": "^5.1.2", - "@metamask/eth-sig-util": "^4.0.0", - "@nomicfoundation/ethereumjs-block": "^4.0.0", - "@nomicfoundation/ethereumjs-blockchain": "^6.0.0", - "@nomicfoundation/ethereumjs-common": "^3.0.0", - "@nomicfoundation/ethereumjs-evm": "^1.0.0", - "@nomicfoundation/ethereumjs-rlp": "^4.0.0", - "@nomicfoundation/ethereumjs-statemanager": "^1.0.0", - "@nomicfoundation/ethereumjs-trie": "^5.0.0", - "@nomicfoundation/ethereumjs-tx": "^4.0.0", - "@nomicfoundation/ethereumjs-util": "^8.0.0", - "@nomicfoundation/ethereumjs-vm": "^6.0.0", - "@nomicfoundation/solidity-analyzer": "^0.1.0", - "@sentry/node": "^5.18.1", - "@types/bn.js": "^5.1.0", - "@types/lru-cache": "^5.1.0", - "abort-controller": "^3.0.0", - "adm-zip": "^0.4.16", - "aggregate-error": "^3.0.0", - "ansi-escapes": "^4.3.0", - "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", - "qs": "^6.7.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.4.0", - "uuid": "^8.3.2", - "ws": "^7.4.6" - }, - "dependencies": { - "jsonfile": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-2.4.0.tgz", - "integrity": "sha512-PKllAqbgLgxHaj8TElYymKCAgrASebJrWpTnEkOaTowt23VKXXN0sUeriJ+eh7y6ufb/CC5ap11pz71/cM0hUw==", - "dev": true, - "peer": true, - "requires": { - "graceful-fs": "^4.1.6" - } - }, - "solc": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/solc/-/solc-0.7.3.tgz", - "integrity": "sha512-GAsWNAjGzIDg7VxzP6mPjdurby3IkGCjQcM8GFYZT6RyaoUZKmMU6Y7YwG+tFGhv7dwZ8rmR4iwFDrrD99JwqA==", - "dev": true, - "peer": true, - "requires": { - "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" - }, - "dependencies": { - "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, - "peer": true, - "requires": { - "graceful-fs": "^4.1.2", - "jsonfile": "^2.1.0", - "klaw": "^1.0.0", - "path-is-absolute": "^1.0.0", - "rimraf": "^2.2.8" - } - }, - "semver": { - "version": "5.7.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", - "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", - "dev": true, - "peer": true - } - } - } - } - }, - "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 - }, - "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==" - }, - "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==", - "requires": { - "es-define-property": "^1.0.0" - } - }, - "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==" - }, - "has-symbols": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==" - }, - "has-tostringtag": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", - "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", - "requires": { - "has-symbols": "^1.0.3" - } - }, - "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==", - "requires": { - "inherits": "^2.0.4", - "readable-stream": "^3.6.0", - "safe-buffer": "^5.2.0" - } - }, - "hash.js": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", - "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", - "requires": { - "inherits": "^2.0.3", - "minimalistic-assert": "^1.0.1" - } - }, - "hasown": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", - "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", - "requires": { - "function-bind": "^1.1.2" - } - }, - "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 - }, - "header-case": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/header-case/-/header-case-1.0.1.tgz", - "integrity": "sha512-i0q9mkOeSuhXw6bGgiQCCBgY/jlZuV/7dZXyZ9c6LcBrqwvT8eT719E9uxE5LiZftdl+z81Ugbg/VvXV4OJOeQ==", - "dev": true, - "requires": { - "no-case": "^2.2.0", - "upper-case": "^1.1.3" - } - }, - "heap": { - "version": "0.2.7", - "resolved": "https://registry.npmjs.org/heap/-/heap-0.2.7.tgz", - "integrity": "sha512-2bsegYkkHO+h/9MGbn6KWcE45cHZgPANo5LXF7EvWdT0yT2EguSVO1nDgU5c8+ZOPwp2vMNa7YFsJhVcDR9Sdg==", - "dev": true - }, - "highlight.js": { - "version": "10.7.3", - "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-10.7.3.tgz", - "integrity": "sha512-tzcUFauisWKNHaRkN4Wjl/ZA07gENAjFl3J/c480dprkGTg5EQstgaNFqBfUqCq54kZRIEcreTsAgF/m2quD7A==", - "dev": true - }, - "highlightjs-solidity": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/highlightjs-solidity/-/highlightjs-solidity-2.0.6.tgz", - "integrity": "sha512-DySXWfQghjm2l6a/flF+cteroJqD4gI8GSdL4PtvxZSsAHie8m3yVe2JFoRg03ROKT6hp2Lc/BxXkqerNmtQYg==", - "dev": true - }, - "hmac-drbg": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", - "integrity": "sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==", - "requires": { - "hash.js": "^1.0.3", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.1" - } - }, - "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 - }, - "htmlparser2": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-8.0.2.tgz", - "integrity": "sha512-GYdjWKDkbRLkZ5geuHs5NY1puJ+PXwP7+fHPRz06Eirsb9ugf6d8kkXav6ADhcODhFFPMIXyxkxSuMf3D6NCFA==", - "dev": true, - "requires": { - "domelementtype": "^2.3.0", - "domhandler": "^5.0.3", - "domutils": "^3.0.1", - "entities": "^4.4.0" - } - }, - "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==" - }, - "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==", - "requires": { - "depd": "2.0.0", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "toidentifier": "1.0.1" - } - }, - "http-https": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/http-https/-/http-https-1.0.0.tgz", - "integrity": "sha512-o0PWwVCSp3O0wS6FvNr6xfBCHgt0m1tvPLFOCc2iFDKTRAXhB7m8klDf7ErowFH8POa6dVdGatKU5I1YYwzUyg==" - }, - "http-signature": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", - "integrity": "sha512-CAbnr6Rz4CYQkLYUtSNXxQPUH2gK8f3iWexVlsnMeD+GjlsQ0Xsy1cOX+mN3dtxYomRy21CiOzU8Uhw6OwncEQ==", - "requires": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" - } - }, - "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==", - "requires": { - "quick-lru": "^5.1.1", - "resolve-alpn": "^1.0.0" - } - }, - "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, - "peer": true, - "requires": { - "agent-base": "6", - "debug": "4" - } - }, - "iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "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==", - "requires": { - "punycode": "2.1.0" - }, - "dependencies": { - "punycode": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.0.tgz", - "integrity": "sha512-Yxz2kRwT90aPiWEMHVYnEf4+rhwF1tBmmZ4KepCP+Wkium9JxtWnUm1nqGwpiAHr/tnTSeHqr3wb++jgSkXjhA==" - } - } - }, - "ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==" - }, - "ignore": { - "version": "5.2.4", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", - "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", - "dev": true - }, - "immediate": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.3.0.tgz", - "integrity": "sha512-HR7EVodfFUdQCTIeySw+WDRFJlPcLOJbXfwwZ7Oom6tjsvZ3bOkCDJHehQC3nxJrv7+f9XecwazynjU8e4Vw3Q==" - }, - "immutable": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.1.0.tgz", - "integrity": "sha512-oNkuqVTA8jqG1Q6c+UglTOD1xhC1BtjKI7XkCXRkZHrN5m18/XsnUp8Q89GkQO/z+0WjonSvl0FLhDYftp46nQ==", - "dev": true, - "peer": true - }, - "import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", - "dev": true, - "requires": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - } - }, - "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, - "peer": true - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", - "dev": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" - }, - "ini": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", - "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", - "dev": true - }, - "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, - "requires": { - "es-errors": "^1.3.0", - "hasown": "^2.0.0", - "side-channel": "^1.0.4" - } - }, - "interpret": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz", - "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==", - "dev": true - }, - "invert-kv": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz", - "integrity": "sha512-xgs2NH9AE66ucSq4cNG1nhSFghr5l6tdL15Pk+jl46bmmBapgoaY/AacXyaDznAqmGL99TiLSQgO/XazFSKYeQ==", - "dev": true - }, - "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, - "peer": true, - "requires": { - "fp-ts": "^1.0.0" - } - }, - "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==" - }, - "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==", - "requires": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - } - }, - "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, - "requires": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.1" - } - }, - "is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", - "dev": true - }, - "is-bigint": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", - "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", - "dev": true, - "requires": { - "has-bigints": "^1.0.1" - } - }, - "is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dev": true, - "requires": { - "binary-extensions": "^2.0.0" - } - }, - "is-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, - "requires": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - } - }, - "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, - "peer": true - }, - "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==" - }, - "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, - "requires": { - "is-typed-array": "^1.1.13" - } - }, - "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, - "requires": { - "has-tostringtag": "^1.0.0" - } - }, - "is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "dev": true - }, - "is-fn": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fn/-/is-fn-1.0.0.tgz", - "integrity": "sha512-XoFPJQmsAShb3jEQRfzf2rqXavq7fIqF/jOekp308JlThqrODnMpweVSGilKTCXELfLhltGP2AGgbQGVP8F1dg==" - }, - "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==" - }, - "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==" - }, - "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==", - "requires": { - "has-tostringtag": "^1.0.0" - } - }, - "is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "dev": true, - "requires": { - "is-extglob": "^2.1.1" - } - }, - "is-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==" - }, - "is-lower-case": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/is-lower-case/-/is-lower-case-1.1.3.tgz", - "integrity": "sha512-+5A1e/WJpLLXZEDlgz4G//WYSHyQBD32qa4Jd3Lw06qQlv3fJHnp3YIHjTQSGzHMgzmVKz2ZP3rBxTHkPw/lxA==", - "dev": true, - "requires": { - "lower-case": "^1.1.0" - } - }, - "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 - }, - "is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true - }, - "is-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, - "requires": { - "has-tostringtag": "^1.0.0" - } - }, - "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, - "optional": true, - "peer": true - }, - "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==", - "dev": true - }, - "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, - "requires": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - } - }, - "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, - "requires": { - "call-bind": "^1.0.7" - } - }, - "is-string": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", - "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", - "dev": true, - "requires": { - "has-tostringtag": "^1.0.0" - } - }, - "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, - "requires": { - "has-symbols": "^1.0.2" - } - }, - "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==", - "requires": { - "which-typed-array": "^1.1.14" - } - }, - "is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==" - }, - "is-unicode-supported": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", - "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", - "dev": true - }, - "is-upper-case": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/is-upper-case/-/is-upper-case-1.1.2.tgz", - "integrity": "sha512-GQYSJMgfeAmVwh9ixyk888l7OIhNAGKtY6QA+IrWlu9MDTCaXmeozOZ2S9Knj7bQwBO/H6J2kb+pbyTUiMNbsw==", - "dev": true, - "requires": { - "upper-case": "^1.1.0" - } - }, - "is-utf8": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", - "integrity": "sha512-rMYPYvCzsXywIsldgLaSoPlw5PfoB/ssr7hY4pLfcodrA5M/eArza1a9VmTiNIBNMjOGr1Ow9mTyU2o69U6U9Q==", - "dev": true - }, - "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, - "requires": { - "call-bind": "^1.0.2" - } - }, - "isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==" - }, - "isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true - }, - "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==", - "dev": true, - "optional": true, - "peer": true, - "requires": {} - }, - "isstream": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g==" - }, - "js-sha3": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz", - "integrity": "sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==" - }, - "js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" - }, - "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, - "requires": { - "argparse": "^2.0.1" - } - }, - "jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==" - }, - "jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "peer": true - }, - "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==" - }, - "json-parse-even-better-errors": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", - "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", - "dev": true - }, - "json-pointer": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/json-pointer/-/json-pointer-0.6.2.tgz", - "integrity": "sha512-vLWcKbOaXlO+jvRy4qNd+TI1QUPZzfJj1tpJ3vAXDych5XJf93ftpUKe5pKCrzyIIwgBJcOcCVRUfqQP25afBw==", - "dev": true, - "peer": true, - "requires": { - "foreach": "^2.0.4" - } - }, - "json-rpc-engine": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/json-rpc-engine/-/json-rpc-engine-6.1.0.tgz", - "integrity": "sha512-NEdLrtrq1jUZyfjkr9OCz9EzCNhnRyWtt1PAnvnhwy6e8XETS0Dtc+ZNCO2gvuAoKsIn2+vCSowXTYE4CkgnAQ==", - "requires": { - "@metamask/safe-event-emitter": "^2.0.0", - "eth-rpc-errors": "^4.0.2" - }, - "dependencies": { - "eth-rpc-errors": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/eth-rpc-errors/-/eth-rpc-errors-4.0.3.tgz", - "integrity": "sha512-Z3ymjopaoft7JDoxZcEb3pwdGh7yiYMhOwm2doUt6ASXlMavpNlK6Cre0+IMl2VSGyEU9rkiperQhp5iRxn5Pg==", - "requires": { - "fast-safe-stringify": "^2.0.6" - } - } - } - }, - "json-rpc-random-id": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-rpc-random-id/-/json-rpc-random-id-1.0.1.tgz", - "integrity": "sha512-RJ9YYNCkhVDBuP4zN5BBtYAzEl03yq/jIIsyif0JY9qyJuQQZNeDK7anAPKKlyEtLSj2s8h6hNh2F8zO5q7ScA==" - }, - "json-schema": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", - "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==" - }, - "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==" - }, - "json-schema-typed": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/json-schema-typed/-/json-schema-typed-7.0.3.tgz", - "integrity": "sha512-7DE8mpG+/fVw+dTpjbxnx47TaMnDfOI1jwft9g1VybltZCduyRQPJPvc+zzKY9WPHxhPWczyFuYa6I8Mw4iU5A==", - "dev": true, - "optional": true, - "peer": true - }, - "json-stable-stringify": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.2.tgz", - "integrity": "sha512-eunSSaEnxV12z+Z73y/j5N37/In40GK4GmsSy+tEHJMxknvqnA7/djeYtAgW0GsWHUfg+847WJjKaEylk2y09g==", - "requires": { - "jsonify": "^0.0.1" - } - }, - "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==" - }, - "json5": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", - "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", - "peer": true - }, - "jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", - "requires": { - "graceful-fs": "^4.1.6" - } - }, - "jsonify": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.1.tgz", - "integrity": "sha512-2/Ki0GcmuqSrgFyelQq9M05y7PS0mEwuIzrf3f1fPqkVDVRvZrPZtVSMHxdgo8Aq0sxAOb/cr2aqqA3LeWHVPg==" - }, - "jsonschema": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/jsonschema/-/jsonschema-1.4.1.tgz", - "integrity": "sha512-S6cATIPVv1z0IlxdN+zUk5EPjkGCdnhN4wVSBlvoUO1tOLJootbo9CquNJmbIh4yikWHiUedhRYrNPn1arpEmQ==", - "dev": true - }, - "jsprim": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz", - "integrity": "sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==", - "requires": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.4.0", - "verror": "1.10.0" - } - }, - "keccak": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/keccak/-/keccak-3.0.2.tgz", - "integrity": "sha512-PyKKjkH53wDMLGrvmRGSNWgmSxZOUqbnXwKL9tmgbFYA1iAYqW21kfR7mZXV0MlESiefxQQE9X9fTa3X+2MPDQ==", - "requires": { - "node-addon-api": "^2.0.0", - "node-gyp-build": "^4.2.0", - "readable-stream": "^3.6.0" - } - }, - "keyv": { - "version": "4.5.3", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.3.tgz", - "integrity": "sha512-QCiSav9WaX1PgETJ+SpNnx2PRRapJ/oRSXM4VO5OGYGSjrxbKPVFVhB3l2OCbLCk329N8qyAtsJjSjvVBWzEug==", - "requires": { - "json-buffer": "3.0.1" - } - }, - "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 - }, - "klaw": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/klaw/-/klaw-1.3.1.tgz", - "integrity": "sha512-TED5xi9gGQjGpNnvRWknrwAB1eL5GciPfVFOt3Vk1OJCVDQbzuSfrF3hkUQKlsgKrG1F+0t5W0m+Fje1jIt8rw==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.9" - } - }, - "lcid": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz", - "integrity": "sha512-YiGkH6EnGrDGqLMITnGjXtGmNtjoXw9SVUzcaos8RBi7Ps0VBylkq+vOcY9QE5poLasPCR849ucFUkl0UzUyOw==", - "dev": true, - "requires": { - "invert-kv": "^1.0.0" - } - }, - "level": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/level/-/level-8.0.0.tgz", - "integrity": "sha512-ypf0jjAk2BWI33yzEaaotpq7fkOPALKAgDBxggO6Q9HGX2MRXn0wbP1Jn/tJv1gtL867+YOjOB49WaUF3UoJNQ==", - "dev": true, - "peer": true, - "requires": { - "browser-level": "^1.0.1", - "classic-level": "^1.2.0" - } - }, - "level-codec": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/level-codec/-/level-codec-7.0.1.tgz", - "integrity": "sha512-Ua/R9B9r3RasXdRmOtd+t9TCOEIIlts+TN/7XTT2unhDaL6sJn83S3rUyljbr6lVtw49N3/yA0HHjpV6Kzb2aQ==" - }, - "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==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "catering": "^2.1.0" - } - }, - "level-errors": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/level-errors/-/level-errors-1.0.5.tgz", - "integrity": "sha512-/cLUpQduF6bNrWuAC4pwtUKA5t669pCsCi2XbmojG2tFeOr9j6ShtdDCtFFQO1DRt+EVZhx9gPzP9G2bUaG4ig==", - "requires": { - "errno": "~0.1.1" - } - }, - "level-iterator-stream": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/level-iterator-stream/-/level-iterator-stream-1.3.1.tgz", - "integrity": "sha512-1qua0RHNtr4nrZBgYlpV0qHHeHpcRRWTxEZJ8xsemoHAXNL5tbooh4tPEEqIqsbWCAJBmUmkwYK/sW5OrFjWWw==", - "requires": { - "inherits": "^2.0.1", - "level-errors": "^1.0.3", - "readable-stream": "^1.0.33", - "xtend": "^4.0.0" - }, - "dependencies": { - "readable-stream": { - "version": "1.1.14", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", - "integrity": "sha512-+MeVjFf4L44XUkhM1eYbD8fyEsxcV81pqMSR5gblfcLCHfZvbrqy4/qYHE+/R5HoBUT11WV5O08Cr1n3YXkWVQ==", - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "0.0.1", - "string_decoder": "~0.10.x" - } - }, - "string_decoder": { - "version": "0.10.31", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "integrity": "sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==" - } - } - }, - "level-js": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/level-js/-/level-js-5.0.2.tgz", - "integrity": "sha512-SnBIDo2pdO5VXh02ZmtAyPP6/+6YTJg2ibLtl9C34pWvmtMEmRTWpra+qO/hifkUtBTOtfx6S9vLDjBsBK4gRg==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "abstract-leveldown": "~6.2.3", - "buffer": "^5.5.0", - "inherits": "^2.0.3", - "ltgt": "^2.1.2" - }, - "dependencies": { - "abstract-leveldown": { - "version": "6.2.3", - "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-6.2.3.tgz", - "integrity": "sha512-BsLm5vFMRUrrLeCcRc+G0t2qOaTzpoJQLOubq2XM72eNpjF5UdU5o/5NvlNhx95XHcAvcl8OMXr4mlg/fRgUXQ==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "buffer": "^5.5.0", - "immediate": "^3.2.3", - "level-concat-iterator": "~2.0.0", - "level-supports": "~1.0.0", - "xtend": "~4.0.0" - } - }, - "buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" - } - }, - "level-concat-iterator": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/level-concat-iterator/-/level-concat-iterator-2.0.1.tgz", - "integrity": "sha512-OTKKOqeav2QWcERMJR7IS9CUo1sHnke2C0gkSmcR7QuEtFNLLzHQAvnMw8ykvEcv0Qtkg0p7FOwP1v9e5Smdcw==", - "dev": true, - "optional": true, - "peer": true - }, - "level-supports": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/level-supports/-/level-supports-1.0.1.tgz", - "integrity": "sha512-rXM7GYnW8gsl1vedTJIbzOrRv85c/2uCMpiiCzO2fndd06U/kUXEEU9evYn4zFggBOg36IsBW8LzqIpETwwQzg==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "xtend": "^4.0.2" - } - } - } - }, - "level-packager": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/level-packager/-/level-packager-5.1.1.tgz", - "integrity": "sha512-HMwMaQPlTC1IlcwT3+swhqf/NUO+ZhXVz6TY1zZIIZlIR0YSn8GtAAWmIvKjNY16ZkEg/JcpAuQskxsXqC0yOQ==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "encoding-down": "^6.3.0", - "levelup": "^4.3.2" - }, - "dependencies": { - "abstract-leveldown": { - "version": "6.2.3", - "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-6.2.3.tgz", - "integrity": "sha512-BsLm5vFMRUrrLeCcRc+G0t2qOaTzpoJQLOubq2XM72eNpjF5UdU5o/5NvlNhx95XHcAvcl8OMXr4mlg/fRgUXQ==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "buffer": "^5.5.0", - "immediate": "^3.2.3", - "level-concat-iterator": "~2.0.0", - "level-supports": "~1.0.0", - "xtend": "~4.0.0" - } - }, - "buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" - } - }, - "deferred-leveldown": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/deferred-leveldown/-/deferred-leveldown-5.3.0.tgz", - "integrity": "sha512-a59VOT+oDy7vtAbLRCZwWgxu2BaCfd5Hk7wxJd48ei7I+nsg8Orlb9CLG0PMZienk9BSUKgeAqkO2+Lw+1+Ukw==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "abstract-leveldown": "~6.2.1", - "inherits": "^2.0.3" - } - }, - "level-concat-iterator": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/level-concat-iterator/-/level-concat-iterator-2.0.1.tgz", - "integrity": "sha512-OTKKOqeav2QWcERMJR7IS9CUo1sHnke2C0gkSmcR7QuEtFNLLzHQAvnMw8ykvEcv0Qtkg0p7FOwP1v9e5Smdcw==", - "dev": true, - "optional": true, - "peer": true - }, - "level-errors": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/level-errors/-/level-errors-2.0.1.tgz", - "integrity": "sha512-UVprBJXite4gPS+3VznfgDSU8PTRuVX0NXwoWW50KLxd2yw4Y1t2JUR5In1itQnudZqRMT9DlAM3Q//9NCjCFw==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "errno": "~0.1.1" - } - }, - "level-iterator-stream": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/level-iterator-stream/-/level-iterator-stream-4.0.2.tgz", - "integrity": "sha512-ZSthfEqzGSOMWoUGhTXdX9jv26d32XJuHz/5YnuHZzH6wldfWMOVwI9TBtKcya4BKTyTt3XVA0A3cF3q5CY30Q==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "inherits": "^2.0.4", - "readable-stream": "^3.4.0", - "xtend": "^4.0.2" - } - }, - "level-supports": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/level-supports/-/level-supports-1.0.1.tgz", - "integrity": "sha512-rXM7GYnW8gsl1vedTJIbzOrRv85c/2uCMpiiCzO2fndd06U/kUXEEU9evYn4zFggBOg36IsBW8LzqIpETwwQzg==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "xtend": "^4.0.2" - } - }, - "levelup": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/levelup/-/levelup-4.4.0.tgz", - "integrity": "sha512-94++VFO3qN95cM/d6eBXvd894oJE0w3cInq9USsyQzzoJxmiYzPAocNcuGCPGGjoXqDVJcr3C1jzt1TSjyaiLQ==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "deferred-leveldown": "~5.3.0", - "level-errors": "~2.0.0", - "level-iterator-stream": "~4.0.0", - "level-supports": "~1.0.0", - "xtend": "~4.0.0" - } - } - } - }, - "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, - "peer": true - }, - "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, - "peer": true, - "requires": { - "buffer": "^6.0.3", - "module-error": "^1.0.1" - } - }, - "level-write-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/level-write-stream/-/level-write-stream-1.0.0.tgz", - "integrity": "sha512-bBNKOEOMl8msO+uIM9YX/gUO6ckokZ/4pCwTm/lwvs46x6Xs8Zy0sn3Vh37eDqse4mhy4fOMIb/JsSM2nyQFtw==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "end-stream": "~0.1.0" - } - }, - "level-ws": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/level-ws/-/level-ws-0.0.0.tgz", - "integrity": "sha512-XUTaO/+Db51Uiyp/t7fCMGVFOTdtLS/NIACxE/GHsij15mKzxksZifKVjlXDF41JMUP/oM1Oc4YNGdKnc3dVLw==", - "requires": { - "readable-stream": "~1.0.15", - "xtend": "~2.1.1" - }, - "dependencies": { - "readable-stream": { - "version": "1.0.34", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", - "integrity": "sha512-ok1qVCJuRkNmvebYikljxJA/UEsKwLl2nI1OmaqAu4/UE+h0wKCHok4XkL/gvi39OacXvw59RJUOFUkDib2rHg==", - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "0.0.1", - "string_decoder": "~0.10.x" - } - }, - "string_decoder": { - "version": "0.10.31", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "integrity": "sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==" - }, - "xtend": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-2.1.2.tgz", - "integrity": "sha512-vMNKzr2rHP9Dp/e1NQFnLQlwlhp9L/LfvnsVdHxN1f+uggyVI3i08uD14GPvCToPkdsRfyPqIyYGmIk58V98ZQ==", - "requires": { - "object-keys": "~0.4.0" - } - } - } - }, - "leveldown": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/leveldown/-/leveldown-5.6.0.tgz", - "integrity": "sha512-iB8O/7Db9lPaITU1aA2txU/cBEXAt4vWwKQRrrWuS6XDgbP4QZGj9BL2aNbwb002atoQ/lIotJkfyzz+ygQnUQ==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "abstract-leveldown": "~6.2.1", - "napi-macros": "~2.0.0", - "node-gyp-build": "~4.1.0" - }, - "dependencies": { - "abstract-leveldown": { - "version": "6.2.3", - "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-6.2.3.tgz", - "integrity": "sha512-BsLm5vFMRUrrLeCcRc+G0t2qOaTzpoJQLOubq2XM72eNpjF5UdU5o/5NvlNhx95XHcAvcl8OMXr4mlg/fRgUXQ==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "buffer": "^5.5.0", - "immediate": "^3.2.3", - "level-concat-iterator": "~2.0.0", - "level-supports": "~1.0.0", - "xtend": "~4.0.0" - } - }, - "buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" - } - }, - "level-concat-iterator": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/level-concat-iterator/-/level-concat-iterator-2.0.1.tgz", - "integrity": "sha512-OTKKOqeav2QWcERMJR7IS9CUo1sHnke2C0gkSmcR7QuEtFNLLzHQAvnMw8ykvEcv0Qtkg0p7FOwP1v9e5Smdcw==", - "dev": true, - "optional": true, - "peer": true - }, - "level-supports": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/level-supports/-/level-supports-1.0.1.tgz", - "integrity": "sha512-rXM7GYnW8gsl1vedTJIbzOrRv85c/2uCMpiiCzO2fndd06U/kUXEEU9evYn4zFggBOg36IsBW8LzqIpETwwQzg==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "xtend": "^4.0.2" - } - }, - "node-gyp-build": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.1.1.tgz", - "integrity": "sha512-dSq1xmcPDKPZ2EED2S6zw/b9NKsqzXRE6dVr8TVQnI3FJOTteUMuqF3Qqs6LZg+mLGYJWqQzMbIjMtJqTv87nQ==", - "dev": true, - "optional": true, - "peer": true - } - } - }, - "levelup": { - "version": "1.3.9", - "resolved": "https://registry.npmjs.org/levelup/-/levelup-1.3.9.tgz", - "integrity": "sha512-VVGHfKIlmw8w1XqpGOAGwq6sZm2WwWLmlDcULkKWQXEA5EopA8OBNJ2Ck2v6bdk8HeEZSbCSEgzXadyQFm76sQ==", - "requires": { - "deferred-leveldown": "~1.2.1", - "level-codec": "~7.0.0", - "level-errors": "~1.0.3", - "level-iterator-stream": "~1.3.0", - "prr": "~1.0.1", - "semver": "~5.4.1", - "xtend": "~4.0.0" - }, - "dependencies": { - "semver": { - "version": "5.4.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.4.1.tgz", - "integrity": "sha512-WfG/X9+oATh81XtllIo/I8gOiY9EXRdv1cQdyykeXK17YcUW3EXUAi2To4pcH6nZtJPr7ZOpM5OMyWJZm+8Rsg==" - } - } - }, - "levn": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", - "integrity": "sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==", - "dev": true, - "requires": { - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2" - } - }, - "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 - }, - "load-json-file": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", - "integrity": "sha512-cy7ZdNRXdablkXYNI049pthVeXFurRyb9+hA/dZzerZ0pGTx42z+y+ssxBaVV2l70t1muq5IdKhn4UtcoGUY9A==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "parse-json": "^2.2.0", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0", - "strip-bom": "^2.0.0" - }, - "dependencies": { - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", - "dev": true - } - } - }, - "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, - "peer": true, - "requires": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" - } - }, - "lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" - }, - "lodash-es": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz", - "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==", - "dev": true, - "peer": true - }, - "lodash.assign": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/lodash.assign/-/lodash.assign-4.2.0.tgz", - "integrity": "sha512-hFuH8TY+Yji7Eja3mGiuAxBqLagejScbG8GbG0j6o9vzn0YL14My+ktnqtZgFTosKymC9/44wP6s7xyuLfnClw==", - "dev": true - }, - "lodash.debounce": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", - "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==" - }, - "lodash.isequal": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", - "integrity": "sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ==" - }, - "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 - }, - "lodash.sortby": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz", - "integrity": "sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA==", - "dev": true, - "optional": true, - "peer": true - }, - "lodash.truncate": { - "version": "4.4.2", - "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz", - "integrity": "sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw==", - "dev": true - }, - "log-symbols": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", - "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", - "dev": true, - "requires": { - "chalk": "^4.1.0", - "is-unicode-supported": "^0.1.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "axios": { + "version": "1.7.9", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.9.tgz", + "integrity": "sha512-LhLcE7Hbiryz8oMDdDptSrWowmB4Bl6RCt6sIJKpRB4XtVf0iEgewX3au/pJqm+Py1kCASkb/FFKjxQaLtxJvw==", "dev": true, + "peer": true, "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "follow-redirects": "^1.15.6", + "form-data": "^4.0.0", + "proxy-from-env": "^1.1.0" } }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "ethers": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/ethers/-/ethers-5.7.2.tgz", + "integrity": "sha512-wswUsmWo1aOK8rR7DIKiWSw9DbLWe6x98Jrn8wcTflTVvaXhAMaB5zGAXy0GYQEQp9iO1iSHWVyARQm11zUtyg==", "dev": true, + "peer": true, "requires": { - "color-name": "~1.1.4" + "@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" } }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "form-data": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.1.tgz", + "integrity": "sha512-tzN8e4TX8+kkxGPK8D5u0FNmjPUjw3lwC9lSLxxoB/+GtsJG91CO8bSWy73APlgAZzZbXEYZJuxjkHH2w+Ezhw==", "dev": true, + "peer": true, "requires": { - "has-flag": "^4.0.0" + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" } } } }, - "loglevel": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/loglevel/-/loglevel-1.8.1.tgz", - "integrity": "sha512-tCRIJM51SHjAayKwC+QAg8hT8vg6z7GSgLJKGvzuPb1Wc+hLzqtuVLxp6/HzSPOozuK+8ErAhy7U/sVzw8Dgfg==", - "dev": true, - "optional": true, - "peer": true - }, - "long": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/long/-/long-4.0.0.tgz", - "integrity": "sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA==", - "dev": true, - "optional": true, - "peer": true - }, - "loose-envify": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", - "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", - "dev": true, - "peer": true, - "requires": { - "js-tokens": "^3.0.0 || ^4.0.0" - } - }, - "loupe": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/loupe/-/loupe-2.3.6.tgz", - "integrity": "sha512-RaPMZKiMy8/JruncMU5Bt6na1eftNoo++R4Y+N2FrxkDVTrGvcyzFTsaGif4QTeKESheMGegbhw6iUAq+5A8zA==", - "requires": { - "get-func-name": "^2.0.0" - } - }, - "lower-case": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-1.1.4.tgz", - "integrity": "sha512-2Fgx1Ycm599x+WGpIYwJOvsjmXFzTSc34IwDWALRA/8AopUKAVPwfJ+h5+f85BCp0PWmmJcWzEpxOpoXycMpdA==", - "dev": true - }, - "lower-case-first": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/lower-case-first/-/lower-case-first-1.0.2.tgz", - "integrity": "sha512-UuxaYakO7XeONbKrZf5FEgkantPf5DUqDayzP5VXZrtRPdH86s4kN47I8B3TW10S4QKiE3ziHNf3kRN//okHjA==", - "dev": true, - "requires": { - "lower-case": "^1.1.2" - } - }, - "lowercase-keys": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-3.0.0.tgz", - "integrity": "sha512-ozCC6gdQ+glXOQsveKD0YsDy8DSQFjDTz4zyzEHNV5+JP5D62LmfDZ6o1cycFx9ouG940M5dE8C8CTewdj2YWQ==" - }, - "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, - "peer": true - }, - "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==", + "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, "peer": true, "requires": { - "yallist": "^3.0.2" - } - }, - "ltgt": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ltgt/-/ltgt-2.2.1.tgz", - "integrity": "sha512-AI2r85+4MquTw9ZYqabu4nMwy9Oftlfa/e/52t9IjtfG+mGBbTNdAoZ3RQKLHR6r0wQnwZnPIEh/Ya6XTWAKNA==" - }, - "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, - "peer": true - }, - "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==", - "requires": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" - } - }, - "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==" - }, - "memdown": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/memdown/-/memdown-1.4.1.tgz", - "integrity": "sha512-iVrGHZB8i4OQfM155xx8akvG9FIj+ht14DX5CQkCTG4EHzZ3d3sgckIf/Lm9ivZalEsFuEVnWv2B2WZvbrro2w==", - "requires": { - "abstract-leveldown": "~2.7.1", - "functional-red-black-tree": "^1.0.1", - "immediate": "^3.2.3", - "inherits": "~2.0.1", - "ltgt": "~2.2.0", - "safe-buffer": "~5.1.1" - }, - "dependencies": { - "abstract-leveldown": { - "version": "2.7.2", - "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-2.7.2.tgz", - "integrity": "sha512-+OVvxH2rHVEhWLdbudP6p0+dNMXu8JA1CbhP19T8paTYAcX7oJ4OVjT+ZUVpv7mITxXHqDMej+GdqXBmXkw09w==", - "requires": { - "xtend": "~4.0.0" - } - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - } + "js-sha3": "^0.8.0" } }, - "memory-level": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/memory-level/-/memory-level-1.0.0.tgz", - "integrity": "sha512-UXzwewuWeHBz5krr7EvehKcmLFNoXxGcvuYhC41tRnkrTbJohtS7kVn9akmgirtRygg+f7Yjsfi8Uu5SGSQ4Og==", + "ethereum-cryptography": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-1.1.2.tgz", + "integrity": "sha512-XDSJlg4BD+hq9N2FjvotwUET9Tfxpxc3kWGE2AqUG5vcbeunnbImVk3cj6e/xT3phdW21mE8R5IugU4fspQDcQ==", "dev": true, - "peer": true, "requires": { - "abstract-level": "^1.0.0", - "functional-red-black-tree": "^1.0.1", - "module-error": "^1.0.1" - } - }, - "memorystream": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/memorystream/-/memorystream-0.3.1.tgz", - "integrity": "sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw==", - "dev": true - }, - "merge-descriptors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==" - }, - "merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", - "dev": true + "@noble/hashes": "1.1.2", + "@noble/secp256k1": "1.6.3", + "@scure/bip32": "1.1.0", + "@scure/bip39": "1.1.0" + } }, - "merkle-patricia-tree": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/merkle-patricia-tree/-/merkle-patricia-tree-2.3.2.tgz", - "integrity": "sha512-81PW5m8oz/pz3GvsAwbauj7Y00rqm81Tzad77tHBwU7pIAtN+TJnMSOJhxBKflSVYhptMMb9RskhqHqrSm1V+g==", + "ethereumjs-abi": { + "version": "git+ssh://git@github.com/ethereumjs/ethereumjs-abi.git#ee3994657fa7a427238e6ba92a84d0b529bbcde0", + "dev": true, + "from": "ethereumjs-abi@^0.6.8", "requires": { - "async": "^1.4.2", - "ethereumjs-util": "^5.0.0", - "level-ws": "0.0.0", - "levelup": "^1.2.1", - "memdown": "^1.0.0", - "readable-stream": "^2.0.0", - "rlp": "^2.0.0", - "semaphore": ">=1.0.1" + "bn.js": "^4.11.8", + "ethereumjs-util": "^6.0.0" }, "dependencies": { - "async": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", - "integrity": "sha512-nSVgobk4rv61R9PUSDtYt7mPVB2olxNR5RWJcAsH676/ef11bUZwvu7+RGYrYauVdDPcO519v68wRhXQtxsV9w==" + "@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, + "requires": { + "@types/node": "*" + } + }, + "base-x": { + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/base-x/-/base-x-3.0.10.tgz", + "integrity": "sha512-7d0s06rR9rYaIWHkpfLIFICM/tkSVdoPC9qYAQRpxn9DdKNWNsKC0uk++akckyLq16Tx2WIinnZ6WRriAt6njQ==", + "dev": true, + "requires": { + "safe-buffer": "^5.0.1" + } }, "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==" + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true + }, + "bs58": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/bs58/-/bs58-4.0.1.tgz", + "integrity": "sha512-Ok3Wdf5vOIlBrgCvTq96gBkJw+JUEzdBgyaza5HLtPm7yTHkjRy8+JzNyHF7BHa0bNWOQIp3m5YF0nnFcOIKLw==", + "dev": true, + "requires": { + "base-x": "^3.0.2" + } }, "bs58check": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/bs58check/-/bs58check-2.1.2.tgz", "integrity": "sha512-0TS1jicxdU09dwJMNZtVAfzPi6Q6QeN0pM1Fkzrjn+XYHvzMKPU3pHVpva+769iNVSfIYWf7LJ6WR+BuuMf8cA==", + "dev": true, "requires": { "bs58": "^4.0.0", "create-hash": "^1.1.0", @@ -26994,6 +14476,7 @@ "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, "requires": { "@types/pbkdf2": "^3.0.0", "@types/secp256k1": "^4.0.1", @@ -27013,2647 +14496,2002 @@ } }, "ethereumjs-util": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.2.1.tgz", - "integrity": "sha512-v3kT+7zdyCm1HIqWlLNrHGqHGLpGYIhjeHxQjnDXjLT2FyGJDsd3LWMYUo7pAFRrk86CR3nUJfhC81CCoJNNGQ==", - "requires": { - "bn.js": "^4.11.0", - "create-hash": "^1.1.2", - "elliptic": "^6.5.2", - "ethereum-cryptography": "^0.1.3", - "ethjs-util": "^0.1.3", - "rlp": "^2.0.0", - "safe-buffer": "^5.1.1" - } - }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" - }, - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "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==" - }, - "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==", - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "methods": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", - "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==" - }, - "micromatch": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", - "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", - "dev": true, - "requires": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - } - }, - "mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" - }, - "mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==" - }, - "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==", - "requires": { - "mime-db": "1.52.0" - } - }, - "mimic-fn": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-3.1.0.tgz", - "integrity": "sha512-Ysbi9uYW9hFyfrThdDEQuykN4Ey6BuwPD2kpI5ES/nFTDn/98yxYNLZJcgUAKPT/mcrLLKaGzJR9YVxJrIdASQ==", - "dev": true, - "optional": true, - "peer": true - }, - "mimic-response": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", - "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==" - }, - "min-document": { - "version": "2.19.0", - "resolved": "https://registry.npmjs.org/min-document/-/min-document-2.19.0.tgz", - "integrity": "sha512-9Wy1B3m3f66bPPmU5hdA4DR4PB2OfDU/+GS3yAB7IQozE3tqXaVv2zOjgla7MEGSRv95+ILmOuvhLkOK6wJtCQ==", - "requires": { - "dom-walk": "^0.1.0" - } - }, - "minimalistic-assert": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" - }, - "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==" - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz", - "integrity": "sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==" - }, - "minipass": { - "version": "2.9.0", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.9.0.tgz", - "integrity": "sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg==", - "requires": { - "safe-buffer": "^5.1.2", - "yallist": "^3.0.0" - } - }, - "minizlib": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-1.3.3.tgz", - "integrity": "sha512-6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q==", - "requires": { - "minipass": "^2.9.0" - } - }, - "mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "requires": { - "minimist": "^1.2.6" - } - }, - "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==", - "requires": { - "mkdirp": "*" - } - }, - "mnemonist": { - "version": "0.38.5", - "resolved": "https://registry.npmjs.org/mnemonist/-/mnemonist-0.38.5.tgz", - "integrity": "sha512-bZTFT5rrPKtPJxj8KSV0WkPyNxl72vQepqqVUAW2ARUpUSF2qXMB6jZj7hW5/k7C1rtpzqbD/IIbJwLXUjCHeg==", - "dev": true, - "peer": true, - "requires": { - "obliterator": "^2.0.0" - } - }, - "mocha": { - "version": "10.2.0", - "resolved": "https://registry.npmjs.org/mocha/-/mocha-10.2.0.tgz", - "integrity": "sha512-IDY7fl/BecMwFHzoqF2sg/SHHANeBoMMXFlS9r0OXKDssYE1M5O43wUY/9BVPeIvfH2zmEbBfseqN9gBQZzXkg==", - "dev": true, - "requires": { - "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": "7.2.0", - "he": "1.2.0", - "js-yaml": "4.1.0", - "log-symbols": "4.1.0", - "minimatch": "5.0.1", - "ms": "2.1.3", - "nanoid": "3.3.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" - }, - "dependencies": { - "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 - }, - "brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0" - } - }, - "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 - }, - "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, - "requires": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - } - }, - "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 - }, - "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, - "requires": { - "p-locate": "^5.0.0" - } - }, - "minimatch": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.0.1.tgz", - "integrity": "sha512-nLDxIFRyhDblz3qMuq+SoRZED4+miJ/G+tdDrjkkkRnjAsBexeGpgjLEQ0blJy7rHhR2b93rhQY4SvyWu9v03g==", - "dev": true, - "requires": { - "brace-expansion": "^2.0.1" - } - }, - "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 - }, - "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, - "requires": { - "yocto-queue": "^0.1.0" - } - }, - "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, - "requires": { - "p-limit": "^3.0.2" - } - }, - "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 - }, - "supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "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==" - }, - "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, - "peer": true - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - }, - "multibase": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/multibase/-/multibase-0.6.1.tgz", - "integrity": "sha512-pFfAwyTjbbQgNc3G7D48JkJxWtoJoBMaR4xQUOuB8RnCgRqaYmWNFeJTTvrJ2w51bjLq2zTby6Rqj9TQ9elSUw==", - "requires": { - "base-x": "^3.0.8", - "buffer": "^5.5.0" - }, - "dependencies": { - "buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "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, "requires": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" + "@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" } } } }, - "multicodec": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/multicodec/-/multicodec-0.5.7.tgz", - "integrity": "sha512-PscoRxm3f+88fAtELwUnZxGDkduE2HD9Q6GHUOywQLjOGT/HAdhjLDYNZ1e7VR0s0TP0EwZ16LNUTFpoBGivOA==", - "requires": { - "varint": "^5.0.0" - } - }, - "multihashes": { - "version": "0.4.21", - "resolved": "https://registry.npmjs.org/multihashes/-/multihashes-0.4.21.tgz", - "integrity": "sha512-uVSvmeCWf36pU2nB4/1kzYZjsXD9vofZKpgudqkceYY5g2aZZXJ5r9lxuzoRLl1OAp28XljXsEJ/X/85ZsKmKw==", + "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, "requires": { - "buffer": "^5.5.0", - "multibase": "^0.7.0", - "varint": "^5.0.0" + "@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" }, "dependencies": { - "buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "base-x": { + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/base-x/-/base-x-3.0.10.tgz", + "integrity": "sha512-7d0s06rR9rYaIWHkpfLIFICM/tkSVdoPC9qYAQRpxn9DdKNWNsKC0uk++akckyLq16Tx2WIinnZ6WRriAt6njQ==", + "dev": true, + "requires": { + "safe-buffer": "^5.0.1" + } + }, + "bs58": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/bs58/-/bs58-4.0.1.tgz", + "integrity": "sha512-Ok3Wdf5vOIlBrgCvTq96gBkJw+JUEzdBgyaza5HLtPm7yTHkjRy8+JzNyHF7BHa0bNWOQIp3m5YF0nnFcOIKLw==", + "dev": true, + "requires": { + "base-x": "^3.0.2" + } + }, + "bs58check": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/bs58check/-/bs58check-2.1.2.tgz", + "integrity": "sha512-0TS1jicxdU09dwJMNZtVAfzPi6Q6QeN0pM1Fkzrjn+XYHvzMKPU3pHVpva+769iNVSfIYWf7LJ6WR+BuuMf8cA==", + "dev": true, "requires": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" + "bs58": "^4.0.0", + "create-hash": "^1.1.0", + "safe-buffer": "^5.1.2" } }, - "multibase": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/multibase/-/multibase-0.7.0.tgz", - "integrity": "sha512-TW8q03O0f6PNFTQDvh3xxH03c8CjGaaYrjkl9UQPG6rz53TQzzxJVCIWVjzcbN/Q5Y53Zd0IBQBMVktVgNx4Fg==", + "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, "requires": { - "base-x": "^3.0.8", - "buffer": "^5.5.0" + "@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" } } } }, - "nano-base32": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/nano-base32/-/nano-base32-1.0.1.tgz", - "integrity": "sha512-sxEtoTqAPdjWVGv71Q17koMFGsOMSiHsIFEvzOM7cNp8BXB4AnEwmDabm5dorusJf/v1z7QxaZYxUorU9RKaAw==", - "dev": true - }, - "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==" - }, - "nanoid": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.3.tgz", - "integrity": "sha512-p1sjXuopFs0xg+fPASzQ28agW1oHD7xDsd9Xkf3T15H3c/cifrFHVwrh74PdoklAPi+i7MdRsE47vm2r6JoB+w==", - "dev": true - }, - "napi-macros": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/napi-macros/-/napi-macros-2.0.0.tgz", - "integrity": "sha512-A0xLykHtARfueITVDernsAWdtIMbOJgKgcluwENp3AlsKN/PloyO10HtmoqnFAQAcxPkgZN7wdfPfEd0zNGxbg==", - "dev": true, - "peer": true - }, - "negotiator": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", - "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==" - }, - "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 - }, - "next-tick": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.1.0.tgz", - "integrity": "sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==" - }, - "no-case": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/no-case/-/no-case-2.3.2.tgz", - "integrity": "sha512-rmTZ9kz+f3rCvK2TD1Ue/oZlns7OGoIWP4fc3llxxRXlOkHKoWPPWJOfFYpITabSow43QJbRIoHQXtt10VldyQ==", - "dev": true, - "requires": { - "lower-case": "^1.1.1" - } - }, - "node-abort-controller": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/node-abort-controller/-/node-abort-controller-3.1.1.tgz", - "integrity": "sha512-AGK2yQKIjRuqnc6VkX2Xj5d+QW8xZ87pa1UK6yA6ouUyuxfHuMP6umE5QK7UmTeOAymo+Zx1Fxiuw9rVx8taHQ==", - "dev": true, - "optional": true, - "peer": true - }, - "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-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, - "requires": { - "lodash": "^4.17.21" - } - }, - "node-fetch": { - "version": "2.6.7", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", - "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", - "requires": { - "whatwg-url": "^5.0.0" - } - }, - "node-gyp-build": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.5.0.tgz", - "integrity": "sha512-2iGbaQBV+ITgCz76ZEjmhUKAKVf7xfY1sRl4UiKQspfZMH2h06SyhNsnSVy50cwkFQDGLyif6m/6uFXHkOZ6rg==" - }, - "node-interval-tree": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/node-interval-tree/-/node-interval-tree-1.3.3.tgz", - "integrity": "sha512-K9vk96HdTK5fEipJwxSvIIqwTqr4e3HRJeJrNxBSeVMNSC/JWARRaX7etOLOuTmrRMeOI/K5TCJu3aWIwZiNTw==", - "dev": true, - "peer": true, - "requires": { - "shallowequal": "^1.0.2" - } - }, - "node-releases": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.7.tgz", - "integrity": "sha512-EJ3rzxL9pTWPjk5arA0s0dgXpnyiAbJDE6wHT62g7VsgrgQgmmZ+Ru++M1BFofncWja+Pnn3rEr3fieRySAdKQ==" - }, - "nofilter": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/nofilter/-/nofilter-3.1.0.tgz", - "integrity": "sha512-l2NNj07e9afPnhAhvgVrCD/oy2Ai1yfLpuo3EpiO1jFTsB4sFz6oIfAfSZyQzVpkZQ9xS8ZS5g1jCBgq4Hwo0g==", - "dev": true - }, - "nopt": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz", - "integrity": "sha512-4GUt3kSEYmk4ITxzB/b9vaIDfUVWN/Ml1Fwl11IlnIG2iaJ9O6WXZ9SrYM9NLI8OCBieN2Y8SWC2oJV0RQ7qYg==", - "dev": true, - "requires": { - "abbrev": "1" - } - }, - "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==", + "ethers": { + "version": "6.13.4", + "resolved": "https://registry.npmjs.org/ethers/-/ethers-6.13.4.tgz", + "integrity": "sha512-21YtnZVg4/zKkCQPjrDj38B1r4nQvTZLopUGMLQ1ePU2zV/joCfDC3t3iKQjWRzjjjbzR+mdAIoikeBRNkdllA==", "dev": true, "requires": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" + "@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" }, "dependencies": { - "semver": { - "version": "5.7.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", - "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "@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 + }, + "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 + }, + "tslib": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.7.0.tgz", + "integrity": "sha512-gLXCKdN1/j47AiHiOkJN69hJmcbGTHI0ImLmbYLHykhgeN0jVGola9yVjFgzCUklsZQMW55o+dW7IXv3RCXDzA==", "dev": true + }, + "ws": { + "version": "8.17.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz", + "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==", + "dev": true, + "requires": {} } } }, - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true - }, - "normalize-url": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-6.1.0.tgz", - "integrity": "sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==" - }, - "nth-check": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", - "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", + "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, - "requires": { - "boolbase": "^1.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha512-4jbtZXNAsfZbAHiiqjLPBiCl16dES1zI4Hpzzxw61Tk+loF+sBDBKx1ICKKKwIqQ7M0mFn1TmkN7euSncWgHiQ==", - "dev": true - }, - "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==", + "peer": true, "requires": { "bn.js": "4.11.6", - "strip-hex-prefix": "1.0.0" + "number-to-bn": "1.7.0" }, "dependencies": { "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==" + "integrity": "sha512-XWwnNNFCuuSQ0m3r3C4LE3EiORltHd9M05pq6FOlVeiophzRbMo50Sbz1ehl8K3Z+jw9+vmgnXefY1hz8X+2wA==", + "dev": true, + "peer": true } } }, - "oauth-sign": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", - "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==" + "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, + "requires": { + "is-hex-prefixed": "1.0.0", + "strip-hex-prefix": "1.0.0" + } + }, + "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, + "requires": { + "md5.js": "^1.3.4", + "safe-buffer": "^5.1.1" + } }, - "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==" + "fast-base64-decode": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fast-base64-decode/-/fast-base64-decode-1.0.0.tgz", + "integrity": "sha512-qwaScUgUGBYeDNRnbc/KyllVU88Jk1pRHPStuF/lO7B0/RTRLj7U0lkdTAutlBblY08rwZDff6tNU9cjv6j//Q==", + "dev": true }, - "object-inspect": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.1.tgz", - "integrity": "sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==" + "fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true }, - "object-keys": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-0.4.0.tgz", - "integrity": "sha512-ncrLw+X55z7bkl5PnUvHwFK9FcGuFYo9gtjws2XtSzL+aZ8tm830P60WJ0dSmFVaSalWieW5MD7kEdnXda9yJw==" + "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 }, - "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==", + "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, "requires": { - "call-bind": "^1.0.5", - "define-properties": "^1.2.1", - "has-symbols": "^1.0.3", - "object-keys": "^1.1.1" - }, - "dependencies": { - "object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true - } + "@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" } }, - "obliterator": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/obliterator/-/obliterator-2.0.4.tgz", - "integrity": "sha512-lgHwxlxV1qIg1Eap7LgIeoBWIMFibOjbrYPIPJZcI1mmGAI2m3lNYpK12Y+GBdPQ0U1hRwSord7GIaawz962qQ==", - "dev": true, - "peer": true + "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 }, - "oboe": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/oboe/-/oboe-2.1.5.tgz", - "integrity": "sha512-zRFWiF+FoicxEs3jNI/WYUrVEgA7DeET/InK0XQuudGHRg8iIob3cNPrJTKaz4004uaA9Pbe+Dwa8iluhjLZWA==", - "requires": { - "http-https": "^1.0.0" - } + "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 }, - "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==", + "fastq": { + "version": "1.14.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.14.0.tgz", + "integrity": "sha512-eR2D+V9/ExcbF9ls441yIuN6TI2ED1Y2ZcA5BmMtJsOkWOFRJQ0Jt0g1UwqXJJVAb+V+umH5Dfr8oh4EVP7VVg==", + "dev": true, "requires": { - "ee-first": "1.1.1" + "reusify": "^1.0.4" } }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "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, "requires": { - "wrappy": "1" + "flat-cache": "^4.0.0" } }, - "onetime": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", - "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "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, - "optional": true, - "peer": true, "requires": { - "mimic-fn": "^2.1.0" - }, - "dependencies": { - "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, - "optional": true, - "peer": true - } + "to-regex-range": "^5.0.1" } }, - "optionator": { - "version": "0.8.3", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", - "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", + "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, + "peer": true, "requires": { - "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" + "array-back": "^3.0.1" } }, - "original-require": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/original-require/-/original-require-1.0.1.tgz", - "integrity": "sha512-5vdKMbE58WaE61uVD+PKyh8xdM398UnjPBLotW2sjG5MzHARwta/+NtMBCBA0t2WQblGYBvq5vsiZpWokwno+A==", - "dev": true, - "peer": true + "flat": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", + "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==", + "dev": true }, - "os-locale": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz", - "integrity": "sha512-PRT7ZORmwu2MEFt4/fv3Q+mEfN4zetKxufQrkShY2oGvUms9r8otu5HfdyIFHkYXjO7laNsoVGmM2MANfuTA8g==", + "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, "requires": { - "lcid": "^1.0.0" + "flatted": "^3.2.9", + "keyv": "^4.5.4" } }, - "os-tmpdir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", + "flatted": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.2.tgz", + "integrity": "sha512-AiwGJM8YcNOaobumgtng+6NHuOqC3A7MixFeDafM3X9cIUM+xUXoS5Vfgf+OihAYe20fxqNM9yPBXJzRtZ/4eA==", "dev": true }, - "p-cancelable": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-3.0.0.tgz", - "integrity": "sha512-mlVgR3PGuzlo0MmTdk4cXqXWlwQDLnONTAg6sm62XkMJEiRxN3GL3SffkYvqwonbkJBcrI7Uvv5Zh9yjvn2iUw==" + "follow-redirects": { + "version": "1.15.6", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.6.tgz", + "integrity": "sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA==", + "dev": true }, - "p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "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, - "peer": true, "requires": { - "p-try": "^1.0.0" + "is-callable": "^1.1.3" } }, - "p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha512-nQja7m7gSKuewoVRen45CtVfODR3crN3goVQ0DDZ9N3yHxgpkuBhZqsaiotSQRrADUrne346peY7kT3TSACykg==", + "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==", "dev": true, "peer": true, "requires": { - "p-limit": "^1.1.0" + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" } }, - "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==", + "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 + }, + "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, - "peer": true, "requires": { - "aggregate-error": "^3.0.0" + "graceful-fs": "^4.1.2", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" } }, - "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==", + "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, "peer": true }, - "param-case": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/param-case/-/param-case-2.1.1.tgz", - "integrity": "sha512-eQE845L6ot89sk2N8liD8HAuH4ca6Vvr7VWAWwt7+kvvG5aBcPmmphQ68JsEG2qa9n1TykS2DLeMt363AAH8/w==", + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true + }, + "fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", "dev": true, - "requires": { - "no-case": "^2.2.0" - } + "optional": true }, - "parent-module": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", - "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "dev": true + }, + "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, "requires": { - "callsites": "^3.0.0" + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "functions-have-names": "^1.2.3" } }, - "parse-headers": { + "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 + }, + "get-caller-file": { "version": "2.0.5", - "resolved": "https://registry.npmjs.org/parse-headers/-/parse-headers-2.0.5.tgz", - "integrity": "sha512-ft3iAoLOB/MlwbNXgzy43SWGP6sQki2jQvAyBg/zDFAgr9bfNWZIUj42Kw2eJIl8kEi4PbgE6U1Zau/HwI75HA==" + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true }, - "parse-json": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", - "integrity": "sha512-QR/GGaKCkhwk1ePQNYDRKYZ3mwU9ypsKhB0XyFnLQdomyEqk3e8wpW3V5Jp88zbxK4n5ST1nqo+g9juTpownhQ==", + "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 + }, + "get-intrinsic": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", + "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==", "dev": true, "requires": { - "error-ex": "^1.2.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" } }, - "parse5": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz", - "integrity": "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==", + "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, + "peer": true + }, + "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, "requires": { - "entities": "^4.4.0" + "call-bind": "^1.0.5", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4" } }, - "parse5-htmlparser2-tree-adapter": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-7.0.0.tgz", - "integrity": "sha512-B77tOZrqqfUfnVcOrUvfdLbz4pu4RopLD/4vmu3HUPswwTA8OH0EMW9BlWR2B0RCoiZRAHEUu7IxeP1Pd1UU+g==", + "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, + "peer": true, "requires": { - "domhandler": "^5.0.2", - "parse5": "^7.0.0" + "chalk": "^2.4.2", + "node-emoji": "^1.10.0" } }, - "parseurl": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", - "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==" + "glob": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", + "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", + "dev": true, + "peer": true, + "requires": { + "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" + } }, - "pascal-case": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/pascal-case/-/pascal-case-2.0.1.tgz", - "integrity": "sha512-qjS4s8rBOJa2Xm0jmxXiyh1+OFf6ekCWOvUaRgAQSktzlTbMotS0nmG9gyYAybCWBcuP4fsBeRCKNwGBnMe2OQ==", + "glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", "dev": true, "requires": { - "camel-case": "^3.0.0", - "upper-case-first": "^1.1.0" + "is-glob": "^4.0.1" } }, - "path-case": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/path-case/-/path-case-2.1.1.tgz", - "integrity": "sha512-Ou0N05MioItesaLr9q8TtHVWmJ6fxWdqKB2RohFmNWVyJ+2zeKIeDNWAN6B/Pe7wpzWChhZX6nONYmOnMeJQ/Q==", + "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, + "peer": true, "requires": { - "no-case": "^2.2.0" + "global-prefix": "^3.0.0" } }, - "path-exists": { + "global-prefix": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", + "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz", + "integrity": "sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==", "dev": true, - "peer": true + "peer": true, + "requires": { + "ini": "^1.3.5", + "kind-of": "^6.0.2", + "which": "^1.3.1" + } }, - "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==", + "globals": { + "version": "15.13.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-15.13.0.tgz", + "integrity": "sha512-49TewVEz0UxZjr1WYYsWpPrhyC/B/pA8Bq0fUmet2n+eR7yn0IvNzNaoBwnK6mdkzcN+se7Ez9zUgULTz2QH4g==", "dev": true }, - "path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" - }, - "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==" - }, - "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 + "globalthis": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", + "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", + "dev": true, + "requires": { + "define-properties": "^1.2.1", + "gopd": "^1.0.1" + } }, - "pathval": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.1.tgz", - "integrity": "sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==" + "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, + "peer": true, + "requires": { + "@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" + } }, - "pbkdf2": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz", - "integrity": "sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==", + "gopd": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", + "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", + "dev": true, "requires": { - "create-hash": "^1.1.2", - "create-hmac": "^1.1.4", - "ripemd160": "^2.0.1", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" + "get-intrinsic": "^1.1.3" } }, - "performance-now": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==" - }, - "picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" - }, - "picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true - }, - "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "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 }, - "pinkie": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", - "integrity": "sha512-MnUuEycAemtSaeFSjXKW/aroV7akBbY+Sv+RkyqFjgAe73F+MR0TBWKBRDkmfWq/HiFmdavfZ1G7h4SPZXaCSg==", + "graphemer": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", + "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", "dev": true }, - "pinkie-promise": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", - "integrity": "sha512-0Gni6D4UcLTbv9c57DfxDGdr41XfgUjqWZu492f0cIGr16zDU06BWP/RAEvOuo7CQ0CNjHaLlM59YJJFm3NWlw==", - "dev": true, - "requires": { - "pinkie": "^2.0.0" - } - }, - "pkg-up": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/pkg-up/-/pkg-up-3.1.0.tgz", - "integrity": "sha512-nDywThFk1i4BQK4twPQ6TA4RT8bDY96yeuCVBWL3ePARCiEKDRSrNGbFIgUJpLp+XeIR65v8ra7WuJOFUBtkMA==", + "handlebars": { + "version": "4.7.7", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.7.tgz", + "integrity": "sha512-aAcXm5OAfE/8IXkcZvCepKU3VzW1/39Fb5ZuqMtgI/hT8X2YgoMvBY5dLhq/cpOvw7Lk1nK/UF71aLG/ZnVYRA==", "dev": true, - "optional": true, "peer": true, "requires": { - "find-up": "^3.0.0" + "minimist": "^1.2.5", + "neo-async": "^2.6.0", + "source-map": "^0.6.1", + "uglify-js": "^3.1.4", + "wordwrap": "^1.0.0" }, "dependencies": { - "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "locate-path": "^3.0.0" - } - }, - "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "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, - "optional": true, - "peer": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "p-limit": "^2.0.0" - } - }, - "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==", + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true, - "optional": true, "peer": true } } }, - "pluralize": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-8.0.0.tgz", - "integrity": "sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==", - "dev": true - }, - "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==" - }, - "pouchdb": { - "version": "7.3.0", - "resolved": "https://registry.npmjs.org/pouchdb/-/pouchdb-7.3.0.tgz", - "integrity": "sha512-OwsIQGXsfx3TrU1pLruj6PGSwFH+h5k4hGNxFkZ76Um7/ZI8F5TzUHFrpldVVIhfXYi2vP31q0q7ot1FSLFYOw==", + "hardhat": { + "version": "2.22.17", + "resolved": "https://registry.npmjs.org/hardhat/-/hardhat-2.22.17.tgz", + "integrity": "sha512-tDlI475ccz4d/dajnADUTRc1OJ3H8fpP9sWhXhBPpYsQOg8JHq5xrDimo53UhWPl7KJmAeDCm1bFG74xvpGRpg==", "dev": true, - "optional": true, - "peer": true, "requires": { - "abort-controller": "3.0.0", - "argsarray": "0.0.1", - "buffer-from": "1.1.2", - "clone-buffer": "1.0.0", - "double-ended-queue": "2.1.0-0", - "fetch-cookie": "0.11.0", - "immediate": "3.3.0", - "inherits": "2.0.4", - "level": "6.0.1", - "level-codec": "9.0.2", - "level-write-stream": "1.0.0", - "leveldown": "5.6.0", - "levelup": "4.4.0", - "ltgt": "2.2.1", - "node-fetch": "2.6.7", - "readable-stream": "1.1.14", - "spark-md5": "3.0.2", - "through2": "3.0.2", - "uuid": "8.3.2", - "vuvuzela": "1.0.3" - }, - "dependencies": { - "abstract-leveldown": { - "version": "6.2.3", - "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-6.2.3.tgz", - "integrity": "sha512-BsLm5vFMRUrrLeCcRc+G0t2qOaTzpoJQLOubq2XM72eNpjF5UdU5o/5NvlNhx95XHcAvcl8OMXr4mlg/fRgUXQ==", + "@ethersproject/abi": "^5.1.2", + "@metamask/eth-sig-util": "^4.0.0", + "@nomicfoundation/edr": "^0.6.5", + "@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", + "@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", + "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": "^5.0.0", + "fp-ts": "1.19.3", + "fs-extra": "^7.0.1", + "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.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", + "ws": "^7.4.6" + }, + "dependencies": { + "chokidar": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.1.tgz", + "integrity": "sha512-n8enUVCED/KVRQlab1hr3MVpcVMvxtZjmEa956u+4YijlmQED223XMSYj2tLuKvr4jcCTzNNMpQDUer72MMmzA==", "dev": true, - "optional": true, - "peer": true, "requires": { - "buffer": "^5.5.0", - "immediate": "^3.2.3", - "level-concat-iterator": "~2.0.0", - "level-supports": "~1.0.0", - "xtend": "~4.0.0" + "readdirp": "^4.0.1" } }, - "buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "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, - "optional": true, - "peer": true, "requires": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" } }, - "deferred-leveldown": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/deferred-leveldown/-/deferred-leveldown-5.3.0.tgz", - "integrity": "sha512-a59VOT+oDy7vtAbLRCZwWgxu2BaCfd5Hk7wxJd48ei7I+nsg8Orlb9CLG0PMZienk9BSUKgeAqkO2+Lw+1+Ukw==", + "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, - "optional": true, - "peer": true, "requires": { - "abstract-leveldown": "~6.2.1", - "inherits": "^2.0.3" + "p-locate": "^5.0.0" } }, - "level": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/level/-/level-6.0.1.tgz", - "integrity": "sha512-psRSqJZCsC/irNhfHzrVZbmPYXDcEYhA5TVNwr+V92jF44rbf86hqGp8fiT702FyiArScYIlPSBTDUASCVNSpw==", + "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, - "optional": true, - "peer": true, "requires": { - "level-js": "^5.0.0", - "level-packager": "^5.1.0", - "leveldown": "^5.4.0" + "yocto-queue": "^0.1.0" } }, - "level-codec": { - "version": "9.0.2", - "resolved": "https://registry.npmjs.org/level-codec/-/level-codec-9.0.2.tgz", - "integrity": "sha512-UyIwNb1lJBChJnGfjmO0OR+ezh2iVu1Kas3nvBS/BzGnx79dv6g7unpKIDNPMhfdTEGoc7mC8uAu51XEtX+FHQ==", + "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, - "optional": true, - "peer": true, "requires": { - "buffer": "^5.6.0" + "p-limit": "^3.0.2" } }, - "level-concat-iterator": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/level-concat-iterator/-/level-concat-iterator-2.0.1.tgz", - "integrity": "sha512-OTKKOqeav2QWcERMJR7IS9CUo1sHnke2C0gkSmcR7QuEtFNLLzHQAvnMw8ykvEcv0Qtkg0p7FOwP1v9e5Smdcw==", - "dev": true, - "optional": true, - "peer": true - }, - "level-errors": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/level-errors/-/level-errors-2.0.1.tgz", - "integrity": "sha512-UVprBJXite4gPS+3VznfgDSU8PTRuVX0NXwoWW50KLxd2yw4Y1t2JUR5In1itQnudZqRMT9DlAM3Q//9NCjCFw==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "errno": "~0.1.1" - } + "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 }, - "level-iterator-stream": { + "readdirp": { "version": "4.0.2", - "resolved": "https://registry.npmjs.org/level-iterator-stream/-/level-iterator-stream-4.0.2.tgz", - "integrity": "sha512-ZSthfEqzGSOMWoUGhTXdX9jv26d32XJuHz/5YnuHZzH6wldfWMOVwI9TBtKcya4BKTyTt3XVA0A3cF3q5CY30Q==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "inherits": "^2.0.4", - "readable-stream": "^3.4.0", - "xtend": "^4.0.2" - }, - "dependencies": { - "readable-stream": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", - "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - } - } - }, - "level-supports": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/level-supports/-/level-supports-1.0.1.tgz", - "integrity": "sha512-rXM7GYnW8gsl1vedTJIbzOrRv85c/2uCMpiiCzO2fndd06U/kUXEEU9evYn4zFggBOg36IsBW8LzqIpETwwQzg==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "xtend": "^4.0.2" - } - }, - "levelup": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/levelup/-/levelup-4.4.0.tgz", - "integrity": "sha512-94++VFO3qN95cM/d6eBXvd894oJE0w3cInq9USsyQzzoJxmiYzPAocNcuGCPGGjoXqDVJcr3C1jzt1TSjyaiLQ==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "deferred-leveldown": "~5.3.0", - "level-errors": "~2.0.0", - "level-iterator-stream": "~4.0.0", - "level-supports": "~1.0.0", - "xtend": "~4.0.0" - } - }, - "readable-stream": { - "version": "1.1.14", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", - "integrity": "sha512-+MeVjFf4L44XUkhM1eYbD8fyEsxcV81pqMSR5gblfcLCHfZvbrqy4/qYHE+/R5HoBUT11WV5O08Cr1n3YXkWVQ==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "0.0.1", - "string_decoder": "~0.10.x" - }, - "dependencies": { - "string_decoder": { - "version": "0.10.31", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "integrity": "sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==", - "dev": true, - "optional": true, - "peer": true - } - } + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.0.2.tgz", + "integrity": "sha512-yDMz9g+VaZkqBYS/ozoBJwaBhTbZo3UNYQHNRw1D3UFQB8oHB4uS/tAODO+ZLjGWmUbKnIlOWO+aaIiAxrUWHA==", + "dev": true } } }, - "pouchdb-abstract-mapreduce": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/pouchdb-abstract-mapreduce/-/pouchdb-abstract-mapreduce-7.3.1.tgz", - "integrity": "sha512-0zKXVFBvrfc1KnN0ggrB762JDmZnUpePHywo9Bq3Jy+L1FnoG7fXM5luFfvv5/T0gEw+ZTIwoocZECMnESBI9w==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "pouchdb-binary-utils": "7.3.1", - "pouchdb-collate": "7.3.1", - "pouchdb-collections": "7.3.1", - "pouchdb-errors": "7.3.1", - "pouchdb-fetch": "7.3.1", - "pouchdb-mapreduce-utils": "7.3.1", - "pouchdb-md5": "7.3.1", - "pouchdb-utils": "7.3.1" - } - }, - "pouchdb-adapter-leveldb-core": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/pouchdb-adapter-leveldb-core/-/pouchdb-adapter-leveldb-core-7.3.1.tgz", - "integrity": "sha512-mxShHlqLMPz2gChrgtA9okV1ogFmQrRAoM/O4EN0CrQWPLXqYtpL1f7sI2asIvFe7SmpnvbLx7kkZyFmLTfwjA==", + "hardhat-contract-sizer": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/hardhat-contract-sizer/-/hardhat-contract-sizer-2.10.0.tgz", + "integrity": "sha512-QiinUgBD5MqJZJh1hl1jc9dNnpJg7eE/w4/4GEnrcmZJJTDbVFNe3+/3Ep24XqISSkYxRz36czcPHKHd/a0dwA==", "dev": true, - "optional": true, - "peer": true, "requires": { - "argsarray": "0.0.1", - "buffer-from": "1.1.2", - "double-ended-queue": "2.1.0-0", - "levelup": "4.4.0", - "pouchdb-adapter-utils": "7.3.1", - "pouchdb-binary-utils": "7.3.1", - "pouchdb-collections": "7.3.1", - "pouchdb-errors": "7.3.1", - "pouchdb-json": "7.3.1", - "pouchdb-md5": "7.3.1", - "pouchdb-merge": "7.3.1", - "pouchdb-utils": "7.3.1", - "sublevel-pouchdb": "7.3.1", - "through2": "3.0.2" - }, - "dependencies": { - "abstract-leveldown": { - "version": "6.2.3", - "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-6.2.3.tgz", - "integrity": "sha512-BsLm5vFMRUrrLeCcRc+G0t2qOaTzpoJQLOubq2XM72eNpjF5UdU5o/5NvlNhx95XHcAvcl8OMXr4mlg/fRgUXQ==", + "chalk": "^4.0.0", + "cli-table3": "^0.6.0", + "strip-ansi": "^6.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, - "optional": true, - "peer": true, "requires": { - "buffer": "^5.5.0", - "immediate": "^3.2.3", - "level-concat-iterator": "~2.0.0", - "level-supports": "~1.0.0", - "xtend": "~4.0.0" + "color-convert": "^2.0.1" } }, - "buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, - "optional": true, - "peer": true, "requires": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" } }, - "deferred-leveldown": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/deferred-leveldown/-/deferred-leveldown-5.3.0.tgz", - "integrity": "sha512-a59VOT+oDy7vtAbLRCZwWgxu2BaCfd5Hk7wxJd48ei7I+nsg8Orlb9CLG0PMZienk9BSUKgeAqkO2+Lw+1+Ukw==", + "cli-table3": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/cli-table3/-/cli-table3-0.6.5.tgz", + "integrity": "sha512-+W/5efTR7y5HRD7gACw9yQjqMVvEMLBHmboM/kPWam+H+Hmyrgjh6YncVKK122YZkXrLudzTuAukUw9FnMf7IQ==", "dev": true, - "optional": true, - "peer": true, "requires": { - "abstract-leveldown": "~6.2.1", - "inherits": "^2.0.3" + "@colors/colors": "1.5.0", + "string-width": "^4.2.0" } }, - "level-concat-iterator": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/level-concat-iterator/-/level-concat-iterator-2.0.1.tgz", - "integrity": "sha512-OTKKOqeav2QWcERMJR7IS9CUo1sHnke2C0gkSmcR7QuEtFNLLzHQAvnMw8ykvEcv0Qtkg0p7FOwP1v9e5Smdcw==", - "dev": true, - "optional": true, - "peer": true - }, - "level-errors": { + "color-convert": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/level-errors/-/level-errors-2.0.1.tgz", - "integrity": "sha512-UVprBJXite4gPS+3VznfgDSU8PTRuVX0NXwoWW50KLxd2yw4Y1t2JUR5In1itQnudZqRMT9DlAM3Q//9NCjCFw==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "errno": "~0.1.1" - } - }, - "level-iterator-stream": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/level-iterator-stream/-/level-iterator-stream-4.0.2.tgz", - "integrity": "sha512-ZSthfEqzGSOMWoUGhTXdX9jv26d32XJuHz/5YnuHZzH6wldfWMOVwI9TBtKcya4BKTyTt3XVA0A3cF3q5CY30Q==", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, - "optional": true, - "peer": true, "requires": { - "inherits": "^2.0.4", - "readable-stream": "^3.4.0", - "xtend": "^4.0.2" + "color-name": "~1.1.4" } }, - "level-supports": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/level-supports/-/level-supports-1.0.1.tgz", - "integrity": "sha512-rXM7GYnW8gsl1vedTJIbzOrRv85c/2uCMpiiCzO2fndd06U/kUXEEU9evYn4zFggBOg36IsBW8LzqIpETwwQzg==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "xtend": "^4.0.2" - } + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true }, - "levelup": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/levelup/-/levelup-4.4.0.tgz", - "integrity": "sha512-94++VFO3qN95cM/d6eBXvd894oJE0w3cInq9USsyQzzoJxmiYzPAocNcuGCPGGjoXqDVJcr3C1jzt1TSjyaiLQ==", + "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, - "optional": true, - "peer": true, "requires": { - "deferred-leveldown": "~5.3.0", - "level-errors": "~2.0.0", - "level-iterator-stream": "~4.0.0", - "level-supports": "~1.0.0", - "xtend": "~4.0.0" + "has-flag": "^4.0.0" } } } }, - "pouchdb-adapter-memory": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/pouchdb-adapter-memory/-/pouchdb-adapter-memory-7.3.1.tgz", - "integrity": "sha512-iHdWGJAHONqQv0we3Oi1MYen69ZS8McLW9wUyaAYcWTJnAIIAr2ZM0/TeTDVSHfMUwYqEYk7X8jRtJZEMwLnwg==", + "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, - "optional": true, "peer": true, "requires": { - "memdown": "1.4.1", - "pouchdb-adapter-leveldb-core": "7.3.1", - "pouchdb-utils": "7.3.1" + "array-uniq": "1.0.3", + "eth-gas-reporter": "^0.2.25", + "sha1": "^1.1.1" } }, - "pouchdb-adapter-utils": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/pouchdb-adapter-utils/-/pouchdb-adapter-utils-7.3.1.tgz", - "integrity": "sha512-uKLG6dClwTs/sLIJ4WkLAi9wlnDBpOnfyhpeAgOjlOGN/XLz5nKHrA4UJRnURDyc+uv79S9r/Unc4hVpmbSPUw==", + "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 + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true + }, + "has-property-descriptors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", + "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", "dev": true, - "optional": true, - "peer": true, "requires": { - "pouchdb-binary-utils": "7.3.1", - "pouchdb-collections": "7.3.1", - "pouchdb-errors": "7.3.1", - "pouchdb-md5": "7.3.1", - "pouchdb-merge": "7.3.1", - "pouchdb-utils": "7.3.1" + "es-define-property": "^1.0.0" } }, - "pouchdb-binary-utils": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/pouchdb-binary-utils/-/pouchdb-binary-utils-7.3.1.tgz", - "integrity": "sha512-crZJNfAEOnUoRk977Qtmk4cxEv6sNKllQ6vDDKgQrQLFjMUXma35EHzNyIJr1s76J77Q4sqKQAmxz9Y40yHGtw==", + "has-proto": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz", + "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==", + "dev": true + }, + "has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "dev": true + }, + "has-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, - "optional": true, - "peer": true, "requires": { - "buffer-from": "1.1.2" + "has-symbols": "^1.0.3" } }, - "pouchdb-collate": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/pouchdb-collate/-/pouchdb-collate-7.3.1.tgz", - "integrity": "sha512-o4gyGqDMLMSNzf6EDTr3eHaH/JRMoqRhdc+eV+oA8u00nTBtr9wD+jypVe2LbgKLJ4NWqx2qVkXiTiQdUFtsLQ==", + "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==", "dev": true, - "optional": true, - "peer": true + "requires": { + "inherits": "^2.0.4", + "readable-stream": "^3.6.0", + "safe-buffer": "^5.2.0" + } }, - "pouchdb-collections": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/pouchdb-collections/-/pouchdb-collections-7.3.1.tgz", - "integrity": "sha512-yUyDqR+OJmtwgExOSJegpBJXDLAEC84TWnbAYycyh+DZoA51Yw0+XVQF5Vh8Ii90/Ut2xo88fmrmp0t6kqom8w==", + "hash.js": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", + "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "minimalistic-assert": "^1.0.1" + } + }, + "hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "dev": true, + "requires": { + "function-bind": "^1.1.2" + } + }, + "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 + }, + "heap": { + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/heap/-/heap-0.2.7.tgz", + "integrity": "sha512-2bsegYkkHO+h/9MGbn6KWcE45cHZgPANo5LXF7EvWdT0yT2EguSVO1nDgU5c8+ZOPwp2vMNa7YFsJhVcDR9Sdg==", "dev": true, - "optional": true, "peer": true }, - "pouchdb-debug": { - "version": "7.2.1", - "resolved": "https://registry.npmjs.org/pouchdb-debug/-/pouchdb-debug-7.2.1.tgz", - "integrity": "sha512-eP3ht/AKavLF2RjTzBM6S9gaI2/apcW6xvaKRQhEdOfiANqerFuksFqHCal3aikVQuDO+cB/cw+a4RyJn/glBw==", + "hmac-drbg": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", + "integrity": "sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==", + "dev": true, + "requires": { + "hash.js": "^1.0.3", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "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, + "peer": true, + "requires": { + "caseless": "^0.12.0", + "concat-stream": "^1.6.2", + "http-response-object": "^3.0.1", + "parse-cache-control": "^1.0.1" + } + }, + "http-errors": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", + "dev": true, + "requires": { + "depd": "2.0.0", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "toidentifier": "1.0.1" + } + }, + "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, - "optional": true, "peer": true, "requires": { - "debug": "3.1.0" + "@types/node": "^10.0.3" }, "dependencies": { - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "@types/node": { + "version": "10.17.60", + "resolved": "https://registry.npmjs.org/@types/node/-/node-10.17.60.tgz", + "integrity": "sha512-F0KIgDJfy2nA3zMLmWGKxcH2ZVEtCZXHHdOQs2gSaQ27+lNeEfGxzkIw90aXswATX7AZ33tahPbzy6KAfUreVw==", "dev": true, - "optional": true, "peer": true } } }, - "pouchdb-errors": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/pouchdb-errors/-/pouchdb-errors-7.3.1.tgz", - "integrity": "sha512-Zktz4gnXEUcZcty8FmyvtYUYsHskoST05m6H5/E2gg/0mCfEXq/XeyyLkZHaZmqD0ZPS9yNmASB1VaFWEKEaDw==", + "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, - "optional": true, - "peer": true, "requires": { - "inherits": "2.0.4" + "agent-base": "6", + "debug": "4" } }, - "pouchdb-fetch": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/pouchdb-fetch/-/pouchdb-fetch-7.3.1.tgz", - "integrity": "sha512-205xAtvdHRPQ4fp1h9+RmT9oQabo9gafuPmWsS9aEl3ER54WbY8Vaj1JHZGbU4KtMTYvW7H5088zLS7Nrusuag==", + "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, - "optional": true, - "peer": true, "requires": { - "abort-controller": "3.0.0", - "fetch-cookie": "0.11.0", - "node-fetch": "2.6.7" + "safer-buffer": ">= 2.1.2 < 3" } }, - "pouchdb-find": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/pouchdb-find/-/pouchdb-find-7.3.1.tgz", - "integrity": "sha512-AeqUfAVY1c7IFaY36BRT0vIz9r4VTKq/YOWTmiqndOZUQ/pDGxyO2fNFal6NN3PyYww0JijlD377cPvhnrhJVA==", + "ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "dev": true + }, + "ignore": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", + "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", + "dev": true + }, + "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, + "peer": true + }, + "immutable": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.1.0.tgz", + "integrity": "sha512-oNkuqVTA8jqG1Q6c+UglTOD1xhC1BtjKI7XkCXRkZHrN5m18/XsnUp8Q89GkQO/z+0WjonSvl0FLhDYftp46nQ==", + "dev": true + }, + "import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dev": true, + "requires": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + } + }, + "imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true + }, + "indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "dev": true + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "dev": true, + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", + "dev": true, + "peer": true + }, + "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, + "requires": { + "es-errors": "^1.3.0", + "hasown": "^2.0.0", + "side-channel": "^1.0.4" + } + }, + "interpret": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz", + "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==", + "dev": true, + "peer": true + }, + "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, + "requires": { + "fp-ts": "^1.0.0" + } + }, + "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, - "optional": true, - "peer": true, "requires": { - "pouchdb-abstract-mapreduce": "7.3.1", - "pouchdb-collate": "7.3.1", - "pouchdb-errors": "7.3.1", - "pouchdb-fetch": "7.3.1", - "pouchdb-md5": "7.3.1", - "pouchdb-selector-core": "7.3.1", - "pouchdb-utils": "7.3.1" + "call-bind": "^1.0.2", + "get-intrinsic": "^1.2.1" } }, - "pouchdb-json": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/pouchdb-json/-/pouchdb-json-7.3.1.tgz", - "integrity": "sha512-AyOKsmc85/GtHjMZyEacqzja8qLVfycS1hh1oskR+Bm5PIITX52Fb8zyi0hEetV6VC0yuGbn0RqiLjJxQePeqQ==", + "is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", + "dev": true + }, + "is-bigint": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", + "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", "dev": true, - "optional": true, - "peer": true, "requires": { - "vuvuzela": "1.0.3" + "has-bigints": "^1.0.1" } }, - "pouchdb-mapreduce-utils": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/pouchdb-mapreduce-utils/-/pouchdb-mapreduce-utils-7.3.1.tgz", - "integrity": "sha512-oUMcq82+4pTGQ6dtrhgORHOVHZSr6w/5tFIUGlv7RABIDvJarL4snMawADjlpiEwPdiQ/ESG8Fqt8cxqvqsIgg==", + "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, - "optional": true, - "peer": true, "requires": { - "argsarray": "0.0.1", - "inherits": "2.0.4", - "pouchdb-collections": "7.3.1", - "pouchdb-utils": "7.3.1" + "binary-extensions": "^2.0.0" } }, - "pouchdb-md5": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/pouchdb-md5/-/pouchdb-md5-7.3.1.tgz", - "integrity": "sha512-aDV8ui/mprnL3xmt0gT/81DFtTtJiKyn+OxIAbwKPMfz/rDFdPYvF0BmDC9QxMMzGfkV+JJUjU6at0PPs2mRLg==", + "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, - "optional": true, - "peer": true, "requires": { - "pouchdb-binary-utils": "7.3.1", - "spark-md5": "3.0.2" + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" } }, - "pouchdb-merge": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/pouchdb-merge/-/pouchdb-merge-7.3.1.tgz", - "integrity": "sha512-FeK3r35mKimokf2PQ2tUI523QWyZ4lYZ0Yd75FfSch/SPY6wIokz5XBZZ6PHdu5aOJsEKzoLUxr8CpSg9DhcAw==", - "dev": true, - "optional": true, - "peer": true + "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 }, - "pouchdb-selector-core": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/pouchdb-selector-core/-/pouchdb-selector-core-7.3.1.tgz", - "integrity": "sha512-HBX+nNGXcaL9z0uNpwSMRq2GNZd3EZXW+fe9rJHS0hvJohjZL7aRJLoaXfEdHPRTNW+CpjM3Rny60eGekQdI/w==", + "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, - "optional": true, - "peer": true, "requires": { - "pouchdb-collate": "7.3.1", - "pouchdb-utils": "7.3.1" + "is-typed-array": "^1.1.13" } }, - "pouchdb-utils": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/pouchdb-utils/-/pouchdb-utils-7.3.1.tgz", - "integrity": "sha512-R3hHBo1zTdTu/NFs3iqkcaQAPwhIH0gMIdfVKd5lbDYlmP26rCG5pdS+v7NuoSSFLJ4xxnaGV+Gjf4duYsJ8wQ==", + "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, - "optional": true, - "peer": true, "requires": { - "argsarray": "0.0.1", - "clone-buffer": "1.0.0", - "immediate": "3.3.0", - "inherits": "2.0.4", - "pouchdb-collections": "7.3.1", - "pouchdb-errors": "7.3.1", - "pouchdb-md5": "7.3.1", - "uuid": "8.3.2" + "has-tostringtag": "^1.0.0" } }, - "precond": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/precond/-/precond-0.2.3.tgz", - "integrity": "sha512-QCYG84SgGyGzqJ/vlMsxeXd/pgL/I94ixdNFyh1PusWmTCyVfPJjZ1K1jvHtsbfnXQs2TSkEP2fR7QiMZAnKFQ==" - }, - "prelude-ls": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", - "integrity": "sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==", + "is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", "dev": true }, - "prettier": { - "version": "2.8.8", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz", - "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==", + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true }, - "prettier-plugin-solidity": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/prettier-plugin-solidity/-/prettier-plugin-solidity-1.0.0.tgz", - "integrity": "sha512-gRJCeZ7imbWtNYN2SudjJoPmka5r6jcd2cSTV6FC3pVCtY6LFZbeQQjpKufUEp88hXBAAnkOTOh7TA5xwj9M3A==", + "is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", "dev": true, "requires": { - "@solidity-parser/parser": "^0.14.5", - "emoji-regex": "^10.2.1", - "escape-string-regexp": "^4.0.0", - "semver": "^7.3.8", - "solidity-comments-extractor": "^0.0.7", - "string-width": "^4.2.3" - }, - "dependencies": { - "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 - }, - "semver": { - "version": "7.6.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.2.tgz", - "integrity": "sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w==", - "dev": true - } + "is-extglob": "^2.1.1" } }, - "process": { - "version": "0.11.10", - "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", - "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==" + "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 }, - "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==" + "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 }, - "promise-to-callback": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/promise-to-callback/-/promise-to-callback-1.0.0.tgz", - "integrity": "sha512-uhMIZmKM5ZteDMfLgJnoSq9GCwsNKrYau73Awf1jIy6/eUcuuZ3P+CD9zUv0kJsIUbU+x6uLNIhXhLHDs1pNPA==", + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "is-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, "requires": { - "is-fn": "^1.0.0", - "set-immediate-shim": "^1.0.1" + "has-tostringtag": "^1.0.0" } }, - "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==", + "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==", + "dev": true + }, + "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, "requires": { - "graceful-fs": "^4.2.4", - "retry": "^0.12.0", - "signal-exit": "^3.0.2" + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" } }, - "proxy-addr": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", - "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", + "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, "requires": { - "forwarded": "0.2.0", - "ipaddr.js": "1.9.1" + "call-bind": "^1.0.7" } }, - "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==", + "is-string": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", + "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", "dev": true, - "optional": true, - "peer": true - }, - "prr": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", - "integrity": "sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==" - }, - "psl": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", - "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==" - }, - "pump": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", - "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" + "has-tostringtag": "^1.0.0" } }, - "punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" - }, - "pure-rand": { - "version": "5.0.5", - "resolved": "https://registry.npmjs.org/pure-rand/-/pure-rand-5.0.5.tgz", - "integrity": "sha512-BwQpbqxSCBJVpamI6ydzcKqyFmnd5msMWUGvzXLm1aXvusbbgkbOto/EUPM00hjveJEaJtdbhUjKSzWRhQVkaw==", - "dev": true - }, - "qs": { - "version": "6.11.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", - "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", + "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, "requires": { - "side-channel": "^1.0.4" + "has-symbols": "^1.0.2" } }, - "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==", + "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, "requires": { - "decode-uri-component": "^0.2.0", - "object-assign": "^4.1.0", - "strict-uri-encode": "^1.0.0" + "which-typed-array": "^1.1.14" } }, - "queue-microtask": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", - "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "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 }, - "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==" - }, - "randombytes": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", - "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "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, "requires": { - "safe-buffer": "^5.1.0" + "call-bind": "^1.0.2" } }, - "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==" - }, - "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==", - "requires": { - "bytes": "3.1.2", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" - } + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true }, - "read-pkg": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", - "integrity": "sha512-7BGwRHqt4s/uVbuyoeejRn4YmFnYZiFl4AuaeXHlgZf3sONF0SOGlxs2Pw8g6hCKupo08RafIO5YXFNOKTfwsQ==", + "isomorphic-unfetch": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/isomorphic-unfetch/-/isomorphic-unfetch-3.1.0.tgz", + "integrity": "sha512-geDJjpoZ8N0kWexiwkX8F9NkTsXhetLPVbZFQ+JTW239QNOwvB0gniuR1Wc6f0AMTn7/mFGyXvHTifrCp/GH8Q==", "dev": true, "requires": { - "load-json-file": "^1.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^1.0.0" - }, - "dependencies": { - "path-type": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", - "integrity": "sha512-S4eENJz1pkiQn9Znv33Q+deTOKmbl+jj1Fl+qiP/vYezj+S8x+J3Uo0ISrx/QoEvIlOaDWJhPaRd1flJ9HXZqg==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0" - } - }, - "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-fetch": "^2.6.1", + "unfetch": "^4.2.0" } }, - "read-pkg-up": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", - "integrity": "sha512-WD9MTlNtI55IwYUS27iHh9tK3YoIVhxis8yKhLpTqWtml739uXc9NWTpxoHkfZf3+DkCCsXox94/VWZniuZm6A==", - "dev": true, - "requires": { - "find-up": "^1.0.0", - "read-pkg": "^1.0.0" - }, - "dependencies": { - "find-up": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", - "integrity": "sha512-jvElSjyuo4EMQGoTwo1uJU5pQMwTW5lS1x05zzfJuTIyLR3zwO27LYrxNg+dlvKpGOuGy/MzBdXh80g0ve5+HA==", - "dev": true, - "requires": { - "path-exists": "^2.0.0", - "pinkie-promise": "^2.0.0" - } - }, - "path-exists": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", - "integrity": "sha512-yTltuKuhtNeFJKa1PiRzfLAU5182q1y4Eb4XCJ3PBqyzEDkAZRzBrKKBct682ls9reBVHf9udYLN5Nd+K1B9BQ==", - "dev": true, - "requires": { - "pinkie-promise": "^2.0.0" - } - } - } + "js-cookie": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/js-cookie/-/js-cookie-2.2.1.tgz", + "integrity": "sha512-HvdH2LzI/EAZcUwA8+0nKNtWHqS+ZmijLA30RwZA0bo7ToCckjK5MkGhjED9KoRcXO6BaGI3I9UIzSA1FKFPOQ==", + "dev": true }, - "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==", - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } + "js-sha3": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz", + "integrity": "sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==", + "dev": true }, - "readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true + }, + "js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", "dev": true, "requires": { - "picomatch": "^2.2.1" + "argparse": "^2.0.1" } }, - "rechoir": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", - "integrity": "sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==", + "json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", + "dev": true + }, + "json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "dev": true + }, + "json-schema-traverse": { + "version": "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 + }, + "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 + }, + "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 + }, + "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, - "requires": { - "resolve": "^1.1.6" - } + "peer": true }, - "recursive-readdir": { + "json5": { "version": "2.2.3", - "resolved": "https://registry.npmjs.org/recursive-readdir/-/recursive-readdir-2.2.3.tgz", - "integrity": "sha512-8HrF5ZsXk5FAH9dgsx3BlUer73nIhuj+9OrQwEbLTPOBzGkL1lsFCR01am+v+0m2Cmbs1nP12hLDl5FA7EszKA==", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "dev": true, + "peer": true + }, + "jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", "dev": true, "requires": { - "minimatch": "^3.0.5" + "graceful-fs": "^4.1.6" } }, - "redux": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/redux/-/redux-3.7.2.tgz", - "integrity": "sha512-pNqnf9q1hI5HHZRBkj3bAngGZW/JMCmexDlOxw4XagXY2o1327nHH54LoTjiPJ0gizoqPDRqWyX/00g0hD6w+A==", + "jsonschema": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jsonschema/-/jsonschema-1.4.1.tgz", + "integrity": "sha512-S6cATIPVv1z0IlxdN+zUk5EPjkGCdnhN4wVSBlvoUO1tOLJootbo9CquNJmbIh4yikWHiUedhRYrNPn1arpEmQ==", + "dev": true, + "peer": true + }, + "keccak": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/keccak/-/keccak-3.0.2.tgz", + "integrity": "sha512-PyKKjkH53wDMLGrvmRGSNWgmSxZOUqbnXwKL9tmgbFYA1iAYqW21kfR7mZXV0MlESiefxQQE9X9fTa3X+2MPDQ==", "dev": true, - "peer": true, "requires": { - "lodash": "^4.2.1", - "lodash-es": "^4.2.1", - "loose-envify": "^1.1.0", - "symbol-observable": "^1.0.3" + "node-addon-api": "^2.0.0", + "node-gyp-build": "^4.2.0", + "readable-stream": "^3.6.0" } }, - "redux-saga": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/redux-saga/-/redux-saga-1.0.0.tgz", - "integrity": "sha512-GvJWs/SzMvEQgeaw6sRMXnS2FghlvEGsHiEtTLpJqc/FHF3I5EE/B+Hq5lyHZ8LSoT2r/X/46uWvkdCnK9WgHA==", + "keyv": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", + "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", "dev": true, - "peer": true, "requires": { - "@redux-saga/core": "^1.0.0" + "json-buffer": "3.0.1" } }, - "regenerator-runtime": { - "version": "0.13.11", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", - "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==" + "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, + "peer": true }, - "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==", + "kleur": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", + "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", "dev": true, - "requires": { - "call-bind": "^1.0.6", - "define-properties": "^1.2.1", - "es-errors": "^1.3.0", - "set-function-name": "^2.0.1" - } + "peer": true }, - "request": { - "version": "2.88.2", - "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", - "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", + "levn": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", + "integrity": "sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==", + "dev": true, + "peer": true, "requires": { - "aws-sign2": "~0.7.0", - "aws4": "^1.8.0", - "caseless": "~0.12.0", - "combined-stream": "~1.0.6", - "extend": "~3.0.2", - "forever-agent": "~0.6.1", - "form-data": "~2.3.2", - "har-validator": "~5.1.3", - "http-signature": "~1.2.0", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.19", - "oauth-sign": "~0.9.0", - "performance-now": "^2.1.0", - "qs": "~6.5.2", - "safe-buffer": "^5.1.2", - "tough-cookie": "~2.5.0", - "tunnel-agent": "^0.6.0", - "uuid": "^3.3.2" - }, - "dependencies": { - "qs": { - "version": "6.5.3", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz", - "integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==" - }, - "uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==" - } + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2" } }, - "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==" - }, - "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==", + "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 }, - "require-main-filename": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", - "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==" + "lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true }, - "reselect": { - "version": "4.1.7", - "resolved": "https://registry.npmjs.org/reselect/-/reselect-4.1.7.tgz", - "integrity": "sha512-Zu1xbUt3/OPwsXL46hvOOoQrap2azE7ZQbokq61BQfiXvhewsKDwhMeZjTX9sX0nvw1t/U5Audyn1I9P/m9z0A==", + "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, "peer": true }, - "reselect-tree": { - "version": "1.3.7", - "resolved": "https://registry.npmjs.org/reselect-tree/-/reselect-tree-1.3.7.tgz", - "integrity": "sha512-kZN+C1cVJ6fFN2smSb0l4UvYZlRzttgnu183svH4NrU22cBY++ikgr2QT75Uuk4MYpv5gXSVijw4c5U6cx6GKg==", + "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, - "peer": true, - "requires": { - "debug": "^3.1.0", - "json-pointer": "^0.6.1", - "reselect": "^4.0.0" - }, - "dependencies": { - "debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "peer": true, - "requires": { - "ms": "^2.1.1" - } - } - } + "peer": true }, - "resolve": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz", - "integrity": "sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==", - "requires": { - "path-parse": "^1.0.6" - } + "lodash.isequal": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", + "integrity": "sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ==", + "dev": true }, - "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==" + "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 }, - "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==", + "lodash.truncate": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz", + "integrity": "sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw==", "dev": true }, - "responselike": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/responselike/-/responselike-2.0.1.tgz", - "integrity": "sha512-4gl03wn3hj1HP3yzgdI7d3lCkF95F21Pz4BPGvKHinyQzALR5CapwC8yIi0Rh58DEMQ/SguC03wFj2k0M/mHhw==", + "log-symbols": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", + "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", + "dev": true, "requires": { - "lowercase-keys": "^2.0.0" + "chalk": "^4.1.0", + "is-unicode-supported": "^0.1.0" }, "dependencies": { - "lowercase-keys": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", - "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==" + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } } } }, - "restore-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", - "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "loupe": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/loupe/-/loupe-2.3.6.tgz", + "integrity": "sha512-RaPMZKiMy8/JruncMU5Bt6na1eftNoo++R4Y+N2FrxkDVTrGvcyzFTsaGif4QTeKESheMGegbhw6iUAq+5A8zA==", "dev": true, - "optional": true, - "peer": true, "requires": { - "onetime": "^5.1.0", - "signal-exit": "^3.0.2" + "get-func-name": "^2.0.0" } }, - "retry": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", - "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==", + "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 }, - "reusify": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", - "dev": true + "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, + "peer": true }, - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "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, - "requires": { - "glob": "^7.1.3" - } + "peer": true }, - "ripemd160": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", - "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", + "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==", + "dev": true, "requires": { "hash-base": "^3.0.0", - "inherits": "^2.0.1" + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" } }, - "ripemd160-min": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/ripemd160-min/-/ripemd160-min-0.0.6.tgz", - "integrity": "sha512-+GcJgQivhs6S9qvLogusiTcS9kQUfgR75whKuy5jIhuiOfQuJ8fjqxV6EGD5duH1Y/FawFUMtMhyeq3Fbnib8A==", + "memorystream": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/memorystream/-/memorystream-0.3.1.tgz", + "integrity": "sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw==", "dev": true }, - "rlp": { - "version": "2.2.7", - "resolved": "https://registry.npmjs.org/rlp/-/rlp-2.2.7.tgz", - "integrity": "sha512-d5gdPmgQ0Z+AklL2NVXr/IoSjNZFfTVvQWzL/AM2AOcSzYP2xjlb0AC8YyCLc41MSNf6P6QVtjgPdmVtzb+4lQ==", - "requires": { - "bn.js": "^5.2.0" - } + "merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true }, - "run-parallel": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", - "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "micromatch": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", "dev": true, "requires": { - "queue-microtask": "^1.2.2" + "braces": "^3.0.3", + "picomatch": "^2.3.1" } }, - "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==", + "mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "dev": true + }, + "mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", "dev": true, - "peer": true, "requires": { - "queue-microtask": "^1.2.2" + "mime-db": "1.52.0" } }, - "rustbn.js": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/rustbn.js/-/rustbn.js-0.2.0.tgz", - "integrity": "sha512-4VlvkRUuCJvr2J6Y0ImW7NvTCriMi7ErOAqWk1y69vAdoNIzCF3yPmgeNzx+RQTLEDFq5sHfscn1MwHxP9hNfA==" + "minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", + "dev": true }, - "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==", + "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==", + "dev": true + }, + "minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", "dev": true, "requires": { - "call-bind": "^1.0.7", - "get-intrinsic": "^1.2.4", - "has-symbols": "^1.0.3", - "isarray": "^2.0.5" - }, - "dependencies": { - "isarray": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", - "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", - "dev": true - } + "brace-expansion": "^1.1.7" } }, - "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==" + "minimist": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz", + "integrity": "sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==", + "dev": true }, - "safe-event-emitter": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/safe-event-emitter/-/safe-event-emitter-1.0.1.tgz", - "integrity": "sha512-e1wFe99A91XYYxoQbcq2ZJUWurxEyP8vfz7A7vuUe1s95q8r5ebraVaA1BukYJcpM6V16ugWoD9vngi8Ccu5fg==", + "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, + "peer": true, "requires": { - "events": "^3.0.0" + "minimist": "^1.2.6" } }, - "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==", + "mnemonist": { + "version": "0.38.5", + "resolved": "https://registry.npmjs.org/mnemonist/-/mnemonist-0.38.5.tgz", + "integrity": "sha512-bZTFT5rrPKtPJxj8KSV0WkPyNxl72vQepqqVUAW2ARUpUSF2qXMB6jZj7hW5/k7C1rtpzqbD/IIbJwLXUjCHeg==", "dev": true, "requires": { - "call-bind": "^1.0.6", - "es-errors": "^1.3.0", - "is-regex": "^1.1.4" + "obliterator": "^2.0.0" } }, - "safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" - }, - "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==", + "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, "requires": { - "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" + "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" }, "dependencies": { - "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", "dev": true, "requires": { - "sprintf-js": "~1.0.2" + "balanced-match": "^1.0.0" } }, - "async": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", - "integrity": "sha512-nSVgobk4rv61R9PUSDtYt7mPVB2olxNR5RWJcAsH676/ef11bUZwvu7+RGYrYauVdDPcO519v68wRhXQtxsV9w==", + "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 }, + "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, + "requires": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + } + }, "glob": { - "version": "5.0.15", - "resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz", - "integrity": "sha512-c9IPMazfRITpmAAKi22dK1VKxGDX9ehhqfABDriL/lzO92xcUKEJPQHrVA/2YHSNFB4iFlykVmWvwo48nr3OxA==", + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz", + "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==", "dev": true, "requires": { + "fs.realpath": "^1.0.0", "inflight": "^1.0.4", "inherits": "2", - "minimatch": "2 || 3", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" + "minimatch": "^5.0.1", + "once": "^1.3.0" } }, "has-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", - "integrity": "sha512-DyYHfIYwAJmjAjSSPKANxI8bFY9YtFrgkAfinBojQ8YJTOuOuav64tMUJv584SES4xl74PmuaevIyaLESHdTAA==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true }, - "js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "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, "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - }, - "dependencies": { - "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 - } + "p-locate": "^5.0.0" } }, - "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 + "minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "dev": true, + "requires": { + "brace-expansion": "^2.0.1" + } }, - "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==", + "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, "requires": { - "has-flag": "^1.0.0" + "yocto-queue": "^0.1.0" } - } - } - }, - "scrypt-js": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/scrypt-js/-/scrypt-js-3.0.1.tgz", - "integrity": "sha512-cdwTTnqPu0Hyvf5in5asVdZocVDTNRmR7XEcJuIzMjJeSHybHl7vpB66AzwTaIg6CLSbtjcxc8fqcySfnTkccA==" - }, - "secp256k1": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/secp256k1/-/secp256k1-4.0.3.tgz", - "integrity": "sha512-NLZVf+ROMxwtEj3Xa562qgv2BK5e2WNmXPiOdVIPLgs6lyTzMvBq0aWTYMI5XCP9jZMVKOcqZLw/Wc4vDkuxhA==", - "requires": { - "elliptic": "^6.5.4", - "node-addon-api": "^2.0.0", - "node-gyp-build": "^4.2.0" + }, + "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, + "requires": { + "p-limit": "^3.0.2" + } + }, + "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 + }, + "supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } } }, - "semaphore": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/semaphore/-/semaphore-1.1.0.tgz", - "integrity": "sha512-O4OZEaNtkMd/K0i6js9SL+gqy0ZCBMgUvlSqHKi4IBdjhe7wB8pwztUk1BbZ1fmrvpwFrPbHzqd2w5pTcJH6LA==" + "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 }, - "semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==" + "natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "dev": true }, - "send": { - "version": "0.18.0", - "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", - "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", + "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, + "peer": true, "requires": { - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "mime": "1.6.0", - "ms": "2.1.3", - "on-finished": "2.4.1", - "range-parser": "~1.2.1", - "statuses": "2.0.1" + "json-stringify-safe": "^5.0.1", + "minimist": "^1.2.5", + "readable-stream": "^3.6.0", + "split2": "^3.0.0", + "through2": "^4.0.0" }, "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "through2": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/through2/-/through2-4.0.2.tgz", + "integrity": "sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw==", + "dev": true, + "peer": true, "requires": { - "ms": "2.0.0" - }, - "dependencies": { - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - } + "readable-stream": "3" } - }, - "ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" } } }, - "sentence-case": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/sentence-case/-/sentence-case-2.1.1.tgz", - "integrity": "sha512-ENl7cYHaK/Ktwk5OTD+aDbQ3uC8IByu/6Bkg+HDv8Mm+XnBnppVNalcfJTNsp1ibstKh030/JKQQWglDvtKwEQ==", + "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, - "requires": { - "no-case": "^2.2.0", - "upper-case-first": "^1.1.2" - } + "peer": true }, - "serialize-javascript": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz", - "integrity": "sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==", - "dev": true, - "requires": { - "randombytes": "^2.1.0" - } + "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==", + "dev": true }, - "serve-static": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", - "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", + "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, + "peer": true, "requires": { - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "parseurl": "~1.3.3", - "send": "0.18.0" + "lodash": "^4.17.21" } }, - "servify": { - "version": "0.1.12", - "resolved": "https://registry.npmjs.org/servify/-/servify-0.1.12.tgz", - "integrity": "sha512-/xE6GvsKKqyo1BAY+KxOWXcLpPsUUyji7Qg3bVD7hh1eRze5bR1uYiuDA/k3Gof1s9BTzQZEJK8sNcNGFIzeWw==", + "node-fetch": { + "version": "2.6.7", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", + "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", + "dev": true, "requires": { - "body-parser": "^1.16.0", - "cors": "^2.8.1", - "express": "^4.14.0", - "request": "^2.79.0", - "xhr": "^2.3.3" + "whatwg-url": "^5.0.0" } }, - "set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==" + "node-gyp-build": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.5.0.tgz", + "integrity": "sha512-2iGbaQBV+ITgCz76ZEjmhUKAKVf7xfY1sRl4UiKQspfZMH2h06SyhNsnSVy50cwkFQDGLyif6m/6uFXHkOZ6rg==", + "dev": true }, - "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==", - "requires": { - "define-data-property": "^1.1.4", - "es-errors": "^1.3.0", - "function-bind": "^1.1.2", - "get-intrinsic": "^1.2.4", - "gopd": "^1.0.1", - "has-property-descriptors": "^1.0.2" - } + "nofilter": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/nofilter/-/nofilter-3.1.0.tgz", + "integrity": "sha512-l2NNj07e9afPnhAhvgVrCD/oy2Ai1yfLpuo3EpiO1jFTsB4sFz6oIfAfSZyQzVpkZQ9xS8ZS5g1jCBgq4Hwo0g==", + "dev": true }, - "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==", + "nopt": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz", + "integrity": "sha512-4GUt3kSEYmk4ITxzB/b9vaIDfUVWN/Ml1Fwl11IlnIG2iaJ9O6WXZ9SrYM9NLI8OCBieN2Y8SWC2oJV0RQ7qYg==", "dev": true, + "peer": true, "requires": { - "define-data-property": "^1.1.4", - "es-errors": "^1.3.0", - "functions-have-names": "^1.2.3", - "has-property-descriptors": "^1.0.2" + "abbrev": "1" } }, - "set-immediate-shim": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz", - "integrity": "sha512-Li5AOqrZWCVA2n5kryzEmqai6bKSIvpz5oUJHPVj6+dsbD3X1ixtsY5tEnsaNpH3pFAHmG8eIHUrtEtohrg+UQ==" - }, - "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==" - }, - "setprototypeof": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", - "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" - }, - "sha.js": { - "version": "2.4.11", - "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", - "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", - "requires": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } + "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 }, - "sha3": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/sha3/-/sha3-2.1.4.tgz", - "integrity": "sha512-S8cNxbyb0UGUM2VhRD4Poe5N58gJnJsLJ5vC7FYWGUmGhcsj4++WaIOBFVDxlG0W3To6xBuiRh+i0Qp2oNCOtg==", + "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, + "peer": true, "requires": { - "buffer": "6.0.3" + "bn.js": "4.11.6", + "strip-hex-prefix": "1.0.0" + }, + "dependencies": { + "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, + "peer": true + } } }, - "shallowequal": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/shallowequal/-/shallowequal-1.1.0.tgz", - "integrity": "sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ==", + "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, "peer": true }, - "shelljs": { - "version": "0.8.5", - "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.8.5.tgz", - "integrity": "sha512-TiwcRcrkhHvbrZbnRcFYMLl30Dfov3HKqzp5tO5b4pt6G/SezKcYhmDg15zXVBswHmctSAQKznqNW2LO5tTDow==", - "dev": true, - "requires": { - "glob": "^7.0.0", - "interpret": "^1.0.0", - "rechoir": "^0.6.2" - } + "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 }, - "side-channel": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "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, "requires": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", + "has-symbols": "^1.0.3", + "object-keys": "^1.1.1" + }, + "dependencies": { + "object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dev": true + } } }, - "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==", + "obliterator": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/obliterator/-/obliterator-2.0.4.tgz", + "integrity": "sha512-lgHwxlxV1qIg1Eap7LgIeoBWIMFibOjbrYPIPJZcI1mmGAI2m3lNYpK12Y+GBdPQ0U1hRwSord7GIaawz962qQ==", "dev": true }, - "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==" - }, - "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==", + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dev": true, "requires": { - "decompress-response": "^3.3.0", - "once": "^1.3.1", - "simple-concat": "^1.0.0" + "wrappy": "1" } }, - "slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true - }, - "slice-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", - "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", + "optionator": { + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", + "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", "dev": true, + "peer": true, "requires": { - "ansi-styles": "^4.0.0", - "astral-regex": "^2.0.0", - "is-fullwidth-code-point": "^3.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - } + "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" } }, - "snake-case": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/snake-case/-/snake-case-2.1.0.tgz", - "integrity": "sha512-FMR5YoPFwOLuh4rRz92dywJjyKYZNLpMn1R5ujVpIYkbA9p01fq8RMg0FkO4M+Yobt4MjHeLTJVm5xFFBHSV2Q==", + "ordinal": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/ordinal/-/ordinal-1.0.3.tgz", + "integrity": "sha512-cMddMgb2QElm8G7vdaa02jhUNbTSrhsgAGUz1OokD83uJTwSUn+nKoNoKVVaRa08yF6sgfO7Maou1+bgLd9rdQ==", + "dev": true, + "peer": true + }, + "os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", + "dev": true + }, + "p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", "dev": true, "requires": { - "no-case": "^2.2.0" + "aggregate-error": "^3.0.0" } }, - "solc": { - "version": "0.8.3", - "resolved": "https://registry.npmjs.org/solc/-/solc-0.8.3.tgz", - "integrity": "sha512-VZvSHtwe2zAsoviClIpWjvrg22bIZ0pLtzFrYD9BtPfR7mhMZYwpptnzRizNaSvMngTR+gB9Ul8IyL5xaC7+jw==", + "parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", "dev": true, "requires": { - "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" - }, - "dependencies": { - "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, - "requires": { - "graceful-fs": "^4.1.2", - "jsonfile": "^2.1.0", - "klaw": "^1.0.0", - "path-is-absolute": "^1.0.0", - "rimraf": "^2.2.8" - } - }, - "jsonfile": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-2.4.0.tgz", - "integrity": "sha512-PKllAqbgLgxHaj8TElYymKCAgrASebJrWpTnEkOaTowt23VKXXN0sUeriJ+eh7y6ufb/CC5ap11pz71/cM0hUw==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.6" - } - }, - "semver": { - "version": "5.7.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", - "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", - "dev": true - } + "callsites": "^3.0.0" } }, - "solhint": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/solhint/-/solhint-3.4.1.tgz", - "integrity": "sha512-pzZn2RlZhws1XwvLPVSsxfHrwsteFf5eySOhpAytzXwKQYbTCJV6z8EevYDiSVKMpWrvbKpEtJ055CuEmzp4Xg==", + "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, - "requires": { - "@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", - "prettier": "^2.8.3", - "semver": "^6.3.0", - "strip-ansi": "^6.0.1", - "table": "^6.8.1", - "text-table": "^0.2.0" - }, - "dependencies": { - "@solidity-parser/parser": { - "version": "0.16.0", - "resolved": "https://registry.npmjs.org/@solidity-parser/parser/-/parser-0.16.0.tgz", - "integrity": "sha512-ESipEcHyRHg4Np4SqBCfcXwyxxna1DgFVz69bgpLV8vzl/NP1DtcKsJ4dJZXWQhY/Z4J2LeKBiOkOVZn9ct33Q==", - "dev": true, - "requires": { - "antlr4ts": "^0.5.0-alpha.4" - } - }, - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "commander": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-10.0.1.tgz", - "integrity": "sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==", - "dev": true - }, - "glob": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz", - "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^5.0.1", - "once": "^1.3.0" - } - }, - "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 - }, - "minimatch": { - "version": "5.1.6", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", - "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", - "dev": true, - "requires": { - "brace-expansion": "^2.0.1" - } - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } + "peer": true }, - "solidity-ast": { - "version": "0.4.56", - "resolved": "https://registry.npmjs.org/solidity-ast/-/solidity-ast-0.4.56.tgz", - "integrity": "sha512-HgmsA/Gfklm/M8GFbCX/J1qkVH0spXHgALCNZ8fA8x5X+MFdn/8CP2gr5OVyXjXw6RZTPC/Sxl2RUDQOXyNMeA==", + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "dev": true, + "peer": true + }, + "path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true + }, + "path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true + }, + "path-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 + }, + "pathval": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.1.tgz", + "integrity": "sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==", + "dev": true + }, + "pbkdf2": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz", + "integrity": "sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==", "dev": true, "requires": { - "array.prototype.findlast": "^1.2.2" + "create-hash": "^1.1.2", + "create-hmac": "^1.1.4", + "ripemd160": "^2.0.1", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" } }, - "solidity-comments-extractor": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/solidity-comments-extractor/-/solidity-comments-extractor-0.0.7.tgz", - "integrity": "sha512-wciNMLg/Irp8OKGrh3S2tfvZiZ0NEyILfcRCXCD4mp7SgK/i9gzLfhY2hY7VMCQJ3kH9UB9BzNdibIVMchzyYw==", + "picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", "dev": true }, - "solidity-coverage": { - "version": "0.8.12", - "resolved": "https://registry.npmjs.org/solidity-coverage/-/solidity-coverage-0.8.12.tgz", - "integrity": "sha512-8cOB1PtjnjFRqOgwFiD8DaUsYJtVJ6+YdXQtSZDrLGf8cdhhh8xzTtGzVTGeBf15kTv0v7lYPJlV/az7zLEPJw==", + "picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true + }, + "pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", "dev": true, - "requires": { - "@ethersproject/abi": "^5.0.9", - "@solidity-parser/parser": "^0.18.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" + "peer": true + }, + "pluralize": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-8.0.0.tgz", + "integrity": "sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==", + "dev": true + }, + "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 + }, + "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, + "peer": true + }, + "prettier": { + "version": "2.8.8", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz", + "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==", + "dev": true + }, + "prettier-plugin-solidity": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/prettier-plugin-solidity/-/prettier-plugin-solidity-1.0.0.tgz", + "integrity": "sha512-gRJCeZ7imbWtNYN2SudjJoPmka5r6jcd2cSTV6FC3pVCtY6LFZbeQQjpKufUEp88hXBAAnkOTOh7TA5xwj9M3A==", + "dev": true, + "requires": { + "@solidity-parser/parser": "^0.14.5", + "emoji-regex": "^10.2.1", + "escape-string-regexp": "^4.0.0", + "semver": "^7.3.8", + "solidity-comments-extractor": "^0.0.7", + "string-width": "^4.2.3" }, "dependencies": { - "@solidity-parser/parser": { - "version": "0.18.0", - "resolved": "https://registry.npmjs.org/@solidity-parser/parser/-/parser-0.18.0.tgz", - "integrity": "sha512-yfORGUIPgLck41qyN7nbwJRAx17/jAIXCTanHOJZhB6PJ1iAk/84b/xlsVKFSyNyLXIj0dhppoE0+CRws7wlzA==", + "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 }, - "fs-extra": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", - "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", - "dev": true, - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } - }, "semver": { "version": "7.6.2", "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.2.tgz", @@ -29662,739 +16500,699 @@ } } }, - "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==", + "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, - "optional": true, + "peer": true + }, + "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, + "peer": true, "requires": { - "amdefine": ">=0.0.4" + "asap": "~2.0.6" } }, - "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==", + "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, "peer": true, "requires": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "peer": true - } + "kleur": "^3.0.3", + "sisteransi": "^1.0.5" } }, - "spark-md5": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/spark-md5/-/spark-md5-3.0.2.tgz", - "integrity": "sha512-wcFzz9cDfbuqe0FZzfi2or1sgyIrsDwmPwfZC4hiNidPdPINjeUwNfv5kldczoEAcjl9Y1L3SM7Uz2PUEQzxQw==", + "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==", "dev": true, - "optional": true, - "peer": true + "requires": { + "graceful-fs": "^4.2.4", + "retry": "^0.12.0", + "signal-exit": "^3.0.2" + } }, - "spdx-correct": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.2.0.tgz", - "integrity": "sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==", + "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==", + "dev": true + }, + "punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "dev": true + }, + "qs": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz", + "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==", "dev": true, + "peer": true, "requires": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" + "side-channel": "^1.0.6" } }, - "spdx-exceptions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", - "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", + "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 }, - "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==", + "randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", "dev": true, "requires": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" + "safe-buffer": "^5.1.0" } }, - "spdx-license-ids": { - "version": "3.0.13", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.13.tgz", - "integrity": "sha512-XkD+zwiqXHikFZm4AX/7JSCXA98U5Db4AFd5XUg/+9UNtnH75+Z9KxtpYiJZx36mUDVOwH83pl7yvCer6ewM3w==", - "dev": true + "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, + "requires": { + "bytes": "3.1.2", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + } }, - "sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", - "dev": true + "readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } }, - "sshpk": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.17.0.tgz", - "integrity": "sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ==", - "requires": { - "asn1": "~0.2.3", - "assert-plus": "^1.0.0", - "bcrypt-pbkdf": "^1.0.0", - "dashdash": "^1.12.0", - "ecc-jsbn": "~0.1.1", - "getpass": "^0.1.1", - "jsbn": "~0.1.0", - "safer-buffer": "^2.0.2", - "tweetnacl": "~0.14.0" - }, - "dependencies": { - "tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==" - } + "readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "requires": { + "picomatch": "^2.2.1" } }, - "stacktrace-parser": { - "version": "0.1.10", - "resolved": "https://registry.npmjs.org/stacktrace-parser/-/stacktrace-parser-0.1.10.tgz", - "integrity": "sha512-KJP1OCML99+8fhOHxwwzyWrlUuVX5GQ0ZpJTd1DFXhdkrvg1szxfHhawXUZ3g9TkXORQd4/WG68jMlQZ2p8wlg==", + "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, "peer": true, "requires": { - "type-fest": "^0.7.1" - }, - "dependencies": { - "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, - "peer": true - } + "resolve": "^1.1.6" } }, - "statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==" + "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, + "peer": true, + "requires": { + "minimatch": "^3.0.5" + } }, - "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==" + "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, + "peer": true }, - "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==", + "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, "requires": { - "safe-buffer": "~5.2.0" + "call-bind": "^1.0.6", + "define-properties": "^1.2.1", + "es-errors": "^1.3.0", + "set-function-name": "^2.0.1" } }, - "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==", + "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, + "peer": true, "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" + "req-from": "^2.0.0" + } + }, + "req-from": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/req-from/-/req-from-2.0.0.tgz", + "integrity": "sha512-LzTfEVDVQHBRfjOUMgNBA+V6DWsSnoeKzf42J7l0xa/B4jyPOuuF5MlNSmomLNGemWTnV2TIdjSSLnEn95fOQA==", + "dev": true, + "peer": true, + "requires": { + "resolve-from": "^3.0.0" }, "dependencies": { - "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==" + "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, + "peer": true } } }, - "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==", + "require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "dev": true + }, + "require-from-string": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", + "dev": true + }, + "resolve": { + "version": "1.17.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz", + "integrity": "sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==", "dev": true, "requires": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.0", - "es-object-atoms": "^1.0.0" + "path-parse": "^1.0.6" } }, - "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==", + "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 + }, + "retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==", + "dev": true + }, + "reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "dev": true + }, + "ripemd160": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", + "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", "dev": true, "requires": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-object-atoms": "^1.0.0" + "hash-base": "^3.0.0", + "inherits": "^2.0.1" } }, - "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==", + "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, "requires": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-object-atoms": "^1.0.0" + "bn.js": "^5.2.0" } }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "dev": true, "requires": { - "ansi-regex": "^5.0.1" + "queue-microtask": "^1.2.2" } }, - "strip-bom": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", - "integrity": "sha512-kwrX1y7czp1E69n2ajbG65mIo9dqvJ+8aBQXOGVxqwvNbsXdFM6Lq37dLAY3mknUwru8CfcCbfOLL/gMo+fi3g==", + "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, "requires": { - "is-utf8": "^0.2.0" + "call-bind": "^1.0.7", + "get-intrinsic": "^1.2.4", + "has-symbols": "^1.0.3", + "isarray": "^2.0.5" + }, + "dependencies": { + "isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", + "dev": true + } } }, - "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==", + "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 + }, + "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, "requires": { - "is-hex-prefixed": "1.0.0" + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-regex": "^1.1.4" } }, - "strip-indent": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-2.0.0.tgz", - "integrity": "sha512-RsSNPLpq6YUL7QYy44RnPVTn/lcVZtb48Uof3X5JLbF4zD/Gs7ZFDv2HWol+leoQN2mT86LAzSshGfkTlSOpsA==", - "dev": true - }, - "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==", + "safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", "dev": true }, - "sublevel-pouchdb": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/sublevel-pouchdb/-/sublevel-pouchdb-7.3.1.tgz", - "integrity": "sha512-n+4fK72F/ORdqPwoGgMGYeOrW2HaPpW9o9k80bT1B3Cim5BSvkKkr9WbWOWynni/GHkbCEdvLVFJL1ktosAdhQ==", + "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, - "optional": true, "peer": true, "requires": { - "inherits": "2.0.4", - "level-codec": "9.0.2", - "ltgt": "2.2.1", - "readable-stream": "1.1.14" + "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" }, "dependencies": { - "buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", "dev": true, - "optional": true, "peer": true, "requires": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" + "sprintf-js": "~1.0.2" } }, - "level-codec": { - "version": "9.0.2", - "resolved": "https://registry.npmjs.org/level-codec/-/level-codec-9.0.2.tgz", - "integrity": "sha512-UyIwNb1lJBChJnGfjmO0OR+ezh2iVu1Kas3nvBS/BzGnx79dv6g7unpKIDNPMhfdTEGoc7mC8uAu51XEtX+FHQ==", + "async": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", + "integrity": "sha512-nSVgobk4rv61R9PUSDtYt7mPVB2olxNR5RWJcAsH676/ef11bUZwvu7+RGYrYauVdDPcO519v68wRhXQtxsV9w==", "dev": true, - "optional": true, - "peer": true, - "requires": { - "buffer": "^5.6.0" - } + "peer": true }, - "readable-stream": { - "version": "1.1.14", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", - "integrity": "sha512-+MeVjFf4L44XUkhM1eYbD8fyEsxcV81pqMSR5gblfcLCHfZvbrqy4/qYHE+/R5HoBUT11WV5O08Cr1n3YXkWVQ==", + "glob": { + "version": "5.0.15", + "resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz", + "integrity": "sha512-c9IPMazfRITpmAAKi22dK1VKxGDX9ehhqfABDriL/lzO92xcUKEJPQHrVA/2YHSNFB4iFlykVmWvwo48nr3OxA==", "dev": true, - "optional": true, "peer": true, "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "0.0.1", - "string_decoder": "~0.10.x" + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "2 || 3", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" } }, - "string_decoder": { - "version": "0.10.31", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "integrity": "sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==", + "has-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", + "integrity": "sha512-DyYHfIYwAJmjAjSSPKANxI8bFY9YtFrgkAfinBojQ8YJTOuOuav64tMUJv584SES4xl74PmuaevIyaLESHdTAA==", "dev": true, - "optional": true, "peer": true - } - } - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "requires": { - "has-flag": "^3.0.0" - } - }, - "swap-case": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/swap-case/-/swap-case-1.1.2.tgz", - "integrity": "sha512-BAmWG6/bx8syfc6qXPprof3Mn5vQgf5dwdUNJhsNqU9WdPt5P+ES/wQ5bxfijy8zwZgZZHslC3iAsxsuQMCzJQ==", - "dev": true, - "requires": { - "lower-case": "^1.1.1", - "upper-case": "^1.1.1" - } - }, - "swarm-js": { - "version": "0.1.42", - "resolved": "https://registry.npmjs.org/swarm-js/-/swarm-js-0.1.42.tgz", - "integrity": "sha512-BV7c/dVlA3R6ya1lMlSSNPLYrntt0LUq4YMgy3iwpCIc6rZnS5W2wUoctarZ5pXlpKtxDDf9hNziEkcfrxdhqQ==", - "requires": { - "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" - }, - "dependencies": { - "@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==", - "requires": { - "defer-to-connect": "^2.0.0" - } - }, - "buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "requires": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" - } }, - "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==", + "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, + "peer": true, "requires": { - "mimic-response": "^3.1.0" + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "dependencies": { + "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, + "peer": true + } } }, - "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==", - "requires": { - "graceful-fs": "^4.1.2", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } + "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, + "peer": true }, - "got": { - "version": "11.8.6", - "resolved": "https://registry.npmjs.org/got/-/got-11.8.6.tgz", - "integrity": "sha512-6tfZ91bOr7bOXnK7PRDCGBLa1H4U080YHNaAQ2KsMGlLEzRbk44nsZF2E1IeRc3vtJHPVbKCYgdFbaGO2ljd8g==", + "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, + "peer": true, "requires": { - "@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" + "has-flag": "^1.0.0" } - }, - "lowercase-keys": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", - "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==" - }, - "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==" - }, - "p-cancelable": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-2.1.1.tgz", - "integrity": "sha512-BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg==" } } }, - "symbol-observable": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.2.0.tgz", - "integrity": "sha512-e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ==", - "dev": true, - "peer": true + "scrypt-js": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/scrypt-js/-/scrypt-js-3.0.1.tgz", + "integrity": "sha512-cdwTTnqPu0Hyvf5in5asVdZocVDTNRmR7XEcJuIzMjJeSHybHl7vpB66AzwTaIg6CLSbtjcxc8fqcySfnTkccA==", + "dev": true }, - "table": { - "version": "6.8.1", - "resolved": "https://registry.npmjs.org/table/-/table-6.8.1.tgz", - "integrity": "sha512-Y4X9zqrCftUhMeH2EptSSERdVKt/nEdijTOacGD/97EKjhQ/Qs8RTlEGABSJNNN8lac9kheH+af7yAkEWlgneA==", + "secp256k1": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/secp256k1/-/secp256k1-4.0.4.tgz", + "integrity": "sha512-6JfvwvjUOn8F/jUoBY2Q1v5WY5XS+rj8qSe0v8Y4ezH4InLgTEeOOPQsRll9OV429Pvo6BCHGavIyJfr3TAhsw==", "dev": true, "requires": { - "ajv": "^8.0.1", - "lodash.truncate": "^4.4.2", - "slice-ansi": "^4.0.0", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1" + "elliptic": "^6.5.7", + "node-addon-api": "^5.0.0", + "node-gyp-build": "^4.2.0" }, "dependencies": { - "ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "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 + }, + "elliptic": { + "version": "6.6.1", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.6.1.tgz", + "integrity": "sha512-RaddvvMatK2LJHqFJ+YA4WysVN5Ita9E35botqIYspQ4TkRAlCicdzKOjlyv/1Za5RyTNn7di//eEV0uTAfe3g==", "dev": true, "requires": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" + "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" } }, - "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-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 } } }, - "tar": { - "version": "4.4.19", - "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.19.tgz", - "integrity": "sha512-a20gEsvHnWe0ygBY8JbxoM4w3SJdhc7ZAuxkLqh+nvNQN2IOt0B5lLgM490X5Hl8FF0dl0tOf2ewFYAlIFgzVA==", + "semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true + }, + "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, + "requires": { + "randombytes": "^2.1.0" + } + }, + "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, + "requires": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2" + } + }, + "set-function-name": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz", + "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", + "dev": true, "requires": { - "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", + "functions-have-names": "^1.2.3", + "has-property-descriptors": "^1.0.2" } }, - "testrpc": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/testrpc/-/testrpc-0.0.1.tgz", - "integrity": "sha512-afH1hO+SQ/VPlmaLUFj2636QMeDvPCeQMc/9RBMW0IfjNe9gFD9Ra3ShqYkB7py0do1ZcCna/9acHyzTJ+GcNA==", + "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 }, - "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==", + "setprototypeof": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", "dev": true }, - "through2": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/through2/-/through2-3.0.2.tgz", - "integrity": "sha512-enaDQ4MUyP2W6ZyT6EsMzqBPZaM/avg8iuo+l2d3QCs0J+6RaqkHV/2/lOwDTueBHeJ/2LG9lrLW3d5rWPucuQ==", + "sha.js": { + "version": "2.4.11", + "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", + "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", "dev": true, - "optional": true, - "peer": true, "requires": { - "inherits": "^2.0.4", - "readable-stream": "2 || 3" + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" } }, - "timed-out": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/timed-out/-/timed-out-4.0.1.tgz", - "integrity": "sha512-G7r3AhovYtr5YKOWQkta8RKAPb+J9IsO4uVmzjl8AZwfhs8UcUwTiD6gcJYSgOtzyjvQKrKYn41syHbUWMkafA==" - }, - "tiny-typed-emitter": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/tiny-typed-emitter/-/tiny-typed-emitter-2.1.0.tgz", - "integrity": "sha512-qVtvMxeXbVej0cQWKqVSSAHmKZEHAvxdF8HEUBFWts8h+xEo5m/lEiPakuyZ3BnCBjOD8i24kzNOiOLLgsSxhA==", - "dev": true, - "optional": true, - "peer": true - }, - "title-case": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/title-case/-/title-case-2.1.1.tgz", - "integrity": "sha512-EkJoZ2O3zdCz3zJsYCsxyq2OC5hrxR9mfdd5I+w8h/tmFfeOxJ+vvkxsKxdmN0WtS9zLdHEgfgVOiMVgv+Po4Q==", + "sha1": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/sha1/-/sha1-1.1.1.tgz", + "integrity": "sha512-dZBS6OrMjtgVkopB1Gmo4RQCDKiZsqcpAQpkV/aaj+FCrCg8r4I4qMkDPQjBgLIxlmu9k4nUbWq6ohXahOneYA==", "dev": true, + "peer": true, "requires": { - "no-case": "^2.2.0", - "upper-case": "^1.0.3" + "charenc": ">= 0.0.1", + "crypt": ">= 0.0.1" } }, - "tmp": { - "version": "0.0.33", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", - "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", "dev": true, "requires": { - "os-tmpdir": "~1.0.2" + "shebang-regex": "^3.0.0" } }, - "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==" + "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 }, - "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==", + "shelljs": { + "version": "0.8.5", + "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.8.5.tgz", + "integrity": "sha512-TiwcRcrkhHvbrZbnRcFYMLl30Dfov3HKqzp5tO5b4pt6G/SezKcYhmDg15zXVBswHmctSAQKznqNW2LO5tTDow==", "dev": true, + "peer": true, "requires": { - "is-number": "^7.0.0" + "glob": "^7.0.0", + "interpret": "^1.0.0", + "rechoir": "^0.6.2" } }, - "toidentifier": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", - "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==" - }, - "tough-cookie": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", - "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", + "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, "requires": { - "psl": "^1.1.28", - "punycode": "^2.1.1" + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4", + "object-inspect": "^1.13.1" } }, - "tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" + "signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "dev": true }, - "truffle": { - "version": "5.8.0", - "resolved": "https://registry.npmjs.org/truffle/-/truffle-5.8.0.tgz", - "integrity": "sha512-UoC6w5vpFWBd/79TVr3tg+TdVMKhzrGtqR0u7hAmshB5edb52A9IIXoRZZOnagQg/eDAZBukDZ8cKbGMbVEACA==", + "sisteransi": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", + "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", + "dev": true, + "peer": true + }, + "slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "peer": true + }, + "slice-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", + "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", "dev": true, - "peer": true, "requires": { - "@truffle/db": "^2.0.19", - "@truffle/db-loader": "^0.2.19", - "@truffle/debugger": "^11.0.30", - "app-module-path": "^2.2.0", - "ganache": "7.7.6", - "mocha": "10.1.0", - "original-require": "^1.0.1" + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" }, "dependencies": { - "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, - "peer": true - }, - "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, - "peer": true, - "requires": { - "balanced-match": "^1.0.0" - } - }, - "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, - "peer": true - }, - "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, - "peer": true, - "requires": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - } - }, - "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, - "peer": true - }, - "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, - "peer": true, - "requires": { - "p-locate": "^5.0.0" - } - }, - "minimatch": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.0.1.tgz", - "integrity": "sha512-nLDxIFRyhDblz3qMuq+SoRZED4+miJ/G+tdDrjkkkRnjAsBexeGpgjLEQ0blJy7rHhR2b93rhQY4SvyWu9v03g==", - "dev": true, - "peer": true, - "requires": { - "brace-expansion": "^2.0.1" - } - }, - "mocha": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/mocha/-/mocha-10.1.0.tgz", - "integrity": "sha512-vUF7IYxEoN7XhQpFLxQAEMtE4W91acW4B6En9l97MwE9stL1A9gusXfoHZCLVHDUJ/7V5+lbCM6yMqzo5vNymg==", - "dev": true, - "peer": true, - "requires": { - "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": "7.2.0", - "he": "1.2.0", - "js-yaml": "4.1.0", - "log-symbols": "4.1.0", - "minimatch": "5.0.1", - "ms": "2.1.3", - "nanoid": "3.3.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" - } - }, - "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, - "peer": true - }, - "p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "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, - "peer": true, "requires": { - "yocto-queue": "^0.1.0" + "color-convert": "^2.0.1" } }, - "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==", + "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, - "peer": true, "requires": { - "p-limit": "^3.0.2" + "color-name": "~1.1.4" } }, - "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, - "peer": true - }, - "supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", - "dev": true, - "peer": true, - "requires": { - "has-flag": "^4.0.0" - } + "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 } } }, - "truffle-assertions": { - "version": "0.9.2", - "resolved": "https://registry.npmjs.org/truffle-assertions/-/truffle-assertions-0.9.2.tgz", - "integrity": "sha512-9g2RhaxU2F8DeWhqoGQvL/bV8QVoSnQ6PY+ZPvYRP5eF7+/8LExb4mjLx/FeliLTjc3Tv1SABG05Gu5qQ/ErmA==", + "solc": { + "version": "0.8.26", + "resolved": "https://registry.npmjs.org/solc/-/solc-0.8.26.tgz", + "integrity": "sha512-yiPQNVf5rBFHwN6SIf3TUUvVAFKcQqmSUFeq+fb6pNRCo0ZCgpYOZDi3BVoezCPIAcKrVYd/qXlBLUP9wVrZ9g==", + "dev": true, "requires": { - "assertion-error": "^1.1.0", - "lodash.isequal": "^4.5.0" + "command-exists": "^1.2.8", + "commander": "^8.1.0", + "follow-redirects": "^1.12.1", + "js-sha3": "0.8.0", + "memorystream": "^0.3.1", + "semver": "^5.5.0", + "tmp": "0.0.33" + }, + "dependencies": { + "semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "dev": true + } } }, - "truffle-contract-size": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/truffle-contract-size/-/truffle-contract-size-2.0.1.tgz", - "integrity": "sha512-AIKPwHPC/1pZwtVjgUcgcK23k6gWxKhn4ZnKLr339uieb94UgAUeIwGUkfc87T+0lqgC6ePY7YhsFeoZK2YEsA==", + "solhint": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/solhint/-/solhint-3.4.1.tgz", + "integrity": "sha512-pzZn2RlZhws1XwvLPVSsxfHrwsteFf5eySOhpAytzXwKQYbTCJV6z8EevYDiSVKMpWrvbKpEtJ055CuEmzp4Xg==", + "dev": true, "requires": { - "cli-table": "^0.3.1", - "yargs": "^15.3.1" + "@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", + "prettier": "^2.8.3", + "semver": "^6.3.0", + "strip-ansi": "^6.0.1", + "table": "^6.8.1", + "text-table": "^0.2.0" }, "dependencies": { + "@solidity-parser/parser": { + "version": "0.16.0", + "resolved": "https://registry.npmjs.org/@solidity-parser/parser/-/parser-0.16.0.tgz", + "integrity": "sha512-ESipEcHyRHg4Np4SqBCfcXwyxxna1DgFVz69bgpLV8vzl/NP1DtcKsJ4dJZXWQhY/Z4J2LeKBiOkOVZn9ct33Q==", + "dev": true, + "requires": { + "antlr4ts": "^0.5.0-alpha.4" + } + }, "ansi-styles": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, "requires": { "color-convert": "^2.0.1" } }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==" + "brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0" + } }, - "cliui": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", - "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^6.2.0" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" } }, "color-convert": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, "requires": { "color-name": "~1.1.4" } @@ -30402,886 +17200,879 @@ "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==" - }, - "decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==" - }, - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "requires": { - "p-locate": "^4.1.0" - } + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "requires": { - "p-try": "^2.0.0" - } + "commander": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-10.0.1.tgz", + "integrity": "sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==", + "dev": true }, - "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==", + "glob": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz", + "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==", + "dev": true, "requires": { - "p-limit": "^2.2.0" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^5.0.1", + "once": "^1.3.0" } }, - "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==" - }, - "path-exists": { + "has-flag": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==" - }, - "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==", - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - } - }, - "y18n": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", - "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==" + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true }, - "yargs": { - "version": "15.4.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", - "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", + "minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "dev": true, "requires": { - "cliui": "^6.0.0", - "decamelize": "^1.2.0", - "find-up": "^4.1.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^4.2.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^18.1.2" + "brace-expansion": "^2.0.1" } }, - "yargs-parser": { - "version": "18.1.3", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", - "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" + "has-flag": "^4.0.0" } } } }, - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true, - "peer": true - }, - "tsort": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/tsort/-/tsort-0.0.1.tgz", - "integrity": "sha512-Tyrf5mxF8Ofs1tNoxA13lFeZ2Zrbd6cKbuH3V+MQ5sb6DtBj5FjrXVsRWT8YvNAQTqNoz66dz1WsbigI22aEnw==", + "solidity-ast": { + "version": "0.4.56", + "resolved": "https://registry.npmjs.org/solidity-ast/-/solidity-ast-0.4.56.tgz", + "integrity": "sha512-HgmsA/Gfklm/M8GFbCX/J1qkVH0spXHgALCNZ8fA8x5X+MFdn/8CP2gr5OVyXjXw6RZTPC/Sxl2RUDQOXyNMeA==", "dev": true, - "peer": true - }, - "tunnel-agent": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==", "requires": { - "safe-buffer": "^5.0.1" + "array.prototype.findlast": "^1.2.2" } }, - "tweetnacl": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-1.0.3.tgz", - "integrity": "sha512-6rt+RN7aOi1nGMyC4Xa5DdYiukl2UWCbcJft7YhxReBGQD7OAM8Pbxw6YMo4r2diNEA8FEmu32YOn9rhaiE5yw==" - }, - "tweetnacl-util": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/tweetnacl-util/-/tweetnacl-util-0.15.1.tgz", - "integrity": "sha512-RKJBIj8lySrShN4w6i/BonWp2Z/uxwC3h4y7xsRrpP59ZboCd0GpEVsOnMDYLMmKBpYhb5TgHzZXy7wTfYFBRw==" - }, - "type": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/type/-/type-1.2.0.tgz", - "integrity": "sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg==" + "solidity-comments-extractor": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/solidity-comments-extractor/-/solidity-comments-extractor-0.0.7.tgz", + "integrity": "sha512-wciNMLg/Irp8OKGrh3S2tfvZiZ0NEyILfcRCXCD4mp7SgK/i9gzLfhY2hY7VMCQJ3kH9UB9BzNdibIVMchzyYw==", + "dev": true }, - "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==", + "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, + "peer": true, "requires": { - "prelude-ls": "~1.1.2" + "@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" + }, + "dependencies": { + "@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, + "peer": true + }, + "fs-extra": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", + "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", + "dev": true, + "peer": true, + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + } + }, + "semver": { + "version": "7.6.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.2.tgz", + "integrity": "sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w==", + "dev": true, + "peer": true + } } }, - "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==" - }, - "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==", + "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, - "peer": true - }, - "type-is": { - "version": "1.6.18", - "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", - "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "optional": true, + "peer": true, "requires": { - "media-typer": "0.3.0", - "mime-types": "~2.1.24" + "amdefine": ">=0.0.4" } }, - "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==", + "source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", "dev": true, "requires": { - "call-bind": "^1.0.7", - "es-errors": "^1.3.0", - "is-typed-array": "^1.1.13" + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } } }, - "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==", + "split2": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/split2/-/split2-3.2.2.tgz", + "integrity": "sha512-9NThjpgZnifTkJpzTZ7Eue85S49QwpNhZTq6GRJwObb6jnLFNGB7Qm73V5HewTROPyxD0C29xqmaI68bQtV+hg==", "dev": true, + "peer": true, "requires": { - "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" + "readable-stream": "^3.0.0" } }, - "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==", + "sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", "dev": true, - "requires": { - "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" - } + "peer": true }, - "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==", + "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, "requires": { - "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" - } - }, - "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==", - "requires": { - "is-typedarray": "^1.0.0" + "type-fest": "^0.7.1" + }, + "dependencies": { + "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 + } } }, - "typeforce": { - "version": "1.18.0", - "resolved": "https://registry.npmjs.org/typeforce/-/typeforce-1.18.0.tgz", - "integrity": "sha512-7uc1O8h1M1g0rArakJdf0uLRSSgFcYexrVoKo+bzJd32gd4gDy2L/Z+8/FjPnU9ydY3pEnVPtr9FyscYY60K1g==", + "statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", "dev": true }, - "typescript-compare": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/typescript-compare/-/typescript-compare-0.0.2.tgz", - "integrity": "sha512-8ja4j7pMHkfLJQO2/8tut7ub+J3Lw2S3061eJLFQcvs3tsmJKp8KG5NtpLn7KcY2w08edF74BSVN7qJS0U6oHA==", + "string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", "dev": true, - "peer": true, "requires": { - "typescript-logic": "^0.0.0" + "safe-buffer": "~5.2.0" } }, - "typescript-logic": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/typescript-logic/-/typescript-logic-0.0.0.tgz", - "integrity": "sha512-zXFars5LUkI3zP492ls0VskH3TtdeHCqu0i7/duGt60i5IGPIpAHE/DWo5FqJ6EjQ15YKXrt+AETjv60Dat34Q==", + "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, "peer": true }, - "typescript-tuple": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/typescript-tuple/-/typescript-tuple-2.2.1.tgz", - "integrity": "sha512-Zcr0lbt8z5ZdEzERHAMAniTiIKerFCMgd7yjq1fPnDJ43et/k9twIFQMUYff9k5oXcsQ0WpvFcgzK2ZKASoW6Q==", + "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, - "peer": true, "requires": { - "typescript-compare": "^0.0.2" + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "dependencies": { + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + } } }, - "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, - "optional": true - }, - "ultron": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ultron/-/ultron-1.1.1.tgz", - "integrity": "sha512-UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og==" - }, - "unbox-primitive": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", - "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", + "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, "requires": { - "call-bind": "^1.0.2", - "has-bigints": "^1.0.2", - "has-symbols": "^1.0.3", - "which-boxed-primitive": "^1.0.2" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.0", + "es-object-atoms": "^1.0.0" } }, - "undici": { - "version": "5.28.4", - "resolved": "https://registry.npmjs.org/undici/-/undici-5.28.4.tgz", - "integrity": "sha512-72RFADWFqKmUb2hmmvNODKL3p9hcB6Gt2DOQMis1SEBaV6a4MH8soBvzg+95CYhCKPFedut2JY9bMfrDl9D23g==", + "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, - "peer": true, - "requires": { - "@fastify/busboy": "^2.0.0" - } - }, - "universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==" - }, - "unpipe": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==" - }, - "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==", "requires": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" } }, - "upper-case": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/upper-case/-/upper-case-1.1.3.tgz", - "integrity": "sha512-WRbjgmYzgXkCV7zNVpy5YgrHgbBv126rMALQQMrmzOVC4GM2waQ9x7xtm8VU+1yF2kWyPzI9zbZ48n4vSxwfSA==", - "dev": true - }, - "upper-case-first": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/upper-case-first/-/upper-case-first-1.1.2.tgz", - "integrity": "sha512-wINKYvI3Db8dtjikdAqoBbZoP6Q+PZUyfMR7pmwHzjC2quzSkUq5DmPrTtPEqHaz8AGtmsB4TqwapMTM1QAQOQ==", + "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, "requires": { - "upper-case": "^1.1.1" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" } }, - "uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, "requires": { - "punycode": "^2.1.0" + "ansi-regex": "^5.0.1" } }, - "url-set-query": { + "strip-hex-prefix": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/url-set-query/-/url-set-query-1.0.0.tgz", - "integrity": "sha512-3AChu4NiXquPfeckE5R5cGdiHCMWJx1dwCWOmWIL4KHAziJNOFIYJlpGFeKDvwLPHovZRCxK3cYlwzqI9Vp+Gg==" - }, - "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==", - "requires": { - "node-gyp-build": "^4.3.0" - } - }, - "utf8": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/utf8/-/utf8-3.0.0.tgz", - "integrity": "sha512-E8VjFIQ/TyQgp+TZfS6l8yp/xWppSAHzidGiRrqe4bK4XP9pTRyKFgGJpO3SN7zdX4DeomTrwaseCHovfpFcqQ==" - }, - "util": { - "version": "0.12.5", - "resolved": "https://registry.npmjs.org/util/-/util-0.12.5.tgz", - "integrity": "sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA==", - "requires": { - "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" - } - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" - }, - "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==" - }, - "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, - "peer": true - }, - "validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "resolved": "https://registry.npmjs.org/strip-hex-prefix/-/strip-hex-prefix-1.0.0.tgz", + "integrity": "sha512-q8d4ue7JGEiVcypji1bALTos+0pWtyGlivAWyPuTkHzuTCJqrK9sWxYQZUq6Nq3cuyv3bm734IhHvHtGGURU6A==", "dev": true, "requires": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" + "is-hex-prefixed": "1.0.0" } }, - "value-or-promise": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/value-or-promise/-/value-or-promise-1.0.11.tgz", - "integrity": "sha512-41BrgH+dIbCFXClcSapVs5M6GkENd3gQOJpEfPDNa71LsUGMXDL0jMWpI/Rh7WhX+Aalfz2TTS3Zt5pUsbnhLg==", - "dev": true, - "optional": true, - "peer": true - }, - "varint": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/varint/-/varint-5.0.2.tgz", - "integrity": "sha512-lKxKYG6H03yCZUpAGOPOsMcGxd1RHCu1iKvEHYDPmTyq2HueGhD73ssNBqqQWfvYs04G9iUFRvmAVLW20Jw6ow==" + "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 }, - "varuint-bitcoin": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/varuint-bitcoin/-/varuint-bitcoin-1.1.2.tgz", - "integrity": "sha512-4EVb+w4rx+YfVM32HQX42AbbT7/1f5zwAYhIujKXKk8NQK+JfRVl3pqT3hjNn/L+RstigmGGKVwHA/P0wgITZw==", + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", "dev": true, "requires": { - "safe-buffer": "^5.1.1" + "has-flag": "^3.0.0" } }, - "vary": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==" - }, - "verror": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==", + "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, + "peer": true, "requires": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" + "http-response-object": "^3.0.1", + "sync-rpc": "^1.2.1", + "then-request": "^6.0.0" } }, - "vuvuzela": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/vuvuzela/-/vuvuzela-1.0.3.tgz", - "integrity": "sha512-Tm7jR1xTzBbPW+6y1tknKiEhz04Wf/1iZkcTJjSFcpNko43+dFW6+OOeQe9taJIug3NdfUAjFKgUSyQrIKaDvQ==", + "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, - "optional": true, - "peer": true - }, - "web3": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/web3/-/web3-1.10.0.tgz", - "integrity": "sha512-YfKY9wSkGcM8seO+daR89oVTcbu18NsVfvOngzqMYGUU0pPSQmE57qQDvQzUeoIOHAnXEBNzrhjQJmm8ER0rng==", + "peer": true, "requires": { - "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" + "get-port": "^3.1.0" } }, - "web3-bzz": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/web3-bzz/-/web3-bzz-1.10.0.tgz", - "integrity": "sha512-o9IR59io3pDUsXTsps5pO5hW1D5zBmg46iNc2t4j2DkaYHNdDLwk2IP9ukoM2wg47QILfPEJYzhTfkS/CcX0KA==", + "table": { + "version": "6.8.1", + "resolved": "https://registry.npmjs.org/table/-/table-6.8.1.tgz", + "integrity": "sha512-Y4X9zqrCftUhMeH2EptSSERdVKt/nEdijTOacGD/97EKjhQ/Qs8RTlEGABSJNNN8lac9kheH+af7yAkEWlgneA==", + "dev": true, "requires": { - "@types/node": "^12.12.6", - "got": "12.1.0", - "swarm-js": "^0.1.40" + "ajv": "^8.0.1", + "lodash.truncate": "^4.4.2", + "slice-ansi": "^4.0.0", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1" }, "dependencies": { - "@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==" + "ajv": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "dev": true, + "requires": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + } + }, + "json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "dev": true } } }, - "web3-core": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/web3-core/-/web3-core-1.10.0.tgz", - "integrity": "sha512-fWySwqy2hn3TL89w5TM8wXF1Z2Q6frQTKHWmP0ppRQorEK8NcHJRfeMiv/mQlSKoTS1F6n/nv2uyZsixFycjYQ==", + "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, + "peer": true, "requires": { - "@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" + "array-back": "^4.0.1", + "deep-extend": "~0.6.0", + "typical": "^5.2.0", + "wordwrapjs": "^4.0.0" }, "dependencies": { - "@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==" + "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, + "peer": true }, - "bignumber.js": { - "version": "9.1.1", - "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.1.1.tgz", - "integrity": "sha512-pHm4LsMJ6lzgNGVfZHjMoO8sdoRhOzOH4MLmY65Jg70bpxCKu5iOHNJyfF6OyvYw7t8Fpf35RuzUyqnQsj8Vig==" + "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, + "peer": true } } }, - "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==", - "requires": { - "web3-eth-iban": "1.10.0", - "web3-utils": "1.10.0" - } - }, - "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==", - "requires": { - "@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" - } + "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 }, - "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==", + "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, + "peer": true, "requires": { - "eventemitter3": "4.0.4" + "@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" + }, + "dependencies": { + "@types/node": { + "version": "8.10.66", + "resolved": "https://registry.npmjs.org/@types/node/-/node-8.10.66.tgz", + "integrity": "sha512-tktOkFUA4kXx2hhhrB8bIFb5TbwzS4uOhKEmwiD+NoiL0qtP2OQ9mFldbgD4dV1djrlBYP6eBuQZiWjuHUpqFw==", + "dev": true, + "peer": true + } } }, - "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==", + "tinyglobby": { + "version": "0.2.10", + "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.10.tgz", + "integrity": "sha512-Zc+8eJlFMvgatPZTl6A9L/yht8QqdmUNtURHaKZLmKBE12hNPSrqNkUp2cs3M/UKmNVVAMFQYSjYIVHDjW5zew==", + "dev": true, "requires": { - "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" + "fdir": "^6.4.2", + "picomatch": "^4.0.2" + }, + "dependencies": { + "fdir": { + "version": "6.4.2", + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.4.2.tgz", + "integrity": "sha512-KnhMXsKSPZlAhp7+IjUkRZKPb4fUyccpDrdFXbi4QL1qkmFh9kVY09Yox+n4MaOb3lHZ1Tv829C3oaaXoMYPDQ==", + "dev": true, + "requires": {} + }, + "picomatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz", + "integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==", + "dev": true + } } }, - "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==", + "tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "dev": true, "requires": { - "eventemitter3": "4.0.4", - "web3-core-helpers": "1.10.0" + "os-tmpdir": "~1.0.2" } }, - "web3-eth": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/web3-eth/-/web3-eth-1.10.0.tgz", - "integrity": "sha512-Z5vT6slNMLPKuwRyKGbqeGYC87OAy8bOblaqRTgg94CXcn/mmqU7iPIlG4506YdcdK3x6cfEDG7B6w+jRxypKA==", - "requires": { - "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" - } - }, - "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==", + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, "requires": { - "@ethersproject/abi": "^5.6.3", - "web3-utils": "1.10.0" + "is-number": "^7.0.0" } }, - "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==", + "toidentifier": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", + "dev": true + }, + "tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", + "dev": true + }, + "ts-api-utils": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.4.3.tgz", + "integrity": "sha512-i3eMG77UTMD0hZhgRS562pv83RC6ukSAC2GMNWc+9dieh/+jDM5u5YG+NHX6VNDRHQcHwmsTHctP9LhbC3WxVw==", + "dev": true, + "requires": {} + }, + "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, + "peer": true, "requires": { - "@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" - }, - "dependencies": { - "@ethereumjs/common": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/@ethereumjs/common/-/common-2.5.0.tgz", - "integrity": "sha512-DEHjW6e38o+JmB/NO3GZBpW4lpaiBpkFgXF6jLcJ6gETBYpEyaA5nTimsWBUJR3Vmtm/didUEbNjajskugZORg==", + "chalk": "^4.1.0", + "command-line-args": "^5.1.1", + "command-line-usage": "^6.1.0", + "string-format": "^2.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "peer": true, "requires": { - "crc-32": "^1.2.0", - "ethereumjs-util": "^7.1.1" + "color-convert": "^2.0.1" } }, - "@ethereumjs/tx": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/@ethereumjs/tx/-/tx-3.3.2.tgz", - "integrity": "sha512-6AaJhwg4ucmwTvw/1qLaZUX5miWrwZ4nLOUsKyb/HtzS3BMw/CasKhdi1ims9mBKeK9sOJCH4qGKOBGyJCeeog==", + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "peer": true, "requires": { - "@ethereumjs/common": "^2.5.0", - "ethereumjs-util": "^7.1.2" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" } }, - "eth-lib": { - "version": "0.2.8", - "resolved": "https://registry.npmjs.org/eth-lib/-/eth-lib-0.2.8.tgz", - "integrity": "sha512-ArJ7x1WcWOlSpzdoTBX8vkwlkSQ85CjjifSZtV4co64vWxSV8geWfPI9x4SVYu3DSxnX4yWFVTtGL+j9DUFLNw==", + "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, + "peer": true, "requires": { - "bn.js": "^4.11.6", - "elliptic": "^6.4.0", - "xhr-request-promise": "^0.1.2" - }, - "dependencies": { - "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==" - } + "color-name": "~1.1.4" } }, - "uuid": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.0.tgz", - "integrity": "sha512-MXcSTerfPa4uqyzStbRoTgt5XIe3x5+42+q1sDuy3R5MDk66URdLMOZe5aPX/SQd+kuYAh0FdP/pO28IkQyTeg==" + "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, + "peer": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "peer": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "peer": true, + "requires": { + "has-flag": "^4.0.0" + } } } }, - "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==", - "requires": { - "@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" - } + "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, + "peer": true, + "requires": {} }, - "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==", + "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, + "peer": true, "requires": { - "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" + "@cspotcode/source-map-support": "^0.8.0", + "@tsconfig/node10": "^1.0.7", + "@tsconfig/node12": "^1.0.7", + "@tsconfig/node14": "^1.0.0", + "@tsconfig/node16": "^1.0.2", + "acorn": "^8.4.1", + "acorn-walk": "^8.1.1", + "arg": "^4.1.0", + "create-require": "^1.1.0", + "diff": "^4.0.1", + "make-error": "^1.1.1", + "v8-compile-cache-lib": "^3.0.1", + "yn": "3.1.1" + }, + "dependencies": { + "diff": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", + "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", + "dev": true, + "peer": true + } } }, - "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==", - "requires": { - "bn.js": "^5.2.1", - "web3-utils": "1.10.0" - } + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true }, - "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==", + "tsort": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/tsort/-/tsort-0.0.1.tgz", + "integrity": "sha512-Tyrf5mxF8Ofs1tNoxA13lFeZ2Zrbd6cKbuH3V+MQ5sb6DtBj5FjrXVsRWT8YvNAQTqNoz66dz1WsbigI22aEnw==", + "dev": true + }, + "tweetnacl": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-1.0.3.tgz", + "integrity": "sha512-6rt+RN7aOi1nGMyC4Xa5DdYiukl2UWCbcJft7YhxReBGQD7OAM8Pbxw6YMo4r2diNEA8FEmu32YOn9rhaiE5yw==", + "dev": true + }, + "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 + }, + "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, + "peer": true, "requires": { - "@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" - }, - "dependencies": { - "@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==" - } + "prelude-ls": "~1.1.2" } }, - "web3-net": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/web3-net/-/web3-net-1.10.0.tgz", - "integrity": "sha512-NLH/N3IshYWASpxk4/18Ge6n60GEvWBVeM8inx2dmZJVmRI6SJIlUxbL8jySgiTn3MMZlhbdvrGo8fpUW7a1GA==", - "requires": { - "web3-core": "1.10.0", - "web3-core-method": "1.10.0", - "web3-utils": "1.10.0" - } - }, - "web3-provider-engine": { - "version": "16.0.3", - "resolved": "https://registry.npmjs.org/web3-provider-engine/-/web3-provider-engine-16.0.3.tgz", - "integrity": "sha512-Q3bKhGqLfMTdLvkd4TtkGYJHcoVQ82D1l8jTIwwuJp/sAp7VHnRYb9YJ14SW/69VMWoOhSpPLZV2tWb9V0WJoA==", - "requires": { - "@ethereumjs/tx": "^3.3.0", - "async": "^2.5.0", - "backoff": "^2.5.0", - "clone": "^2.0.0", - "cross-fetch": "^2.1.0", - "eth-block-tracker": "^4.4.2", - "eth-json-rpc-filters": "^4.2.1", - "eth-json-rpc-infura": "^5.1.0", - "eth-json-rpc-middleware": "^6.0.0", - "eth-rpc-errors": "^3.0.0", - "eth-sig-util": "^1.4.2", - "ethereumjs-block": "^1.2.2", - "ethereumjs-util": "^5.1.5", - "ethereumjs-vm": "^2.3.4", - "json-stable-stringify": "^1.0.1", - "promise-to-callback": "^1.0.0", - "readable-stream": "^2.2.9", - "request": "^2.85.0", - "semaphore": "^1.0.3", - "ws": "^5.1.1", - "xhr": "^2.2.0", - "xtend": "^4.0.1" + "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==", + "dev": true + }, + "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 + }, + "typechain": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/typechain/-/typechain-8.3.2.tgz", + "integrity": "sha512-x/sQYr5w9K7yv3es7jo4KTX05CLxOf7TRWwoHlrjRh8H82G64g+k7VuWPJlgMo6qrjfCulOdfBjiaDtmhFYD/Q==", + "dev": true, + "peer": true, + "requires": { + "@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" }, "dependencies": { - "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==" - }, - "bs58check": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/bs58check/-/bs58check-2.1.2.tgz", - "integrity": "sha512-0TS1jicxdU09dwJMNZtVAfzPi6Q6QeN0pM1Fkzrjn+XYHvzMKPU3pHVpva+769iNVSfIYWf7LJ6WR+BuuMf8cA==", - "requires": { - "bs58": "^4.0.0", - "create-hash": "^1.1.0", - "safe-buffer": "^5.1.2" - } - }, - "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==", - "requires": { - "@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" - } - }, - "ethereumjs-util": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.2.1.tgz", - "integrity": "sha512-v3kT+7zdyCm1HIqWlLNrHGqHGLpGYIhjeHxQjnDXjLT2FyGJDsd3LWMYUo7pAFRrk86CR3nUJfhC81CCoJNNGQ==", - "requires": { - "bn.js": "^4.11.0", - "create-hash": "^1.1.2", - "elliptic": "^6.5.2", - "ethereum-cryptography": "^0.1.3", - "ethjs-util": "^0.1.3", - "rlp": "^2.0.0", - "safe-buffer": "^5.1.1" - } - }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" - }, - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "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==" - }, - "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==", + "glob": { + "version": "7.1.7", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", + "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", + "dev": true, + "peer": true, "requires": { - "safe-buffer": "~5.1.0" + "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" } }, - "ws": { - "version": "5.2.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-5.2.3.tgz", - "integrity": "sha512-jZArVERrMsKUatIdnLzqvcfydI85dvd/Fp1u/VOpfdDWQ4c9qWXe+VIeAbQ5FrDwciAkr+lzofXLz3Kuf26AOA==", - "requires": { - "async-limiter": "~1.0.0" - } + "mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "dev": true, + "peer": true } } }, - "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==", + "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, + "requires": { + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "is-typed-array": "^1.1.13" + } + }, + "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, + "requires": { + "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" + } + }, + "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, + "requires": { + "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" + } + }, + "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, "requires": { - "abortcontroller-polyfill": "^1.7.3", - "cross-fetch": "^3.1.4", - "es6-promise": "^4.2.8", - "web3-core-helpers": "1.10.0" - }, - "dependencies": { - "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==", - "requires": { - "node-fetch": "^2.6.12" - } - }, - "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==", - "requires": { - "whatwg-url": "^5.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" } }, - "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==", + "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, + "peer": true + }, + "typeforce": { + "version": "1.18.0", + "resolved": "https://registry.npmjs.org/typeforce/-/typeforce-1.18.0.tgz", + "integrity": "sha512-7uc1O8h1M1g0rArakJdf0uLRSSgFcYexrVoKo+bzJd32gd4gDy2L/Z+8/FjPnU9ydY3pEnVPtr9FyscYY60K1g==", + "dev": true + }, + "typescript": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.7.2.tgz", + "integrity": "sha512-i5t66RHxDvVN40HfDd1PsEThGNnlMCMT3jMUuoh9/0TaqWevNontacunWyN02LA9/fIbEWlcHZcgTKb9QoaLfg==", + "dev": true, + "peer": true + }, + "typescript-eslint": { + "version": "8.18.0", + "resolved": "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-8.18.0.tgz", + "integrity": "sha512-Xq2rRjn6tzVpAyHr3+nmSg1/9k9aIHnJ2iZeOH7cfGOWqTkXTm3kwpQglEuLGdNrYvPF+2gtAs+/KF5rjVo+WQ==", + "dev": true, "requires": { - "oboe": "2.1.5", - "web3-core-helpers": "1.10.0" + "@typescript-eslint/eslint-plugin": "8.18.0", + "@typescript-eslint/parser": "8.18.0", + "@typescript-eslint/utils": "8.18.0" } }, - "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==", + "typical": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/typical/-/typical-4.0.0.tgz", + "integrity": "sha512-VAH4IvQ7BDFYglMd7BPRDfLgxZZX4O4TFcRDA6EN5X7erNJJq+McIEp8np9aVtxrCJ6qx4GTYVfOWNjcqwZgRw==", + "dev": true, + "peer": true + }, + "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, + "optional": true, + "peer": true + }, + "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, "requires": { - "eventemitter3": "4.0.4", - "web3-core-helpers": "1.10.0", - "websocket": "^1.0.32" + "call-bind": "^1.0.2", + "has-bigints": "^1.0.2", + "has-symbols": "^1.0.3", + "which-boxed-primitive": "^1.0.2" } }, - "web3-shh": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/web3-shh/-/web3-shh-1.10.0.tgz", - "integrity": "sha512-uNUUuNsO2AjX41GJARV9zJibs11eq6HtOe6Wr0FtRUcj8SN6nHeYIzwstAvJ4fXA53gRqFMTxdntHEt9aXVjpg==", + "undici": { + "version": "5.28.4", + "resolved": "https://registry.npmjs.org/undici/-/undici-5.28.4.tgz", + "integrity": "sha512-72RFADWFqKmUb2hmmvNODKL3p9hcB6Gt2DOQMis1SEBaV6a4MH8soBvzg+95CYhCKPFedut2JY9bMfrDl9D23g==", + "dev": true, + "requires": { + "@fastify/busboy": "^2.0.0" + } + }, + "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 + }, + "unfetch": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/unfetch/-/unfetch-4.2.0.tgz", + "integrity": "sha512-F9p7yYCn6cIW9El1zi0HI6vqpeIvBsr3dSuRO6Xuppb1u5rXpCPmMvLSyECLhybr9isec8Ohl0hPekMVrEinDA==", + "dev": true + }, + "universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "dev": true + }, + "unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", + "dev": true + }, + "uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "requires": { + "punycode": "^2.1.0" + } + }, + "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==", + "dev": true, + "optional": true, + "peer": true, + "requires": { + "node-gyp-build": "^4.3.0" + } + }, + "utf8": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/utf8/-/utf8-3.0.0.tgz", + "integrity": "sha512-E8VjFIQ/TyQgp+TZfS6l8yp/xWppSAHzidGiRrqe4bK4XP9pTRyKFgGJpO3SN7zdX4DeomTrwaseCHovfpFcqQ==", + "dev": true, + "peer": true + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "dev": true + }, + "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 + }, + "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, + "peer": true + }, + "varuint-bitcoin": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/varuint-bitcoin/-/varuint-bitcoin-1.1.2.tgz", + "integrity": "sha512-4EVb+w4rx+YfVM32HQX42AbbT7/1f5zwAYhIujKXKk8NQK+JfRVl3pqT3hjNn/L+RstigmGGKVwHA/P0wgITZw==", + "dev": true, "requires": { - "web3-core": "1.10.0", - "web3-core-method": "1.10.0", - "web3-core-subscriptions": "1.10.0", - "web3-net": "1.10.0" + "safe-buffer": "^5.1.1" } }, "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, + "peer": true, "requires": { "bn.js": "^5.2.1", "ethereum-bloom-filters": "^1.0.6", @@ -31295,53 +18086,14 @@ "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==" - }, - "websocket": { - "version": "1.0.34", - "resolved": "https://registry.npmjs.org/websocket/-/websocket-1.0.34.tgz", - "integrity": "sha512-PRDso2sGwF6kM75QykIesBijKSVceR6jL2G8NGYyq2XrItNC2P5/qL5XeR056GhA+Ly7JMFvJb9I312mJfmqnQ==", - "requires": { - "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" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - } - } - }, - "whatwg-fetch": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-2.0.4.tgz", - "integrity": "sha512-dcQ1GWpOD/eEQ97k66aiEVpNnapVj90/+R+SXTPYGHpYBBypfKJEQjLrvMZ7YXbKm21gXd4NcuxUTjiv1YtLng==" - }, - "whatwg-mimetype": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-3.0.0.tgz", - "integrity": "sha512-nt+N2dzIutVRxARx1nghPKGv1xHikU7HKdfafKkLNLindmPU/ch3U31NOCGGA/dmPcmb1VlofO0vnKAcsm0o/Q==", - "dev": true, - "optional": true, - "peer": true + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", + "dev": true }, "whatwg-url": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "dev": true, "requires": { "tr46": "~0.0.3", "webidl-conversions": "^3.0.0" @@ -31352,6 +18104,7 @@ "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", "dev": true, + "peer": true, "requires": { "isexe": "^2.0.0" } @@ -31369,15 +18122,11 @@ "is-symbol": "^1.0.3" } }, - "which-module": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha512-B+enWhmw6cjfVC7kS8Pj9pCrKSc5txArRyaYGe088shv/FGWH+0Rjx/xPgtsWfsUtS27FkP697E4DDhgrgoc0Q==" - }, "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, "requires": { "available-typed-arrays": "^1.0.7", "call-bind": "^1.0.7", @@ -31386,6 +18135,15 @@ "has-tostringtag": "^1.0.2" } }, + "widest-line": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz", + "integrity": "sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==", + "dev": true, + "requires": { + "string-width": "^4.0.0" + } + }, "wif": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/wif/-/wif-2.0.6.tgz", @@ -31395,6 +18153,24 @@ "bs58check": "<3.0.0" }, "dependencies": { + "base-x": { + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/base-x/-/base-x-3.0.10.tgz", + "integrity": "sha512-7d0s06rR9rYaIWHkpfLIFICM/tkSVdoPC9qYAQRpxn9DdKNWNsKC0uk++akckyLq16Tx2WIinnZ6WRriAt6njQ==", + "dev": true, + "requires": { + "safe-buffer": "^5.0.1" + } + }, + "bs58": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/bs58/-/bs58-4.0.1.tgz", + "integrity": "sha512-Ok3Wdf5vOIlBrgCvTq96gBkJw+JUEzdBgyaza5HLtPm7yTHkjRy8+JzNyHF7BHa0bNWOQIp3m5YF0nnFcOIKLw==", + "dev": true, + "requires": { + "base-x": "^3.0.2" + } + }, "bs58check": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/bs58check/-/bs58check-2.1.2.tgz", @@ -31408,12 +18184,6 @@ } } }, - "window-size": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.2.0.tgz", - "integrity": "sha512-UD7d8HFA2+PZsbKyaOCEy8gMh1oDtHgJh1LfgjQ4zVXmYjAT/kvz3PueITKuqDiIXQe7yzpPnxX3lNc+AhQMyw==", - "dev": true - }, "word-wrap": { "version": "1.2.5", "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", @@ -31424,12 +18194,33 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", "integrity": "sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==", - "dev": true + "dev": true, + "peer": true + }, + "wordwrapjs": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/wordwrapjs/-/wordwrapjs-4.0.1.tgz", + "integrity": "sha512-kKlNACbvHrkpIw6oPeYDSmdCTu2hdMHoyXLTcUKala++lx5Y+wjJ/e474Jqv5abnVmwxw08DiTuHmw69lJGksA==", + "dev": true, + "peer": true, + "requires": { + "reduce-flatten": "^2.0.0", + "typical": "^5.2.0" + }, + "dependencies": { + "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, + "peer": true + } + } }, "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 }, "wrap-ansi": { @@ -31472,119 +18263,22 @@ "wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" - }, - "write-stream": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/write-stream/-/write-stream-0.4.3.tgz", - "integrity": "sha512-IJrvkhbAnj89W/GAVdVgbnPiVw5Ntg/B4tc/MUCIEwj/g6JIww1DWJyB/yBMT3yw2/TkT6IUZ0+IYef3flEw8A==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "readable-stream": "~0.0.2" - }, - "dependencies": { - "readable-stream": { - "version": "0.0.4", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-0.0.4.tgz", - "integrity": "sha512-azrivNydKRYt7zwLV5wWUK7YzKTWs3q87xSmY6DlHapPrCvaT6ZrukvM5erV+yCSSPmZT8zkSdttOHQpWWm9zw==", - "dev": true, - "optional": true, - "peer": true - } - } + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "dev": true }, "ws": { - "version": "7.5.9", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz", - "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", + "version": "7.5.10", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.10.tgz", + "integrity": "sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ==", "dev": true, - "peer": true, "requires": {} }, - "xhr": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/xhr/-/xhr-2.6.0.tgz", - "integrity": "sha512-/eCGLb5rxjx5e3mF1A7s+pLlR6CGyqWN91fv1JgER5mVWg1MZmlhBvy9kjcsOdRk8RrIujotWyJamfyrp+WIcA==", - "requires": { - "global": "~4.4.0", - "is-function": "^1.0.1", - "parse-headers": "^2.0.0", - "xtend": "^4.0.0" - } - }, - "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==", - "requires": { - "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" - } - }, - "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==", - "requires": { - "xhr-request": "^1.1.0" - } - }, - "xmlhttprequest": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/xmlhttprequest/-/xmlhttprequest-1.8.0.tgz", - "integrity": "sha512-58Im/U0mlVBLM38NdZjHyhuMtCqa61469k2YP/AaPbvCoV9aQGUpbJBj1QRm2ytRiVQBD/fsw7L2bJGDVQswBA==", - "dev": true - }, - "xss": { - "version": "1.0.14", - "resolved": "https://registry.npmjs.org/xss/-/xss-1.0.14.tgz", - "integrity": "sha512-og7TEJhXvn1a7kzZGQ7ETjdQVS2UfZyTlsEdDOqvQF7GoxNfY+0YLCzBy1kPdsDDx4QuNAonQPddpsn6Xl/7sw==", - "dev": true, - "optional": true, - "peer": true, - "requires": { - "commander": "^2.20.3", - "cssfilter": "0.0.10" - }, - "dependencies": { - "commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true, - "optional": true, - "peer": true - } - } - }, - "xtend": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", - "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==" - }, "y18n": { "version": "5.0.8", "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", "dev": true }, - "yaeti": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/yaeti/-/yaeti-0.0.6.tgz", - "integrity": "sha512-MvQa//+KcZCUkBTIC9blM+CU9J2GzuTytsOUwf2lidtvkx/6gnEp1QvJv34t9vdjhFmha/mUiNDbN0D0mJWdug==" - }, - "yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" - }, "yargs": { "version": "16.2.0", "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", @@ -31601,9 +18295,9 @@ } }, "yargs-parser": { - "version": "20.2.4", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.4.tgz", - "integrity": "sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA==", + "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 }, "yargs-unparser": { @@ -31618,6 +18312,13 @@ "is-plain-obj": "^2.1.0" } }, + "yn": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", + "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", + "dev": true, + "peer": true + }, "yocto-queue": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", diff --git a/package.json b/package.json index bad6888..4c56375 100644 --- a/package.json +++ b/package.json @@ -4,21 +4,16 @@ "description": "## registerFastBridgeBtcTransaction", "main": "index.js", "scripts": { - "compile": "npm run lint:sol && npx truffle compile --all", - "test": "npm run compile && npx truffle test", - "test-regtest": "npm run compile && npx truffle test --network testRegtest", - "test-ganache": "npm run compile && npx truffle test --network ganache", - "coverage": "npx truffle run coverage", - "lint": "npx prettier --list-different 'contracts/**/*.sol' 'test/**/*.js' 'migrations/**/*.js'", + "compile": "npm run lint:sol && npx hardhat compile", + "test": "npx hardhat test", + "coverage": "npx hardhat coverage", + "lint:ts": "npx prettier --check . && npx eslint .", "lint:sol": "solhint 'contracts/**/*.sol'", - "deploy-regtest": "npm run lint:sol && npx truffle deploy --network rskRegtest", - "deploy-rskDev": "npm run lint:sol && npx truffle deploy --network rskDevelopment", - "deploy-rskTestnet": "npm run lint:sol && npx truffle deploy --network rskTestnet", - "deploy-rskMainet": "npm run lint:sol && npx truffle deploy --network rskMainnet", - "deploy-alphanet": "npm run lint:sol && npx truffle deploy --network alphanet", - "deploy-localGanache": "npm run lint:sol && npx truffle deploy --network ganache", - "contract-size": "npx truffle run contract-size", - "test:integration": "npx truffle test integration-test/* --bail --migrate-none --network", + "upgrade-rskDev": "npm run lint:sol && npm run compile && npx hardhat run scripts/deployment/upgrade-lbc.ts --network rskDevelopment", + "upgrade-rskTestnet": "npm run lint:sol && npm run compile && npx hardhat run scripts/deployment/upgrade-lbc.ts --network rskTestnet", + "upgrade-rskMainet": "npm run lint:sol && npm run compile && npx hardhat run scripts/deployment/upgrade-lbc.ts --network rskMainnet", + "contract-size": "npx hardhat size-contracts", + "test:integration": "npx hardhat test integration-test/*.test.ts --bail --network", "prepare": "pip3 install pre-commit && pre-commit install" }, "repository": { @@ -32,27 +27,30 @@ }, "homepage": "https://github.com/rsksmart/liquidity-bridge-contract#readme", "devDependencies": { + "@eslint/js": "^9.16.0", "@mempool/mempool.js": "^2.3.0", - "@openzeppelin/truffle-upgrades": "^1.17.1", + "@nomicfoundation/hardhat-ethers": "^3.0.8", + "@nomicfoundation/hardhat-toolbox": "^5.0.0", + "@openzeppelin/hardhat-upgrades": "^3.6.0", "@rsksmart/pmt-builder": "^3.0.0", + "bech32": "^2.0.0", "bitcoinjs-lib": "^6.0.1", + "bs58": "^6.0.0", "bs58check": "^3.0.1", "dotenv": "^16.3.1", - "prettier": "^2.4.1", + "eslint": "^9.16.0", + "ethers": "^6.13.4", + "globals": "^15.13.0", + "hardhat": "^2.22.17", + "hardhat-contract-sizer": "^2.10.0", + "prettier": "2.8.8", "prettier-plugin-solidity": "^1.0.0-beta.18", - "solc": "^0.8.3", "solhint": "^3.4.1", - "solidity-coverage": "^0.8.2" + "typescript-eslint": "^8.18.0" }, "dependencies": { "@openzeppelin/contracts": "^4.8.0", "@openzeppelin/contracts-upgradeable": "^4.8.2", - "@rsksmart/btc-transaction-solidity-helper": "^0.2.1", - "@truffle/hdwallet-provider": "^2.1.3", - "bech32": "^2.0.0", - "chai": "^4.3.4", - "chai-bn": "^0.3.0", - "truffle-assertions": "^0.9.2", - "truffle-contract-size": "^2.0.1" + "@rsksmart/btc-transaction-solidity-helper": "^0.2.1" } } diff --git a/scripts/deployment-utils/constants.ts b/scripts/deployment-utils/constants.ts new file mode 100644 index 0000000..0c589ca --- /dev/null +++ b/scripts/deployment-utils/constants.ts @@ -0,0 +1 @@ +export const BRIDGE_ADDRESS = "0x0000000000000000000000000000000001000006"; diff --git a/scripts/deployment-utils/deploy-proxy.ts b/scripts/deployment-utils/deploy-proxy.ts new file mode 100644 index 0000000..8d14898 --- /dev/null +++ b/scripts/deployment-utils/deploy-proxy.ts @@ -0,0 +1,144 @@ +import { ethers, upgrades } from "hardhat"; +import { deploy, DeployedContractInfo, LOCAL_NETWORK } from "./deploy"; +import { deployContract, REMOTE_NETWORKS, TEST_NETWORKS } from "./utils"; +import { BRIDGE_ADDRESS } from "./constants"; + +interface LiquidityBridgeContractInitParams { + bridgeAddress: string; + minimumCollateral: bigint; + minimumPegIn: bigint; + rewardPercentage: number; + resignDelayBlocks: number; + dustThreshold: bigint; + btcBlockTime: number; + mainnet: boolean; +} + +interface LiquidityBridgeContractLibraries { + signatureValidator: string; + quotes: string; + btcUtils: string; + bridge: string; +} + +async function deployProxyLibraries( + network: string +): Promise { + if (REMOTE_NETWORKS.includes(network) || network === LOCAL_NETWORK) { + const quotesDeployment = await deployContract("Quotes", network); + const btcUtilsDeployment = await deployContract("BtcUtils", network); + const signatureValidatorDeployment = await deployContract( + "SignatureValidator", + network + ); + return { + quotes: quotesDeployment.address, + btcUtils: btcUtilsDeployment.address, + signatureValidator: signatureValidatorDeployment.address, + bridge: BRIDGE_ADDRESS, + }; + } else { + const quotesDeployment = await deployContract("Quotes", network); + const btcUtilsDeployment = await deployContract("BtcUtils", network); + const signatureValidatorMockDeployment = await deployContract( + "SignatureValidatorMock", + network + ); + const bridgeMockDeployment = await deployContract("BridgeMock", network); + return { + quotes: quotesDeployment.address, + btcUtils: btcUtilsDeployment.address, + signatureValidator: signatureValidatorMockDeployment.address, + bridge: bridgeMockDeployment.address, + }; + } +} + +function getInitParameters( + network: string, + libraries: LiquidityBridgeContractLibraries +): LiquidityBridgeContractInitParams { + if (TEST_NETWORKS.includes(network)) { + return { + bridgeAddress: libraries.bridge, + minimumCollateral: ethers.parseEther("0.03"), + minimumPegIn: ethers.parseEther("0.5"), + rewardPercentage: 10, + resignDelayBlocks: 60, + dustThreshold: 2300n * 65164000n, + btcBlockTime: 900, + mainnet: false, + }; + } else if (REMOTE_NETWORKS.includes(network)) { + return { + bridgeAddress: BRIDGE_ADDRESS, + minimumCollateral: ethers.parseEther("0.03"), + minimumPegIn: ethers.parseEther("0.005"), + rewardPercentage: 10, + resignDelayBlocks: 60, + dustThreshold: 2300n * 65164000n, + btcBlockTime: 900, + mainnet: network === "rskMainnet", + }; + } else { + throw new Error(`Network ${network} not supported`); + } +} + +/** + * This function deploys the LiquidityBridgeContract proxy and initializes it. This includes deploying + * the required libraries and linking them to the contract. The parameter values vary depending on the + * network and can be checked at {@link getInitParameters}. + * + * @param network The network to deploy the contract to. + * @param opts Options object, currently only has a verbose flag. + * + * @returns The address of the deployed proxy. + */ +export async function deployLbcProxy( + network: string, + opts = { verbose: true } +): Promise> { + const libs = await deployProxyLibraries(network); + const proxyName = "LiquidityBridgeContract"; + if (opts.verbose) { + console.info(`Deploying proxy ${proxyName} with libs:`, libs); + } + const deployed = await deploy(proxyName, network, async () => { + const LiquidityBridgeContract = await ethers.getContractFactory(proxyName, { + libraries: { + Quotes: libs.quotes, + BtcUtils: libs.btcUtils, + SignatureValidator: libs.signatureValidator, + }, + }); + const initParams = getInitParameters(network, libs); + if (opts.verbose) { + console.info("Initializing LBC with params:", initParams); + } + const deployed = await upgrades + .deployProxy( + LiquidityBridgeContract, + [ + initParams.bridgeAddress, + initParams.minimumCollateral, + initParams.minimumPegIn, + initParams.rewardPercentage, + initParams.resignDelayBlocks, + initParams.dustThreshold, + initParams.btcBlockTime, + initParams.mainnet, + ], + { + unsafeAllow: ["external-library-linking"], + } + ) + .then((result) => result.waitForDeployment()); + const address = await deployed.getAddress(); + return address; + }); + if (!deployed.deployed || !deployed.address) { + throw new Error(`Error deploying proxy ${proxyName}`); + } + return { deployed: deployed.deployed, address: deployed.address }; +} diff --git a/scripts/deployment-utils/deploy.ts b/scripts/deployment-utils/deploy.ts new file mode 100644 index 0000000..cfc6bb2 --- /dev/null +++ b/scripts/deployment-utils/deploy.ts @@ -0,0 +1,105 @@ +import { readFileSync, writeFileSync } from "fs"; + +/** + * Layout of the addresses.json file. Consist of a map of networks, each network has a map of + * contracts and the value of that contract has the structure defined in {@link DeployedContractInfo}. + */ +/* eslint-disable @typescript-eslint/consistent-indexed-object-style */ +export interface DeploymentConfig { + [network: string]: { + [contract: string]: DeployedContractInfo; + }; +} +/* eslint-enable @typescript-eslint/consistent-indexed-object-style */ + +/** + * This interface holds the information of a deployed contract in the addresses.json file. + * + * @param deployed - Indicates if the contract has been deployed or not, if the contract is + * in the file it usually means it was already deployed. But this value can be set to false + * to execute a re deployment. + * + * @param address - The address of the deployed contract. + */ +export interface DeployedContractInfo { + deployed: boolean; + address?: string; +} + +type deployFunction = ( + name: string, + network: string, + act: () => Promise +) => Promise; + +const ADDRESSES_FILE = "addresses.json"; +export const LOCAL_NETWORK = "rskRegtest"; +const UNIT_TEST_NETWORK = "hardhat"; + +const testConfig: DeploymentConfig = { [UNIT_TEST_NETWORK]: {} }; + +/** + * Reads the addresses.json file and returns its content as a {@link DeploymentConfig} object. + * + * @returns { DeploymentConfig } The content of the addresses.json file. + */ +export const read: () => DeploymentConfig = () => + Object.keys(testConfig[UNIT_TEST_NETWORK]).length > 0 + ? testConfig + : (JSON.parse(readFileSync(ADDRESSES_FILE).toString()) as DeploymentConfig); + +const write = (newConfig: DeploymentConfig) => { + const oldConfig = read(); + writeFileSync( + ADDRESSES_FILE, + JSON.stringify({ ...oldConfig, ...newConfig }, null, 2) + ); +}; + +/** + * Is the function that deploys a contract and updates the addresses.json file. Every deployment + * should call this function at some point in order to save the addresses. If the contract figures + * as deployed in the addresses.json file, it will not be deployed again. + * + * @param name The name of the contract to deploy as it should appear in the addresses.json file. + * @param network The name of the network to deploy the contract to as it appears in the addresses.json file. + * @param act The deployment function itself, this function should return the address of the deployed contract. + * + * @returns { Promise } The information of the deployed contract. + */ +export const deploy: deployFunction = async ( + name: string, + network: string, + act: () => Promise +) => { + const oldConfig = read(); + + // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition + if (!oldConfig[network]) { + oldConfig[network] = {}; + } + + // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition + if (!oldConfig[network][name]) { + oldConfig[network][name] = { deployed: false }; + } + + if (network === UNIT_TEST_NETWORK) { + const address = await act(); + testConfig[UNIT_TEST_NETWORK][name] = { deployed: true, address: address }; + return testConfig[network][name]; + } + + if (!oldConfig[network][name].deployed || network === LOCAL_NETWORK) { + const address = await act(); + oldConfig[network][name].deployed = true; + oldConfig[network][name].address = address; + write(oldConfig); + } else { + console.warn( + `${name} has already be deployed [address: ${oldConfig[network][name] + .address!}]. If you want to deploy it, please set deployed attribute to false on addresses.json file.` + ); + } + return read()[network][name]; +}; diff --git a/scripts/deployment-utils/upgrade-proxy.ts b/scripts/deployment-utils/upgrade-proxy.ts new file mode 100644 index 0000000..01456ae --- /dev/null +++ b/scripts/deployment-utils/upgrade-proxy.ts @@ -0,0 +1,81 @@ +import { ethers, upgrades } from "hardhat"; +import { DeployedContractInfo, LOCAL_NETWORK, read } from "./deploy"; +import { deployContract, REMOTE_NETWORKS } from "./utils"; + +interface LiquidityBridgeContractLibraries { + quotesV2: string; + btcUtils: string; + signatureValidator: string; +} + +async function deployUpgradeLibraries( + network: string, + opts: { verbose: boolean } +): Promise { + let deployedSignatureValidator: Required; + if (opts.verbose) { + console.info(`Deploying libraries in ${network}...`); + } + const quotesV2Deployment = await deployContract("QuotesV2", network); + const btcUtilsDeployment = await deployContract("BtcUtils", network); + if (REMOTE_NETWORKS.includes(network) || network === LOCAL_NETWORK) { + deployedSignatureValidator = await deployContract( + "SignatureValidator", + network + ); + } else { + deployedSignatureValidator = await deployContract( + "SignatureValidatorMock", + network + ); + } + return { + quotesV2: quotesV2Deployment.address, + btcUtils: btcUtilsDeployment.address, + signatureValidator: deployedSignatureValidator.address, + }; +} + +/** + * This function upgrades the LiquidityBridgeContract proxy contract to the LiquidityBridgeContractV2 version. + * it upgrades the proxy whose address is under the key "LiquidityBridgeContract" in the addresses.json file. + * It will also deploy and link the required libraries. + * + * @param network The network to deploy the contract to. + * @param opts Options object, currently only has a verbose flag. + * + */ +export async function upgradeLbcProxy( + network: string, + opts = { verbose: true } +) { + const libs = await deployUpgradeLibraries(network, opts); + const proxyName = "LiquidityBridgeContract"; + const upgradeName = "LiquidityBridgeContractV2"; + const LiquidityBridgeContractV2 = await ethers.getContractFactory( + upgradeName, + { + libraries: { + QuotesV2: libs.quotesV2, + BtcUtils: libs.btcUtils, + SignatureValidator: libs.signatureValidator, + }, + } + ); + const proxyAddress = read()[network][proxyName].address; + if (!proxyAddress) { + throw new Error(`Proxy ${proxyName} not deployed on network ${network}`); + } + if (opts.verbose) { + console.info(`Upgrading proxy ${proxyAddress} with libs:`, libs); + } + const deployed = await upgrades + .upgradeProxy(proxyAddress, LiquidityBridgeContractV2, { + unsafeAllow: ["external-library-linking"], + }) + .then((result) => result.waitForDeployment()); + const address = await deployed.getAddress(); + if (opts.verbose) { + console.info(`Upgraded proxy at ${address}`); + } +} diff --git a/scripts/deployment-utils/utils.ts b/scripts/deployment-utils/utils.ts new file mode 100644 index 0000000..1e2a294 --- /dev/null +++ b/scripts/deployment-utils/utils.ts @@ -0,0 +1,31 @@ +import { ethers } from "hardhat"; +import { deploy, DeployedContractInfo, LOCAL_NETWORK } from "./deploy"; + +export const TEST_NETWORKS = ["localhost", "hardhat", "ganache", LOCAL_NETWORK]; + +export const REMOTE_NETWORKS = ["rskDevelopment", "rskTestnet", "rskMainnet"]; + +/** + * This function wraps the {@link deploy} function to deploy a contract using ethers.js + * and save the results in the addresses.json file. + * + * @param contract The name of the contract to deploy, as it appears in the addresses.json file. + * @param network The name of the network as it appears in the addresses.json file. + * @returns { Required } The information of the deployed contract. + */ +export async function deployContract( + contract: string, + network: string +): Promise> { + const deploymentInfo = await deploy(contract, network, async () => { + const contractFactory = await ethers.getContractFactory(contract); + const contractDeployment = await contractFactory.deploy(); + const deployedContract = await contractDeployment.waitForDeployment(); + const address = await deployedContract.getAddress(); + return address; + }); + if (!deploymentInfo.deployed || !deploymentInfo.address) { + throw new Error(`Error deploying ${contract}`); + } + return { deployed: deploymentInfo.deployed, address: deploymentInfo.address }; +} diff --git a/scripts/deployment/deploy-lbc.ts b/scripts/deployment/deploy-lbc.ts new file mode 100644 index 0000000..db9e1d1 --- /dev/null +++ b/scripts/deployment/deploy-lbc.ts @@ -0,0 +1,16 @@ +import { deployLbcProxy } from "../deployment-utils/deploy-proxy"; +import hre from "hardhat"; + +async function main() { + const network = hre.network.name; + const deployed = await deployLbcProxy(network); + console.info( + `LiquidityBridgeContract proxy successfully deployed in ${network} with address:`, + deployed.address + ); +} + +main().catch((error: unknown) => { + console.error(error); + process.exitCode = 1; +}); diff --git a/scripts/deployment/upgrade-lbc.ts b/scripts/deployment/upgrade-lbc.ts new file mode 100644 index 0000000..bab3401 --- /dev/null +++ b/scripts/deployment/upgrade-lbc.ts @@ -0,0 +1,13 @@ +import hre from "hardhat"; +import { upgradeLbcProxy } from "../deployment-utils/upgrade-proxy"; + +async function main() { + const network = hre.network.name; + await upgradeLbcProxy(network); + console.info("LiquidityBridgeContract proxy upgraded successfully"); +} + +main().catch((error: unknown) => { + console.error(error); + process.exitCode = 1; +}); diff --git a/scripts/forceImport.js b/scripts/forceImport.js deleted file mode 100644 index bb6c6a2..0000000 --- a/scripts/forceImport.js +++ /dev/null @@ -1,7 +0,0 @@ -const { forceImport } = require('@openzeppelin/truffle-upgrades'); -const LiquidityBridgeContract = artifacts.require('LiquidityBridgeContract'); - -module.exports = async function (deployer) { - const proxyAddress = "0xc2A630c053D12D63d32b025082f6Ba268db18300"; - await forceImport(proxyAddress, LiquidityBridgeContract, { deployer }); -}; diff --git a/scripts/increaseBalance.js b/scripts/increaseBalance.js deleted file mode 100644 index 7ad9e7b..0000000 --- a/scripts/increaseBalance.js +++ /dev/null @@ -1,40 +0,0 @@ -const Web3 = require("web3"); - -// const web3 = new Web3(web3Provider); -// const json = require("./build/contracts/LiquidityBridgeContract.json"); - -// web3.eth.accounts -// .create( -// "energy save odor silver mushroom topple visual summer safe angry tent spend" -// ) -// .then((response) => { -// console.log(response); -// }); - -// // - -module.exports = function (callback) { - const json = require("../build/contracts/LiquidityBridgeContract.json"); - let accounts; - // in web front-end, use an onload listener and similar to this manual flow ... - web3.eth.getAccounts(function (err, res) { - accounts = res; - }); - - - const contract = new web3.eth.Contract( - json.abi, - "0x759d9b28b6ca416892550996ad531020bbfa3f03" - ); - - contract.methods - .deposit() - .call({ - //from: "0xd053b9B695BEb7104deEa56773197F05AD03E4e0", - value: 100000000000000000, - }) - .then(response => console.log("Success: " + response)).catch(err => console.log("Error: " + err)) - - // invoke callback - callback(); -}; diff --git a/scripts/refundUserPegout.js b/scripts/refundUserPegout.js deleted file mode 100644 index 5a5a922..0000000 --- a/scripts/refundUserPegout.js +++ /dev/null @@ -1,59 +0,0 @@ -require('dotenv').config(); -const Web3 = require("web3"); -const web3Provider = new Web3.providers.HttpProvider( - config.config.network === 'rskMainnet' ? process.env.MAINNET_RPC_URL : process.env.TESTNET_RPC_URL -); -const web3 = new Web3(web3Provider); - -// ------ REPLACE THE FOLLOWING DATA WITH THE DATA OF THE PEGOUT YOU WANT TO REFUND ------ - -const quoteHash = "2a64325b9f587fe206f46c92b2a12568815ad76427ad56e02e0946f08d12d7d2"; - -// ------ END OF THE DATA TO BE REPLACED ------ - -const networksInfo = { - 'rskDevelopment': { - privateKeyEnv: 'DEV_SIGNER_PRIVATE_KEY', - lbcAddress: '0x18D8212bC00106b93070123f325021C723D503a3', - }, - 'rskTestnet': { - privateKeyEnv: 'TESTNET_SIGNER_PRIVATE_KEY', - lbcAddress: '0xc2A630c053D12D63d32b025082f6Ba268db18300', - }, - 'rskMainnet': { - privateKeyEnv: 'MAINNET_SIGNER_PRIVATE_KEY', - lbcAddress: '0xAA9cAf1e3967600578727F975F283446A3Da6612', - } -} - -module.exports = async function (callback) { - try { - const networkInfo = networksInfo[config.config.network]; - web3.eth.accounts.wallet.add("0x"+process.env[networkInfo.privateKeyEnv]); - const signer = web3.eth.accounts.wallet[0]; - const refundPegoutCaller = signer.address; - console.log('Executing refundUserPegOut from ' + refundPegoutCaller); - - const json = require("../build/contracts/LiquidityBridgeContractV2.json"); - const contract = new web3.eth.Contract(json.abi, networkInfo.lbcAddress); - - - const gasEstimation = await contract.methods.refundUserPegOut('0x' + quoteHash).estimateGas(); - - console.log("Gas estimation: ", gasEstimation); - - const refundPegoutResult = await contract.methods.refundUserPegOut('0x' + quoteHash) - .call({ to: networkInfo.lbcAddress, from: refundPegoutCaller, gasLimit: gasEstimation }); - - console.log("Expected result: ", refundPegoutResult); - const receipt = await contract.methods.refundUserPegOut('0x' + quoteHash) - .send({ to: networkInfo.lbcAddress, from: refundPegoutCaller, gasLimit: gasEstimation + 200 }); - console.log("Receipt: "); - console.log(receipt); - - } catch (error) { - console.error("Error running refund pegout script: "); - console.error(error); - } - callback(); -}; diff --git a/scripts/registerPegin.js b/scripts/registerPegin.js deleted file mode 100644 index df36a77..0000000 --- a/scripts/registerPegin.js +++ /dev/null @@ -1,147 +0,0 @@ -require('dotenv').config(); -const mempoolJS = require("@mempool/mempool.js"); -const pmtBuilder = require("@rsksmart/pmt-builder"); -const bs58check = require('bs58check'); -const bitcoin = require('bitcoinjs-lib'); -const Web3 = require("web3"); -const web3Provider = new Web3.providers.HttpProvider( - config.config.network === 'rskMainnet' ? process.env.MAINNET_RPC_URL : process.env.TESTNET_RPC_URL -); -const web3 = new Web3(web3Provider); - -// ------ REPLACE THE FOLLOWING DATA WITH THE DATA OF THE PEGIN YOU WANT TO REGISTER ------ - -const quoteJson = { - "fedBTCAddr": "2MxdCCrmUaEG1Tk8dshdcTGKiA9LewNDVCb", - "lbcAddr": "0x18d8212bc00106b93070123f325021c723d503a3", - "lpRSKAddr": "0xdfcf32644e6cc5badd1188cddf66f66e21b24375", - "btcRefundAddr": "mfWxJ45yp2SFn7UciZyNpvDKrzbhyfKrY8", - "rskRefundAddr": "0x8dccd82443b80ddde3690af86746bfd9d766f8d2", - "lpBTCAddr": "mwEceC31MwWmF6hc5SSQ8FmbgdsSoBSnbm", - "callFee": "150000000000000", - "penaltyFee": "10000000000000", - "contractAddr": "0x8dccd82443b80ddde3690af86746bfd9d766f8d2", - "data": "", - "gasLimit": 21000, - "nonce": "7021696521304749773", - "value": "25000000000000000", - "agreementTimestamp": "1730364504", - "timeForDeposit": 7200, - "lpCallTime": 9800, - "confirmations": 2, - "callOnRegister": false, - "gasFee": "152375496000", - "productFeeAmount": 0 -}; - -const expectedHash = "c42182bd93537c91520572bbefc6b336f5ec75573e8876edd40430f1a025e0eb"; - -const signature = "9ef9209516b65a4a1105c2da42493588ae38c6fc5a7373f2db1eaf85d3d240031f61b98c6a87d6f7cad79153428c0470d53d69f2320f4e908538cc089d15c7441c"; - -const userTxId = "5f208a0c2520977379f1dd4710fae591a13896ee4b985c223a5cceecf7df40be"; - -// ------ END OF THE DATA TO BE REPLACED ------ - -const networksInfo = { - 'rskDevelopment': { - privateKeyEnv: 'DEV_SIGNER_PRIVATE_KEY', - lbcAddress: '0x18D8212bC00106b93070123f325021C723D503a3', - }, - 'rskTestnet': { - privateKeyEnv: 'TESTNET_SIGNER_PRIVATE_KEY', - lbcAddress: '0xc2A630c053D12D63d32b025082f6Ba268db18300', - }, - 'rskMainnet': { - privateKeyEnv: 'MAINNET_SIGNER_PRIVATE_KEY', - lbcAddress: '0xAA9cAf1e3967600578727F975F283446A3Da6612', - } -} - -module.exports = async function (callback) { - try { - const networkInfo = networksInfo[config.config.network]; - web3.eth.accounts.wallet.add("0x"+process.env[networkInfo.privateKeyEnv]); - const signer = web3.eth.accounts.wallet[0]; - const registerPeginCaller = signer.address; - console.log('Executing registerPegIn from ' + registerPeginCaller); - - const json = require("../build/contracts/LiquidityBridgeContractV2.json"); - const contract = new web3.eth.Contract(json.abi, networkInfo.lbcAddress); - const quote = { - fedBtcAddress: bs58check.decode(quoteJson.fedBTCAddr).slice(1), - lbcAddress: quoteJson.lbcAddr, - liquidityProviderRskAddress: quoteJson.lpRSKAddr, - btcRefundAddress: bs58check.decode(quoteJson.btcRefundAddr), - rskRefundAddress: quoteJson.rskRefundAddr, - liquidityProviderBtcAddress: bs58check.decode(quoteJson.lpBTCAddr), - callFee: quoteJson.callFee, - penaltyFee: quoteJson.penaltyFee, - contractAddress: quoteJson.contractAddr, - data: '0x'+quoteJson.data, - gasLimit: quoteJson.gasLimit, - nonce: quoteJson.nonce, - value: quoteJson.value, - agreementTimestamp: quoteJson.agreementTimestamp, - timeForDeposit: quoteJson.timeForDeposit, - callTime: quoteJson.lpCallTime, - depositConfirmations: quoteJson.confirmations, - callOnRegister: quoteJson.callOnRegister, - productFeeAmount: quoteJson.productFeeAmount, - gasFee: quoteJson.gasFee - }; - const quoteHash = await contract.methods.hashQuote(Object.values(quote)) - .call({ to: networkInfo.lbcAddress }) - .then(result => result.slice(2)); - if (quoteHash !== expectedHash) { - throw new Error(`Invalid hash: ${quoteHash}`); - } - console.log("Quote hash is correct", quoteHash); - - const { bitcoin: { blocks, transactions } } = mempoolJS({ - hostname: 'mempool.space', - network: config.config.network === 'rskMainnet' ? 'mainnet' : 'testnet' - }); - - const btcRawTxFull = await transactions.getTxHex({ txid: userTxId }); - const tx = bitcoin.Transaction.fromHex(btcRawTxFull); - tx.ins.forEach((input) => { input.witness = []; }); - const btcRawTx = tx.toHex(); - const txStatus = await transactions.getTxStatus({ txid: userTxId }); - const blockTxids = await blocks.getBlockTxids({ hash: txStatus.block_hash }); - const pmt = pmtBuilder.buildPMT(blockTxids, userTxId); - - const gasEstimation = await contract.methods.registerPegIn( - Object.values(quote), - '0x' + signature, - '0x' + btcRawTx, - '0x' + pmt.hex, - txStatus.block_height - ).estimateGas(); - - console.log("Gas estimation: ", gasEstimation); - - const registerPeginResult = await contract.methods.registerPegIn( - Object.values(quote), - '0x' + signature, - '0x' + btcRawTx, - '0x' + pmt.hex, - txStatus.block_height - ).call({ to: networkInfo.lbcAddress, from: registerPeginCaller, gasLimit: gasEstimation }); - - console.log("Expected result: ", registerPeginResult); - const receipt = await contract.methods.registerPegIn( - Object.values(quote), - '0x' + signature, - '0x' + btcRawTx, - '0x' + pmt.hex, - txStatus.block_height - ).send({ to: networkInfo.lbcAddress, from: registerPeginCaller, gasLimit: gasEstimation + 200 }); - console.log("Receipt: "); - console.log(receipt); - - } catch (error) { - console.error("Error running register pegin script: "); - console.error(error); - } - callback(); -}; diff --git a/scripts/registerProvider.js b/scripts/registerProvider.js deleted file mode 100644 index b6ef566..0000000 --- a/scripts/registerProvider.js +++ /dev/null @@ -1,32 +0,0 @@ -const Web3 = require("web3"); - -module.exports = function (callback) { - const json = require("../build/contracts/LiquidityBridgeContract.json"); - let accounts; - // in web front-end, use an onload listener and similar to this manual flow ... - web3.eth.getAccounts(function (err, res) { - accounts = res; - }); - - const contract = new web3.eth.Contract( - json.abi, - "0xcdC617a31a5819dA29ebcf0Fa96352d62D354d18" - ); - - contract.methods - .register( - "First contract", - "http://localhost/api", - true, - "both" - ) - .call({ - // from: accounts[0], - value: 1200000000000000000, - }) - .then((response) => console.log("Success: " + response)) - .catch((err) => console.log("Error: " + err)); - - // invoke callback - callback(); -}; diff --git a/scripts/validateTransaction.js b/scripts/validateTransaction.js deleted file mode 100644 index 5b10357..0000000 --- a/scripts/validateTransaction.js +++ /dev/null @@ -1,24 +0,0 @@ -module.exports = async function (callback) { - console.log("===Getting transaction data==="); - - const hash = - "0x1eec81525f3052027b4265ab7d65bb71ce59e6d91cf7777533af02ad50cae781"; - - try { - console.log("Getting transaction info===="); - const tx = await web3.eth.getTransaction(hash); - - console.log(tx); - - console.log("Getting receipt====") - - const txReceipt = await web3.eth.getTransactionReceipt(hash); - - console.log(txReceipt); - } catch (error) { - console.log("Error: ", error); - } - - console.log("===Finished==="); - callback(); -}; diff --git a/scripts/verifyV2Upgrade.js b/scripts/verifyV2Upgrade.js deleted file mode 100644 index ed9cab5..0000000 --- a/scripts/verifyV2Upgrade.js +++ /dev/null @@ -1,79 +0,0 @@ -const json = require("../build/contracts/LiquidityBridgeContractV2.json"); -const configJson = require("../config.json"); - -function getTestPegOutQuote(lbcAddress, lpRskAddress, rskRefundAddress, value) { - let valueToTransfer = value || web3.utils.toBN(0); - let callFee = web3.utils.toBN(1); - let nonce = 0; - let agreementTimestamp = 1661788988; - let expireDate = Math.round(new Date().getTime() / 1000) + 3600; - let expireBlock = 4000; - let transferTime = 1661788988; - let depositDateLimit = Math.round(new Date().getTime() / 1000) + 600; - let depositConfirmations = 10; - let transferConfirmations = 10; - let penaltyFee = web3.utils.toBN(0); - let productFeeAmount = web3.utils.toBN(1); - const gasFee = web3.utils.toBN(1); - - let quote = { - lbcAddress, - lpRskAddress, - btcRefundAddress: "0x000000000000000000000000000000000000000000", - rskRefundAddress, - lpBtcAddress: "0x000000000000000000000000000000000000000000", - callFee, - penaltyFee, - nonce, - deposityAddress: "0x6f3c5f66fe733e0ad361805b3053f23212e5755c8d", - value: valueToTransfer, - agreementTimestamp, - depositDateLimit, - depositConfirmations, - transferConfirmations, - transferTime, - expireDate, - expireBlock, - productFeeAmount, - gasFee - }; - - return quote; -} - -function asArray(obj) { - return Object.values(obj); -} - -module.exports = async function (callback) { - let LBCAddress = '0xAA9cAf1e3967600578727F975F283446A3Da6612'; - - const contract = new web3.eth.Contract( - json.abi, - LBCAddress - ); - const quote = getTestPegOutQuote( - LBCAddress, - "0x4202bAC9919C3412Fc7c8BE4e678e26279386603", - "0x79568c2989232dCa1840087D73d403602364c0D4", - 5000000000000000); - - console.log("Quote to be hashed: ", quote); - - try { - const productFeePercentage = await contract.methods.productFeePercentage().call(); - const daoFeeCollectorAddress = await contract.methods.daoFeeCollectorAddress().call(); - const quoteHash = await contract.methods.hashPegoutQuote(asArray(quote)).call(); - const provider = await contract.methods.getProviders([1]).call(); - - console.log("Proxy address: ", LBCAddress); - console.log('DAO Fee Percentage: ', productFeePercentage); - console.log('DAO Fee Collector Address ', daoFeeCollectorAddress); - console.log('Provider ', provider) - console.log('Quote Hash: ', quoteHash); - } catch (error) { - console.error(error); - } - - callback(); -}; diff --git a/tasks/btc-best-height.ts b/tasks/btc-best-height.ts new file mode 100644 index 0000000..cf2271d --- /dev/null +++ b/tasks/btc-best-height.ts @@ -0,0 +1,15 @@ +import { task } from "hardhat/config"; +import { BRIDGE_ADDRESS } from "../scripts/deployment-utils/constants"; + +task("btc-best-height") + .setDescription( + "Prints the best height of the Bitcoin network seen by the Rootstock Bridge" + ) + .setAction(async (_, hre) => { + const { ethers } = hre; + const bridge = await ethers.getContractAt("Bridge", BRIDGE_ADDRESS); + const bestHeight = await bridge.getBtcBlockchainBestChainHeight(); + console.info( + `Best BTC blockchain height: \x1b[32m${bestHeight.toString()}\x1b[0m` + ); + }); diff --git a/tasks/get-versions.ts b/tasks/get-versions.ts new file mode 100644 index 0000000..9476cc3 --- /dev/null +++ b/tasks/get-versions.ts @@ -0,0 +1,43 @@ +import { task } from "hardhat/config"; +import { DeploymentConfig, read } from "../scripts/deployment-utils/deploy"; + +task("get-versions") + .setDescription( + "Prints the versions of the LiquidityBridgeContract and its libraries where applicable" + ) + .setAction(async (_, hre) => { + const { ethers, network } = hre; + const addresses: Partial = read(); + const networkDeployments: Partial | undefined = + addresses[network.name]; + + if (!networkDeployments?.LiquidityBridgeContract?.address) { + throw new Error( + "LiquidityBridgeContract proxy deployment info not found" + ); + } + const lbcAddress = networkDeployments.LiquidityBridgeContract.address; + + if (!networkDeployments.BtcUtils?.address) { + throw new Error( + "LiquidityBridgeContract proxy deployment info not found" + ); + } + const btcUtilsAddress = networkDeployments.BtcUtils.address; + + const lbc = await ethers.getContractAt( + "LiquidityBridgeContractV2", + lbcAddress + ); + const lbcVersion = await lbc.version().catch(() => "Not found"); + + const btcUtils = await ethers.getContractAt("BtcUtils", btcUtilsAddress); + const btcUtilsVersion = await btcUtils.version().catch(() => "Not found"); + + console.info("======================================="); + console.info( + `LiquidityBridgeContract version: \x1b[32m${lbcVersion}\x1b[0m` + ); + console.info(`BtcUtils version: \x1b[32m${btcUtilsVersion}\x1b[0m`); + console.info("======================================="); + }); diff --git a/tasks/hash-quote.example.json b/tasks/hash-quote.example.json new file mode 100644 index 0000000..60deb09 --- /dev/null +++ b/tasks/hash-quote.example.json @@ -0,0 +1,22 @@ +{ + "fedBTCAddr": "2N9uY615Mxk6KSSjv6F3FnvSPgZMer7FF39", + "lbcAddr": "0x18D8212bC00106b93070123f325021C723D503a3", + "lpRSKAddr": "0xdfcf32644e6cc5badd1188cddf66f66e21b24375", + "btcRefundAddr": "mfWxJ45yp2SFn7UciZyNpvDKrzbhyfKrY8", + "rskRefundAddr": "0x8dcCD82443B80DDdE3690aF86746BfD9D766f8d2", + "lpBTCAddr": "mwEceC31MwWmF6hc5SSQ8FmbgdsSoBSnbm", + "callFee": 150000000000000, + "penaltyFee": 10000000000000, + "contractAddr": "0x8dcCD82443B80DDdE3690aF86746BfD9D766f8d2", + "data": "0x", + "gasLimit": 21000, + "nonce": "3307065858190946360", + "value": "5000000000000000", + "agreementTimestamp": 1735243258, + "timeForDeposit": 9800, + "lpCallTime": 10800, + "confirmations": 2, + "callOnRegister": false, + "gasFee": 114524739000, + "productFeeAmount": 0 +} diff --git a/tasks/hash-quote.ts b/tasks/hash-quote.ts new file mode 100644 index 0000000..11f7c86 --- /dev/null +++ b/tasks/hash-quote.ts @@ -0,0 +1,64 @@ +import { task, types } from "hardhat/config"; +import { readFileSync } from "fs"; +import { DeploymentConfig, read } from "../scripts/deployment-utils/deploy"; +import { + ApiPeginQuote, + ApiPegoutQuote, + parsePeginQuote, + parsePegoutQuote, +} from "./utils/quote"; + +task("hash-quote") + .setDescription("Prints the hash of the quote provided in the input file") + .addParam( + "file", + "The file containing the quote to hash", + undefined, + types.inputFile + ) + .addParam( + "type", + "Wether the quote is a PegIn or PegOut quote", + undefined, + types.string + ) + .setAction(async (args, hre) => { + const { network, ethers } = hre; + const typedArgs = args as { file: string; type: string }; + const type: string = typedArgs.type.toLowerCase(); + const inputFile: string = typedArgs.file; + + if (!["pegin", "pegout"].includes(type)) { + throw new Error("Invalid type. Must be 'pegin' or 'pegout'"); + } + const fileContent = readFileSync(inputFile); + const quote: unknown = JSON.parse(fileContent.toString()); + + const addresses: Partial = read(); + const networkDeployments: Partial | undefined = + addresses[network.name]; + const lbcAddress = networkDeployments?.LiquidityBridgeContract?.address; + if (!lbcAddress) { + throw new Error( + "LiquidityBridgeContract proxy deployment info not found" + ); + } + const lbc = await ethers.getContractAt( + "LiquidityBridgeContractV2", + lbcAddress + ); + + if (type === "pegin") { + const hash = await lbc.hashQuote(parsePeginQuote(quote as ApiPeginQuote)); + console.info( + `Hash of the provided PegIn quote: \x1b[32m${hash.slice(2)}\x1b[0m` + ); + } else { + const hash = await lbc.hashPegoutQuote( + parsePegoutQuote(quote as ApiPegoutQuote) + ); + console.info( + `Hash of the provided PegOut quote: \x1b[32m${hash.slice(2)}\x1b[0m` + ); + } + }); diff --git a/tasks/refund-user-pegout.ts b/tasks/refund-user-pegout.ts new file mode 100644 index 0000000..243d402 --- /dev/null +++ b/tasks/refund-user-pegout.ts @@ -0,0 +1,42 @@ +import { task, types } from "hardhat/config"; +import { DeploymentConfig, read } from "../scripts/deployment-utils/deploy"; + +task("refund-user-pegout") + .setDescription( + "Refund a user that didn't receive their PegOut in the agreed time" + ) + .addParam( + "quotehash", + "The hash of the accepted PegOut quote", + undefined, + types.string + ) + .setAction(async (args, hre) => { + const { ethers, network } = hre; + const typedArgs = args as { quotehash: string }; + const quoteHash: string = "0x" + typedArgs.quotehash; + + const addresses: Partial = read(); + const networkDeployments: Partial | undefined = + addresses[network.name]; + + const lbcAddress = networkDeployments?.LiquidityBridgeContract?.address; + if (!lbcAddress) { + throw new Error( + "LiquidityBridgeContract proxy deployment info not found" + ); + } + const lbc = await ethers.getContractAt( + "LiquidityBridgeContractV2", + lbcAddress + ); + + const gasEstimation = await lbc.refundUserPegOut.estimateGas(quoteHash); + console.info("Gas estimation for refundUserPegOut:", gasEstimation); + + const tx = await lbc.refundUserPegOut(quoteHash); + const receipt = await tx.wait(); + console.info(`Transaction hash: ${receipt!.hash}`); + console.info("Transaction receipt: "); + console.info(receipt); + }); diff --git a/tasks/register-pegin.ts b/tasks/register-pegin.ts new file mode 100644 index 0000000..af2a961 --- /dev/null +++ b/tasks/register-pegin.ts @@ -0,0 +1,121 @@ +import { task, types } from "hardhat/config"; +import { DeploymentConfig, read } from "../scripts/deployment-utils/deploy"; +import { ApiPeginQuote, parsePeginQuote } from "./utils/quote"; +import { readFileSync } from "fs"; +import mempoolJS from "@mempool/mempool.js"; +import { BigNumberish } from "ethers"; +import { Transaction } from "bitcoinjs-lib"; +import pmtBuilder from "@rsksmart/pmt-builder"; + +task("register-pegin") + .setDescription( + "Register a PegIn bitcoin transaction within the Liquidity Bridge Contract" + ) + .addParam( + "file", + "The file containing the PegIn quote to register", + undefined, + types.inputFile + ) + .addParam( + "signature", + "The signature of the Liquidity Provider committing to pay for the quote", + undefined, + types.string + ) + .addParam( + "txid", + "The transaction id of the Bitcoin transaction that pays for the specific PegIn", + undefined, + types.string + ) + .setAction(async (args, hre) => { + const { ethers, network } = hre; + + const typedArgs = args as { file: string; signature: string; txid: string }; + const txId: string = typedArgs.txid; + const inputFile: string = typedArgs.file; + const signature: string = "0x" + typedArgs.signature; + + const addresses: Partial = read(); + const networkDeployments: Partial | undefined = + addresses[network.name]; + const lbcAddress = networkDeployments?.LiquidityBridgeContract?.address; + if (!lbcAddress) { + throw new Error( + "LiquidityBridgeContract proxy deployment info not found" + ); + } + const lbc = await ethers.getContractAt( + "LiquidityBridgeContractV2", + lbcAddress + ); + + const fileContent = readFileSync(inputFile); + const quote = parsePeginQuote( + JSON.parse(fileContent.toString()) as ApiPeginQuote + ); + const { rawTx, pmt, height } = await getRegisterParams( + txId, + network.name === "rskMainnet" + ); + + const gasEstimation = await lbc.registerPegIn.estimateGas( + quote, + signature, + rawTx, + pmt, + height + ); + console.info("Gas estimation for registerPegIn:", gasEstimation); + + const result = await lbc.registerPegIn.staticCall( + quote, + signature, + rawTx, + pmt, + height + ); + console.info("Expected result:", result); + + const tx = await lbc.registerPegIn(quote, signature, rawTx, pmt, height); + const receipt = await tx.wait(); + console.info(`Transaction hash: ${receipt!.hash}`); + console.info("Transaction receipt: "); + console.info(receipt); + }); + +async function getRegisterParams( + txId: string, + mainnet: boolean +): Promise<{ + rawTx: string; + pmt: string; + height: BigNumberish; +}> { + const { + bitcoin: { blocks, transactions }, + } = mempoolJS({ + hostname: "mempool.space", + network: mainnet ? "mainnet" : "testnet", + }); + + const btcRawTxFull = await transactions.getTxHex({ txid: txId }).catch(() => { + throw new Error("Transaction not found"); + }); + const tx = Transaction.fromHex(btcRawTxFull); + tx.ins.forEach((input) => { + input.witness = []; + }); + const btcRawTx = tx.toHex(); + + const txStatus = await transactions.getTxStatus({ txid: txId }); + const blockTxs = await blocks.getBlockTxids({ hash: txStatus.block_hash }); + const pmt = pmtBuilder.buildPMT(blockTxs, txId); + + return { + rawTx: "0x" + btcRawTx, + pmt: "0x" + pmt.hex, + height: txStatus.block_height, + }; +} diff --git a/tasks/utils/quote.ts b/tasks/utils/quote.ts new file mode 100644 index 0000000..473b863 --- /dev/null +++ b/tasks/utils/quote.ts @@ -0,0 +1,148 @@ +import * as bs58check from "bs58check"; +import { bech32, bech32m } from "bech32"; +import { BytesLike } from "ethers"; +import { QuotesV2 } from "../../typechain-types"; + +export interface ApiPeginQuote { + fedBTCAddr: string; + lbcAddr: string; + lpRSKAddr: string; + btcRefundAddr: string; + rskRefundAddr: string; + lpBTCAddr: string; + callFee: number; + penaltyFee: number; + contractAddr: string; + data: string; + gasLimit: number; + nonce: string; + value: string; + agreementTimestamp: number; + timeForDeposit: number; + lpCallTime: number; + confirmations: number; + callOnRegister: boolean; + gasFee: number; + productFeeAmount: number; +} + +export interface ApiPegoutQuote { + lbcAddress: string; + liquidityProviderRskAddress: string; + btcRefundAddress: string; + rskRefundAddress: string; + lpBtcAddr: string; + callFee: number; + penaltyFee: number; + nonce: string; + depositAddr: string; + value: string; + agreementTimestamp: number; + depositDateLimit: number; + transferTime: number; + depositConfirmations: number; + transferConfirmations: number; + productFeeAmount: number; + gasFee: number; + expireBlocks: number; + expireDate: number; +} + +export function parsePeginQuote( + quote: ApiPeginQuote +): QuotesV2.PeginQuoteStruct { + return { + fedBtcAddress: bs58check.decode(quote.fedBTCAddr).slice(1), + lbcAddress: quote.lbcAddr.toLowerCase(), + liquidityProviderRskAddress: quote.lpRSKAddr.toLowerCase(), + btcRefundAddress: bs58check.decode(quote.btcRefundAddr), + rskRefundAddress: quote.rskRefundAddr.toLowerCase(), + liquidityProviderBtcAddress: bs58check.decode(quote.lpBTCAddr), + callFee: quote.callFee, + penaltyFee: quote.penaltyFee, + contractAddress: quote.contractAddr.toLowerCase(), + data: quote.data, + gasLimit: quote.gasLimit, + nonce: quote.nonce, + value: quote.value, + agreementTimestamp: quote.agreementTimestamp, + timeForDeposit: quote.timeForDeposit, + callTime: quote.lpCallTime, + depositConfirmations: quote.confirmations, + callOnRegister: quote.callOnRegister, + gasFee: quote.gasFee, + productFeeAmount: quote.productFeeAmount, + }; +} + +export function parsePegoutQuote( + quote: ApiPegoutQuote +): QuotesV2.PegOutQuoteStruct { + return { + lbcAddress: quote.lbcAddress.toLowerCase(), + lpRskAddress: quote.liquidityProviderRskAddress.toLowerCase(), + btcRefundAddress: parseBtcAddress(quote.btcRefundAddress), + rskRefundAddress: quote.rskRefundAddress.toLowerCase(), + lpBtcAddress: bs58check.decode(quote.lpBtcAddr), + callFee: quote.callFee, + penaltyFee: quote.penaltyFee, + nonce: quote.nonce, + deposityAddress: parseBtcAddress(quote.depositAddr), + value: quote.value, + agreementTimestamp: quote.agreementTimestamp, + depositDateLimit: quote.depositDateLimit, + transferTime: quote.transferTime, + depositConfirmations: quote.depositConfirmations, + transferConfirmations: quote.transferConfirmations, + productFeeAmount: quote.productFeeAmount, + gasFee: quote.gasFee, + expireBlock: quote.expireBlocks, + expireDate: quote.expireDate, + }; +} + +export function parseBtcAddress(address: string): BytesLike { + const MAINNET_P2TR = /^bc1p([ac-hj-np-z02-9]{58})$/; + const TESTNET_P2TR = /^tb1p([ac-hj-np-z02-9]{58})$/; + const REGTEST_P2TR = /^bcrt1p([ac-hj-np-z02-9]{58})$/; + + const MAINNET_P2WSH = /^bc1q([ac-hj-np-z02-9]{58})$/; + const TESTNET_P2WSH = /^tb1q([ac-hj-np-z02-9]{58})$/; + const REGTEST_P2WSH = /^bcrt1q([ac-hj-np-z02-9]{58})$/; + + const MAINNET_P2WPKH = /^bc1q([ac-hj-np-z02-9]{38})$/; + const TESTNET_P2WPKH = /^tb1q([ac-hj-np-z02-9]{38})$/; + const REGTEST_P2WPKH = /^bcrt1q([ac-hj-np-z02-9]{38})$/; + + const MAINNET_P2SH = /^3([a-km-zA-HJ-NP-Z1-9]{33,34})$/; + const TESTNET_P2SH = /^2([a-km-zA-HJ-NP-Z1-9]{33,34})$/; + + const MAINNET_P2PKH = /^1([a-km-zA-HJ-NP-Z1-9]{25,34})$/; + const TESTNET_P2PKH = /^[mn]([a-km-zA-HJ-NP-Z1-9]{25,34})$/; + + const bech32mRegex = [MAINNET_P2TR, TESTNET_P2TR, REGTEST_P2TR]; + const bech32Regex = [ + MAINNET_P2WSH, + TESTNET_P2WSH, + REGTEST_P2WSH, + MAINNET_P2WPKH, + TESTNET_P2WPKH, + REGTEST_P2WPKH, + ]; + const base58Regex = [ + MAINNET_P2SH, + TESTNET_P2SH, + MAINNET_P2PKH, + TESTNET_P2PKH, + ]; + + if (bech32mRegex.some((regex) => regex.test(address))) { + return new Uint8Array(bech32m.decode(address).words); + } else if (bech32Regex.some((regex) => regex.test(address))) { + return new Uint8Array(bech32.decode(address).words); + } else if (base58Regex.some((regex) => regex.test(address))) { + return bs58check.decode(address); + } else { + throw new Error("Invalid btc address type"); + } +} diff --git a/test/basic.tests.js b/test/basic.tests.js deleted file mode 100644 index ad30048..0000000 --- a/test/basic.tests.js +++ /dev/null @@ -1,2355 +0,0 @@ -const LiquidityBridgeContractV2 = artifacts.require("LiquidityBridgeContractV2.sol"); -const BridgeMock = artifacts.require("BridgeMock"); -const Mock = artifacts.require("Mock"); -const SignatureValidatorMock = artifacts.require("SignatureValidatorMock"); -const BtcUtils = artifacts.require("BtcUtils"); - -var chai = require("chai"); -const truffleAssertions = require("truffle-assertions"); -const utils = require("../test/utils/index"); -const BN = web3.utils.BN; -const chaiBN = require("chai-bn")(BN); -chai.use(chaiBN); -const expect = chai.expect; -const bs58check = require('bs58check') -const bs58 = require('bs58'); - -contract("LiquidityBridgeContractV2.sol", async (accounts) => { - let instance; - let bridgeMockInstance; - let mock; - let signatureValidatorInstance; - let btcUtils; - const liquidityProviderRskAddress = accounts[0]; - var providerList = []; - before(async () => { - const proxy = await LiquidityBridgeContractV2.deployed(); - instance = await LiquidityBridgeContractV2.at(proxy.address); - bridgeMockInstance = await BridgeMock.deployed(); - mock = await Mock.deployed(); - signatureValidatorInstance = await SignatureValidatorMock.deployed(); - btcUtils = await BtcUtils.deployed(); - }); - - beforeEach(async () => { - await utils.ensureLiquidityProviderAvailable( - instance, - liquidityProviderRskAddress, - utils.LP_COLLATERAL - ); - }); - - it('should refund pegin with wrong amount without penalizing the LP (real cases)', async () => { - const cases = [ - { - quote: { - fedBtcAddress: bs58check.decode("3LxPz39femVBL278mTiBvgzBNMVFqXssoH").slice(1), - lbcAddress: '0xAA9cAf1e3967600578727F975F283446A3Da6612', - liquidityProviderRskAddress: '0x4202bac9919c3412fc7c8be4e678e26279386603', - btcRefundAddress: bs58check.decode("1K5X7aTGfZGksihgNdDschakaxp8ZhT1F3"), - rskRefundAddress: '0x1bf357F3CcCe62a5Dd1035c79070BdA219C53B10', - liquidityProviderBtcAddress: bs58check.decode("17kksixYkbHeLy9okV16kr4eAxVhFkRhP"), - callFee: web3.utils.toBN('100000000000000'), - penaltyFee: web3.utils.toBN('10000000000000'), - contractAddress: '0x1bf357F3CcCe62a5Dd1035c79070BdA219C53B10', - data:'0x', - gasLimit: 21000, - nonce: '907664817259568253', - value: web3.utils.toBN('5200000000000000'), - agreementTimestamp: 1727278204, - timeForDeposit: 3600, - callTime: 7200, - depositConfirmations: 2, - callOnRegister: false, - productFeeAmount: 0, - gasFee: web3.utils.toBN('1354759560000'), - }, - quoteHash: 'b21ead431a1c3efd1759b62a56c253d740d1bf3c3673cd060aed64906a82c1c3', - signature: 'c72e3e5bb9cf6bf3db568df18d2dba80896490cda7371c4643cad116d54d46c50a368d4cfa0b963468c5db15b773f4d1ea1ab69565a3f903ac3ab363204ba3bc1c', - btcRawTx: '020000000212bebc8ba671aa9af2e3984af89366b5594ed115dbbaef64a41e8650cd4a53ea0000000017160014fe7b123124c87300e8ba30f0e2eafdd8e1f2b337ffffffff046d8f4e5fa8d6cc5fa23c50640249461b646e8a4722c9cfbfbff00c049d559f0000000017160014fe7b123124c87300e8ba30f0e2eafdd8e1f2b337ffffffff02d71608000000000017a9149fa51efd2954990e4974e7b13468fb8be54512d8872d2507000000000017a914b979999438ade0fdd2cf303fca55ea29aec2392b8700000000', - pmt: '800c00000d3eb13be27a4110f06ca8e4b4b00103e10ac6ba5f9123934764ac9555e2ec3c7b88a5464adca8b40a548741a8262dc2ab228f89cbd51bbf57f3f5d67130820ae3f9b7625821c2d9718d6611de40edfa1eb42181f180aab3891730584921a125dddba628c1d3f5fca59e0b68494aae191ab14db30b79e07962da298a52bcf077905661f80bd5731e0c80524ba2f7dcad0bd05a0d470bccdb5c5889c9c71ac7c5bca7f6cebd492154af69f2b98bcf7995444c765a18445a5ef212eb5f8ead5a441a45536e4075022614df043d03b2449113a00f32cff333024d3a1d66d84d4a31c012bebc8ba671aa9af2e3984af89366b5594ed115dbbaef64a41e8650cd4a53ea34b89cb98fac941bdd048d4a8f371d7b9f132ad19f1542556c89b4e8701022de51f6d49aa8f7e7d01591de9bdef65351e8590f111ea9be5550f66a3d4a734758e26b8edf2bfe9c4375929fea7b7197a24589648f8e7b934a6caa2d9c7583e64a28db12de953b0abddbdc3edb28b845eaca02f56dd52aa04e3131dc539c0f646f35751d1ec529231acd5cb079b4a2b678ecd3fc07636be878e6336d546518562e04af6a1500', - height: 862825, - refundAmount: '5301350000000000' - }, - { - quote: { - fedBtcAddress: bs58check.decode("3LxPz39femVBL278mTiBvgzBNMVFqXssoH").slice(1), - lbcAddress: '0xAA9cAf1e3967600578727F975F283446A3Da6612', - liquidityProviderRskAddress: '0x4202bac9919c3412fc7c8be4e678e26279386603', - btcRefundAddress: bs58check.decode("171gGjg8NeLUonNSrFmgwkgT1jgqzXR6QX"), - rskRefundAddress: '0xaD0DE1962ab903E06C725A1b343b7E8950a0Ff82', - liquidityProviderBtcAddress: bs58check.decode("17kksixYkbHeLy9okV16kr4eAxVhFkRhP"), - callFee: web3.utils.toBN('100000000000000'), - penaltyFee: web3.utils.toBN('10000000000000'), - contractAddress: '0xaD0DE1962ab903E06C725A1b343b7E8950a0Ff82', - data:'0x', - gasLimit: 21000, - nonce: '8373381263192041574', - value: web3.utils.toBN('8000000000000000'), - agreementTimestamp: 1727298699, - timeForDeposit: 3600, - callTime: 7200, - depositConfirmations: 2, - callOnRegister: false, - productFeeAmount: 0, - gasFee: web3.utils.toBN('1341211956000'), - }, - quoteHash: '9ef0d0c376a0611ee83a1d938f88cdc8694d9cb6e35780d253fb945e92647d68', - signature: '8ccd018b5c1fb7eceba2a13f8c977ae362c0daccafa6d77a5eb740527dd177620bb6c2d072d68869b3a08b193b1356de564e73233ea1c2686078bf87e3c909a31c', - btcRawTx: '010000000148e9e71dafee5a901be4eceb5aca361c083481b70496f4e3da71e5d969add1820000000017160014b88ef07cd7bcc022b6d73c4764ce5db0887d5b05ffffffff02965c0c000000000017a9141b67149e474f0d7757181f4db89257f27a64738387125b01000000000017a914785c3e807e54dc41251d6377da0673123fa87bc88700000000', - pmt: 'a71100000e7fe369f81a807a962c8e528debd0b46cbfa4f8dfbc02a62674dd41a73f4c4bde0508a9e309e5836703375a58ab116b95434552ca2e460c3273cd2caa13350aefc3c8152a8150f738cd18ff33e69f19b727bff9c2b92aa06e6d0971e9b49893075f2d926bbb9f0884640363b79b6a668a178f140c13f25b48ec975357822ce38c733f6de9b32f6910ff3cd838efd274cd784ab204b74f281ef68146c334f509613d022554f281465dfcd597305c988c4b06e297e5d777afdb66c3391c3c471ebf9a1e051ba38201f08ca758d2dc83a71c34088e6785c1a775e2bde492361462cac9e7042653341cd1e190d0265a33f46ba564dc6116689cf19a8af6816c006df69803008246d44bc849babfbcc3de601fba3d10d696bf4b4d9cb8e291584e7d24bb2c81282972e71cb4493fb4966fcb483d6b62b24a0e25f912ee857d8843e4fa6181b8351f0a300e14503d51f46f367ec872712004535a56f14c65430f044f9685137a1afb2dc0aa402fde8d83b072ef0c4357529466e017dfb2935444103bbeec61bf8944924371921eefd02f35fd5283f3b7bce58a6f4ca15fb32cee8869be8d7720501ec18cc097c236b19212514582212719aede2400b1dd1ff43208ac7504bfb60a00', - height: 862859, - refundAmount: '8101340000000000' - } - ] - for (const testCase of cases) { - - /** - * We perform this modifications because even that these are test cases that happened with actual mainnet - * transactions, the amounts are too small to be used in regtest, so we need to adapt them to the test environment - * also, the LBC address is different, so we modify that value as well - */ - const modifiedQuote = structuredClone(testCase.quote); - const regtestMultiplier = web3.utils.toBN('100'); - modifiedQuote.lbcAddress = instance.address; - modifiedQuote.value = testCase.quote.value.mul(regtestMultiplier); - modifiedQuote.gasFee = testCase.quote.gasFee.mul(regtestMultiplier); - modifiedQuote.callFee = testCase.quote.callFee.mul(regtestMultiplier); - const modifiedRefundAmount = web3.utils.toBN(testCase.refundAmount).mul(regtestMultiplier); - - const refundAddressBalanceBefore = await web3.eth.getBalance(modifiedQuote.rskRefundAddress) - .then(result => web3.utils.toBN(result)); - const quoteHash = await instance.hashQuote(utils.asArray(modifiedQuote)); - await bridgeMockInstance.setPegin(quoteHash, { value: modifiedRefundAmount }); - const receipt = await instance.registerPegIn(utils.asArray(modifiedQuote), '0x'+testCase.signature, '0x'+testCase.btcRawTx, '0x'+testCase.pmt, testCase.height); - const refundAddressBalanceAfter = await web3.eth.getBalance(modifiedQuote.rskRefundAddress) - .then(result => web3.utils.toBN(result)); - - expect(receipt.logs.length).to.be.eq(2); - expect(refundAddressBalanceAfter.sub(refundAddressBalanceBefore)).to.be.a.bignumber.eq(modifiedRefundAmount); - - truffleAssertions.eventEmitted(receipt, "Refund", { - dest: testCase.quote.rskRefundAddress, - amount: modifiedRefundAmount, - success: true, - quoteHash: quoteHash - }); - truffleAssertions.eventEmitted(receipt, "PegInRegistered", { - quoteHash: quoteHash, - transferredAmount: modifiedRefundAmount - }); - } - }); - - it("should register liquidity provider", async () => { - let currAddr = accounts[9]; - let existing = await instance.getCollateral(currAddr); - - let tx = await instance.register( - "First contract", - "http://localhost/api", - true, - "both", - { from: currAddr, value: utils.LP_COLLATERAL } - ); - providerList.push(tx.logs[0].args.id.toNumber()); - - let current = await instance.getCollateral(currAddr); - let registered = current.sub(existing); - - truffleAssertions.eventEmitted(tx, "Register", { - from: currAddr, - amount: utils.LP_COLLATERAL, - }); - // TODO this multiplication by 2 is a temporal fix until we define solution with product team - expect(utils.LP_COLLATERAL).to.be.a.bignumber.eq( - registered.mul(web3.utils.toBN(2)) - ); - }); - it("Should fail on register if bad parameters", async () => { - let currAddr = accounts[5]; - - await truffleAssertions.reverts( - instance.register("", "", true, "both", { - from: currAddr, - value: utils.LP_COLLATERAL, - }), - "LBC010" - ); - }); - it("should fail when Liquidity provider is already registered", async () => { - let currAddr = accounts[4]; - let existing = await instance.getCollateral(currAddr); - - let tx = await instance.register( - "First contract", - "http://localhost/api", - true, - "both", - { from: currAddr, value: utils.LP_COLLATERAL } - ); - providerList.push(tx.logs[0].args.id.toNumber()); - - let current = await instance.getCollateral(currAddr); - let registered = current.sub(existing); - - truffleAssertions.eventEmitted(tx, "Register", { - from: currAddr, - amount: utils.LP_COLLATERAL, - }); - expect(utils.LP_COLLATERAL).to.be.a.bignumber.eq( - registered.mul(web3.utils.toBN(2)) - ); - await truffleAssertions.reverts( - instance.register( - "First contract", - "http://localhost/api", - true, - "both", - { from: currAddr, value: utils.LP_COLLATERAL } - ), - "LBC070" - ); - }); - it("Should fail on register if not deposit the minimum collateral", async () => { - let currAddr = accounts[5]; - - await truffleAssertions.reverts( - instance.register( - "First contract", - "http://localhost/api", - true, - "both", - { from: currAddr, value: web3.utils.toBN(0) } - ), - "LBC008" - ); - }); - - it("should not register lp with not enough collateral", async () => { - const minCollateral = await instance.getMinCollateral(); - - const lessThanMinimum = minCollateral.sub(utils.ONE_COLLATERAL); - await truffleAssertions.reverts( - instance.register( - "First contract", - "http://localhost/api", - true, - "both", - { from: accounts[1], value: lessThanMinimum } - ), - "LBC008" - ); - }); - - it("should fail to register liquidity provider from a contract", async () => { - let currAddr = accounts[9]; - - await truffleAssertions.fails( - mock.callRegister(instance.address, { - from: currAddr, - value: utils.LP_COLLATERAL, - }) - ); - }); - - it("should get registered liquidity providers", async () => { - let currAddr = accounts[1]; - - let tx = await instance.register( - "First contract", - "http://localhost/api", - true, - "both", - { - from: currAddr, - value: utils.LP_COLLATERAL, - } - ); - providerList.push(tx.logs[0].args.id.toNumber()); - - truffleAssertions.eventEmitted(tx, "Register", { - from: currAddr, - amount: utils.LP_COLLATERAL, - }); - let currAddr2 = accounts[2]; - - let tx2 = await instance.register( - "Second contract", - "http://localhost/api", - true, - "both", - { - from: currAddr2, - value: utils.LP_COLLATERAL, - } - ); - providerList.push(tx2.logs[0].args.id.toNumber()); - - truffleAssertions.eventEmitted(tx2, "Register", { - from: currAddr2, - amount: utils.LP_COLLATERAL, - }); - let providers = await instance.getProviders(); - expect(providers.length).to.be.greaterThan(0); - expect(accounts).to.includes(providers[0].provider); - expect(accounts).to.includes(providers[1].provider); - expect(accounts).to.includes(providers[2].provider); - }); - it("should get providerIds", async () => { - let providerId = await instance.getProviderIds(); - expect(providerId.toNumber() == providerList.length); - }); - it("should disable provider", async () => { - const providerAddress = accounts[0]; - await instance.setProviderStatus(1, false, { from: providerAddress }); - const provider = await instance.getProvider(providerAddress); - assert.equal(provider.status, false, "Provider status should be false"); - }); - describe("function getProvider should", () => { - it("should fail if provider does not exist", async () => { - await truffleAssertions.reverts( - instance.getProvider(accounts[8]), - "LBC001" - ); - }) - it("should return correct state of the provider", async () => { - let provider = await instance.getProvider(accounts[0]); - expect(provider.status).to.be.false; - expect(provider.name).to.be.equal("First contract"); - expect(provider.apiBaseUrl).to.be.equal("http://localhost/api"); - expect(provider.provider).to.be.equal(accounts[0]); - expect(provider.providerType).to.be.equal("both"); - provider = await instance.getProvider(accounts[2]); - expect(provider.status).to.be.true; - expect(provider.name).to.be.equal("Second contract"); - expect(provider.apiBaseUrl).to.be.equal("http://localhost/api"); - expect(provider.provider).to.be.equal(accounts[2]); - expect(provider.providerType).to.be.equal("both"); - }) - }) - it("should enable provider", async () => { - const providerAddress = accounts[0]; - await instance.setProviderStatus(1, true, { from: providerAddress }); - const provider = await instance.getProvider(providerAddress); - assert.equal(provider.status, true, "Provider status should be false"); - }); - it("should disable provider as provider owner", async () => { - const providerAddress = accounts[0]; - await instance.setProviderStatus(1, false); - const provider = await instance.getProvider(providerAddress); - assert.equal(provider.status, false, "Provider status should be false"); - }); - it("should fail disabling provider as non owners", async () => { - await truffleAssertions.reverts( - instance.setProviderStatus(1, false, { from: accounts[1] }) - ); - }); - it("should match lp address with address retrieved from ecrecover", async () => { - let quote = utils.getTestQuote( - instance.address, - accounts[1], - "0x00", - liquidityProviderRskAddress, - accounts[2], - web3.utils.toBN(1) - ); - - let quoteHash = await instance.hashQuote(utils.asArray(quote)); - let sig = await web3.eth.sign(quoteHash, liquidityProviderRskAddress); - let signer = web3.eth.accounts.recover(quoteHash, sig); - - expect(liquidityProviderRskAddress).to.be.equal(signer); - - let sameSigner = await signatureValidatorInstance.verify( - liquidityProviderRskAddress, - quoteHash, - sig - ); - expect(sameSigner).to.be.true; - }); - - it("should call contract for user", async () => { - let rskRefundAddress = accounts[2]; - let destAddr = mock.address; - let data = web3.eth.abi.encodeFunctionCall(mock.abi[1], ["12"]); - let quote = utils.getTestQuote( - instance.address, - destAddr, - data, - liquidityProviderRskAddress, - rskRefundAddress, - web3.utils.toBN("20000000000000000000") // 20 RBTCs - ); - - let btcRawTransaction = "0x101"; - let partialMerkleTree = "0x202"; - let height = 10; - let peginAmount = quote.val.add(quote.callFee); - let initialLPBalance = await instance.getBalance( - liquidityProviderRskAddress - ); - let initialLBCBalance = await web3.eth.getBalance(instance.address); - let quoteHash = await instance.hashQuote(utils.asArray(quote)); - let signature = await web3.eth.sign(quoteHash, liquidityProviderRskAddress); - - let firstConfirmationTime = utils.reverseHexBytes( - web3.utils.toHex(quote.agreementTime + 300).substring(2) - ); - let nConfirmationTime = utils.reverseHexBytes( - web3.utils.toHex(quote.agreementTime + 600).substring(2) - ); - let firstHeader = - "0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + - firstConfirmationTime + - "0000000000000000"; - let nHeader = - "0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + - nConfirmationTime + - "0000000000000000"; - - await bridgeMockInstance.setPegin(quoteHash, { value: peginAmount }); - await bridgeMockInstance.setHeader(height, firstHeader); - await bridgeMockInstance.setHeader( - height + quote.depositConfirmations - 1, - nHeader - ); - await mock.set(0); - - let initialLPDeposit = await instance.getCollateral( - liquidityProviderRskAddress - ); - let cfuTx = await instance.callForUser(utils.asArray(quote), { - value: quote.val, - }); - - let currentLPBalance = await instance.getBalance( - liquidityProviderRskAddress - ); - - expect(currentLPBalance).to.be.a.bignumber.eq(initialLPBalance); - - let amount = await instance.registerPegIn.call( - utils.asArray(quote), - signature, - btcRawTransaction, - partialMerkleTree, - height - ); - - await instance.registerPegIn( - utils.asArray(quote), - signature, - btcRawTransaction, - partialMerkleTree, - height - ); - - let finalLPBalance = await instance.getBalance(liquidityProviderRskAddress); - let finalLBCBalance = await web3.eth.getBalance(instance.address); - let finalLPDeposit = await instance.getCollateral( - liquidityProviderRskAddress - ); - - let lpBal = web3.utils - .toBN(finalLPBalance) - .sub(web3.utils.toBN(initialLPBalance)); - let lbcBal = web3.utils - .toBN(finalLBCBalance) - .sub(web3.utils.toBN(initialLBCBalance)); - expect(peginAmount).to.be.a.bignumber.eq(amount); - expect(peginAmount).to.be.a.bignumber.eq(lpBal); - expect(peginAmount.sub(quote.productFeeAmount)).to.be.a.bignumber.eq(lbcBal); - expect(initialLPDeposit).to.be.a.bignumber.eq(finalLPDeposit); - truffleAssertions.eventEmitted(cfuTx, "CallForUser", { - from: quote.liquidityProviderRskAddress, - dest: quote.destAddr, - value: quote.val, - data: quote.data, - success: true, - quoteHash: quoteHash, - }); - let finalValue = await mock.check(); - expect(web3.utils.toBN(12)).to.be.a.bignumber.eq(finalValue); - }); - - it("should fail when withdraw amount greater than of sender balance", async () => { - await instance.deposit({ value: web3.utils.toBN("100000000") }); - await truffleAssertions.reverts( - instance.withdraw(web3.utils.toBN("99999999999999999999")), - "LBC019" - ); - await instance.withdraw(web3.utils.toBN("100000000")); - }); - - it("should fail when liquidityProdvider try to withdraw collateral without resign postion as liquidity provider before", async () => { - const lpAddress = accounts[6]; - await instance.register( - "First contract", - "http://localhost/api", - true, - "both", - { - from: lpAddress, - value: utils.LP_COLLATERAL, - } - ); - await instance.addCollateral({ value: web3.utils.toBN("100000000"), from: lpAddress }); - - await truffleAssertions.reverts( - instance.withdrawCollateral({ from: lpAddress }), - "LBC021" - ); - await instance.resign({ from: lpAddress }); - await utils.mineBlocks(utils.RESIGN_DELAY_BLOCKS); - await instance.withdrawCollateral({ from: lpAddress }); - }); - - it("should fail when liquidityProdvider resign two times", async () => { - const lpAddress = accounts[3]; - await instance.register( - "First contract", - "http://localhost/api", - true, - "both", - { - from: lpAddress, - value: utils.LP_COLLATERAL, - } - ); - await instance.resign({ from: lpAddress }); - await truffleAssertions.reverts(instance.resign({ from: lpAddress }), "LBC001"); - await utils.mineBlocks(utils.RESIGN_DELAY_BLOCKS); - await instance.withdrawCollateral({ from: lpAddress }); - }); - - it("should deposit a value to increase balance of liquidity provider", async () => { - const value = web3.utils.toBN("100000000"); - const tx = await instance.deposit({ value }); - truffleAssertions.eventEmitted(tx, "BalanceIncrease", { - dest: liquidityProviderRskAddress, - amount: value, - }); - }); - - it("should fail on contract call due to invalid lbc address", async () => { - let rskRefundAddress = accounts[2]; - let destAddr = mock.address; - let data = web3.eth.abi.encodeFunctionCall(mock.abi[1], ["12"]); - let signature = "0x00"; - let btcRawTransaction = "0x101"; - let partialMerkleTree = "0x202"; - let height = 10; - let quote = utils.getTestQuote( - accounts[0], // non-LBC address - destAddr, - data, - liquidityProviderRskAddress, - rskRefundAddress, - web3.utils.toBN(0) - ); - - await truffleAssertions.reverts( - instance.hashQuote.call(utils.asArray(quote)), - "LBC051" - ); - - await truffleAssertions.reverts( - instance.callForUser.call(utils.asArray(quote), { value: quote.val }), - "LBC051" - ); - - await truffleAssertions.reverts( - instance.registerPegIn.call( - utils.asArray(quote), - signature, - btcRawTransaction, - partialMerkleTree, - height - ), - "LBC051" - ); - }); - - it("should fail on contract call due to invalid contract address", async () => { - let rskRefundAddress = accounts[2]; - let destAddr = bridgeMockInstance.address; - let data = web3.eth.abi.encodeFunctionCall(mock.abi[1], ["12"]); - let signature = "0x00"; - let btcRawTransaction = "0x101"; - let partialMerkleTree = "0x202"; - let height = 10; - let quote = utils.getTestQuote( - instance.address, - destAddr, - data, - liquidityProviderRskAddress, - rskRefundAddress, - web3.utils.toBN(0) - ); - - await truffleAssertions.reverts( - instance.hashQuote.call(utils.asArray(quote)), - "LBC052" - ); - - await truffleAssertions.reverts( - instance.callForUser.call(utils.asArray(quote), { value: quote.val }), - "LBC052" - ); - - await truffleAssertions.reverts( - instance.registerPegIn.call( - utils.asArray(quote), - signature, - btcRawTransaction, - partialMerkleTree, - height - ), - "LBC052" - ); - }); - - it("should fail on contract call due to invalid user btc refund address", async () => { - let rskRefundAddress = accounts[2]; - let destAddr = mock.address; - let data = web3.eth.abi.encodeFunctionCall(mock.abi[1], ["12"]); - let signature = "0x00"; - let btcRawTransaction = "0x101"; - let partialMerkleTree = "0x202"; - let height = 10; - let quote = utils.getTestQuote( - instance.address, - destAddr, - data, - liquidityProviderRskAddress, - rskRefundAddress, - web3.utils.toBN(0) - ); - for (let addr of [ - "0x0000000000000000000000000000000000000012" /* 20 bytes */, - "0x00000000000000000000000000000000000000000012" /* 22 bytes */, - ]) { - quote.userBtcRefundAddress = addr; - - await truffleAssertions.reverts( - instance.hashQuote.call(utils.asArray(quote)), - "LBC053" - ); - - await truffleAssertions.reverts( - instance.callForUser.call(utils.asArray(quote), { value: quote.val }), - "LBC053" - ); - - await truffleAssertions.reverts( - instance.registerPegIn.call( - utils.asArray(quote), - signature, - btcRawTransaction, - partialMerkleTree, - height - ), - "LBC053" - ); - } - }); - - it("should fail on contract call due to invalid lp btc address", async () => { - let rskRefundAddress = accounts[2]; - let destAddr = mock.address; - let data = web3.eth.abi.encodeFunctionCall(mock.abi[1], ["12"]); - let signature = "0x00"; - let btcRawTransaction = "0x101"; - let partialMerkleTree = "0x202"; - let height = 10; - let quote = utils.getTestQuote( - instance.address, - destAddr, - data, - liquidityProviderRskAddress, - rskRefundAddress, - web3.utils.toBN(0) - ); - - for (let addr of [ - "0x0000000000000000000000000000000000000012" /* 20 bytes */, - "0x00000000000000000000000000000000000000000012" /* 22 bytes */, - ]) { - quote.liquidityProviderBtcAddress = addr; - - await truffleAssertions.reverts( - instance.hashQuote.call(utils.asArray(quote)), - "LBC054" - ); - - await truffleAssertions.reverts( - instance.callForUser.call(utils.asArray(quote), { value: quote.val }), - "LBC054" - ); - - await truffleAssertions.reverts( - instance.registerPegIn.call( - utils.asArray(quote), - signature, - btcRawTransaction, - partialMerkleTree, - height - ), - "LBC054" - ); - } - }); - - it("should fail on contract call due to quote value+fee being below min peg-in", async () => { - let rskRefundAddress = accounts[2]; - let destAddr = mock.address; - let data = web3.eth.abi.encodeFunctionCall(mock.abi[1], ["12"]); - let signature = "0x00"; - let btcRawTransaction = "0x101"; - let partialMerkleTree = "0x202"; - let height = 10; - let quote = utils.getTestQuote( - instance.address, - destAddr, - data, - liquidityProviderRskAddress, - rskRefundAddress, - web3.utils.toBN(0) - ); - quote.productFeeAmount = web3.utils.toBN(0) - - await truffleAssertions.reverts( - instance.hashQuote.call(utils.asArray(quote)), - "LBC055" - ); - - await truffleAssertions.reverts( - instance.callForUser.call(utils.asArray(quote), { value: quote.val }), - "LBC055" - ); - - await truffleAssertions.reverts( - instance.registerPegIn.call( - utils.asArray(quote), - signature, - btcRawTransaction, - partialMerkleTree, - height - ), - "LBC055" - ); - }); - - it("should transfer value for user", async () => { - let rskRefundAddress = accounts[2]; - let destAddr = accounts[1]; - let lbcAddress = instance.address; - let quote = utils.getTestQuote( - lbcAddress, - destAddr, - "0x00", - liquidityProviderRskAddress, - rskRefundAddress, - web3.utils.toBN(10) - ); - - let btcRawTransaction = "0x101"; - let partialMerkleTree = "0x202"; - let height = 10; - let initialUserBalance = await web3.eth.getBalance(destAddr); - let initialLPBalance = await instance.getBalance( - liquidityProviderRskAddress - ); - let initialLBCBalance = await web3.eth.getBalance(instance.address); - let peginAmount = quote.val.add(quote.callFee).add(quote.productFeeAmount).add(quote.gasFee); - let quoteHash = await instance.hashQuote(utils.asArray(quote)); - let signature = await web3.eth.sign(quoteHash, liquidityProviderRskAddress); - let firstConfirmationTime = utils.reverseHexBytes( - web3.utils.toHex(quote.agreementTime + 300).substring(2) - ); - let nConfirmationTime = utils.reverseHexBytes( - web3.utils.toHex(quote.agreementTime + 600).substring(2) - ); - let firstHeader = - "0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + - firstConfirmationTime + - "0000000000000000"; - let nHeader = - "0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + - nConfirmationTime + - "0000000000000000"; - - await bridgeMockInstance.setPegin(quoteHash, { value: peginAmount }); - await bridgeMockInstance.setHeader(height, firstHeader); - await bridgeMockInstance.setHeader(height + quote.depositConfirmations - 1, nHeader); - let initialLPDeposit = await instance.getCollateral( - liquidityProviderRskAddress - ); - - let cfuTx = await instance.callForUser(utils.asArray(quote), { - value: quote.val, - }); - - let currentLPBalance = await instance.getBalance( - liquidityProviderRskAddress - ); - expect(currentLPBalance).to.be.a.bignumber.eq(initialLPBalance); - - let amount = await instance.registerPegIn.call( - utils.asArray(quote), - signature, - btcRawTransaction, - partialMerkleTree, - height - ); - - const registerPegin = await instance.registerPegIn( - utils.asArray(quote), - signature, - btcRawTransaction, - partialMerkleTree, - height - ); - - let finalLPBalance = await instance.getBalance(liquidityProviderRskAddress); - let finalLBCBalance = await web3.eth.getBalance(instance.address); - let finalUserBalance = await web3.eth.getBalance(destAddr); - let finalLPDeposit = await instance.getCollateral( - liquidityProviderRskAddress - ); - - let lbcBal = web3.utils - .toBN(finalLBCBalance) - .sub(web3.utils.toBN(initialLBCBalance)); - let lpBal = web3.utils - .toBN(finalLPBalance) - .sub(web3.utils.toBN(initialLPBalance)); - let usrBal = web3.utils - .toBN(finalUserBalance) - .sub(web3.utils.toBN(initialUserBalance)); - truffleAssertions.eventEmitted(registerPegin, "DaoFeeSent", { - quoteHash: quoteHash, - amount: quote.productFeeAmount - }); - truffleAssertions.eventEmitted(cfuTx, "CallForUser", { - from: quote.liquidityProviderRskAddress, - dest: quote.destAddr, - value: quote.val, - data: quote.data, - success: true, - quoteHash: quoteHash, - }); - expect(peginAmount).to.be.a.bignumber.eq(amount); - expect(usrBal).to.be.a.bignumber.eq(quote.val); - expect(lbcBal).to.be.a.bignumber.eq(peginAmount.sub(quote.productFeeAmount)); - expect(lpBal).to.be.a.bignumber.eq(peginAmount.sub(quote.productFeeAmount)); - expect(finalLPDeposit).to.be.a.bignumber.eq(initialLPDeposit); - }); - - it("Should not generate transaction to DAO when product fee is 0 in registerPegIn", async () => { - const daoFeeCollectorInitialBalance = await web3.eth.getBalance(accounts[8]); - let quote = utils.getTestQuote( - instance.address, - accounts[1], - "0x00", - liquidityProviderRskAddress, - accounts[2], - web3.utils.toBN(100) - ); - quote.productFeeAmount = web3.utils.toBN(0) - - let btcRawTransaction = "0x101"; - let partialMerkleTree = "0x202"; - let height = 10; - let peginAmount = quote.val.add(quote.callFee).add(quote.productFeeAmount).add(quote.gasFee); - let quoteHash = await instance.hashQuote(utils.asArray(quote)); - let signature = await web3.eth.sign(quoteHash, liquidityProviderRskAddress); - let firstConfirmationTime = utils.reverseHexBytes( - web3.utils.toHex(quote.agreementTime + 300).substring(2) - ); - let nConfirmationTime = utils.reverseHexBytes( - web3.utils.toHex(quote.agreementTime + 600).substring(2) - ); - let firstHeader = - "0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + - firstConfirmationTime + - "0000000000000000"; - let nHeader = - "0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + - nConfirmationTime + - "0000000000000000"; - - await bridgeMockInstance.setPegin(quoteHash, { value: peginAmount }); - await bridgeMockInstance.setHeader(height, firstHeader); - await bridgeMockInstance.setHeader(height + quote.depositConfirmations - 1, nHeader); - - await instance.callForUser(utils.asArray(quote), { value: quote.val }); - - await instance.registerPegIn.call( - utils.asArray(quote), - signature, - btcRawTransaction, - partialMerkleTree, - height - ); - - const registerPegin = await instance.registerPegIn( - utils.asArray(quote), - signature, - btcRawTransaction, - partialMerkleTree, - height - ); - - const daoFeeCollectorFinalBalance = await web3.eth.getBalance(accounts[8]); - expect(daoFeeCollectorFinalBalance).to.be.a.bignumber.eq(web3.utils.toBN(daoFeeCollectorInitialBalance)); - truffleAssertions.eventNotEmitted(registerPegin, "DaoFeeSent", { - quoteHash: quoteHash, - amount: quote.productFeeAmount - }); - }); - - it("should resign", async () => { - let lbcAddress = instance.address; - const lpAddress = accounts[5]; - await instance.register( - "First contract", - "http://localhost/api", - true, - "both", - { - from: lpAddress, - value: utils.LP_COLLATERAL, - } - ); - let initialLPBalance = await instance.getBalance( - lpAddress - ); - let initialLBCBalance = await web3.eth.getBalance(lbcAddress); - const initialPeginCollateral = await instance.getCollateral(lpAddress); - const initialPegoutCollateral = await instance.getPegoutCollateral(lpAddress); - const totalInitialCollateral = web3.utils.toBN(initialPeginCollateral.add(initialPegoutCollateral)); - let resignTx = await instance.resign({ from: lpAddress }); - let withdrawTx = await instance.withdraw(initialLPBalance, { from: lpAddress }); - - const lpBalanceAfterResign = await instance.getBalance(lpAddress); - const lbcBalanceAfterResign = await web3.eth.getBalance(lbcAddress); - - let lbcCurrBal = web3.utils - .toBN(initialLBCBalance) - .sub(web3.utils.toBN(lbcBalanceAfterResign)); - expect(initialLPBalance).to.be.a.bignumber.eq(lbcCurrBal); - expect(lpBalanceAfterResign).to.be.a.bignumber.eq(web3.utils.toBN(0)); - - await utils.mineBlocks(utils.RESIGN_DELAY_BLOCKS); - - const initialLpRbtc = await web3.eth.getBalance(lpAddress).then(res => web3.utils.toBN(res)); - const withdrawCollateralTx = await instance.withdrawCollateral({ from: lpAddress }); - const finalLpRbtc = await web3.eth.getBalance(lpAddress).then(res => web3.utils.toBN(res)); - const withdrawCollateralGas = web3.utils.toBN(withdrawCollateralTx.receipt.cumulativeGasUsed).mul(web3.utils.toBN(withdrawCollateralTx.receipt.effectiveGasPrice)) - - const finalLpPeginCollateral = await instance.getCollateral(lpAddress); - const finalLpPegoutCollateral = await instance.getPegoutCollateral(lpAddress); - const totalFinalCollateral = finalLpPeginCollateral.add(finalLpPegoutCollateral); - const finalLbcBalance = await web3.eth.getBalance(lbcAddress); - const lbcCollateral = web3.utils - .toBN(lbcBalanceAfterResign) - .sub(web3.utils.toBN(finalLbcBalance)); - truffleAssertions.eventEmitted(resignTx, "Resigned", { - from: lpAddress, - }); - truffleAssertions.eventEmitted(withdrawTx, "Withdrawal", { - from: lpAddress, - amount: initialLPBalance, - }); - truffleAssertions.eventEmitted(withdrawCollateralTx, "WithdrawCollateral", { - from: lpAddress, - amount: web3.utils.toBN(totalInitialCollateral.toString()), - }); - expect(lbcCollateral).to.be.a.bignumber.eq(totalInitialCollateral); - expect(web3.utils.toBN(0)).to.be.a.bignumber.eq(totalFinalCollateral); - expect(finalLpRbtc.sub(initialLpRbtc).add(withdrawCollateralGas)).to.be.a.bignumber.eq(totalInitialCollateral); - }); - - ["p2pkh", "p2sh", "p2wpkh", "p2wsh", "p2tr"].forEach((scriptType) => { - it(`Should refundPegOut for a ${scriptType.toUpperCase()} transaction `, async () => { - await instance.addPegoutCollateral({ - value: web3.utils.toWei("30000", "wei"), - from: liquidityProviderRskAddress, - }); - const blockHeaderHash = - "0x02327049330a25d4d17e53e79f478cbb79c53a509679b1d8a1505c5697afb326"; - const partialMerkleTree = - "0x02327049330a25d4d17e53e79f478cbb79c53a509679b1d8a1505c5697afb426"; - const merkleBranchHashes = [ - "0x02327049330a25d4d17e53e79f478cbb79c53a509679b1d8a1505c5697afb326", - ]; - - const getBalances = () => - Promise.all([ - instance.getBalance(liquidityProviderRskAddress), - web3.eth.getBalance(instance.address), - ]); - - const [lpBalanceBeforeDeposit, contractBalanceBefore] = await getBalances(); - - let quote = utils.getTestPegOutQuote( - instance.address, //lbc address - liquidityProviderRskAddress, - accounts[2], - web3.utils.toBN("1000000000000001"), - scriptType - ); - quote.transferConfirmations = 0; - - // configure mocked block on mockBridge - const firstConfirmationTime = utils.reverseHexBytes( - web3.utils.toHex(quote.agreementTimestamp + 100).substring(2) - ); - const firstHeader = - "0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + - firstConfirmationTime + - "0000000000000000"; - await bridgeMockInstance.setHeaderByHash(blockHeaderHash, firstHeader); - - const quoteHash = await instance.hashPegoutQuote(utils.asArray(quote)); - const signature = await web3.eth.sign(quoteHash, liquidityProviderRskAddress); - const msgValue = quote.value.add(quote.callFee).add(quote.productFeeAmount).add(quote.gasFee); - const pegOut = await instance.depositPegout(utils.asArray(quote), signature, { - value: msgValue.toNumber() - }); - await truffleAssertions.eventEmitted(pegOut, "PegOutDeposit"); - - const btcTx = await utils.generateRawTx(instance, quote, scriptType); - const [lpBalanceAfterDeposit, contractBalanceAfter] = await getBalances(); - - expect(lpBalanceBeforeDeposit.toString()).to.be.eq( - lpBalanceAfterDeposit.toString() - ); - expect(+contractBalanceAfter).to.be.eq(+contractBalanceBefore + msgValue.toNumber()); - - const lpBalanceBeforeRefund = await web3.eth.getBalance( - liquidityProviderRskAddress - ); - const refund = await instance.refundPegOut( - quoteHash, - btcTx, - blockHeaderHash, - partialMerkleTree, - merkleBranchHashes - ); - const lpBalanceAfterRefund = await web3.eth.getBalance( - liquidityProviderRskAddress - ); - const usedInGas = refund.receipt.gasUsed * refund.receipt.effectiveGasPrice; - const refundedAmount = quote.value.add(quote.callFee).add(quote.gasFee); - truffleAssertions.eventEmitted(refund, "DaoFeeSent", { - quoteHash: quoteHash, - amount: quote.productFeeAmount - }); - expect(lpBalanceAfterRefund).to.be.a.bignumber.eq( - web3.utils.toBN(lpBalanceBeforeRefund).add(refundedAmount).sub(web3.utils.toBN(usedInGas)) - ); - truffleAssertions.eventEmitted(refund, "PegOutRefunded", { quoteHash }); - }); - }); - - it("Should refundPegOut with wrong rounding", async () => { - await instance.addPegoutCollateral({ - value: web3.utils.toWei("30000", "wei"), - from: liquidityProviderRskAddress, - }); - const blockHeaderHash = - "0x02327049330a25d4d17e53e79f478cbb79c53a509679b1d8a1505c5697afb326"; - const partialMerkleTree = - "0x02327049330a25d4d17e53e79f478cbb79c53a509679b1d8a1505c5697afb426"; - const merkleBranchHashes = [ - "0x02327049330a25d4d17e53e79f478cbb79c53a509679b1d8a1505c5697afb326", - ]; - - const getBalances = () => - Promise.all([ - instance.getBalance(liquidityProviderRskAddress), - web3.eth.getBalance(instance.address), - ]); - - const [userPegInBalanceBefore, contractBalanceBefore] = await getBalances(); - - const now = Math.floor(Date.now() / 1000); - const quote = { - lbcAddress: instance.address, - liquidityProviderRskAddress: liquidityProviderRskAddress, - btcRefundAddress: bs58check.decode("2Mxo7RNBLYVxFhiz4MHbr1UyDWgzCReBRBx"), - rskRefundAddress: "0x399F56CD72CA88f3873b3698A395083A44a9A641", - lpBtcAddr: bs58check.decode("mfdi3vowMn2YRTSmXKTNvg4PWAZCaeLjHZ"), - callFee: web3.utils.toBN("300000000000000"), - penaltyFee: web3.utils.toBN("10000000000000"), - nonce: web3.utils.toBN("154806842258897340"), - depositAddr: bs58check.decode("2Mxo7RNBLYVxFhiz4MHbr1UyDWgzCReBRBx"), - value: web3.utils.toBN("72160329123080000"), - agreementTimestamp: now, - depositDateLimit: now + 3600, - depositConfirmations: 10, - transferConfirmations: 2, - transferTime: 3600, - expireDate: now + 10800, - expireBlocks: 6946482, - gasFee: web3.utils.toBN("11290000000000"), - productFeeAmount: web3.utils.toBN("0") - }; - - // configure mocked block on mockBridge - const firstConfirmationTime = utils.reverseHexBytes( - web3.utils.toHex(quote.agreementTimestamp + 100).substring(2) - ); - const firstHeader = - "0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + - firstConfirmationTime + - "0000000000000000"; - await bridgeMockInstance.setHeaderByHash(blockHeaderHash, firstHeader); - - const quoteHash = await instance.hashPegoutQuote(utils.asArray(quote)); - const signature = await web3.eth.sign(quoteHash, liquidityProviderRskAddress); - const msgValue = quote.value.add(quote.callFee).add(quote.productFeeAmount).add(quote.gasFee); - await instance.depositPegout(utils.asArray(quote), signature, { value: msgValue }); - - const btcTx = `0x0200000001c58d201925a80f49c3160bd97be969453d64c311d7c7a2c2c31318fdeedb8eb7020000006a47304402201944d92c0afd1524ac763c709269f70ca3a7597deffa8d732dad5fb1318ff5bc02205970622ade1d31212ad95ee62926d0acdf7e61e481c118acd02b9c9d29e9913b012102361cffc83b11d361119acd4e57c7103f94bce4ee990e3f2d3fac19017fe076bffdffffff03a01b6e000000000017a9143ce07516dd6c85b69b4abec139fbac01cf84fec0870000000000000000226a20${quoteHash.slice(2)}ba9db202000000001976a9140147059622479e482bc1bf7f7ca8433bbfc3a34888ac00000000`; - const [userPegInBalanceAfter, contractBalanceAfter] = await getBalances(); - - expect(userPegInBalanceBefore.toString()).to.be.eq(userPegInBalanceAfter.toString()); - expect(contractBalanceAfter.toString()).to.be.eq(web3.utils.toBN(contractBalanceBefore).add(msgValue).toString()); - - const lpBalanceBefore = await web3.eth.getBalance(liquidityProviderRskAddress); - const refund = await instance.refundPegOut( - quoteHash, - btcTx, - blockHeaderHash, - partialMerkleTree, - merkleBranchHashes - ); - const lpBalanceAfter = await web3.eth.getBalance(liquidityProviderRskAddress); - const usedInGas = refund.receipt.gasUsed * refund.receipt.effectiveGasPrice; - const refundedAmount = quote.value.add(quote.callFee); - expect(lpBalanceAfter).to.be.a.bignumber.eq( - web3.utils.toBN(lpBalanceBefore).add(refundedAmount).sub(web3.utils.toBN(usedInGas)) - ); - truffleAssertions.eventEmitted(refund, "PegOutRefunded"); - }); - - it("Should not generate transaction to DAO when product fee is 0 in refundPegOut", async () => { - await instance.addPegoutCollateral({ - value: web3.utils.toWei("30000", "wei"), - from: liquidityProviderRskAddress, - }); - const daoFeeCollectorBefore = await web3.eth.getBalance(accounts[8]); - const blockHeaderHash = - "0x02327049330a25d4d17e53e79f478cbb79c53a509679b1d8a1505c5697afb326"; - const partialMerkleTree = - "0x02327049330a25d4d17e53e79f478cbb79c53a509679b1d8a1505c5697afb426"; - const merkleBranchHashes = [ - "0x02327049330a25d4d17e53e79f478cbb79c53a509679b1d8a1505c5697afb326", - ]; - - let quote = utils.getTestPegOutQuote( - instance.address, //lbc address - liquidityProviderRskAddress, - accounts[2], - web3.utils.toBN("1000001234567899") - ); - quote.transferConfirmations = 0; - quote.productFeeAmount = web3.utils.toBN(0); - - // configure mocked block on mockBridge - const firstConfirmationTime = utils.reverseHexBytes( - web3.utils.toHex(quote.agreementTimestamp + 100).substring(2) - ); - const firstHeader = - "0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + - firstConfirmationTime + - "0000000000000000"; - await bridgeMockInstance.setHeaderByHash(blockHeaderHash, firstHeader); - - const quoteHash = await instance.hashPegoutQuote(utils.asArray(quote)); - const signature = await web3.eth.sign(quoteHash, liquidityProviderRskAddress); - const msgValue = quote.value.add(quote.callFee).add(quote.gasFee); - const pegOut = await instance.depositPegout(utils.asArray(quote), signature, { - value: msgValue.toNumber() - }); - await truffleAssertions.eventEmitted(pegOut, "PegOutDeposit"); - - const btcTx = await utils.generateRawTx(instance, quote); - const refund = await instance.refundPegOut( - quoteHash, - btcTx, - blockHeaderHash, - partialMerkleTree, - merkleBranchHashes - ); - const daoFeeCollectorAfter = await web3.eth.getBalance(accounts[8]); - expect(daoFeeCollectorBefore).to.be.a.bignumber.eq(daoFeeCollectorAfter) - truffleAssertions.eventNotEmitted(refund, "DaoFeeSent"); - }); - - it("Should not allow user to re deposit a refunded quote", async () => { - await instance.addPegoutCollateral({ - value: web3.utils.toWei("30000", "wei"), - from: liquidityProviderRskAddress, - }); - const blockHeaderHash = - "0x02327049330a25d4d17e53e79f478cbb79c53a509679b1d8a1505c5697afb326"; - const partialMerkleTree = - "0x02327049330a25d4d17e53e79f478cbb79c53a509679b1d8a1505c5697afb426"; - const merkleBranchHashes = [ - "0x02327049330a25d4d17e53e79f478cbb79c53a509679b1d8a1505c5697afb326", - ]; - - let quote = utils.getTestPegOutQuote( - instance.address, //lbc address - liquidityProviderRskAddress, - accounts[2], - web3.utils.toBN("1000000000000001") - ); - quote.transferConfirmations = 0; - quote.agreementTimestamp = Math.round(new Date().getTime() / 1000) - - // configure mocked block on mockBridge - const firstConfirmationTime = utils.reverseHexBytes( - web3.utils.toHex(quote.agreementTimestamp + 300).substring(2) - ); - const firstHeader = - "0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + - firstConfirmationTime + - "0000000000000000"; - await bridgeMockInstance.setHeaderByHash(blockHeaderHash, firstHeader); - - const quoteHash = await instance.hashPegoutQuote(utils.asArray(quote)); - const signature = await web3.eth.sign(quoteHash, liquidityProviderRskAddress); - const msgValue = quote.value.add(quote.callFee).add(quote.productFeeAmount).add(quote.gasFee); - const pegOut = await instance.depositPegout(utils.asArray(quote), signature, { value: msgValue.toNumber() }); - await truffleAssertions.eventEmitted(pegOut, "PegOutDeposit"); - - const btcTx = await utils.generateRawTx(instance, quote); - const refund = await instance.refundPegOut( - quoteHash, - btcTx, - blockHeaderHash, - partialMerkleTree, - merkleBranchHashes - ); - truffleAssertions.eventEmitted(refund, "PegOutRefunded"); - - const secondDeposit = instance.depositPegout(utils.asArray(quote), signature, { value: msgValue.toNumber() }); - await truffleAssertions.reverts(secondDeposit, "LBC064"); - }); - - it("Should validate that the quote was processed on refundPegOut", async () => { - await instance.addPegoutCollateral({ - value: web3.utils.toWei("30000", "wei"), - from: liquidityProviderRskAddress, - }); - const btcTxHash = - "0xa0cad11b688340cfbb8515d4deb7d37a8c67ea70a938578295f28b6cd8b5aade"; - const blockHeaderHash = - "0x02327049330a25d4d17e53e79f478cbb79c53a509679b1d8a1505c5697afb326"; - const partialMerkleTree = - "0x02327049330a25d4d17e53e79f478cbb79c53a509679b1d8a1505c5697afb426"; - const merkleBranchHashes = [ - "0x02327049330a25d4d17e53e79f478cbb79c53a509679b1d8a1505c5697afb326", - ]; - - let quote = utils.getTestPegOutQuote( - instance.address, - liquidityProviderRskAddress, - accounts[2], - web3.utils.toBN("1000000000000001") - ); - quote.transferConfirmations = 0; - - const quoteHash = await instance.hashPegoutQuote(utils.asArray(quote)); - const refund = instance.refundPegOut( - quoteHash, - btcTxHash, - blockHeaderHash, - partialMerkleTree, - merkleBranchHashes - ); - await truffleAssertions.reverts(refund, "LBC042"); - }); - - it("Should revert if LP tries to refund a pegout thats already been refunded by user", async () => { - const blockHeaderHash = - "0x02327049330a25d4d17e53e79f478cbb79c53a509679b1d8a1505c5697afb326"; - const partialMerkleTree = - "0x02327049330a25d4d17e53e79f478cbb79c53a509679b1d8a1505c5697afb426"; - const merkleBranchHashes = [ - "0x02327049330a25d4d17e53e79f478cbb79c53a509679b1d8a1505c5697afb326", - ]; - - let quote = utils.getTestPegOutQuote( - instance.address, //lbc address - liquidityProviderRskAddress, - accounts[2], - web3.utils.toBN("1000000000000000") - ); - // so its expired after deposit - quote.expireBlock = await web3.eth.getBlock("latest").then(block => block.number + 1); - quote.expireDate = Math.round(new Date().getTime() / 1000); - - const quoteHash = await instance.hashPegoutQuote(quote); - const signature = await web3.eth.sign(quoteHash, liquidityProviderRskAddress); - const msgValue = quote.value.add(quote.callFee); - const pegOut = await instance.depositPegout(quote, signature, { - value: msgValue.toNumber() - }); - await truffleAssertions.eventEmitted(pegOut, "PegOutDeposit"); - - await utils.timeout(2000); - await instance.addPegoutCollateral({ - value: web3.utils.toWei("30000", "wei"), - from: liquidityProviderRskAddress, - }); - await web3.eth.getBlock("latest") - const tx = await instance.refundUserPegOut(quoteHash); - await truffleAssertions.eventEmitted(tx, "PegOutUserRefunded"); - - const btcTx = await utils.generateRawTx(instance, quote); - const refund = instance.refundPegOut( - quoteHash, - btcTx, - blockHeaderHash, - partialMerkleTree, - merkleBranchHashes - ); - - await truffleAssertions.reverts(refund, "LBC064"); - }); - - it("Should penalize LP if refunds after expiration", async () => { - await instance.addPegoutCollateral({ - value: web3.utils.toWei("30000", "wei"), - from: liquidityProviderRskAddress, - }); - const blockHeaderHash = - "0x02327049330a25d4d17e53e79f478cbb79c53a509679b1d8a1505c5697afb326"; - const partialMerkleTree = - "0x02327049330a25d4d17e53e79f478cbb79c53a509679b1d8a1505c5697afb426"; - const merkleBranchHashes = [ - "0x02327049330a25d4d17e53e79f478cbb79c53a509679b1d8a1505c5697afb326", - ]; - let quote = utils.getTestPegOutQuote( - instance.address, //lbc address - liquidityProviderRskAddress, - accounts[2], - web3.utils.toBN("1000000000000000") - ); - - // configure mocked block on mockBridge - const firstConfirmationTime = utils.reverseHexBytes( - web3.utils.toHex(quote.agreementTimestamp + 300).substring(2) - ); - const firstHeader = - "0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + - firstConfirmationTime + - "0000000000000000"; - await bridgeMockInstance.setHeaderByHash(blockHeaderHash, firstHeader); - - // so its expired after deposit - quote.transferConfirmations = 0 - quote.expireBlock = await web3.eth.getBlock("latest").then(block => block.number + 1); - quote.expireDate = Math.round(new Date().getTime() / 1000); - - const quoteHash = await instance.hashPegoutQuote(utils.asArray(quote)); - const signature = await web3.eth.sign(quoteHash, liquidityProviderRskAddress); - const msgValue = quote.value.add(quote.callFee).add(quote.productFeeAmount).add(quote.gasFee); - const pegOut = await instance.depositPegout(utils.asArray(quote), signature, { - value: msgValue.toNumber() - }); - await truffleAssertions.eventEmitted(pegOut, "PegOutDeposit"); - - await utils.timeout(2000); - await instance.addPegoutCollateral({ - value: web3.utils.toWei("30000", "wei"), - from: liquidityProviderRskAddress, - }); - await web3.eth.getBlock("latest") - - const btcTx = await utils.generateRawTx(instance, quote); - const refund = await instance.refundPegOut( - quoteHash, - btcTx, - blockHeaderHash, - partialMerkleTree, - merkleBranchHashes - ); - truffleAssertions.eventEmitted(refund, "PegOutRefunded"); - truffleAssertions.eventEmitted(refund, "Penalized"); - }); - - it("should fail if provider is not registered for pegout on refundPegout", async () => { - const btcTxHash = - "0xa0cad11b688340cfbb8515d4deb7d37a8c67ea70a938578295f28b6cd8b5aade"; - const blockHeaderHash = - "0x02327049330a25d4d17e53e79f478cbb79c53a509679b1d8a1505c5697afb326"; - const partialMerkleTree = - "0x02327049330a25d4d17e53e79f478cbb79c53a509679b1d8a1505c5697afb426"; - const merkleBranchHashes = [ - "0x02327049330a25d4d17e53e79f478cbb79c53a509679b1d8a1505c5697afb326", - ]; - - let quote = utils.getTestPegOutQuote( - instance.address, //lbc address - liquidityProviderRskAddress, - accounts[4], - web3.utils.toBN("1000000000000000") - ); - quote.transferConfirmations = 0; - - // configure mocked block on mockBridge - const block = await web3.eth.getBlock("latest"); - const firstConfirmationTime = utils.reverseHexBytes( - web3.utils.toHex(quote.agreementTimestamp + 300).substring(2) - ); - const nConfirmationTime = utils.reverseHexBytes( - web3.utils.toHex(quote.agreementTimestamp + 600).substring(2) - ); - const firstHeader = - "0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + - firstConfirmationTime + - "0000000000000000"; - const nHeader = - "0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + - nConfirmationTime + - "0000000000000000"; - await bridgeMockInstance.setHeader(block.timestamp, firstHeader); - await bridgeMockInstance.setHeader( - block.timestamp + quote.depositConfirmations - 1, - nHeader - ); - - await web3.eth.getBlock("latest"); - const quoteHash = await instance.hashPegoutQuote(quote); - const refund = instance.refundPegOut( - quoteHash, - btcTxHash, - blockHeaderHash, - partialMerkleTree, - merkleBranchHashes, - { - from: accounts[7], - } - ); - await truffleAssertions.reverts(refund, "LBC001"); - }); - - it("Should emit event when pegout is deposited", async () => { - const quote = utils.getTestPegOutQuote( - instance.address, //lbc address - liquidityProviderRskAddress, - accounts[2], - web3.utils.toBN("1000000000000000") - ); - const value = web3.utils.toBN("500") - const quoteHash = await instance.hashPegoutQuote(quote); - const signature = await web3.eth.sign(quoteHash, liquidityProviderRskAddress); - const tx = await instance.depositPegout( - quote, - signature, - { value: value.toNumber() } - ); - await truffleAssertions.eventEmitted(tx, "PegOutDeposit", { - quoteHash: quoteHash, - amount: value, - }); - // deposit again an expect an error to ensure quote is stored - const failedTx = instance.depositPegout(quote, signature, { value: value.toNumber() }); - await truffleAssertions.reverts(failedTx, "LBC028"); - }); - - it("Should not allow to deposit less than total required on pegout", async () => { - const quote = utils.getTestPegOutQuote( - instance.address, //lbc address - liquidityProviderRskAddress, - accounts[2], - 1000 - ); - - const quoteHash = await instance.hashPegoutQuote(quote); - const signature = await web3.eth.sign(quoteHash, liquidityProviderRskAddress); - const valueToDeposit = 500 - const tx = instance.depositPegout( - quote, - signature, - { value: valueToDeposit } - ); - - await truffleAssertions.reverts(tx, "LBC063"); - }); - - it("Should not allow to deposit pegout if quote expired", async () => { - const quoteExpiredByBlocks = utils.getTestPegOutQuote( - instance.address, //lbc address - liquidityProviderRskAddress, - accounts[2], - web3.utils.toBN("1000000000000000") - ); - - const quoteHash = await instance.hashPegoutQuote(quoteExpiredByBlocks); - const signature = await web3.eth.sign(quoteHash, liquidityProviderRskAddress); - quoteExpiredByBlocks.expireBlock = await web3.eth.getBlock("latest").then(block => block.number - 1); - const valueToDeposit = 2000 - const revertByBlocks = instance.depositPegout( - quoteExpiredByBlocks, - signature, - { value: valueToDeposit } - ); - - await truffleAssertions.reverts(revertByBlocks, "LBC047"); - - const quoteExpiredByTime = utils.getTestPegOutQuote( - instance.address, //lbc address - liquidityProviderRskAddress, - accounts[2], - web3.utils.toBN("1000000000000000") - ); - quoteExpiredByTime.expireDate = quoteExpiredByTime.agreementTimestamp; - const revertByTime = instance.depositPegout( - quoteExpiredByTime, - signature, - { value: valueToDeposit } - ); - - await truffleAssertions.reverts(revertByTime, "LBC046"); - }); - - it("Should not allow to deposit pegout after deposit date limit", async () => { - const quote = utils.getTestPegOutQuote( - instance.address, //lbc address - liquidityProviderRskAddress, - accounts[2], - web3.utils.toBN("1000000000000000") - ); - - quote.depositDateLimit = quote.agreementTimestamp; - const quoteHash = await instance.hashPegoutQuote(quote); - const signature = await web3.eth.sign(quoteHash, liquidityProviderRskAddress); - const valueToDeposit = 2000 - const tx = instance.depositPegout(quote, signature, { value: valueToDeposit }); - - await truffleAssertions.reverts(tx, "LBC065"); - }); - - it("Should not allow to deposit the same quote twice", async () => { - const quote = utils.getTestPegOutQuote( - instance.address, //lbc address - liquidityProviderRskAddress, - accounts[2], - 1000 - ); - - const quoteHash = await instance.hashPegoutQuote(quote); - const signature = await web3.eth.sign(quoteHash, liquidityProviderRskAddress); - await instance.depositPegout( - quote, - signature, - { value: 1500 } - ); - - const tx = instance.depositPegout( - quote, - signature, - { value: 1500 } - ); - - await truffleAssertions.reverts(tx, "LBC028"); - }); - - - it("Should fail if provider is not registered", async () => { - const lpAddress = accounts[7]; - await instance.register( - "First contract", - "http://localhost/api", - true, - "both", - { - from: lpAddress, - value: utils.LP_COLLATERAL, - } - ); - const quote = utils.getTestPegOutQuote( - instance.address, //lbc address - lpAddress, - accounts[2], - web3.utils.toBN("3000000000000000") - ); - await instance.resign({ from: lpAddress }); - await utils.mineBlocks(utils.RESIGN_DELAY_BLOCKS); - await instance.withdrawCollateral({ from: lpAddress }); - const quoteHash = await instance.hashPegoutQuote(quote); - const signature = await web3.eth.sign(quoteHash, lpAddress); - const tx = instance.depositPegout(quote, signature, { value: web3.utils.toBN("500"), from: lpAddress }); - await truffleAssertions.reverts(tx, "LBC037"); - }); - - it("Should refund user", async () => { - const quoteValue = web3.utils.toBN("4"); - const penaltyValue = web3.utils.toBN("2"); - - let quote = utils.getTestPegOutQuote( - instance.address, //lbc address - liquidityProviderRskAddress, - accounts[1], - quoteValue.toNumber() - ); - quote.penaltyFee = penaltyValue.toNumber(); - - // so its expired after deposit - quote.expireBlock = await web3.eth.getBlock("latest").then(block => block.number + 1); - quote.expireDate = Math.round(new Date().getTime() / 1000) + 1; - - const quoteHash = await instance.hashPegoutQuote(quote); - - const signature = await web3.eth.sign( - quoteHash, - liquidityProviderRskAddress - ); - - - const depositAmount = web3.utils.toBN("5"); - const firstTx = await instance.depositPegout(quote, signature, { value: depositAmount.toNumber() }); - - await truffleAssertions.eventEmitted(firstTx, "PegOutDeposit", { - quoteHash: quoteHash, - amount: depositAmount, - }); - // this is to wait for the quote to expire - await utils.timeout(2500); - await instance.addPegoutCollateral({ - value: web3.utils.toWei("30000", "wei"), - from: liquidityProviderRskAddress, - }); - await web3.eth.getBlock("latest") - - const balanceBefore = await web3.eth.getBalance(quote.rskRefundAddress); - const balanceBeforeBN = web3.utils.toBN(balanceBefore); - - const tx = await instance.refundUserPegOut(quoteHash); - - const balanceAfter = await web3.eth.getBalance(quote.rskRefundAddress); - const balanceAfterBN = web3.utils.toBN(balanceAfter); - - const dif = balanceAfterBN.sub(balanceBeforeBN); - - expect(dif.toNumber()).to.be.eq(quoteValue.toNumber()); - - await truffleAssertions.eventEmitted(tx, "Penalized", { - quoteHash: quoteHash, - penalty: penaltyValue, - liquidityProvider: quote.lpRskAddress, - }); - - await truffleAssertions.eventEmitted(tx, "PegOutUserRefunded", { - quoteHash: quoteHash, - value: quoteValue, - userAddress: quote.rskRefundAddress, - }); - }); - - it("Should validate if user had not deposited yet", async () => { - let quote = utils.getTestPegOutQuote( - instance.address, //lbc address - liquidityProviderRskAddress, - accounts[1], - web3.utils.toBN("1000000000000000") - ); - - // so its always expired - quote.expireDate = quote.agreementTimestamp - quote.expireBlock = 1 - - const quoteHash = await instance.hashPegoutQuote(utils.asArray(quote)); - - const tx = instance.refundUserPegOut(quoteHash); - - await truffleAssertions.reverts(tx, "LBC042"); - }); - - it("Should parse raw btc transaction pay to address script", async () => { - const firstRawTX = "0x0100000001013503c427ba46058d2d8ac9221a2f6fd50734a69f19dae65420191e3ada2d40000000006a47304402205d047dbd8c49aea5bd0400b85a57b2da7e139cec632fb138b7bee1d382fd70ca02201aa529f59b4f66fdf86b0728937a91a40962aedd3f6e30bce5208fec0464d54901210255507b238c6f14735a7abe96a635058da47b05b61737a610bef757f009eea2a4ffffffff0200879303000000001976a9143c5f66fe733e0ad361805b3053f23212e5755c8d88ac0000000000000000426a403938343934346435383039323135366335613139643936356239613735383530326536646263326439353337333135656266343839373336333134656233343700000000"; - const firstTxOutputs = await btcUtils.getOutputs(firstRawTX); - - const firstNullScript = await btcUtils.parseNullDataScript(firstTxOutputs[1].pkScript); - const firstDestinationAddress = await btcUtils.parsePayToPubKeyHash(firstTxOutputs[0].pkScript, false); - const firstValue = firstTxOutputs[0].value; - const firstHash = await btcUtils.hashBtcTx(firstRawTX); - - const secondRawTX = "0x01000000010178a1cf4f2f0cb1607da57dcb02835d6aa8ef9f06be3f74cafea54759a029dc000000006a473044022070a22d8b67050bee57564279328a2f7b6e7f80b2eb4ecb684b879ea51d7d7a31022057fb6ece52c23ecf792e7597448c7d480f89b77a8371dca4700a18088f529f6a012103ef81e9c4c38df173e719863177e57c539bdcf97289638ec6831f07813307974cffffffff02801d2c04000000001976a9143c5f66fe733e0ad361805b3053f23212e5755c8d88ac0000000000000000426a406539346138393731323632396262633966636364316630633034613237386330653130353265623736323666393365396137663130363762343036663035373600000000"; - const secondTxOutputs = await btcUtils.getOutputs(secondRawTX); - - const secondNullScript = await btcUtils.parseNullDataScript(secondTxOutputs[1].pkScript); - const secondDestinationAddress = await btcUtils.parsePayToPubKeyHash(secondTxOutputs[0].pkScript, true); - const secondValue = secondTxOutputs[0].value; - const secondHash = await btcUtils.hashBtcTx(secondRawTX); - - expect(firstNullScript).to.eq("0x4039383439343464353830393231353663356131396439363562396137353835303265366462633264393533373331356562663438393733363331346562333437"); - expect(firstDestinationAddress).to.eq("0x6f3c5f66fe733e0ad361805b3053f23212e5755c8d"); - expect(firstValue).to.eq("60000000"); - expect(firstHash).to.eq("0x03c4522ef958f724a7d2ffef04bd534d9eca74ffc0b28308797d2853bc323ba6"); - - expect(secondNullScript).to.eq("0x4065393461383937313236323962626339666363643166306330346132373863306531303532656237363236663933653961376631303637623430366630353736"); - expect(secondDestinationAddress).to.eq("0x003c5f66fe733e0ad361805b3053f23212e5755c8d"); - expect(secondValue).to.eq("70000000"); - expect(secondHash).to.eq("0xfd4251485dafe36aaa6766b38cf236b5925f23f12617daf286e0e92f73708aa3"); - }); - - it("Should fail on refundPegout if btc tx has op return with incorrect quote hash", async () => { - const blockHeaderHash = - "0x02327049330a25d4d17e53e79f478cbb79c53a509679b1d8a1505c5697afb326"; - const partialMerkleTree = - "0x02327049330a25d4d17e53e79f478cbb79c53a509679b1d8a1505c5697afb426"; - const merkleBranchHashes = [ - "0x02327049330a25d4d17e53e79f478cbb79c53a509679b1d8a1505c5697afb326", - ]; - let quote = utils.getTestPegOutQuote( - instance.address, //lbc address - liquidityProviderRskAddress, - accounts[2], - web3.utils.toBN("1000000000000000") - ); - quote.transferConfirmations = 0; - - // configure mocked block on mockBridge - const firstConfirmationTime = utils.reverseHexBytes( - web3.utils.toHex(quote.agreementTimestamp + 300).substring(2) - ); - const firstHeader = - "0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + - firstConfirmationTime + - "0000000000000000"; - await bridgeMockInstance.setHeaderByHash(blockHeaderHash, firstHeader); - - const msgValue = quote.value.add(quote.callFee); - const quoteHash = await instance.hashPegoutQuote(quote); - const signature = await web3.eth.sign(quoteHash, liquidityProviderRskAddress); - const pegOut = await instance.depositPegout(quote, signature, { - value: msgValue.toNumber() - }); - await truffleAssertions.eventEmitted(pegOut, "PegOutDeposit"); - - quote.transferConfirmations = 5; // to generate another hash - const btcTx = await utils.generateRawTx(instance, quote); - quote.transferConfirmations = 0; - - await truffleAssertions.reverts( - instance.refundPegOut( - quoteHash, - btcTx, - blockHeaderHash, - partialMerkleTree, - merkleBranchHashes - ), - "LBC069" - ); - }); - - it("Should fail on refundPegout if btc tx null data script has wrong format", async () => { - const blockHeaderHash = - "0x02327049330a25d4d17e53e79f478cbb79c53a509679b1d8a1505c5697afb326"; - const partialMerkleTree = - "0x02327049330a25d4d17e53e79f478cbb79c53a509679b1d8a1505c5697afb426"; - const merkleBranchHashes = [ - "0x02327049330a25d4d17e53e79f478cbb79c53a509679b1d8a1505c5697afb326", - ]; - let quote = utils.getTestPegOutQuote( - instance.address, //lbc address - liquidityProviderRskAddress, - accounts[2], - web3.utils.toBN("1000000000000000") - ); - quote.transferConfirmations = 0; - - // configure mocked block on mockBridge - const firstConfirmationTime = utils.reverseHexBytes( - web3.utils.toHex(quote.agreementTimestamp + 300).substring(2) - ); - const firstHeader = - "0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + - firstConfirmationTime + - "0000000000000000"; - await bridgeMockInstance.setHeaderByHash(blockHeaderHash, firstHeader); - - const msgValue = quote.value.add(quote.callFee).add(quote.productFeeAmount).add(quote.gasFee); - const quoteHash = await instance.hashPegoutQuote(utils.asArray(quote)); - const signature = await web3.eth.sign(quoteHash, liquidityProviderRskAddress); - const pegOut = await instance.depositPegout(utils.asArray(quote), signature, { - value: msgValue.toNumber() - }); - await truffleAssertions.eventEmitted(pegOut, "PegOutDeposit"); - - let incorrectSizeByteTx = await utils.generateRawTx(instance, quote); - incorrectSizeByteTx = incorrectSizeByteTx.replace("6a20", "6a40"); - await truffleAssertions.reverts( - instance.refundPegOut( - quoteHash, - incorrectSizeByteTx, - blockHeaderHash, - partialMerkleTree, - merkleBranchHashes - ), - "LBC075" - ); - - let incorrectHashSizeTx = await utils.generateRawTx(instance, quote); - incorrectHashSizeTx = incorrectHashSizeTx.replace("226a20"+quoteHash.slice(2), "216a19"+quoteHash.slice(2, -2)); - await truffleAssertions.reverts( - instance.refundPegOut( - quoteHash, - incorrectHashSizeTx, - blockHeaderHash, - partialMerkleTree, - merkleBranchHashes - ), - "LBC075" - ); - }); - - it("Should fail on refundPegout if btc tx doesn't have correct amount", async () => { - const blockHeaderHash = "0x02327049330a25d4d17e53e79f478cbb79c53a509679b1d8a1505c5697afb326"; - const partialMerkleTree = "0x02327049330a25d4d17e53e79f478cbb79c53a509679b1d8a1505c5697afb426"; - const merkleBranchHashes = [ - "0x02327049330a25d4d17e53e79f478cbb79c53a509679b1d8a1505c5697afb326", - ]; - let quote = utils.getTestPegOutQuote( - instance.address, //lbc address - liquidityProviderRskAddress, - accounts[2], - web3.utils.toBN("1000010000000001") - ); - quote.transferConfirmations = 0; - quote.callFee = web3.utils.toBN(1); - - // configure mocked block on mockBridge - const firstConfirmationTime = utils.reverseHexBytes( - web3.utils.toHex(quote.agreementTimestamp + 300).substring(2) - ); - const firstHeader = - "0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + - firstConfirmationTime + - "0000000000000000"; - await bridgeMockInstance.setHeaderByHash(blockHeaderHash, firstHeader); - - const msgValue = quote.value.add(quote.callFee).add(quote.productFeeAmount).add(quote.gasFee); - const quoteHash = await instance.hashPegoutQuote(utils.asArray(quote)); - const signature = await web3.eth.sign(quoteHash, liquidityProviderRskAddress); - const pegOut = await instance.depositPegout(utils.asArray(quote), signature, { value: msgValue.toNumber() }); - await truffleAssertions.eventEmitted(pegOut, "PegOutDeposit"); - const btcTx = await utils.generateRawTx(instance, quote); - - await truffleAssertions.reverts( - instance.refundPegOut( - quoteHash, - btcTx, - blockHeaderHash, - partialMerkleTree, - merkleBranchHashes - ), "LBC067"); - }); - - it("Should fail on refundPegout if btc tx doesn't have correct destination", async () => { - const blockHeaderHash = "0x02327049330a25d4d17e53e79f478cbb79c53a509679b1d8a1505c5697afb326"; - const partialMerkleTree = "0x02327049330a25d4d17e53e79f478cbb79c53a509679b1d8a1505c5697afb426"; - const merkleBranchHashes = [ - "0x02327049330a25d4d17e53e79f478cbb79c53a509679b1d8a1505c5697afb326", - ]; - let quote = utils.getTestPegOutQuote( - instance.address, //lbc address - liquidityProviderRskAddress, - accounts[2], - web3.utils.toBN("1000000000000000") - ); - quote.transferConfirmations = 0; - quote.deposityAddress = bs58check.decode("msMgk6qaS5sso4CTao22VaUY8rbFPp3ThT"); - const errorQuote = structuredClone(quote) - errorQuote.deposityAddress = bs58check.decode("mfWxJ45yp2SFn7UciZyNpvDKrzbhyfKrY8"); // any wrong destination - // configure mocked block on mockBridge - const firstConfirmationTime = utils.reverseHexBytes( - web3.utils.toHex(quote.agreementTimestamp + 300).substring(2) - ); - const firstHeader = - "0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + - firstConfirmationTime + - "0000000000000000"; - await bridgeMockInstance.setHeaderByHash(blockHeaderHash, firstHeader); - - const msgValue = quote.value.add(quote.callFee).add(quote.productFeeAmount).add(quote.gasFee); - const quoteHash = await instance.hashPegoutQuote(utils.asArray(quote)); - const signature = await web3.eth.sign(quoteHash, liquidityProviderRskAddress); - const pegOut = await instance.depositPegout(utils.asArray(quote), signature, { - value: msgValue.toNumber() - }); - await truffleAssertions.eventEmitted(pegOut, "PegOutDeposit"); - let btcTx = await utils.generateRawTx(instance, errorQuote); - const errorQuoteHash = await instance.hashPegoutQuote(utils.asArray(errorQuote)); - btcTx = btcTx.replace(errorQuoteHash.slice(2), quoteHash.slice(2)); - - await truffleAssertions.reverts( - instance.refundPegOut( - quoteHash, - btcTx, - blockHeaderHash, - partialMerkleTree, - merkleBranchHashes - ), "LBC068"); - }); - - it('Should parse btc raw transaction outputs correctly', async () => { - const transactions = [ - { - raw: '0x01000000000101f73a1ea2f2cec2e9bfcac67b277cc9e4559ed41cfc5973c154b7bdcada92e3e90100000000ffffffff029ea8ef00000000001976a9141770fa9929eee841aee1bfd06f5f0a178ef6ef5d88acb799f60300000000220020701a8d401c84fb13e6baf169d59684e17abd9fa216c8cc5b9fc63d622ff8c58d0400473044022051db70142aac24e8a13050cb0f61183704a7fe572c41a09caf5e7f56b7526f87022017d1a4b068a32af3dcea2d9a0e2f0d648c9f0f7fb01698d83091fd5b57f69ade01473044022028f29f5444ea4be2db3c6895e1414caa5cee9ab79faf1bf9bc12191f421de37102205af1df5158aa9c666f2d8d4d7c9da1ef96d28277f5d4b7c193e93e243a6641ae016952210375e00eb72e29da82b89367947f29ef34afb75e8654f6ea368e0acdfd92976b7c2103a1b26313f430c4b15bb1fdce663207659d8cac749a0e53d70eff01874496feff2103c96d495bfdd5ba4145e3e046fee45e84a8a48ad05bd8dbb395c011a32cf9f88053ae00000000', - outputs:[ - { - value: web3.utils.toBN('15706270'), - pkScript: '0x76a9141770fa9929eee841aee1bfd06f5f0a178ef6ef5d88ac', - scriptSize: 25, - totalSize: 34 - }, - { - value: web3.utils.toBN('66492855'), - pkScript: '0x0020701a8d401c84fb13e6baf169d59684e17abd9fa216c8cc5b9fc63d622ff8c58d', - scriptSize: 34, - totalSize: 43 - } - ] - }, - { - raw: '0x010000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff1a03583525e70ee95696543f47000000002f4e696365486173682fffffffff03c01c320000000000160014b0262460a83e78d991795007477d51d3998c70629581000000000000160014d729e8dba6f86b5c8d7b3066fd4d7d0e21fd079b0000000000000000266a24aa21a9edf052bd805f949d631a674158664601de99884debada669f237cf00026c88a5f20120000000000000000000000000000000000000000000000000000000000000000000000000', - outputs:[ - { - value: web3.utils.toBN('3284160'), - pkScript: '0x0014b0262460a83e78d991795007477d51d3998c7062', - scriptSize: 22, - totalSize: 31 - }, - { - value: web3.utils.toBN('33173'), - pkScript: '0x0014d729e8dba6f86b5c8d7b3066fd4d7d0e21fd079b', - scriptSize: 22, - totalSize: 31 - }, - { - value: web3.utils.toBN('0'), - pkScript: '0x6a24aa21a9edf052bd805f949d631a674158664601de99884debada669f237cf00026c88a5f2', - scriptSize: 38, - totalSize: 47 - } - ] - }, - { - raw: '0x0100000000010fe0305a97189636fb57126d2f77a6364a5c6a809908270583438b3622dce6bc050000000000ffffffff6d487f63c4bd89b81388c20aeab8c775883ed56f11f509c248a7f00cdc64ae940000000000ffffffffa3d3d42b99de277265468acca3c081c811a9cc7522827aa95aeb42653c15fc330000000000ffffffffd7818dabb051c4db77da6d49670b0d3f983ba1d561343027870a7f3040af44fe0000000000ffffffff72daa44ef07b8d85e8ef8d9f055e07b5ebb8e1ba6a876e17b285946eb4ea9b9b0000000000ffffffff5264480a215536fd00d229baf1ab8c7c65ce10f37b783ca9700a828c3abc952c0000000000ffffffff712209f13eee0b9f3e6331040abcc09df750e4a287128922426d8d5c78ac9fc50000000000ffffffff21c5cf14014d28ec43a58f06f8e68c52c524a2b47b3be1c5800425e1f35f488d0000000000ffffffff2898464f9eb34f1d77fde2ed75dd9ae9c258f76030bb33be8e171d3e5f3b56390000000000ffffffffd27a5adff11cffc71d88face8f5adc2ce43ad648a997a5d54c06bcdec0e3eb5c0000000000ffffffff5217ca227f0e7f98984f19c59f895a3cfa7b05cb46ed844e2b0a26c9f5168d7a0000000000ffffffff8384e811f57e4515dd79ebfacf3a653200caf77f115bb6d4efe4bc534f0a39dd0000000000ffffffffd0448e1aae0ea56fab1c08dae1bdfe16c46f8ae8cec6042f6525bb7c1da0fa380000000000ffffffff5831c6df8395e3dc315af82c758c622156e2c40d677dececb717f4f20ded28a90000000000ffffffff56c2ffb0554631cff11e3e3fa90e6f35e76f420b29cde1faaa68c07cd0c6f8030100000000ffffffff02881300000000000016001463052ae51729396821a0cd91e0b1e9c61f53e168424e0800000000001600140d76db7b4f8f93a0b445bd782df2182a3e577604024730440220260695f8cf81168b46a24a07c380fd2568ee72f939309ed710e055f146d267db022044813ec9d65a57c8d4298b0bd9600664c3875bd2230b6a376a6fc70577a222bb012102b4ee3edac446129ec8c011afaba3e5e1ead0cebfd8545f3f6984c167277f8d2302483045022100e0ed473c35a937d0b4d1a5e08f8e61248e80f5fe108c9b8b580792df8675a05d02202073dfd0d44d28780ee321c8a2d18da8157055d37d68793cbe8c53cc1c0a5321012102b4ee3edac446129ec8c011afaba3e5e1ead0cebfd8545f3f6984c167277f8d2302473044022034e28210fe7a14dde84cdb9ef4cf0a013bbc027deebcb56232ff2dabb25c12dc02202f4ff4df794ad3dbcfa4d498ec6d0c56b22c027004767851e3b8ffc5652ba529012102b4ee3edac446129ec8c011afaba3e5e1ead0cebfd8545f3f6984c167277f8d2302473044022030d5f4ffddf70a6086269ce982bff38c396831d0b5ef5205c3e557059903b2550220575bcf3b233c12b383bf2f16cd52e2fff2c488f0aa29ab3dec22b85b536b1c83012102b4ee3edac446129ec8c011afaba3e5e1ead0cebfd8545f3f6984c167277f8d2302483045022100cc07265538f0ea4a8b999450549a965b0cc784371cac42cbcf8f49fbabf72b7c02207ef68377d7c6d3817d7c1a7a7936392b7043189ab1aed81eb0a7a3ad424bdcaf012102b4ee3edac446129ec8c011afaba3e5e1ead0cebfd8545f3f6984c167277f8d230248304502210085a8855abe9fd6680cb32911db66914cf970a30f01ecd17c7527fc369bb9f24002206da3457505a514a076954a2e5756fcc14c9e8bdc18301469dfe5b2b6daef723f012102b4ee3edac446129ec8c011afaba3e5e1ead0cebfd8545f3f6984c167277f8d2302483045022100d4e1963f5945dfae7dc73b0af1c65cf9156995a270164c2bcbc4a539130ac268022054464ea620730129ebaf95202f96f0b8be74ff660fcd748b7a107116e01730f3012102b4ee3edac446129ec8c011afaba3e5e1ead0cebfd8545f3f6984c167277f8d230247304402207a5386c7b8bf3cf301fed36e18fe6527d35bc02007afda183e81fc39c1c8193702203207a6aa2223193a5c75ed8df0e046d390dbf862a3d0da1b2d0f300dfd42e8a7012102b4ee3edac446129ec8c011afaba3e5e1ead0cebfd8545f3f6984c167277f8d2302483045022100c8db534b9ed20ce3a91b01b03e97a8f60853fbc16d19c6b587f92455542bc7c80220061d61d1c49a3f0dedecefaafc51526325bca972e99aaa367f2ebcab95d42395012102b4ee3edac446129ec8c011afaba3e5e1ead0cebfd8545f3f6984c167277f8d2302483045022100f5287807debe8fc2eeee7adc5b7da8a212166a4580b8fdcf402c049a40b24fb7022006cb422492ba3b1ec257c64e74f3d439c00351f05bc05e88cab5cd9d4a7389b0012102b4ee3edac446129ec8c011afaba3e5e1ead0cebfd8545f3f6984c167277f8d230247304402202edb544a679791424334e3c6a85613482ca3e3d16de0ca0d41c54babada8d4a2022025d0c937221161593bd9858bb3062216a4e55d191a07323104cfef1c7fcf5bc6012102b4ee3edac446129ec8c011afaba3e5e1ead0cebfd8545f3f6984c167277f8d230247304402201a6cf02624884d4a1927cba36b2b9b02e1e6833a823204d8670d71646d2dd2c40220644176e293982f7a4acb25d79feda904a235f9e2664c823277457d33ccbaa6dc012102b4ee3edac446129ec8c011afaba3e5e1ead0cebfd8545f3f6984c167277f8d2302483045022100d49488c21322cd9a7c235ecddbd375656d98ba1ca06a5284c8c2ffb6bcbba83b02207dab29958d7c1b2466d5b5502b586d7f3d213b501689d42a313de91409179899012102b4ee3edac446129ec8c011afaba3e5e1ead0cebfd8545f3f6984c167277f8d2302483045022100f36565200b245429afb9cdc926510198893e057e5244a7dabd94bedba394789702206786ea4033f5e1212cee9a59fb85e89b6f7fe686ab0a3b8874e77ea735e7c3b5012102b4ee3edac446129ec8c011afaba3e5e1ead0cebfd8545f3f6984c167277f8d230247304402206ff3703495e0d872cbd1332d20ee39c14de6ed5a14808d80327ceedfda2329e102205da8497cb03776d5df8d67dc16617a6a3904f7abf85684a599ed6c60318aa3be012102b4ee3edac446129ec8c011afaba3e5e1ead0cebfd8545f3f6984c167277f8d2300000000', - outputs:[ - { - value: web3.utils.toBN('5000'), - pkScript: '0x001463052ae51729396821a0cd91e0b1e9c61f53e168', - scriptSize: 22, - totalSize: 31 - }, - { - value: web3.utils.toBN('544322'), - pkScript: '0x00140d76db7b4f8f93a0b445bd782df2182a3e577604', - scriptSize: 22, - totalSize: 31 - } - ] - }, - { - raw: '0x01000000010178a1cf4f2f0cb1607da57dcb02835d6aa8ef9f06be3f74cafea54759a029dc000000006a473044022070a22d8b67050bee57564279328a2f7b6e7f80b2eb4ecb684b879ea51d7d7a31022057fb6ece52c23ecf792e7597448c7d480f89b77a8371dca4700a18088f529f6a012103ef81e9c4c38df173e719863177e57c539bdcf97289638ec6831f07813307974cffffffff02801d2c04000000001976a9143c5f66fe733e0ad361805b3053f23212e5755c8d88ac0000000000000000426a406539346138393731323632396262633966636364316630633034613237386330653130353265623736323666393365396137663130363762343036663035373600000000', - outputs:[ - { - value: web3.utils.toBN('70000000'), - pkScript: '0x76a9143c5f66fe733e0ad361805b3053f23212e5755c8d88ac', - scriptSize: 25, - totalSize: 34 - }, - { - value: web3.utils.toBN('0'), - pkScript: '0x6a4065393461383937313236323962626339666363643166306330346132373863306531303532656237363236663933653961376631303637623430366630353736', - scriptSize: 66, - totalSize: 75 - } - ] - }, - { - raw: '0x020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff050261020101ffffffff02205fa012000000001976a91493fa9b864d39108a311918320e2a804de2e946f688ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000', - outputs:[ - { - value: web3.utils.toBN('312500000'), - pkScript: '0x76a91493fa9b864d39108a311918320e2a804de2e946f688ac', - scriptSize: 25, - totalSize: 34 - }, - { - value: web3.utils.toBN('0'), - pkScript: '0x6a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf9', - scriptSize: 38, - totalSize: 47 - } - ] - }, - { - raw: '0x020000000001010e02566bfc272aed951a7f68152707fd14d29aaf2fe4c8106e623faec848437c0000000000fdffffff02dba01800000000001976a914b2978fcacc03e34dae7b0d9ef112a7b3e5c0bdc488ac03a10185120000001976a9142591f7537994333dc2c119a88defb5b53d34495188ac0247304402205bdb0dfbbeb0ffc7f2d86cd1026a893252f49399d22876dfe6f3ff1ce723507502200f155b8fab03352aec2b07bbd0e0ab147454937f34301518b428af7c6216b79d01210249b9c2a173ec4c9bfae80edf85fa48ff9e196856bf7f48f2208800760bb28d07d4322500', - outputs:[ - { - value: web3.utils.toBN('1614043'), - pkScript: '0x76a914b2978fcacc03e34dae7b0d9ef112a7b3e5c0bdc488ac', - scriptSize: 25, - totalSize: 34 - }, - { - value: web3.utils.toBN('79540887811'), - pkScript: '0x76a9142591f7537994333dc2c119a88defb5b53d34495188ac', - scriptSize: 25, - totalSize: 34 - } - ] - }, - { - raw: '0x010000000001050010b625779e40b4e8d1288e9db32a9a4026f7e98d0ee97a2fd1b43ca8882a460000000000ffffffff0010b625779e40b4e8d1288e9db32a9a4026f7e98d0ee97a2fd1b43ca8882a460100000000ffffffff0010b625779e40b4e8d1288e9db32a9a4026f7e98d0ee97a2fd1b43ca8882a460300000000fffffffffd67dda5d256393b6e5b4a1ba117c7b60ebb0ff17ff22d4743f12f3a84bcf84e0100000000fffffffffd67dda5d256393b6e5b4a1ba117c7b60ebb0ff17ff22d4743f12f3a84bcf84e0200000000ffffffff060000000000000000536a4c5063cc1853d0117afb0b709321a29ebd6bff4f0488774c3df3a7eae1f237bce099355a809b79d8e327b4844d4d5b01039c68d000fb57d906712c9403a0561a5cd7175d314dbb75bfa53cd033620f916501a60e000000000000160014f58e1a72b69982143e10e505a61f37aa368d92441302010000000000160014323d105482f5065dcd51f1bc5a213d5d723d58dda6870100000000001600140ccce8622a77f0316227cd311fb233bce31f76f6a68701000000000016001463ac4816199ba682879a2373a16fac78c51f6bdaa687010000000000160014b84a456a5a8af29af60d72b03958a9bebf76e6e502483045022100d1fb958108531911fc0ba7df04267c1842718f1d871c555f8b6ce30cc117d4ca022032099c3918c491d0af7fdded1811e2cd0e86b99458661d97ae87ded3c889382001210257d3f874b8203ed7d4fc254d67f68b67e954c19cd37b1b6a6ce7346a52b437230247304402201cbeb5d7865aa47b6a6692b89fbbcd4caad7047b71db97e42b09149594bb141402207b1eaa83ab4ebcf8b063bc401f892043c8cf346e4993bdfdc9f4f979c27ac8b001210326010652c2334417db10fddc0bb10749a3256555dd22ebe1575da9eb3aeccf530247304402205dbc9abd0df608e9548c8e5b3771f7b1f20ad170951a8c254f620ed989a7ea61022002d00d0739f33eb5afd5d7c5e07891c66939656dd024c6fbde8515d4104c052c0121020802d7c7e0e6f040644950f0712d7225cc4b755ece3e0d61568d6c8e362e375c02483045022100db6c33de82ae9e7abbdcd99265931307716112771d2e4273a7381c63e779a2ae02203376181e7e3474b6e771eea127b9ce943ef1025e9190a75304d9cf94d52ed429012103d1609fe77bb362648e9253ed09b7a560448f93fb0612a74db179ac22cc89e86302483045022100f99a02db4e116b3ff92de3cb0af8e3cf29518695fdfadac6cc9cd2104ae009d402206a1e7060874834a68aa7ad5b2ef19ea29c1f04af61aab28c589dfa8937f2287a012103dbfb01dde37e538772edf37434b4b4268f10ab8ed7e1e6a98f89e50aa1a11f2500000000', - outputs:[ - { - value: web3.utils.toBN('0'), - pkScript: '0x6a4c5063cc1853d0117afb0b709321a29ebd6bff4f0488774c3df3a7eae1f237bce099355a809b79d8e327b4844d4d5b01039c68d000fb57d906712c9403a0561a5cd7175d314dbb75bfa53cd033620f916501', - scriptSize: 83, - totalSize: 92 - }, - { - value: web3.utils.toBN('3750'), - pkScript: '0x0014f58e1a72b69982143e10e505a61f37aa368d9244', - scriptSize: 22, - totalSize: 31 - }, - { - value: web3.utils.toBN('66067'), - pkScript: '0x0014323d105482f5065dcd51f1bc5a213d5d723d58dd', - scriptSize: 22, - totalSize: 31 - }, - { - value: web3.utils.toBN('100262'), - pkScript: '0x00140ccce8622a77f0316227cd311fb233bce31f76f6', - scriptSize: 22, - totalSize: 31 - }, - { - value: web3.utils.toBN('100262'), - pkScript: '0x001463ac4816199ba682879a2373a16fac78c51f6bda', - scriptSize: 22, - totalSize: 31 - }, - { - value: web3.utils.toBN('100262'), - pkScript: '0x0014b84a456a5a8af29af60d72b03958a9bebf76e6e5', - scriptSize: 22, - totalSize: 31 - } - ] - }, - { - raw: '0x010000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff1e0367352519444d47426c6f636b636861696ee2fb0ac80e02000000000000ffffffff02e338260000000000160014b23716e183ba0949c55d6cac21a3e94176eed1120000000000000000266a24aa21a9ed561c4fd92722cf983c8c24e78ef35a4634e3013695f09186bc86c6a627f21cfa0120000000000000000000000000000000000000000000000000000000000000000000000000', - outputs:[ - { - value: web3.utils.toBN('2504931'), - pkScript: '0x0014b23716e183ba0949c55d6cac21a3e94176eed112', - scriptSize: 22, - totalSize: 31 - }, - { - value: web3.utils.toBN('0'), - pkScript: '0x6a24aa21a9ed561c4fd92722cf983c8c24e78ef35a4634e3013695f09186bc86c6a627f21cfa', - scriptSize: 38, - totalSize: 47 - } - ] - }, - { - raw: '0x020000000001016bcabaaf4e28636c4c68252a019268927b79a978cc7a9c2e561d7053dd0bf73b0000000000fdffffff0296561900000000001976a9147aa8184685ca1f06f543b64a502eb3b6135d672088acf9d276e3000000001976a9145ce7908503ef69bfde873fe886133ab8dc23363188ac02473044022078607e1ca987e18ee8934b44ff8a4f0751d27a110540d99deb0a386adbf638c002200a01dc0314bef9b8c966c7a02440309596a6380e1625a7872ed616327a729bed0121029e1bb76f522491f90c542385e6dbff36b92f8984b74f24d0b99b52ea17bed09961352500', - outputs:[ - { - value: web3.utils.toBN('1660566'), - pkScript: '0x76a9147aa8184685ca1f06f543b64a502eb3b6135d672088ac', - scriptSize: 25, - totalSize: 34 - }, - { - value: web3.utils.toBN('3816215289'), - pkScript: '0x76a9145ce7908503ef69bfde873fe886133ab8dc23363188ac', - scriptSize: 25, - totalSize: 34 - } - ] - }, - { - raw: '0x020000000001014aea9ffcf9be9c98a2a3ceb391483328ff406177fdb60047886a50f33569e0540000000000fdffffff02ce095d5a120000001976a914c38cfd37c4b53ebae78de708a3d8438f6e7cc56588acbc622e00000000001976a914c3ea6613a9dcbf0a63863ec3a3b958127d597b4988ac02473044022009351dd62b2494924397a626524a5c08e16d4d214488b847e7a9cd97fa4aac2302200f5a54fff804f19edf316daaea58052a5f0c2ff3de236a45e05a43474e3a6ddf01210258f308ea046d38403d5afb201df933196b7948acead3048a0413bbaacdc42db166352500', - outputs:[ - { - value: web3.utils.toBN('78825458126'), - pkScript: '0x76a914c38cfd37c4b53ebae78de708a3d8438f6e7cc56588ac', - scriptSize: 25, - totalSize: 34 - }, - { - value: web3.utils.toBN('3039932'), - pkScript: '0x76a914c3ea6613a9dcbf0a63863ec3a3b958127d597b4988ac', - scriptSize: 25, - totalSize: 34 - } - ] - }, - { - raw: '0x010000000127d57276f1026a95b4af3b03b6aba859a001861682342af19825e8a2408ae008010000008c493046022100cd92b992d4bde3b44471677081c5ece6735d6936480ff74659ac1824d8a1958e022100b08839f167532aea10acecc9d5f7044ddd9793ef2989d090127a6e626dc7c9ce014104cac6999d6c3feaba7cdd6c62bce174339190435cffd15af7cb70c33b82027deba06e6d5441eb401c0f8f92d4ffe6038d283d2b2dd59c4384b66b7b8f038a7cf5ffffffff0200093d0000000000434104636d69f81d685f6f58054e17ac34d16db869bba8b3562aabc38c35b065158d360f087ef7bd8b0bcbd1be9a846a8ed339bf0131cdb354074244b0a9736beeb2b9ac40420f0000000000fdba0f76a9144838a081d73cf134e8ff9cfd4015406c73beceb388acacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacac00000000', - outputs: [ - { - value: web3.utils.toBN('4000000'), - pkScript: '0x4104636d69f81d685f6f58054e17ac34d16db869bba8b3562aabc38c35b065158d360f087ef7bd8b0bcbd1be9a846a8ed339bf0131cdb354074244b0a9736beeb2b9ac', - scriptSize: 67, - totalSize: 76 - }, - { - value: web3.utils.toBN('1000000'), - pkScript: '0x76a9144838a081d73cf134e8ff9cfd4015406c73beceb388acacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacac', - scriptSize: 4026, - totalSize: 4037 - } - ] - } - ]; - - let outputs; - for (let tx of transactions) { - outputs = await btcUtils.getOutputs(tx.raw) - expect(outputs.length).to.eq(tx.outputs.length) - for (let i = 0; i < outputs.length; i++) { - expect(outputs[i].value).to.eq(tx.outputs[i].value.toString()); - expect(outputs[i].pkScript).to.eq(tx.outputs[i].pkScript); - expect(outputs[i].scriptSize).to.eq(tx.outputs[i].scriptSize.toString()); - expect(outputs[i].totalSize).to.eq(tx.outputs[i].totalSize.toString()); - } - } - }) - - it("Should verify depositAddress for given quote", async () => { - const tests = [ - { - quote: { - fedBtcAddress: bs58check.decode("2N5muMepJizJE1gR7FbHJU6CD18V3BpNF9p").slice(1), - lbcAddress: instance.address, - liquidityProviderRskAddress: "0x9D93929A9099be4355fC2389FbF253982F9dF47c", - btcRefundAddress: bs58check.decode("mxqk28jvEtvjxRN8k7W9hFEJfWz5VcUgHW"), - rskRefundAddress: "0xa2193A393aa0c94A4d52893496F02B56C61c36A1", - liquidityProviderBtcAddress: bs58check.decode("mnYcQxCZBbmLzNfE9BhV7E8E2u7amdz5y6"), - callFee: BigInt("1000000000000000"), - penaltyFee: 1000000, - contractAddress: "0xa2193A393aa0c94A4d52893496F02B56C61c36A1", - data: '0x', - gasLimit: 46000, - nonce: BigInt("3426962016206607167"), - value: BigInt("600000000000000000"), - agreementTimestamp: 1691772110, - timeForDeposit: 3600, - callTime: 7200, - depositConfirmations: 10, - callOnRegister: false, - productFeeAmount: BigInt("6000000000000000"), - gasFee: BigInt("3000000000000000") - }, - address: '2N54HuutZf7Xkmv85wCtBkQg5nCC3k432rf' - }, - { - quote: { - fedBtcAddress: bs58check.decode("2N5muMepJizJE1gR7FbHJU6CD18V3BpNF9p").slice(1), - lbcAddress: instance.address, - liquidityProviderRskAddress: "0x9D93929A9099be4355fC2389FbF253982F9dF47c", - btcRefundAddress: bs58check.decode("mi5vEG69RGhi3RKsn7bWco5xnafZvsXvrF"), - rskRefundAddress: "0x69b3886457c0e0654d9829d29a6156f49236235c", - liquidityProviderBtcAddress: bs58check.decode("mnYcQxCZBbmLzNfE9BhV7E8E2u7amdz5y6"), - callFee: BigInt("1000000000000000"), - penaltyFee: 1000000, - contractAddress: "0x7221249458b5e2055b33069a27836985a3822c99", - data: '0x', - gasLimit: 46000, - nonce: BigInt("7363369648470809209"), - value: BigInt("700000000000000000"), - agreementTimestamp: 1691873604, - timeForDeposit: 3600, - callTime: 7200, - depositConfirmations: 10, - callOnRegister: false, - productFeeAmount: BigInt("7000000000000000"), - gasFee: BigInt("4000000000000000") - }, - address: '2NARRvPtz2ch1KozGfZg6FahLSVVaSG2fQr' - }, - { - quote: { - fedBtcAddress: bs58check.decode("2N5muMepJizJE1gR7FbHJU6CD18V3BpNF9p").slice(1), - lbcAddress: instance.address, - liquidityProviderRskAddress: "0x9D93929A9099be4355fC2389FbF253982F9dF47c", - btcRefundAddress: bs58check.decode("mjSE41mAMwqdYsXiibUgyWe4oESoCygf96"), - rskRefundAddress: "0xc67319ce23965591947a93884356252477330456", - liquidityProviderBtcAddress: bs58check.decode("mnYcQxCZBbmLzNfE9BhV7E8E2u7amdz5y6"), - callFee: BigInt("1000000000000000"), - penaltyFee: 1000000, - contractAddress: "0x48c8396629c550203e183350c9074a2b42e83d1a", - data: '0x', - gasLimit: 46000, - nonce: BigInt("8681289575209299775"), - value: BigInt("800000000000000000"), - agreementTimestamp: 1691874253, - timeForDeposit: 3600, - callTime: 7200, - depositConfirmations: 10, - callOnRegister: false, - productFeeAmount: BigInt("8000000000000000"), - gasFee: BigInt("5000000000000000") - }, - address: '2Mwfc2XRxm64dDbNowHUFj2pZ4owePhNFyQ' - } - ] - - for (const test of tests) { - const decoded = web3.utils.bytesToHex(bs58.decode(test.address)) - expect(await instance.validatePeginDepositAddress(test.quote, decoded)).to.be.true - } - }); - - it('Should throw error in hashQuote if summing quote agreementTimestamp and timeForDeposit cause overflow', async () => { - const quote = utils.getTestQuote( - instance.address, - accounts[1], - "0x00", - liquidityProviderRskAddress, - accounts[2], - web3.utils.toBN(1) - ); - quote.agreementTime = 4294967294; - quote.timeForDeposit = 4294967294; - await truffleAssertions.reverts( - instance.hashQuote(utils.asArray(quote)), - "LBC071" - ); - }) - - it('Should update the liquidity provider information correctly', async () => { - const providerAddress = accounts[9] - let provider = await instance.getProviders().then(result => result.at(0)) - - const initialState = { - id: provider.id, - provider: provider.provider, - name: provider.name, - apiBaseUrl: provider.apiBaseUrl, - status: provider.status, - providerType: provider.providerType - } - - const newName = 'modified name' - const newApiBaseUrl = 'https://modified.com' - - const tx = await instance.updateProvider(newName, newApiBaseUrl, { from: providerAddress }) - truffleAssertions.eventEmitted(tx, "ProviderUpdate", { - providerAddress: providerAddress, - name: newName, - url: newApiBaseUrl - }); - - provider = await instance.getProviders().then(result => result.at(0)) - const finalState = { - id: provider.id, - provider: provider.provider, - name: provider.name, - apiBaseUrl: provider.apiBaseUrl, - status: provider.status, - providerType: provider.providerType - } - - expect(initialState.id).to.eq(finalState.id) - expect(initialState.provider).to.eq(finalState.provider) - expect(initialState.status).to.eq(finalState.status) - expect(initialState.providerType).to.eq(finalState.providerType) - expect(initialState.name).to.not.eq(finalState.name) - expect(initialState.apiBaseUrl).to.not.eq(finalState.apiBaseUrl) - expect(finalState.name).to.eq(newName) - expect(finalState.apiBaseUrl).to.eq(newApiBaseUrl) - }) - - it('Should fail if unregistered provider updates his information', async () => { - const providerAddress = accounts[8] - const newName = 'not-existing name' - const newApiBaseUrl = 'https://not-existing.com' - const tx = instance.updateProvider(newName, newApiBaseUrl, { from: providerAddress }) - await truffleAssertions.reverts(tx, "LBC001"); - }) - - it('Should fail if provider makes update with invalid information', async () => { - const providerAddress = accounts[9] - const newName = 'any name' - const newApiBaseUrl = 'https://any.com' - const wrongName = instance.updateProvider('', newApiBaseUrl, { from: providerAddress }) - await truffleAssertions.reverts(wrongName, "LBC076"); - const wrongUrl = instance.updateProvider(newName, '', { from: providerAddress }) - await truffleAssertions.reverts(wrongUrl, "LBC076"); - }) - - describe("Function getProviders should", () => { - it("list enabled and not resigned providers only", async () => { - await instance.setProviderStatus(7, false); - /** - * Providers statuses per account: - * 0 - disabled - * 1 - active - * 2 - active - * 3 - resigned and disabled - * 4 - active - * 5 - resigned but active - * 6 - resigned but active - * 7 - resigned but active - * 8 - Not a provider - * 9 - active - */ - const result = await instance.getProviders(); - expect(result.length).to.eq(4); - expect(utils.parseLiquidityProvider(result[0])).to.deep.equal({ - id: 2, - provider: accounts[9], - name: "modified name", - apiBaseUrl: "https://modified.com", - status: true, - providerType: "both" - }); - expect(utils.parseLiquidityProvider(result[1])).to.deep.equal({ - id: 3, - provider: accounts[4], - name: "First contract", - apiBaseUrl: "http://localhost/api", - status: true, - providerType: "both" - }); - expect(utils.parseLiquidityProvider(result[2])).to.deep.equal({ - id: 4, - provider: accounts[1], - name: "First contract", - apiBaseUrl: "http://localhost/api", - status: true, - providerType: "both" - }); - expect(utils.parseLiquidityProvider(result[3])).to.deep.equal({ - id: 5, - provider: accounts[2], - name: "Second contract", - apiBaseUrl: "http://localhost/api", - status: true, - providerType: "both" - }); - }) - }); -}); diff --git a/test/deployment.test.ts b/test/deployment.test.ts new file mode 100644 index 0000000..016c370 --- /dev/null +++ b/test/deployment.test.ts @@ -0,0 +1,150 @@ +import { expect } from "chai"; +import hre from "hardhat"; +import { ethers } from "hardhat"; +import { deployLbcProxy } from "../scripts/deployment-utils/deploy-proxy"; +import { upgradeLbcProxy } from "../scripts/deployment-utils/upgrade-proxy"; +import { ZERO_ADDRESS } from "./utils/constants"; +import { BRIDGE_ADDRESS } from "../scripts/deployment-utils/constants"; + +describe("LiquidityBridgeContract deployment process should", function () { + let proxyAddress: string; + + it("should deploy LiquidityBridgeContract proxy and initialize it", async () => { + const deployed = await deployLbcProxy(hre.network.name, { verbose: false }); + proxyAddress = deployed.address; + const lbc = await ethers.getContractAt( + "LiquidityBridgeContract", + deployed.address + ); + const result = await lbc.queryFilter(lbc.getEvent("Initialized")); + expect(deployed.deployed).to.be.eq(true); + expect(result.length).length.equal(1); + }); + + it("upgrade proxy to LiquidityBridgeContractV2", async () => { + await upgradeLbcProxy(hre.network.name, { verbose: false }); + const lbc = await ethers.getContractAt( + "LiquidityBridgeContractV2", + proxyAddress + ); + const version = await lbc.version(); + expect(version).to.equal("1.3.0"); + }); + + it("validate minimiumCollateral arg in initialize", async () => { + const LiquidityBridgeContract = await ethers.getContractFactory( + "LiquidityBridgeContract", + { + libraries: { + BtcUtils: ZERO_ADDRESS, + SignatureValidator: ZERO_ADDRESS, + Quotes: ZERO_ADDRESS, + }, + } + ); + const lbc = await LiquidityBridgeContract.deploy(); + const MINIMUM_COLLATERAL = ethers.parseEther("0.02"); + const RESIGN_DELAY_BLOCKS = 15; + const initializeTx = lbc.initialize( + BRIDGE_ADDRESS, + MINIMUM_COLLATERAL, + 1, + 50, + RESIGN_DELAY_BLOCKS, + 1, + 1, + false + ); + await expect(initializeTx).to.be.revertedWith("LBC072"); + }); + + it("validate resignDelayBlocks arg in initialize", async () => { + const LiquidityBridgeContract = await ethers.getContractFactory( + "LiquidityBridgeContract", + { + libraries: { + BtcUtils: ZERO_ADDRESS, + SignatureValidator: ZERO_ADDRESS, + Quotes: ZERO_ADDRESS, + }, + } + ); + const lbc = await LiquidityBridgeContract.deploy(); + const MINIMUM_COLLATERAL = ethers.parseEther("0.6"); + const RESIGN_DELAY_BLOCKS = 14; + const initializeTx = lbc.initialize( + BRIDGE_ADDRESS, + MINIMUM_COLLATERAL, + 1, + 50, + RESIGN_DELAY_BLOCKS, + 1, + 1, + false + ); + await expect(initializeTx).to.be.revertedWith("LBC073"); + }); + + it("validate reward percentage arg in initialize", async () => { + const LiquidityBridgeContract = await ethers.getContractFactory( + "LiquidityBridgeContract", + { + libraries: { + BtcUtils: ZERO_ADDRESS, + SignatureValidator: ZERO_ADDRESS, + Quotes: ZERO_ADDRESS, + }, + } + ); + const MINIMUM_COLLATERAL = ethers.parseEther("0.6"); + const RESIGN_DELAY_BLOCKS = 60; + + const parameters = { + bridge: BRIDGE_ADDRESS, + minCollateral: MINIMUM_COLLATERAL, + minPegin: 1, + resignBlocks: RESIGN_DELAY_BLOCKS, + dustThreshold: 1, + btcBlockTime: 1, + mainnet: false, + }; + const percentages = [ + { value: 0, ok: true }, + { value: 1, ok: true }, + { value: 99, ok: true }, + { value: 100, ok: true }, + { value: 101, ok: false }, + ]; + + for (const { value, ok } of percentages) { + const lbc = await LiquidityBridgeContract.deploy(); + const initializeTx = lbc.initialize( + parameters.bridge, + parameters.minCollateral, + parameters.minPegin, + value, + parameters.resignBlocks, + parameters.dustThreshold, + parameters.btcBlockTime, + parameters.mainnet + ); + if (ok) { + await expect(initializeTx).not.to.be.reverted; + const reinitializeTx = lbc.initialize( + parameters.bridge, + parameters.minCollateral, + parameters.minPegin, + value, + parameters.resignBlocks, + parameters.dustThreshold, + parameters.btcBlockTime, + parameters.mainnet + ); + // check that only initializes once + await expect(reinitializeTx).to.be.reverted; + } else { + await expect(initializeTx).to.be.revertedWith("LBC004"); + } + } + }); +}); diff --git a/test/discovery.test.ts b/test/discovery.test.ts new file mode 100644 index 0000000..98a3d9a --- /dev/null +++ b/test/discovery.test.ts @@ -0,0 +1,272 @@ +import { REGISTER_LP_PARAMS, RegisterLpParams } from "./utils/constants"; +import { loadFixture } from "@nomicfoundation/hardhat-toolbox/network-helpers"; +import { expect } from "chai"; +import { deployLbcWithProvidersFixture } from "./utils/fixtures"; + +describe("LiquidityBridgeContractV2 provider discovery should", () => { + it("list registered providers", async () => { + const { lbc, liquidityProviders } = await loadFixture( + deployLbcWithProvidersFixture + ); + const providerList = await lbc.getProviders(); + expect(providerList.length).to.be.eq(3); + providerList.forEach((p, i) => { + expect(p.id).to.be.eq(i + 1); + expect(p.provider).to.be.eq(liquidityProviders[i].signer.address); + expect(p.name).to.be.eq(liquidityProviders[i].registerParams[0]); + expect(p.apiBaseUrl).to.be.eq(liquidityProviders[i].registerParams[1]); + expect(p.status).to.be.eq(liquidityProviders[i].registerParams[2]); + expect(p.providerType).to.be.eq(liquidityProviders[i].registerParams[3]); + }); + }); + + it("get the last provider id", async () => { + const { lbc, liquidityProviders } = await loadFixture( + deployLbcWithProvidersFixture + ); + const lastProviderId = await lbc.getProviderIds(); + expect(lastProviderId).to.be.eq(liquidityProviders.length); + }); + + it("allow a provider to disable by itself", async () => { + const fixtureResult = await loadFixture(deployLbcWithProvidersFixture); + const lp = fixtureResult.liquidityProviders[1]; + let lbc = fixtureResult.lbc; + lbc = lbc.connect(lp.signer); + await lbc.setProviderStatus(2, false); + const provider = await lbc.getProvider(lp.signer.address); + expect(provider.status).to.be.eq(false); + }); + + it("fail if provider does not exist", async () => { + const { lbc, liquidityProviders, accounts } = await loadFixture( + deployLbcWithProvidersFixture + ); + const notLpSigner = accounts[0]; + expect( + liquidityProviders.some((lp) => lp.signer.address === notLpSigner.address) + ).to.be.eq(false); + await expect(lbc.getProvider(notLpSigner.address)).to.be.revertedWith( + "LBC001" + ); + }); + + it("return correct state of a provider", async () => { + const fixtureResult = await loadFixture(deployLbcWithProvidersFixture); + const [lp1, lp2] = fixtureResult.liquidityProviders; + let lbc = fixtureResult.lbc; + lbc = lbc.connect(lp1.signer); + const tx = await lbc.setProviderStatus(1, false); + await tx.wait(); + let provider = await lbc.getProvider(lp1.signer.address); + expect(provider.status).to.be.eq(false); + expect(provider.name).to.be.equal("First LP"); + expect(provider.apiBaseUrl).to.be.equal("http://localhost/api1"); + expect(provider.provider).to.be.equal(lp1.signer.address); + expect(provider.providerType).to.be.equal("both"); + provider = await lbc.getProvider(lp2.signer.address); + expect(provider.status).to.be.eq(true); + expect(provider.name).to.be.equal("Second LP"); + expect(provider.apiBaseUrl).to.be.equal("http://localhost/api2"); + expect(provider.provider).to.be.equal(lp2.signer.address); + expect(provider.providerType).to.be.equal("pegin"); + }); + + it("allow a provider to enable by itself", async () => { + const fixtureResult = await loadFixture(deployLbcWithProvidersFixture); + const lp = fixtureResult.liquidityProviders[1]; + let lbc = fixtureResult.lbc; + lbc = lbc.connect(lp.signer); + + await lbc.setProviderStatus(2, false); + let provider = await lbc.getProvider(lp.signer.address); + expect(provider.status).to.be.eq(false); + + await lbc.setProviderStatus(2, true); + provider = await lbc.getProvider(lp.signer.address); + expect(provider.status).to.be.eq(true); + }); + it("disable and enable provider as LBC owner", async () => { + const fixtureResult = await loadFixture(deployLbcWithProvidersFixture); + const { liquidityProviders, lbcOwner } = fixtureResult; + let lbc = fixtureResult.lbc; + const lp = liquidityProviders[1]; + lbc = lbc.connect(lbcOwner); + + await lbc.setProviderStatus(2, false); + let provider = await lbc.getProvider(lp.signer.address); + expect(provider.status).to.be.eq(false); + + await lbc.setProviderStatus(2, true); + provider = await lbc.getProvider(lp.signer.address); + expect(provider.status).to.be.eq(true); + }); + + it("fail disabling provider as non owners", async () => { + const fixtureResult = await loadFixture(deployLbcWithProvidersFixture); + const lp = fixtureResult.liquidityProviders[0]; // the id of this provider is 1 + let lbc = fixtureResult.lbc; + lbc = lbc.connect(lp.signer); + await expect(lbc.setProviderStatus(2, false)).to.be.revertedWith("LBC005"); + }); + + it("update the liquidity provider information correctly", async () => { + const fixtureResult = await loadFixture(deployLbcWithProvidersFixture); + const { liquidityProviders } = fixtureResult; + let lbc = fixtureResult.lbc; + + const providerIndex = 1; + const providerSigner = liquidityProviders[providerIndex].signer; + let provider = await lbc + .getProviders() + .then((result) => result[providerIndex]); + + const initialState = { + id: provider.id, + provider: provider.provider, + name: provider.name, + apiBaseUrl: provider.apiBaseUrl, + status: provider.status, + providerType: provider.providerType, + }; + + const newName = "modified name"; + const newApiBaseUrl = "https://modified.com"; + + lbc = lbc.connect(providerSigner); + const tx = await lbc.updateProvider(newName, newApiBaseUrl); + await expect(tx) + .to.emit(lbc, "ProviderUpdate") + .withArgs(providerSigner.address, newName, newApiBaseUrl); + + provider = await lbc.getProviders().then((result) => result[providerIndex]); + const finalState = { + id: provider.id, + provider: provider.provider, + name: provider.name, + apiBaseUrl: provider.apiBaseUrl, + status: provider.status, + providerType: provider.providerType, + }; + + expect(initialState.id).to.be.eq(finalState.id); + expect(initialState.provider).to.be.eq(finalState.provider); + expect(initialState.status).to.be.eq(finalState.status); + expect(initialState.providerType).to.be.eq(finalState.providerType); + expect(initialState.name).to.not.be.eq(finalState.name); + expect(initialState.apiBaseUrl).to.not.be.eq(finalState.apiBaseUrl); + expect(finalState.name).to.be.eq(newName); + expect(finalState.apiBaseUrl).to.be.eq(newApiBaseUrl); + }); + + it("fail if unregistered provider updates his information", async () => { + const fixtureResult = await loadFixture(deployLbcWithProvidersFixture); + const { accounts } = fixtureResult; + const provider = accounts[5]; + const lbc = fixtureResult.lbc.connect(provider); + const newName = "not-existing name"; + const newApiBaseUrl = "https://not-existing.com"; + const tx = lbc.updateProvider(newName, newApiBaseUrl); + await expect(tx).to.be.revertedWith("LBC001"); + }); + + it("fail if provider makes update with invalid information", async () => { + const fixtureResult = await loadFixture(deployLbcWithProvidersFixture); + const { liquidityProviders } = fixtureResult; + const provider = liquidityProviders[2]; + const lbc = fixtureResult.lbc.connect(provider.signer); + const newName = "any name"; + const newApiBaseUrl = "https://any.com"; + const wrongName = lbc.updateProvider("", newApiBaseUrl); + await expect(wrongName).to.be.revertedWith("LBC076"); + const wrongUrl = lbc.updateProvider(newName, ""); + await expect(wrongUrl).to.be.revertedWith("LBC076"); + }); + + it("list enabled and not resigned providers only", async () => { + const fixtureResult = await loadFixture(deployLbcWithProvidersFixture); + const { liquidityProviders, accounts } = fixtureResult; + let lbc = fixtureResult.lbc; + /** + * Target provider statuses per account: + * 0 - lbc owner (not a provider) + * + * accounts array + * 1 - active (LP 4) + * 2 - not a provider + * 3 - resigned and disabled (LP 5) + * 4 - disabled (LP 6) + * 5 - active (LP 7) + * 6 - resigned but active (LP 8) + * + * LPs array + * 7 - active (LP 1) + * 8 - disabled (LP 2) + * 9 - active (LP 3) + */ + + // Prepare the expected statuses + lbc = lbc.connect(liquidityProviders[1].signer); + await lbc.setProviderStatus(2, false); + + const newLps = [0, 2, 3, 4, 5].map((i) => ({ + signer: accounts[i], + accountIdx: i, + })); + for (const lp of newLps) { + lbc = lbc.connect(lp.signer); + const params: RegisterLpParams = [...REGISTER_LP_PARAMS]; + params[0] = `LP account ${lp.accountIdx.toString()}`; + // eslint-disable-next-line @typescript-eslint/no-base-to-string + params[1] = `${params[1].toString()}-account${lp.accountIdx.toString()}`; + const registerTx = await lbc.register(...params); + await expect(registerTx).to.emit(lbc, "Register"); + } + + lbc = lbc.connect(newLps[1].signer); + await lbc.setProviderStatus(5, false).then((tx) => tx.wait()); + await lbc.resign().then((tx) => tx.wait()); + + lbc = lbc.connect(newLps[2].signer); + await lbc.setProviderStatus(6, false).then((tx) => tx.wait()); + + lbc = lbc.connect(newLps[4].signer); + await lbc.resign().then((tx) => tx.wait()); + + lbc = lbc.connect(accounts[1]); + const result = await lbc.getProviders(); + expect(result.length).to.be.eq(4); + expect(result[0]).to.be.deep.equal([ + 1n, + liquidityProviders[0].signer.address, + "First LP", + "http://localhost/api1", + true, + "both", + ]); + expect(result[1]).to.be.deep.equal([ + 3n, + liquidityProviders[2].signer.address, + "Third LP", + "http://localhost/api3", + true, + "pegout", + ]); + expect(result[2]).to.be.deep.equal([ + 4n, + accounts[0].address, + "LP account 0", + "http://localhost/api-account0", + true, + "both", + ]); + expect(result[3]).to.be.deep.equal([ + 7n, + accounts[4].address, + "LP account 4", + "http://localhost/api-account4", + true, + "both", + ]); + }); +}); diff --git a/test/liquidity.test.ts b/test/liquidity.test.ts new file mode 100644 index 0000000..acb3026 --- /dev/null +++ b/test/liquidity.test.ts @@ -0,0 +1,82 @@ +import hre, { ethers } from "hardhat"; +import { loadFixture } from "@nomicfoundation/hardhat-toolbox/network-helpers"; +import { expect } from "chai"; +import { deployContract } from "../scripts/deployment-utils/utils"; +import { deployLbcWithProvidersFixture } from "./utils/fixtures"; +import { createBalanceDifferenceAssertion } from "./utils/asserts"; +import { getBytes } from "ethers"; +import { getTestPeginQuote } from "./utils/quotes"; + +describe("LiquidityBridgeContractV2 liquidity management should", () => { + it("match LP address with address retrieved from ecrecover", async () => { + const { lbc, liquidityProviders } = await loadFixture( + deployLbcWithProvidersFixture + ); + + const deploymentInfo = await deployContract( + "SignatureValidator", + hre.network.name + ); + const signatureValidator = await ethers.getContractAt( + "SignatureValidator", + deploymentInfo.address + ); + + const provider = liquidityProviders[0]; + const destinationAddress = await ethers + .getSigners() + .then((accounts) => accounts[0].address); + const quote = getTestPeginQuote({ + lbcAddress: await lbc.getAddress(), + liquidityProvider: provider.signer, + destinationAddress: destinationAddress, + refundAddress: destinationAddress, + value: ethers.parseEther("0.5"), + }); + + const quoteHash = await lbc.hashQuote(quote).then((hash) => getBytes(hash)); + const signature = await provider.signer.signMessage(quoteHash); + const signatureAddress = ethers.verifyMessage(quoteHash, signature); + const validSignature = await signatureValidator.verify( + provider.signer.address, + quoteHash, + signature + ); + + expect(signatureAddress).to.be.equal(provider.signer.address); + expect(validSignature).to.be.eq(true); + }); + it("fail when withdraw amount greater than the sender balance", async () => { + const fixtureResult = await loadFixture(deployLbcWithProvidersFixture); + const provider = fixtureResult.liquidityProviders[0]; + let lbc = fixtureResult.lbc; + + lbc = lbc.connect(provider.signer); + const depositTx = await lbc.deposit({ value: "100000000" }); + await depositTx.wait(); + const firstWithdrawTx = lbc.withdraw("999999999999999"); + await expect(firstWithdrawTx).to.be.revertedWith("LBC019"); + const secondWithdrawTx = lbc.withdraw("100000000"); + await expect(secondWithdrawTx).not.to.be.reverted; + }); + + it("deposit a value to increase balance of liquidity provider", async () => { + const fixtureResult = await loadFixture(deployLbcWithProvidersFixture); + const provider = fixtureResult.liquidityProviders[1]; + const value = 100000000n; + let lbc = fixtureResult.lbc; + lbc = lbc.connect(provider.signer); + + const balanceAssertion = await createBalanceDifferenceAssertion({ + source: lbc, + address: provider.signer.address, + expectedDiff: value, + message: "Incorrect LP balance after deposit", + }); + const tx = await lbc.deposit({ value }); + await expect(tx) + .to.emit(lbc, "BalanceIncrease") + .withArgs(provider.signer.address, value); + await balanceAssertion(); + }); +}); diff --git a/test/miscellaneous.tests.js b/test/miscellaneous.tests.js deleted file mode 100644 index 1ea17fc..0000000 --- a/test/miscellaneous.tests.js +++ /dev/null @@ -1,430 +0,0 @@ -const LiquidityBridgeContractV2 = artifacts.require("LiquidityBridgeContractV2.sol"); -const LiquidityBridgeContract = artifacts.require("LiquidityBridgeContract"); -const BridgeMock = artifacts.require("BridgeMock"); -const Mock = artifacts.require("Mock"); -const truffleAssert = require("truffle-assertions"); -const utils = require("../test/utils/index"); - -const chai = require("chai"); -const truffleAssertions = require("truffle-assertions"); -const BN = web3.utils.BN; -const chaiBN = require("chai-bn")(BN); -chai.use(chaiBN); -const expect = chai.expect; - -contract("LiquidityBridgeContractV2.sol", async (accounts) => { - let instance; - let bridgeMockInstance; - let mock; - const liquidityProviderRskAddress = accounts[0]; - - before(async () => { - const proxy = await LiquidityBridgeContractV2.deployed(); - instance = await LiquidityBridgeContractV2.at(proxy.address); - bridgeMockInstance = await BridgeMock.deployed(); - mock = await Mock.deployed(); - }); - - beforeEach(async () => { - await utils.ensureLiquidityProviderAvailable( - instance, - liquidityProviderRskAddress, - utils.LP_COLLATERAL - ); - }); - - it("should not allow attacker to steal funds", async () => { - // The attacker controls a liquidity provider and also a destination address - // Note that these could be the same address, separated for clarity - let attackingLP = accounts[7]; - let attackerCollateral = web3.utils.toWei("10"); - await instance.register.call( - "First contract", - "http://localhost/api", - true, - 'both', - { - value: attackerCollateral, - from: attackingLP, - } - ); - - let goodLP = accounts[6]; - let goodProviderCollateral = web3.utils.toWei("30"); - await instance.register.call( - "First contract", - "http://localhost/api", - true, - 'both', - { - value: goodProviderCollateral, - from: goodLP, - } - ); - - let attackerDestAddress = accounts[9]; - - // Add funds from an innocent liquidity provider, note again this could be - // done by an attacker - // The quote value in wei should be bigger than 2**63-1. 10 RBTC is a good approximation. - let quoteValue = web3.utils.numberToHex(web3.utils.toWei("10")); - // Let's create the evil quote. - let btcRawTransaction = "0x101"; - let partialMerkleTree = "0x202"; - let height = 10; - let userBtcRefundAddress = "0x000000000000000000000000000000000000000000"; - let liquidityProviderBtcAddress = - "0x000000000000000000000000000000000000000000"; - let rskRefundAddress = attackerDestAddress; - let fedBtcAddress = "0x0000000000000000000000000000000000000000"; - let liquidityProviderRskAddress = attackingLP; - let data = "0x00"; - let callFee = web3.utils.toBN(1); - let gasLimit = 30000; - let nonce = 1; - let lbcAddress = instance.address; - let agreementTime = 1661788988; - let timeForDeposit = 600; - let callTime = 600; - let depositConfirmations = 10; - let penaltyFee = web3.utils.toBN(0); - let callOnRegister = true; - let productFeeAmount = web3.utils.toBN(1); - const gasFee = web3.utils.toBN(1); - let quote = [ - fedBtcAddress, - lbcAddress, - liquidityProviderRskAddress, - userBtcRefundAddress, - rskRefundAddress, - liquidityProviderBtcAddress, - callFee, - penaltyFee, - attackerDestAddress, - data, - gasLimit, - nonce, - quoteValue, - agreementTime, - timeForDeposit, - callTime, - depositConfirmations, - callOnRegister, - productFeeAmount, - gasFee - ]; - // Let's now register our quote in the bridge... note that the - // value is only a hundred wei - let transferredInBTC = 100; - let quoteHash = await instance.hashQuote(quote); - let signature = await web3.eth.sign(quoteHash, liquidityProviderRskAddress); - let firstConfirmationTime = utils.reverseHexBytes( - web3.utils.toHex(agreementTime + 300).substring(2) - ); - let nConfirmationTime = utils.reverseHexBytes( - web3.utils.toHex(agreementTime + 600).substring(2) - ); - let firstHeader = - "0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + - firstConfirmationTime + - "0000000000000000"; - let nHeader = - "0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + - nConfirmationTime + - "0000000000000000"; - - await bridgeMockInstance.setHeader(height, firstHeader); - await bridgeMockInstance.setHeader( - height + depositConfirmations - 1, - nHeader - ); - await bridgeMockInstance.setPegin(quoteHash, { value: transferredInBTC }); - - // Register the peg in with the evil quote - await truffleAssertions.reverts( - instance.registerPegIn.call( - quote, - signature, - btcRawTransaction, - partialMerkleTree, - height - ), - "LBC057" - ); - }); - - it("should pay with insufficient deposit that is not lower than (agreed amount - delta)", async () => { - let val = web3.utils.toBN(1000000); - let btcRawTransaction = "0x101"; - let partialMerkleTree = "0x202"; - let height = 10; - let userBtcRefundAddress = "0x000000000000000000000000000000000000000000"; - let liquidityProviderBtcAddress = - "0x000000000000000000000000000000000000000000"; - let rskRefundAddress = accounts[2]; - let destAddr = accounts[1]; - let initialUserBalance = await web3.eth.getBalance(destAddr); - let fedBtcAddress = "0x0000000000000000000000000000000000000000"; - let liquidityProviderRskAddress = accounts[0]; - let initialLPBalance = await instance.getBalance( - liquidityProviderRskAddress - ); - let initialLBCBalance = await web3.eth.getBalance(instance.address); - let data = "0x00"; - let callFee = 1; - const productFeeAmount = 1; - const gasFee = 1; - let gasLimit = 150000; - let nonce = 0; - let delta = web3.utils - .toBN(val) - .add(web3.utils.toBN(callFee)) - .add(web3.utils.toBN(productFeeAmount)) - .add(web3.utils.toBN(gasFee)) - .div(web3.utils.toBN(10000)); - let peginAmount = web3.utils - .toBN(val) - .add(web3.utils.toBN(callFee)) - .add(web3.utils.toBN(productFeeAmount)) - .add(web3.utils.toBN(gasFee)) - .sub(delta); - let lbcAddress = instance.address; - let agreementTime = 1661788988; - let timeForDeposit = 600; - let callTime = 600; - let depositConfirmations = 10; - let penaltyFee = 0; - let callOnRegister = false; - let quote = [ - fedBtcAddress, - lbcAddress, - liquidityProviderRskAddress, - userBtcRefundAddress, - rskRefundAddress, - liquidityProviderBtcAddress, - callFee, - penaltyFee, - destAddr, - data, - gasLimit, - nonce, - val, - agreementTime, - timeForDeposit, - callTime, - depositConfirmations, - callOnRegister, - productFeeAmount, - gasFee - ]; - let quoteHash = await instance.hashQuote(quote); - let signature = await web3.eth.sign(quoteHash, liquidityProviderRskAddress); - let firstConfirmationTime = utils.reverseHexBytes( - web3.utils.toHex(agreementTime + 300).substring(2) - ); - let nConfirmationTime = utils.reverseHexBytes( - web3.utils.toHex(agreementTime + 600).substring(2) - ); - let firstHeader = - "0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + - firstConfirmationTime + - "0000000000000000"; - let nHeader = - "0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + - nConfirmationTime + - "0000000000000000"; - - await bridgeMockInstance.setPegin(quoteHash, { value: peginAmount }); - await bridgeMockInstance.setHeader(height, firstHeader); - await bridgeMockInstance.setHeader( - height + depositConfirmations - 1, - nHeader - ); - - let initialLPDeposit = await instance.getCollateral( - liquidityProviderRskAddress - ); - - await instance.callForUser(quote, { value: val }); - - let currentLPBalance = await instance.getBalance( - liquidityProviderRskAddress - ); - - expect(currentLPBalance).to.be.a.bignumber.eq(initialLPBalance); - - let amount = await instance.registerPegIn.call( - quote, - signature, - btcRawTransaction, - partialMerkleTree, - height - ); - - await instance.registerPegIn( - quote, - signature, - btcRawTransaction, - partialMerkleTree, - height - ); - - let finalLPBalance = await instance.getBalance(liquidityProviderRskAddress); - let finalLBCBalance = await web3.eth.getBalance(instance.address); - let finalUserBalance = await web3.eth.getBalance(destAddr); - let finalLPDeposit = await instance.getCollateral( - liquidityProviderRskAddress - ); - - let usrBal = web3.utils - .toBN(finalUserBalance) - .sub(web3.utils.toBN(initialUserBalance)); - let lbcBal = web3.utils - .toBN(finalLBCBalance) - .sub(web3.utils.toBN(initialLBCBalance)); - let lpBal = web3.utils - .toBN(finalLPBalance) - .sub(web3.utils.toBN(initialLPBalance)); - expect(peginAmount).to.be.a.bignumber.eq(amount); - expect(usrBal).to.be.a.bignumber.eq(val); - expect(lbcBal).to.be.a.bignumber.eq(peginAmount.sub(web3.utils.toBN(productFeeAmount))); - expect(lpBal).to.be.a.bignumber.eq(peginAmount); - expect(finalLPDeposit).to.be.a.bignumber.eq(initialLPDeposit); - }); - - it("should revert on insufficient deposit", async () => { - let val = web3.utils.toBN(1000000); - let btcRawTransaction = "0x101"; - let partialMerkleTree = "0x201"; - let height = 10; - let userBtcRefundAddress = "0x000000000000000000000000000000000000000000"; - let liquidityProviderBtcAddress = - "0x000000000000000000000000000000000000000000"; - let rskRefundAddress = accounts[2]; - let destAddr = accounts[1]; - let fedBtcAddress = "0x0000000000000000000000000000000000000000"; - let liquidityProviderRskAddress = accounts[0]; - let data = web3.eth.abi.encodeFunctionCall(mock.abi[1], [ - "100100001110010", - ]); - let callFee = 1; - let gasLimit = 150000; - let nonce = 1; - let delta = web3.utils - .toBN(val) - .add(web3.utils.toBN(callFee)) - .div(web3.utils.toBN(10000)); - let peginAmount = web3.utils - .toBN(val) - .add(web3.utils.toBN(callFee)) - .sub(delta) - .sub(web3.utils.toBN(1)); - let lbcAddress = instance.address; - let agreementTime = 1661788988; - let timeForDeposit = 600; - let callTime = 600; - let depositConfirmations = 10; - let penaltyFee = 0; - let callOnRegister = false; - let productFeeAmount = web3.utils.toBN(1); - const gasFee = web3.utils.toBN(1); - let quote = [ - fedBtcAddress, - lbcAddress, - liquidityProviderRskAddress, - userBtcRefundAddress, - rskRefundAddress, - liquidityProviderBtcAddress, - callFee, - penaltyFee, - destAddr, - data, - gasLimit, - nonce, - val, - agreementTime, - timeForDeposit, - callTime, - depositConfirmations, - callOnRegister, - productFeeAmount, - gasFee - ]; - let quoteHash = await instance.hashQuote(quote); - let signature = await web3.eth.sign(quoteHash, liquidityProviderRskAddress); - let firstConfirmationTime = utils.reverseHexBytes( - web3.utils.toHex(agreementTime + 300).substring(2) - ); - let nConfirmationTime = utils.reverseHexBytes( - web3.utils.toHex(agreementTime + 600).substring(2) - ); - let firstHeader = - "0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + - firstConfirmationTime + - "0000000000000000"; - let nHeader = - "0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + - nConfirmationTime + - "0000000000000000"; - - await bridgeMockInstance.setPegin(quoteHash, { value: peginAmount }); - await bridgeMockInstance.setHeader(height, firstHeader); - await bridgeMockInstance.setHeader( - height + depositConfirmations - 1, - nHeader - ); - - await truffleAssertions.reverts( - instance.registerPegIn.call( - quote, - signature, - btcRawTransaction, - partialMerkleTree, - height - ), - "LBC057" - ); - }); - - it("should validate minimiumCollateral arg in initialize", async () => { - let instance = await LiquidityBridgeContract.new(); - const MINIMUM_COLLATERAL = web3.utils.toBN("20000000000000000") - const RESIGN_DELAY_BLOCKS = 15 - await truffleAssert.reverts( - instance.initialize(bridgeMockInstance.address, MINIMUM_COLLATERAL, 1, 50, RESIGN_DELAY_BLOCKS, 1, 1, false), - "LBC072" - ); - }); - - it("should validate resignDelayBlocks arg in initialize", async () => { - let instance = await LiquidityBridgeContract.new(); - const MINIMUM_COLLATERAL = web3.utils.toBN("600000000000000000") - const RESIGN_DELAY_BLOCKS = 14 - await truffleAssert.reverts( - instance.initialize(bridgeMockInstance.address, MINIMUM_COLLATERAL, 1, 50, RESIGN_DELAY_BLOCKS, 1, 1, false), - "LBC073" - ); - }); - - it("should validate reward percentage arg in initialize", async () => { - let instance = await LiquidityBridgeContract.new(); - const MINIMUM_COLLATERAL = web3.utils.toBN("600000000000000000") - const RESIGN_DELAY_BLOCKS = 60 - await instance.initialize(bridgeMockInstance.address, MINIMUM_COLLATERAL, 1, 0, RESIGN_DELAY_BLOCKS, 1, 1, false); - instance = await LiquidityBridgeContract.new(); - await instance.initialize(bridgeMockInstance.address, MINIMUM_COLLATERAL, 1, 0, RESIGN_DELAY_BLOCKS, 1, 1, false); - instance = await LiquidityBridgeContract.new(); - await instance.initialize(bridgeMockInstance.address, MINIMUM_COLLATERAL, 1, 1, RESIGN_DELAY_BLOCKS, 1, 1, false); - instance = await LiquidityBridgeContract.new(); - await instance.initialize(bridgeMockInstance.address, MINIMUM_COLLATERAL, 1, 99, RESIGN_DELAY_BLOCKS, 1, 1, false); - instance = await LiquidityBridgeContract.new(); - await instance.initialize(bridgeMockInstance.address, MINIMUM_COLLATERAL, 1, 100, RESIGN_DELAY_BLOCKS, 1, 1, false); - await truffleAssert.fails( - instance.initialize(bridgeMockInstance.address, MINIMUM_COLLATERAL, 1, 100, RESIGN_DELAY_BLOCKS, 1, 1, false) - ); - instance = await LiquidityBridgeContract.new(); - await truffleAssert.fails( - instance.initialize(bridgeMockInstance.address, MINIMUM_COLLATERAL, 1, 101, RESIGN_DELAY_BLOCKS, 1, 1, false) - ); - }); -}); diff --git a/test/pegin.test.ts b/test/pegin.test.ts new file mode 100644 index 0000000..a18a6ad --- /dev/null +++ b/test/pegin.test.ts @@ -0,0 +1,1763 @@ +import hre, { ethers } from "hardhat"; +import { + anyHex, + anyNumber, + LP_COLLATERAL, + ZERO_ADDRESS, +} from "./utils/constants"; +import { loadFixture } from "@nomicfoundation/hardhat-toolbox/network-helpers"; +import { expect } from "chai"; +import { deployContract } from "../scripts/deployment-utils/utils"; +import { deployLbcWithProvidersFixture } from "./utils/fixtures"; +import { + getBtcPaymentBlockHeaders, + getTestPeginQuote, + totalValue, +} from "./utils/quotes"; +import { getBytes } from "ethers"; +import { + createBalanceDifferenceAssertion, + createCollateralUpdateAssertion, +} from "./utils/asserts"; +import * as bs58check from "bs58check"; +import bs58 from "bs58"; +import { QuotesV2 } from "../typechain-types"; +import { getTestMerkleProof } from "./utils/btc"; +import * as hardhatHelpers from "@nomicfoundation/hardhat-network-helpers"; + +describe("LiquidityBridgeContractV2 pegin process should", () => { + it("call contract for user", async () => { + const fixtureResult = await loadFixture(deployLbcWithProvidersFixture); + const { liquidityProviders, bridgeMock } = fixtureResult; + let lbc = fixtureResult.lbc; + + const provider = liquidityProviders[0]; + const deploymentInfo = await deployContract("Mock", hre.network.name); + const mockContract = await ethers.getContractAt( + "Mock", + deploymentInfo.address + ); + const refundAddress = await ethers + .getSigners() + .then((accounts) => accounts[0].address); + const destinationAddress = await mockContract.getAddress(); + const data = mockContract.interface.encodeFunctionData("set", [12]); + const quote = getTestPeginQuote({ + destinationAddress: destinationAddress, + lbcAddress: await lbc.getAddress(), + liquidityProvider: provider.signer, + refundAddress: refundAddress, + value: ethers.parseEther("20"), + data: data, + }); + + const btcRawTransaction = "0x1010"; + const partialMerkleTree = "0x0202"; + const height = 10; + const peginAmount = totalValue(quote); + const lpBalanceAfterCfuAssertion = await createBalanceDifferenceAssertion({ + source: lbc, + address: provider.signer.address, + expectedDiff: 0, + message: "Incorrect LP balance after callForUser", + }); + const lpBalanceAfterRegisterAssertion = + await createBalanceDifferenceAssertion({ + source: lbc, + address: provider.signer.address, + expectedDiff: peginAmount - BigInt(quote.productFeeAmount), + message: "Incorrect LP balance after registerPegin", + }); + const lbcBalanceAssertion = await createBalanceDifferenceAssertion({ + source: ethers.provider, + address: await lbc.getAddress(), + expectedDiff: peginAmount - BigInt(quote.productFeeAmount), + message: "Incorrect LBC balance after pegin", + }); + + const quoteHash = await lbc.hashQuote(quote).then((hash) => getBytes(hash)); + const signature = await provider.signer.signMessage(quoteHash); + + const { firstConfirmationHeader, nConfirmationHeader } = + getBtcPaymentBlockHeaders({ + quote: quote, + firstConfirmationSeconds: 300, + nConfirmationSeconds: 600, + }); + + await bridgeMock.setPegin(quoteHash, { value: peginAmount }); + await bridgeMock.setHeader(height, firstConfirmationHeader); + await bridgeMock.setHeader( + height + Number(quote.depositConfirmations) - 1, + nConfirmationHeader + ); + await mockContract.set(0); + + const lpCollateralAssertion = await createCollateralUpdateAssertion({ + lbc: lbc, + address: provider.signer.address, + expectedDiff: 0, + message: "Incorrect collateral after pegin", + type: "pegin", + }); + + lbc = lbc.connect(provider.signer); + const cfuTx = await lbc.callForUser(quote, { value: quote.value }); + await cfuTx.wait(); + + await lpBalanceAfterCfuAssertion(); + + const registerPeginResult = await lbc.registerPegIn.staticCall( + quote, + signature, + btcRawTransaction, + partialMerkleTree, + height + ); + + const registerTx = await lbc.registerPegIn( + quote, + signature, + btcRawTransaction, + partialMerkleTree, + height + ); + + await expect(cfuTx) + .to.emit(lbc, "CallForUser") + .withArgs( + quote.liquidityProviderRskAddress, + quote.contractAddress, + quote.gasLimit, + quote.value, + quote.data, + true, + quoteHash + ); + await expect(registerTx) + .to.emit(lbc, "PegInRegistered") + .withArgs(quoteHash, peginAmount); + + expect(registerPeginResult).to.be.eq(peginAmount); + await lpBalanceAfterRegisterAssertion(); + await lbcBalanceAssertion(); + await lpCollateralAssertion(); + await expect(mockContract.check()).eventually.to.eq(12); + }); + it("fail on contract call due to invalid lbc address", async () => { + const fixtureResult = await loadFixture(deployLbcWithProvidersFixture); + const provider = fixtureResult.liquidityProviders[1]; + let lbc = fixtureResult.lbc; + lbc = lbc.connect(provider.signer); + + const accounts = fixtureResult.accounts; + const destinationAddress = accounts[0].address; + const refundAddress = accounts[1].address; + const notLbcAddress = accounts[2].address; + const quote = getTestPeginQuote({ + lbcAddress: notLbcAddress, + liquidityProvider: provider.signer, + destinationAddress: destinationAddress, + refundAddress: refundAddress, + value: ethers.parseEther("0.5"), + }); + + await expect(lbc.callForUser(quote)).to.be.revertedWith("LBC019"); + await expect( + lbc.callForUser(quote, { value: quote.value }) + ).to.be.revertedWith("LBC051"); + const registerPeginTx = lbc.registerPegIn( + quote, + anyHex, + anyHex, + anyHex, + anyNumber + ); + await expect(registerPeginTx).to.be.revertedWith("LBC051"); + }); + it("fail on contract call due to invalid contract address", async () => { + const fixtureResult = await loadFixture(deployLbcWithProvidersFixture); + const { liquidityProviders, bridgeMock, accounts } = fixtureResult; + let lbc = fixtureResult.lbc; + const provider = liquidityProviders[0]; + lbc = lbc.connect(provider.signer); + + const quote = getTestPeginQuote({ + lbcAddress: await lbc.getAddress(), + liquidityProvider: provider.signer, + destinationAddress: await bridgeMock.getAddress(), + refundAddress: accounts[0].address, + value: ethers.parseEther("0.5"), + }); + + await expect(lbc.hashQuote(quote)).to.be.revertedWith("LBC052"); + await expect( + lbc.callForUser(quote, { value: quote.value }) + ).to.be.revertedWith("LBC052"); + const registerPeginTx = lbc.registerPegIn( + quote, + anyHex, + anyHex, + anyHex, + anyNumber + ); + await expect(registerPeginTx).to.be.revertedWith("LBC052"); + }); + + it("fail on contract call due to invalid user btc refund address", async () => { + const fixtureResult = await loadFixture(deployLbcWithProvidersFixture); + let lbc = fixtureResult.lbc; + const provider = fixtureResult.liquidityProviders[0]; + lbc = lbc.connect(provider.signer); + const accounts = fixtureResult.accounts; + const destinationAddress = accounts[2].address; + const quote = getTestPeginQuote({ + lbcAddress: await lbc.getAddress(), + liquidityProvider: provider.signer, + destinationAddress: destinationAddress, + refundAddress: destinationAddress, + value: ethers.parseEther("0.5"), + }); + const invalidAddresses = [ + "0x0000000000000000000000000000000000000012" /* 20 bytes */, + "0x00000000000000000000000000000000000000000012" /* 22 bytes */, + ]; + + for (const address of invalidAddresses) { + quote.btcRefundAddress = address; + await expect(lbc.hashQuote(quote)).to.be.revertedWith("LBC053"); + await expect( + lbc.callForUser(quote, { value: quote.value }) + ).to.be.revertedWith("LBC053"); + const registerPeginTx = lbc.registerPegIn( + quote, + anyHex, + anyHex, + anyHex, + anyNumber + ); + await expect(registerPeginTx).to.be.revertedWith("LBC053"); + } + }); + + it("fail on contract call due to invalid lp btc address", async () => { + const fixtureResult = await loadFixture(deployLbcWithProvidersFixture); + let lbc = fixtureResult.lbc; + const provider = fixtureResult.liquidityProviders[1]; + lbc = lbc.connect(provider.signer); + const accounts = fixtureResult.accounts; + const destinationAddress = accounts[0].address; + const quote = getTestPeginQuote({ + lbcAddress: await lbc.getAddress(), + liquidityProvider: provider.signer, + destinationAddress: destinationAddress, + refundAddress: destinationAddress, + value: ethers.parseEther("0.5"), + }); + const invalidAddresses = [ + "0x0000000000000000000000000000000000000012" /* 20 bytes */, + "0x00000000000000000000000000000000000000000012" /* 22 bytes */, + ]; + + for (const address of invalidAddresses) { + quote.liquidityProviderBtcAddress = address; + await expect(lbc.hashQuote(quote)).to.be.revertedWith("LBC054"); + await expect( + lbc.callForUser(quote, { value: quote.value }) + ).to.be.revertedWith("LBC054"); + const registerPeginTx = lbc.registerPegIn( + quote, + anyHex, + anyHex, + anyHex, + anyNumber + ); + await expect(registerPeginTx).to.be.revertedWith("LBC054"); + } + }); + + it("fail on contract call due to quote value+fee being below min peg-in", async () => { + const fixtureResult = await loadFixture(deployLbcWithProvidersFixture); + let lbc = fixtureResult.lbc; + const provider = fixtureResult.liquidityProviders[1]; + lbc = lbc.connect(provider.signer); + const accounts = fixtureResult.accounts; + const destinationAddress = accounts[2].address; + const quote = getTestPeginQuote({ + lbcAddress: await lbc.getAddress(), + liquidityProvider: provider.signer, + destinationAddress: destinationAddress, + refundAddress: destinationAddress, + value: ethers.parseEther("0.1"), + }); + + await expect(lbc.hashQuote(quote)).to.be.revertedWith("LBC055"); + await expect( + lbc.callForUser(quote, { value: quote.value }) + ).to.be.revertedWith("LBC055"); + const registerPeginTx = lbc.registerPegIn( + quote, + anyHex, + anyHex, + anyHex, + anyNumber + ); + await expect(registerPeginTx).to.be.revertedWith("LBC055"); + }); + + it("should transfer value for user", async () => { + const fixtureResult = await loadFixture(deployLbcWithProvidersFixture); + const { liquidityProviders, bridgeMock, accounts } = fixtureResult; + let lbc = fixtureResult.lbc; + const daoFee = 100000000000n; + const provider = liquidityProviders[1]; + lbc = lbc.connect(provider.signer); + + const rskRefundAddress = accounts[2].address; + const destinationAddress = accounts[1].address; + const lbcAddress = await lbc.getAddress(); + const quote = getTestPeginQuote({ + lbcAddress: lbcAddress, + liquidityProvider: provider.signer, + destinationAddress: destinationAddress, + refundAddress: rskRefundAddress, + value: ethers.parseEther("10"), + }); + quote.productFeeAmount = daoFee; + const peginAmount = totalValue(quote); + + const userBalanceAssertion = await createBalanceDifferenceAssertion({ + source: ethers.provider, + address: destinationAddress, + expectedDiff: quote.value, + message: "Incorrect user balance after pegin", + }); + + const feeCollectorBalanceAssertion = await createBalanceDifferenceAssertion( + { + source: ethers.provider, + address: ZERO_ADDRESS, + expectedDiff: daoFee, + message: "Incorrect DAO fee collector balance after pegin", + } + ); + + const lpBalanceAfterCfuAssertion = await createBalanceDifferenceAssertion({ + source: lbc, + address: provider.signer.address, + expectedDiff: 0, + message: "Incorrect LP balance after call for user", + }); + + const lpBalanceAfterRegisterAssertion = + await createBalanceDifferenceAssertion({ + source: lbc, + address: provider.signer.address, + expectedDiff: peginAmount - BigInt(quote.productFeeAmount), + message: "Incorrect LP balance after register pegin", + }); + + const lbcBalanceAssertion = await createBalanceDifferenceAssertion({ + source: ethers.provider, + address: lbcAddress, + expectedDiff: peginAmount - BigInt(quote.productFeeAmount), + message: "Incorrect LBC balance after pegin", + }); + + const lpCollateralAssertion = await createCollateralUpdateAssertion({ + lbc: lbc, + address: provider.signer.address, + expectedDiff: 0, + message: "Incorrect collateral after pegin", + type: "pegin", + }); + + const quoteHash = await lbc.hashQuote(quote).then((hash) => getBytes(hash)); + const signature = await provider.signer.signMessage(quoteHash); + const { firstConfirmationHeader, nConfirmationHeader } = + getBtcPaymentBlockHeaders({ + quote: quote, + firstConfirmationSeconds: 300, + nConfirmationSeconds: 600, + }); + const height = 10; + + await bridgeMock.setPegin(quoteHash, { value: peginAmount }); + await bridgeMock.setHeader(height, firstConfirmationHeader); + await bridgeMock.setHeader( + height + Number(quote.depositConfirmations) - 1, + nConfirmationHeader + ); + + const cfuTx = await lbc.callForUser(quote, { value: quote.value }); + await cfuTx.wait(); + + await lpBalanceAfterCfuAssertion(); + + const registerPeginResult = await lbc.registerPegIn.staticCall( + quote, + signature, + anyHex, + anyHex, + height + ); + + const registerPeginTx = await lbc.registerPegIn( + quote, + signature, + anyHex, + anyHex, + height + ); + + await expect(registerPeginTx) + .to.emit(lbc, "PegInRegistered") + .withArgs(quoteHash, peginAmount); + + await expect(cfuTx) + .to.emit(lbc, "CallForUser") + .withArgs( + quote.liquidityProviderRskAddress, + quote.contractAddress, + quote.gasLimit, + quote.value, + quote.data, + true, + quoteHash + ); + + await expect(registerPeginTx) + .to.emit(lbc, "DaoFeeSent") + .withArgs(quoteHash, daoFee); + + await userBalanceAssertion(); + await lbcBalanceAssertion(); + await lpCollateralAssertion(); + await lpBalanceAfterRegisterAssertion(); + await feeCollectorBalanceAssertion(); + expect(registerPeginResult).to.be.eq(peginAmount); + }); + + it("not generate transaction to DAO when product fee is 0 in registerPegIn", async () => { + const fixtureResult = await loadFixture(deployLbcWithProvidersFixture); + const { liquidityProviders, bridgeMock, accounts } = fixtureResult; + let lbc = fixtureResult.lbc; + const provider = liquidityProviders[1]; + lbc = lbc.connect(provider.signer); + const destinationAddress = accounts[1].address; + const lbcAddress = await lbc.getAddress(); + const quote = getTestPeginQuote({ + lbcAddress: lbcAddress, + liquidityProvider: provider.signer, + destinationAddress: destinationAddress, + refundAddress: destinationAddress, + value: ethers.parseEther("10"), + }); + const peginAmount = totalValue(quote); + + const feeCollectorBalanceAssertion = await createBalanceDifferenceAssertion( + { + source: ethers.provider, + address: ZERO_ADDRESS, + expectedDiff: 0, + message: "Incorrect DAO fee collector balance after pegin", + } + ); + + const quoteHash = await lbc.hashQuote(quote).then((hash) => getBytes(hash)); + const signature = await provider.signer.signMessage(quoteHash); + const { firstConfirmationHeader, nConfirmationHeader } = + getBtcPaymentBlockHeaders({ + quote: quote, + firstConfirmationSeconds: 300, + nConfirmationSeconds: 600, + }); + const height = 10; + + await bridgeMock.setPegin(quoteHash, { value: peginAmount }); + await bridgeMock.setHeader(height, firstConfirmationHeader); + await bridgeMock.setHeader( + height + Number(quote.depositConfirmations) - 1, + nConfirmationHeader + ); + + const cfuTx = await lbc.callForUser(quote, { value: quote.value }); + await cfuTx.wait(); + + const registerPeginTx = await lbc.registerPegIn( + quote, + signature, + anyHex, + anyHex, + height + ); + + await expect(registerPeginTx) + .to.emit(lbc, "PegInRegistered") + .withArgs(quoteHash, peginAmount); + + await expect(cfuTx) + .to.emit(lbc, "CallForUser") + .withArgs( + quote.liquidityProviderRskAddress, + quote.contractAddress, + quote.gasLimit, + quote.value, + quote.data, + true, + quoteHash + ); + + expect(quote.productFeeAmount).to.be.eq(0); + await expect(registerPeginTx).not.to.emit(lbc, "DaoFeeSent"); + await feeCollectorBalanceAssertion(); + }); + + it("verify depositAddress for given quote", async () => { + const { lbc } = await loadFixture(deployLbcWithProvidersFixture); + const lbcAddress = await lbc.getAddress(); + const tests = [ + { + quote: { + fedBtcAddress: bs58check + .decode("2N5muMepJizJE1gR7FbHJU6CD18V3BpNF9p") + .slice(1), + lbcAddress: lbcAddress, + liquidityProviderRskAddress: + "0x9D93929A9099be4355fC2389FbF253982F9dF47c", + btcRefundAddress: bs58check.decode( + "mxqk28jvEtvjxRN8k7W9hFEJfWz5VcUgHW" + ), + rskRefundAddress: "0xa2193A393aa0c94A4d52893496F02B56C61c36A1", + liquidityProviderBtcAddress: bs58check.decode( + "mnYcQxCZBbmLzNfE9BhV7E8E2u7amdz5y6" + ), + callFee: BigInt("1000000000000000"), + penaltyFee: 1000000, + contractAddress: "0xa2193A393aa0c94A4d52893496F02B56C61c36A1", + data: "0x", + gasLimit: 46000, + nonce: BigInt("3426962016206607167"), + value: BigInt("600000000000000000"), + agreementTimestamp: 1691772110, + timeForDeposit: 3600, + callTime: 7200, + depositConfirmations: 10, + callOnRegister: false, + productFeeAmount: BigInt("6000000000000000"), + gasFee: BigInt("3000000000000000"), + }, + address: "2Mvz5NDrXSSBCXzhrxnuo9TDS8Co4Wk1t8N", + }, + { + quote: { + fedBtcAddress: bs58check + .decode("2N5muMepJizJE1gR7FbHJU6CD18V3BpNF9p") + .slice(1), + lbcAddress: lbcAddress, + liquidityProviderRskAddress: + "0x9D93929A9099be4355fC2389FbF253982F9dF47c", + btcRefundAddress: bs58check.decode( + "mi5vEG69RGhi3RKsn7bWco5xnafZvsXvrF" + ), + rskRefundAddress: "0x69b3886457c0e0654d9829d29a6156f49236235c", + liquidityProviderBtcAddress: bs58check.decode( + "mnYcQxCZBbmLzNfE9BhV7E8E2u7amdz5y6" + ), + callFee: BigInt("1000000000000000"), + penaltyFee: 1000000, + contractAddress: "0x7221249458b5e2055b33069a27836985a3822c99", + data: "0x", + gasLimit: 46000, + nonce: BigInt("7363369648470809209"), + value: BigInt("700000000000000000"), + agreementTimestamp: 1691873604, + timeForDeposit: 3600, + callTime: 7200, + depositConfirmations: 10, + callOnRegister: false, + productFeeAmount: BigInt("7000000000000000"), + gasFee: BigInt("4000000000000000"), + }, + address: "2Mxb4NdDaDBX4kjxhBrzjMG5WbCjok6LWab", + }, + { + quote: { + fedBtcAddress: bs58check + .decode("2N5muMepJizJE1gR7FbHJU6CD18V3BpNF9p") + .slice(1), + lbcAddress: lbcAddress, + liquidityProviderRskAddress: + "0x9D93929A9099be4355fC2389FbF253982F9dF47c", + btcRefundAddress: bs58check.decode( + "mjSE41mAMwqdYsXiibUgyWe4oESoCygf96" + ), + rskRefundAddress: "0xc67319ce23965591947a93884356252477330456", + liquidityProviderBtcAddress: bs58check.decode( + "mnYcQxCZBbmLzNfE9BhV7E8E2u7amdz5y6" + ), + callFee: BigInt("1000000000000000"), + penaltyFee: 1000000, + contractAddress: "0x48c8396629c550203e183350c9074a2b42e83d1a", + data: "0x", + gasLimit: 46000, + nonce: BigInt("8681289575209299775"), + value: BigInt("800000000000000000"), + agreementTimestamp: 1691874253, + timeForDeposit: 3600, + callTime: 7200, + depositConfirmations: 10, + callOnRegister: false, + productFeeAmount: BigInt("8000000000000000"), + gasFee: BigInt("5000000000000000"), + }, + address: "2NCx9M8j7nZTp3GmP36CFvFgYNLBQwQPwDR", + }, + ]; + + for (const test of tests) { + const decoded = bs58.decode(test.address); + await expect( + lbc.validatePeginDepositAddress(test.quote, decoded) + ).to.eventually.eq(true); + } + }); + + it("throw error in hashQuote if summing quote agreementTimestamp and timeForDeposit cause overflow", async () => { + const { lbc, accounts, liquidityProviders } = await loadFixture( + deployLbcWithProvidersFixture + ); + const user = accounts[0]; + const quote = getTestPeginQuote({ + lbcAddress: await lbc.getAddress(), + liquidityProvider: liquidityProviders[0].signer, + destinationAddress: user.address, + refundAddress: user.address, + value: ethers.parseEther("10"), + }); + quote.agreementTimestamp = 4294967294; + quote.timeForDeposit = 4294967294; + await expect(lbc.hashQuote(quote)).to.be.revertedWith("LBC071"); + }); + + it("refund pegin with wrong amount without penalizing the LP (real cases)", async () => { + const fixtureResult = await loadFixture(deployLbcWithProvidersFixture); + const lp = fixtureResult.liquidityProviders[0]; + const lbc = fixtureResult.lbc.connect(lp.signer); + const bridgeMock = fixtureResult.bridgeMock; + interface TestCase { + quote: QuotesV2.PeginQuoteStruct; + quoteHash: string; + signature: string; + btcRawTx: string; + pmt: string; + height: number; + refundAmount: string; + } + const cases: TestCase[] = [ + { + quote: { + fedBtcAddress: bs58check + .decode("3LxPz39femVBL278mTiBvgzBNMVFqXssoH") + .slice(1), + lbcAddress: "0xAA9cAf1e3967600578727F975F283446A3Da6612", + liquidityProviderRskAddress: + "0x4202bac9919c3412fc7c8be4e678e26279386603", + btcRefundAddress: bs58check.decode( + "1K5X7aTGfZGksihgNdDschakaxp8ZhT1F3" + ), + rskRefundAddress: "0x1bf357F3CcCe62a5Dd1035c79070BdA219C53B10", + liquidityProviderBtcAddress: bs58check.decode( + "17kksixYkbHeLy9okV16kr4eAxVhFkRhP" + ), + callFee: "100000000000000", + penaltyFee: "10000000000000", + contractAddress: "0x1bf357F3CcCe62a5Dd1035c79070BdA219C53B10", + data: "0x", + gasLimit: 21000, + nonce: "907664817259568253", + value: "5200000000000000", + agreementTimestamp: 1727278204, + timeForDeposit: 3600, + callTime: 7200, + depositConfirmations: 2, + callOnRegister: false, + productFeeAmount: 0, + gasFee: "1354759560000", + }, + quoteHash: + "b21ead431a1c3efd1759b62a56c253d740d1bf3c3673cd060aed64906a82c1c3", + signature: + "c72e3e5bb9cf6bf3db568df18d2dba80896490cda7371c4643cad116d54d46c50a368d4cfa0b963468c5db15b773f4d1ea1ab69565a3f903ac3ab363204ba3bc1c", + btcRawTx: + "020000000212bebc8ba671aa9af2e3984af89366b5594ed115dbbaef64a41e8650cd4a53ea0000000017160014fe7b123124c87300e8ba30f0e2eafdd8e1f2b337ffffffff046d8f4e5fa8d6cc5fa23c50640249461b646e8a4722c9cfbfbff00c049d559f0000000017160014fe7b123124c87300e8ba30f0e2eafdd8e1f2b337ffffffff02d71608000000000017a9149fa51efd2954990e4974e7b13468fb8be54512d8872d2507000000000017a914b979999438ade0fdd2cf303fca55ea29aec2392b8700000000", + pmt: "800c00000d3eb13be27a4110f06ca8e4b4b00103e10ac6ba5f9123934764ac9555e2ec3c7b88a5464adca8b40a548741a8262dc2ab228f89cbd51bbf57f3f5d67130820ae3f9b7625821c2d9718d6611de40edfa1eb42181f180aab3891730584921a125dddba628c1d3f5fca59e0b68494aae191ab14db30b79e07962da298a52bcf077905661f80bd5731e0c80524ba2f7dcad0bd05a0d470bccdb5c5889c9c71ac7c5bca7f6cebd492154af69f2b98bcf7995444c765a18445a5ef212eb5f8ead5a441a45536e4075022614df043d03b2449113a00f32cff333024d3a1d66d84d4a31c012bebc8ba671aa9af2e3984af89366b5594ed115dbbaef64a41e8650cd4a53ea34b89cb98fac941bdd048d4a8f371d7b9f132ad19f1542556c89b4e8701022de51f6d49aa8f7e7d01591de9bdef65351e8590f111ea9be5550f66a3d4a734758e26b8edf2bfe9c4375929fea7b7197a24589648f8e7b934a6caa2d9c7583e64a28db12de953b0abddbdc3edb28b845eaca02f56dd52aa04e3131dc539c0f646f35751d1ec529231acd5cb079b4a2b678ecd3fc07636be878e6336d546518562e04af6a1500", + height: 862825, + refundAmount: "5301350000000000", + }, + { + quote: { + fedBtcAddress: bs58check + .decode("3LxPz39femVBL278mTiBvgzBNMVFqXssoH") + .slice(1), + lbcAddress: "0xAA9cAf1e3967600578727F975F283446A3Da6612", + liquidityProviderRskAddress: + "0x4202bac9919c3412fc7c8be4e678e26279386603", + btcRefundAddress: bs58check.decode( + "171gGjg8NeLUonNSrFmgwkgT1jgqzXR6QX" + ), + rskRefundAddress: "0xaD0DE1962ab903E06C725A1b343b7E8950a0Ff82", + liquidityProviderBtcAddress: bs58check.decode( + "17kksixYkbHeLy9okV16kr4eAxVhFkRhP" + ), + callFee: "100000000000000", + penaltyFee: "10000000000000", + contractAddress: "0xaD0DE1962ab903E06C725A1b343b7E8950a0Ff82", + data: "0x", + gasLimit: 21000, + nonce: "8373381263192041574", + value: "8000000000000000", + agreementTimestamp: 1727298699, + timeForDeposit: 3600, + callTime: 7200, + depositConfirmations: 2, + callOnRegister: false, + productFeeAmount: 0, + gasFee: "1341211956000", + }, + quoteHash: + "9ef0d0c376a0611ee83a1d938f88cdc8694d9cb6e35780d253fb945e92647d68", + signature: + "8ccd018b5c1fb7eceba2a13f8c977ae362c0daccafa6d77a5eb740527dd177620bb6c2d072d68869b3a08b193b1356de564e73233ea1c2686078bf87e3c909a31c", + btcRawTx: + "010000000148e9e71dafee5a901be4eceb5aca361c083481b70496f4e3da71e5d969add1820000000017160014b88ef07cd7bcc022b6d73c4764ce5db0887d5b05ffffffff02965c0c000000000017a9141b67149e474f0d7757181f4db89257f27a64738387125b01000000000017a914785c3e807e54dc41251d6377da0673123fa87bc88700000000", + pmt: "a71100000e7fe369f81a807a962c8e528debd0b46cbfa4f8dfbc02a62674dd41a73f4c4bde0508a9e309e5836703375a58ab116b95434552ca2e460c3273cd2caa13350aefc3c8152a8150f738cd18ff33e69f19b727bff9c2b92aa06e6d0971e9b49893075f2d926bbb9f0884640363b79b6a668a178f140c13f25b48ec975357822ce38c733f6de9b32f6910ff3cd838efd274cd784ab204b74f281ef68146c334f509613d022554f281465dfcd597305c988c4b06e297e5d777afdb66c3391c3c471ebf9a1e051ba38201f08ca758d2dc83a71c34088e6785c1a775e2bde492361462cac9e7042653341cd1e190d0265a33f46ba564dc6116689cf19a8af6816c006df69803008246d44bc849babfbcc3de601fba3d10d696bf4b4d9cb8e291584e7d24bb2c81282972e71cb4493fb4966fcb483d6b62b24a0e25f912ee857d8843e4fa6181b8351f0a300e14503d51f46f367ec872712004535a56f14c65430f044f9685137a1afb2dc0aa402fde8d83b072ef0c4357529466e017dfb2935444103bbeec61bf8944924371921eefd02f35fd5283f3b7bce58a6f4ca15fb32cee8869be8d7720501ec18cc097c236b19212514582212719aede2400b1dd1ff43208ac7504bfb60a00", + height: 862859, + refundAmount: "8101340000000000", + }, + ]; + for (const testCase of cases) { + /** + * We perform this modifications because even that these are test cases that happened with actual mainnet + * transactions, the amounts are too small to be used in regtest, so we need to adapt them to the test environment + * also, the LBC address is different, so we modify that value as well + */ + const modifiedQuote = structuredClone(testCase.quote); + const regtestMultiplier = 100n; + modifiedQuote.lbcAddress = await lbc.getAddress(); + modifiedQuote.value = BigInt(testCase.quote.value) * regtestMultiplier; + modifiedQuote.gasFee = BigInt(testCase.quote.gasFee) * regtestMultiplier; + modifiedQuote.callFee = + BigInt(testCase.quote.callFee) * regtestMultiplier; + const modifiedRefundAmount = + BigInt(testCase.refundAmount) * regtestMultiplier; + + const refundAddressBalanceBefore = await ethers.provider.getBalance( + modifiedQuote.rskRefundAddress + ); + const quoteHash = await lbc.hashQuote(modifiedQuote); + await bridgeMock.setPegin(quoteHash, { value: modifiedRefundAmount }); + const registerTx = await lbc.registerPegIn( + modifiedQuote, + "0x" + testCase.signature, + "0x" + testCase.btcRawTx, + "0x" + testCase.pmt, + testCase.height + ); + const receipt = await registerTx.wait(); + const refundAddressBalanceAfter = await ethers.provider.getBalance( + modifiedQuote.rskRefundAddress + ); + + expect(receipt!.logs.length).to.be.eq(2); + expect(refundAddressBalanceAfter - refundAddressBalanceBefore).to.be.eq( + modifiedRefundAmount + ); + await expect(registerTx) + .to.emit(lbc, "Refund") + .withArgs( + modifiedQuote.rskRefundAddress, + modifiedRefundAmount, + true, + quoteHash + ); + await expect(registerTx) + .to.emit(lbc, "PegInRegistered") + .withArgs(quoteHash, modifiedRefundAmount); + } + }); + + it("transfer value and refund remaining", async () => { + const fixtureResult = await loadFixture(deployLbcWithProvidersFixture); + const { liquidityProviders, bridgeMock, accounts } = fixtureResult; + let lbc = fixtureResult.lbc; + const provider = liquidityProviders[1]; + lbc = lbc.connect(provider.signer); + const destinationAddress = accounts[1].address; + const rskRefundAddress = accounts[2].address; + const quote = getTestPeginQuote({ + lbcAddress: await lbc.getAddress(), + liquidityProvider: provider.signer, + destinationAddress: destinationAddress, + refundAddress: rskRefundAddress, + value: ethers.parseEther("10"), + }); + + const { firstConfirmationHeader, nConfirmationHeader } = + getBtcPaymentBlockHeaders({ + quote: quote, + firstConfirmationSeconds: 300, + nConfirmationSeconds: 600, + }); + const { blockHeaderHash, partialMerkleTree } = getTestMerkleProof(); + const height = 10; + const additionalFunds = 1000000000000n; + const peginAmount = totalValue(quote); + const quoteHash = await lbc.hashQuote(quote).then((hash) => getBytes(hash)); + const signature = await provider.signer.signMessage(quoteHash); + + await bridgeMock.setPegin(quoteHash, { + value: peginAmount + additionalFunds, + }); + await bridgeMock.setHeader(height, firstConfirmationHeader); + await bridgeMock.setHeader( + height + Number(quote.depositConfirmations) - 1, + nConfirmationHeader + ); + + const destinationBalanceDiffAsserttion = + await createBalanceDifferenceAssertion({ + source: ethers.provider, + address: destinationAddress, + expectedDiff: quote.value, + message: "Incorrect destination balance after pegin", + }); + const lbcBalanceDiffAssertion = await createBalanceDifferenceAssertion({ + source: ethers.provider, + address: await lbc.getAddress(), + expectedDiff: peginAmount - BigInt(quote.productFeeAmount), + message: "Incorrect LBC balance after pegin", + }); + const lpBalanceDiffAfterCfuAssertion = + await createBalanceDifferenceAssertion({ + source: lbc, + address: provider.signer.address, + expectedDiff: 0, + message: "Incorrect LP balance after call for user", + }); + const refundBalanceDiffAssertion = await createBalanceDifferenceAssertion({ + source: ethers.provider, + address: rskRefundAddress, + expectedDiff: additionalFunds, + message: "Incorrect refund address balance after refund", + }); + const collateralAssertion = await createCollateralUpdateAssertion({ + lbc: lbc, + address: provider.signer.address, + expectedDiff: 0, + message: "Incorrect collateral after pegin", + type: "pegin", + }); + + const cfuTx = await lbc.callForUser(quote, { value: quote.value }); + await cfuTx.wait(); + + await lpBalanceDiffAfterCfuAssertion(); + const lpBalanceDiffAfterRegisterAssertion = + await createBalanceDifferenceAssertion({ + source: lbc, + address: provider.signer.address, + expectedDiff: peginAmount - BigInt(quote.productFeeAmount), + message: "Incorrect LP balance after register pegin", + }); + + const registerPeginResult = await lbc.registerPegIn.staticCall( + quote, + signature, + blockHeaderHash, + partialMerkleTree, + height + ); + const registerPeginTx = await lbc.registerPegIn( + quote, + signature, + blockHeaderHash, + partialMerkleTree, + height + ); + + await expect(registerPeginTx) + .to.emit(lbc, "PegInRegistered") + .withArgs(quoteHash, peginAmount + additionalFunds); + await expect(registerPeginTx) + .to.emit(lbc, "Refund") + .withArgs(rskRefundAddress, additionalFunds, true, quoteHash); + expect(registerPeginResult).to.be.eq(peginAmount + additionalFunds); + await destinationBalanceDiffAsserttion(); + await lbcBalanceDiffAssertion(); + await lpBalanceDiffAfterRegisterAssertion(); + await refundBalanceDiffAssertion(); + await collateralAssertion(); + }); + + it("refund remaining amount to LP in case refunding to quote.rskRefundAddress fails", async () => { + const fixtureResult = await loadFixture(deployLbcWithProvidersFixture); + const { liquidityProviders, bridgeMock, accounts } = fixtureResult; + const deploymentInfo = await deployContract("WalletMock", hre.network.name); + const walletMock = await ethers.getContractAt( + "WalletMock", + deploymentInfo.address + ); + const walletMockAddress = await walletMock.getAddress(); + await walletMock.setRejectFunds(true).then((tx) => tx.wait()); + let lbc = fixtureResult.lbc; + const provider = liquidityProviders[0]; + lbc = lbc.connect(provider.signer); + const destinationAddress = accounts[1].address; + const rskRefundAddress = walletMockAddress; + const quote = getTestPeginQuote({ + lbcAddress: await lbc.getAddress(), + liquidityProvider: provider.signer, + destinationAddress: destinationAddress, + refundAddress: rskRefundAddress, + value: ethers.parseEther("10"), + }); + + const { firstConfirmationHeader, nConfirmationHeader } = + getBtcPaymentBlockHeaders({ + quote: quote, + firstConfirmationSeconds: 300, + nConfirmationSeconds: 600, + }); + const { blockHeaderHash, partialMerkleTree } = getTestMerkleProof(); + const height = 10; + const additionalFunds = 1000000000000n; + const peginAmount = totalValue(quote); + const quoteHash = await lbc.hashQuote(quote).then((hash) => getBytes(hash)); + const signature = await provider.signer.signMessage(quoteHash); + + await bridgeMock.setPegin(quoteHash, { + value: peginAmount + additionalFunds, + }); + await bridgeMock.setHeader(height, firstConfirmationHeader); + await bridgeMock.setHeader( + height + Number(quote.depositConfirmations) - 1, + nConfirmationHeader + ); + + const destinationBalanceDiffAssertion = + await createBalanceDifferenceAssertion({ + source: ethers.provider, + address: destinationAddress, + expectedDiff: quote.value, + message: "Incorrect destination balance after pegin", + }); + const lbcBalanceDiffAssertion = await createBalanceDifferenceAssertion({ + source: ethers.provider, + address: await lbc.getAddress(), + expectedDiff: + peginAmount - BigInt(quote.productFeeAmount) + additionalFunds, + message: "Incorrect LBC balance after pegin", + }); + const lpBalanceDiffAfterCfuAssertion = + await createBalanceDifferenceAssertion({ + source: lbc, + address: provider.signer.address, + expectedDiff: 0, + message: "Incorrect LP balance after call for user", + }); + const refundBalanceDiffAssertion = await createBalanceDifferenceAssertion({ + source: ethers.provider, + address: rskRefundAddress, + expectedDiff: 0, + message: "Incorrect refund address balance after refund", + }); + const collateralAssertion = await createCollateralUpdateAssertion({ + lbc: lbc, + address: provider.signer.address, + expectedDiff: 0, + message: "Incorrect collateral after pegin", + type: "pegin", + }); + + const cfuTx = await lbc.callForUser(quote, { value: quote.value }); + await cfuTx.wait(); + await lpBalanceDiffAfterCfuAssertion(); + + const lpBalanceDiffAfterRegisterAssertion = + await createBalanceDifferenceAssertion({ + source: lbc, + address: provider.signer.address, + expectedDiff: + peginAmount - BigInt(quote.productFeeAmount) + additionalFunds, + message: "Incorrect LP balance after register pegin", + }); + + const registerPeginResult = await lbc.registerPegIn.staticCall( + quote, + signature, + blockHeaderHash, + partialMerkleTree, + height + ); + + const registerPeginTx = await lbc.registerPegIn( + quote, + signature, + blockHeaderHash, + partialMerkleTree, + height + ); + await expect(registerPeginTx) + .to.emit(lbc, "PegInRegistered") + .withArgs(quoteHash, peginAmount + additionalFunds); + await expect(registerPeginTx) + .to.emit(lbc, "Refund") + .withArgs(walletMockAddress, additionalFunds, false, quoteHash); + await expect(registerPeginTx) + .to.emit(lbc, "BalanceIncrease") + .withArgs(provider.signer.address, additionalFunds); + expect(registerPeginResult).to.be.eq(peginAmount + additionalFunds); + await destinationBalanceDiffAssertion(); + await lbcBalanceDiffAssertion(); + await lpBalanceDiffAfterRegisterAssertion(); + await refundBalanceDiffAssertion(); + await collateralAssertion(); + }); + + it("refund user on failed call", async () => { + const fixtureResult = await loadFixture(deployLbcWithProvidersFixture); + const { liquidityProviders, bridgeMock, accounts } = fixtureResult; + const rskRefundAddress = accounts[2].address; + const provider = liquidityProviders[0]; + const lbc = fixtureResult.lbc.connect(provider.signer); + const deploymentInfo = await deployContract("Mock", hre.network.name); + const mockContract = await ethers.getContractAt( + "Mock", + deploymentInfo.address + ); + const mockAddress = await mockContract.getAddress(); + const data = mockContract.interface.encodeFunctionData("fail"); + const quote = getTestPeginQuote({ + lbcAddress: await lbc.getAddress(), + liquidityProvider: provider.signer, + destinationAddress: mockAddress, + refundAddress: rskRefundAddress, + value: ethers.parseEther("10"), + data: data, + }); + + const { firstConfirmationHeader, nConfirmationHeader } = + getBtcPaymentBlockHeaders({ + quote: quote, + firstConfirmationSeconds: 300, + nConfirmationSeconds: 600, + }); + const { blockHeaderHash, partialMerkleTree } = getTestMerkleProof(); + const height = 10; + const peginAmount = totalValue(quote); + const quoteHash = await lbc.hashQuote(quote).then((hash) => getBytes(hash)); + const signature = await provider.signer.signMessage(quoteHash); + await bridgeMock.setPegin(quoteHash, { value: peginAmount }); + await bridgeMock.setHeader(height, firstConfirmationHeader); + await bridgeMock.setHeader( + height + Number(quote.depositConfirmations) - 1, + nConfirmationHeader + ); + + const destinationBalanceDiffAssertion = + await createBalanceDifferenceAssertion({ + source: ethers.provider, + address: mockAddress, + expectedDiff: 0, + message: "Incorrect refund balance after pegin", + }); + const refundBalanceDiffAssertion = await createBalanceDifferenceAssertion({ + source: ethers.provider, + address: rskRefundAddress, + expectedDiff: quote.value, + message: "Incorrect refund balance after pegin", + }); + const lpBalanceDiffAfterCfuAssertion = + await createBalanceDifferenceAssertion({ + source: lbc, + address: provider.signer.address, + expectedDiff: quote.value, + message: "Incorrect LP balance after call for user", + }); + const collateralAssertion = await createCollateralUpdateAssertion({ + lbc: lbc, + address: provider.signer.address, + expectedDiff: 0, + message: "Incorrect collateral after pegin", + type: "pegin", + }); + + await lbc + .callForUser(quote, { value: quote.value }) + .then((tx) => tx.wait()); + await lpBalanceDiffAfterCfuAssertion(); + + const lpBalanceDiffAfterRegisterAssertion = + await createBalanceDifferenceAssertion({ + source: lbc, + address: provider.signer.address, + expectedDiff: BigInt(quote.callFee) + BigInt(quote.gasFee), + message: "Incorrect LP balance after register pegin", + }); + const registerTx = await lbc.registerPegIn( + quote, + signature, + blockHeaderHash, + partialMerkleTree, + height + ); + await expect(registerTx) + .to.emit(lbc, "Refund") + .withArgs(rskRefundAddress, quote.value, true, quoteHash); + await lpBalanceDiffAfterRegisterAssertion(); + await refundBalanceDiffAssertion(); + await collateralAssertion(); + await destinationBalanceDiffAssertion(); + }); + + it("refund user on missed call", async () => { + const fixtureResult = await loadFixture(deployLbcWithProvidersFixture); + const { liquidityProviders, bridgeMock, accounts } = fixtureResult; + const rskRefundAddress = accounts[2].address; + const provider = liquidityProviders[0]; + const lbc = fixtureResult.lbc.connect(provider.signer); + + const quote = getTestPeginQuote({ + lbcAddress: await lbc.getAddress(), + liquidityProvider: provider.signer, + destinationAddress: accounts[1].address, + refundAddress: rskRefundAddress, + value: ethers.parseEther("10"), + }); + + const { firstConfirmationHeader, nConfirmationHeader } = + getBtcPaymentBlockHeaders({ + quote: quote, + firstConfirmationSeconds: 300, + nConfirmationSeconds: 600, + }); + const { blockHeaderHash, partialMerkleTree } = getTestMerkleProof(); + const height = 10; + const peginAmount = totalValue(quote); + const quoteHash = await lbc.hashQuote(quote).then((hash) => getBytes(hash)); + const signature = await provider.signer.signMessage(quoteHash); + + await bridgeMock.setPegin(quoteHash, { value: peginAmount }); + await bridgeMock.setHeader(height, firstConfirmationHeader); + await bridgeMock.setHeader( + height + Number(quote.depositConfirmations) - 1, + nConfirmationHeader + ); + const rewardPercentage = await lbc.getRewardPercentage(); + const reward = (BigInt(quote.penaltyFee) * rewardPercentage) / 100n; + + const destinationBalanceDiffAssertion = + await createBalanceDifferenceAssertion({ + source: ethers.provider, + address: accounts[1].address, + expectedDiff: 0, + message: "Incorrect refund balance after pegin", + }); + const refundBalanceDiffAssertion = await createBalanceDifferenceAssertion({ + source: ethers.provider, + address: rskRefundAddress, + expectedDiff: + BigInt(quote.value) + BigInt(quote.callFee) + BigInt(quote.gasFee), + message: "Incorrect refund balance after pegin", + }); + const lpBalanceDiffAssertion = await createBalanceDifferenceAssertion({ + source: lbc, + address: provider.signer.address, + expectedDiff: reward, + message: "Incorrect LP balance after call for user", + }); + const collateralAssertion = await createCollateralUpdateAssertion({ + lbc: lbc, + address: provider.signer.address, + expectedDiff: BigInt(quote.penaltyFee) * -1n, + message: "Incorrect collateral after pegin", + type: "pegin", + }); + const lbcBalanceDiffAssertion = await createBalanceDifferenceAssertion({ + source: ethers.provider, + address: await lbc.getAddress(), + expectedDiff: 0, + message: "Incorrect LBC balance after pegin", + }); + + const registerTx = await lbc.registerPegIn( + quote, + signature, + blockHeaderHash, + partialMerkleTree, + height + ); + await expect(registerTx) + .to.emit(lbc, "Refund") + .withArgs(rskRefundAddress, peginAmount, true, quoteHash); + await destinationBalanceDiffAssertion(); + await refundBalanceDiffAssertion(); + await lpBalanceDiffAssertion(); + await collateralAssertion(); + await lbcBalanceDiffAssertion(); + }); + + it("no one be refunded in registerPegIn on missed call in case refunding to quote.rskRefundAddress fails", async () => { + const fixtureResult = await loadFixture(deployLbcWithProvidersFixture); + const { liquidityProviders, bridgeMock, accounts } = fixtureResult; + const provider = liquidityProviders[0]; + const deploymentInfo = await deployContract("WalletMock", hre.network.name); + const walletMock = await ethers.getContractAt( + "WalletMock", + deploymentInfo.address + ); + const walletMockAddress = await walletMock.getAddress(); + await walletMock.setRejectFunds(true).then((tx) => tx.wait()); + const destinationAddress = accounts[1].address; + const registerCaller = accounts[2]; + const lbc = fixtureResult.lbc.connect(registerCaller); + const quote = getTestPeginQuote({ + lbcAddress: await lbc.getAddress(), + liquidityProvider: provider.signer, + destinationAddress: destinationAddress, + refundAddress: walletMockAddress, + value: ethers.parseEther("10"), + }); + const peginAmount = totalValue(quote); + const quoteHash = await lbc.hashQuote(quote).then((hash) => getBytes(hash)); + const signature = await provider.signer.signMessage(quoteHash); + const rewardPercentage = await lbc.getRewardPercentage(); + const reward = (BigInt(quote.penaltyFee) * rewardPercentage) / 100n; + const { firstConfirmationHeader, nConfirmationHeader } = + getBtcPaymentBlockHeaders({ + quote: quote, + firstConfirmationSeconds: 300, + nConfirmationSeconds: 600, + }); + const { blockHeaderHash, partialMerkleTree } = getTestMerkleProof(); + const height = 10; + + await bridgeMock.setPegin(quoteHash, { value: peginAmount }); + await bridgeMock.setHeader(10, firstConfirmationHeader); + await bridgeMock.setHeader(11, nConfirmationHeader); + + const registerCallerBalanceDiffAssertion = + await createBalanceDifferenceAssertion({ + source: lbc, + expectedDiff: reward, + address: registerCaller.address, + message: "Incorrect refund balance after pegin", + }); + const collateralAssertion = await createCollateralUpdateAssertion({ + lbc: lbc, + address: provider.signer.address, + expectedDiff: BigInt(quote.penaltyFee) * -1n, + message: "Incorrect collateral after pegin", + type: "pegin", + }); + const refundBalanceDiffAssertion = await createBalanceDifferenceAssertion({ + source: ethers.provider, + address: walletMockAddress, + expectedDiff: 0, + message: "Incorrect refund balance after pegin", + }); + const lbcBalanceDiffAssertion = await createBalanceDifferenceAssertion({ + source: ethers.provider, + address: await lbc.getAddress(), + expectedDiff: peginAmount - BigInt(quote.productFeeAmount), + message: "Incorrect LBC balance after pegin", + }); + + const registerTx = await lbc.registerPegIn( + quote, + signature, + blockHeaderHash, + partialMerkleTree, + height + ); + await expect(registerTx) + .to.emit(lbc, "Refund") + .withArgs( + walletMockAddress, + peginAmount - BigInt(quote.productFeeAmount), + false, + quoteHash + ); + await collateralAssertion(); + await refundBalanceDiffAssertion(); + await lbcBalanceDiffAssertion(); + await registerCallerBalanceDiffAssertion(); + }); + + it("not penalize with late deposit", async () => { + const fixtureResult = await loadFixture(deployLbcWithProvidersFixture); + const { liquidityProviders, bridgeMock, accounts } = fixtureResult; + const provider = liquidityProviders[0]; + const lbc = fixtureResult.lbc.connect(provider.signer); + const refundAddress = accounts[2].address; + const quote = getTestPeginQuote({ + lbcAddress: await lbc.getAddress(), + liquidityProvider: provider.signer, + destinationAddress: accounts[1].address, + refundAddress: refundAddress, + value: ethers.parseEther("10"), + }); + quote.timeForDeposit = 1; + + const quoteHash = await lbc.hashQuote(quote).then((hash) => getBytes(hash)); + const peginAmount = totalValue(quote); + const signature = await provider.signer.signMessage(quoteHash); + const { firstConfirmationHeader, nConfirmationHeader } = + getBtcPaymentBlockHeaders({ + quote: quote, + firstConfirmationSeconds: 300, + nConfirmationSeconds: 600, + }); + const { blockHeaderHash, partialMerkleTree } = getTestMerkleProof(); + const height = 10; + + const collateralAssertion = await createCollateralUpdateAssertion({ + lbc: lbc, + address: provider.signer.address, + expectedDiff: 0, + message: "Incorrect collateral after pegin", + type: "pegin", + }); + const refundBalanceDiffAssertion = await createBalanceDifferenceAssertion({ + source: ethers.provider, + address: refundAddress, + expectedDiff: peginAmount, + message: "Incorrect destination balance after pegin", + }); + await bridgeMock.setPegin(quoteHash, { value: peginAmount }); + await bridgeMock.setHeader(height, firstConfirmationHeader); + await bridgeMock.setHeader( + height + Number(quote.depositConfirmations) - 1, + nConfirmationHeader + ); + const registerTx = await lbc.registerPegIn( + quote, + signature, + blockHeaderHash, + partialMerkleTree, + height + ); + await expect(registerTx) + .to.emit(lbc, "PegInRegistered") + .withArgs(quoteHash, peginAmount); + await expect(registerTx).not.to.emit(lbc, "Penalized"); + await collateralAssertion(); + await refundBalanceDiffAssertion(); + }); + + it("not penalize with insufficient deposit", async () => { + const fixtureResult = await loadFixture(deployLbcWithProvidersFixture); + const { liquidityProviders, bridgeMock, accounts } = fixtureResult; + const provider = liquidityProviders[0]; + const lbc = fixtureResult.lbc.connect(provider.signer); + const refundAddress = accounts[2].address; + const quote = getTestPeginQuote({ + lbcAddress: await lbc.getAddress(), + liquidityProvider: provider.signer, + destinationAddress: accounts[1].address, + refundAddress: refundAddress, + value: ethers.parseEther("10"), + }); + + const quoteHash = await lbc.hashQuote(quote).then((hash) => getBytes(hash)); + const peginAmount = totalValue(quote); + const signature = await provider.signer.signMessage(quoteHash); + const { firstConfirmationHeader, nConfirmationHeader } = + getBtcPaymentBlockHeaders({ + quote: quote, + firstConfirmationSeconds: 300, + nConfirmationSeconds: 600, + }); + const { blockHeaderHash, partialMerkleTree } = getTestMerkleProof(); + const height = 10; + const insufficientDeposit = peginAmount - 1n; + await bridgeMock.setPegin(quoteHash, { value: insufficientDeposit }); + await bridgeMock.setHeader(height, firstConfirmationHeader); + await bridgeMock.setHeader( + height + Number(quote.depositConfirmations) - 1, + nConfirmationHeader + ); + const collateralAssertion = await createCollateralUpdateAssertion({ + lbc: lbc, + address: provider.signer.address, + expectedDiff: 0, + message: "Incorrect collateral after pegin", + type: "pegin", + }); + const refundBalanceDiffAssertion = await createBalanceDifferenceAssertion({ + source: ethers.provider, + address: refundAddress, + expectedDiff: insufficientDeposit, + message: "Incorrect destination balance after pegin", + }); + const registerTx = await lbc.registerPegIn( + quote, + signature, + blockHeaderHash, + partialMerkleTree, + height + ); + await expect(registerTx) + .to.emit(lbc, "PegInRegistered") + .withArgs(quoteHash, insufficientDeposit); + await expect(registerTx).not.to.emit(lbc, "Penalized"); + await collateralAssertion(); + await refundBalanceDiffAssertion(); + }); + + it("should penalize on late call", async () => { + const fixtureResult = await loadFixture(deployLbcWithProvidersFixture); + const { liquidityProviders, bridgeMock, accounts } = fixtureResult; + const provider = liquidityProviders[0]; + const lbc = fixtureResult.lbc.connect(provider.signer); + const destinationAddress = accounts[1].address; + const quote = getTestPeginQuote({ + lbcAddress: await lbc.getAddress(), + liquidityProvider: provider.signer, + destinationAddress: destinationAddress, + refundAddress: accounts[2].address, + value: ethers.parseEther("10"), + }); + quote.callTime = 1; + const peginAmount = totalValue(quote); + const quoteHash = await lbc.hashQuote(quote).then((hash) => getBytes(hash)); + const signature = await provider.signer.signMessage(quoteHash); + const { firstConfirmationHeader, nConfirmationHeader } = + getBtcPaymentBlockHeaders({ + quote: quote, + firstConfirmationSeconds: 100, + nConfirmationSeconds: 200, + }); + const { blockHeaderHash, partialMerkleTree } = getTestMerkleProof(); + const height = 10; + const rewardPercentage = await lbc.getRewardPercentage(); + const reward = (BigInt(quote.penaltyFee) * rewardPercentage) / 100n; + await hardhatHelpers.time.increase(300); + await bridgeMock.setPegin(quoteHash, { value: peginAmount }); + await bridgeMock.setHeader(height, firstConfirmationHeader); + await bridgeMock.setHeader( + height + Number(quote.depositConfirmations) - 1, + nConfirmationHeader + ); + const collateralAssertion = await createCollateralUpdateAssertion({ + lbc: lbc, + address: provider.signer.address, + expectedDiff: BigInt(quote.penaltyFee) * -1n, + message: "Incorrect collateral after pegin", + type: "pegin", + }); + const destinationBalanceDiffAssertion = + await createBalanceDifferenceAssertion({ + source: ethers.provider, + address: destinationAddress, + expectedDiff: quote.value, + message: "Incorrect destination balance after pegin", + }); + const lpBalanceAssertion = await createBalanceDifferenceAssertion({ + source: lbc, + address: provider.signer.address, + expectedDiff: reward + peginAmount, + message: "Incorrect LP balance after call for user", + }); + + await lbc + .callForUser(quote, { value: quote.value }) + .then((tx) => tx.wait()); + + const registerTx = await lbc.registerPegIn( + quote, + signature, + blockHeaderHash, + partialMerkleTree, + height + ); + await expect(registerTx) + .to.emit(lbc, "Penalized") + .withArgs(provider.signer.address, quote.penaltyFee, quoteHash); + await collateralAssertion(); + await destinationBalanceDiffAssertion(); + await lpBalanceAssertion(); + }); + + it("not underflow when penalty is higher than collateral", async () => { + const fixtureResult = await loadFixture(deployLbcWithProvidersFixture); + const { liquidityProviders, bridgeMock, accounts } = fixtureResult; + const provider = liquidityProviders[0]; + const lbc = fixtureResult.lbc.connect(provider.signer); + const destinationAddress = accounts[1].address; + const quote = getTestPeginQuote({ + lbcAddress: await lbc.getAddress(), + liquidityProvider: provider.signer, + destinationAddress: destinationAddress, + refundAddress: accounts[2].address, + value: ethers.parseEther("10"), + }); + quote.penaltyFee = LP_COLLATERAL + 1n; + quote.callTime = 1; + const peginAmount = totalValue(quote); + const quoteHash = await lbc.hashQuote(quote).then((hash) => getBytes(hash)); + const signature = await provider.signer.signMessage(quoteHash); + const { firstConfirmationHeader, nConfirmationHeader } = + getBtcPaymentBlockHeaders({ + quote: quote, + firstConfirmationSeconds: 100, + nConfirmationSeconds: 200, + }); + const { blockHeaderHash, partialMerkleTree } = getTestMerkleProof(); + const height = 10; + const rewardPercentage = await lbc.getRewardPercentage(); + const reward = (BigInt(quote.penaltyFee / 2n) * rewardPercentage) / 100n; + await hardhatHelpers.time.increase(300); + + const lpBalanceAssertion = await createBalanceDifferenceAssertion({ + source: lbc, + address: provider.signer.address, + expectedDiff: reward + peginAmount - BigInt(quote.productFeeAmount), + message: "Incorrect LP balance after pegin", + }); + const userBalanceAssertion = await createBalanceDifferenceAssertion({ + source: ethers.provider, + address: destinationAddress, + expectedDiff: quote.value, + message: "Incorrect destination balance after pegin", + }); + await bridgeMock.setPegin(quoteHash, { value: peginAmount }); + await bridgeMock.setHeader(height, firstConfirmationHeader); + await bridgeMock.setHeader( + height + Number(quote.depositConfirmations) - 1, + nConfirmationHeader + ); + await lbc + .callForUser(quote, { value: quote.value }) + .then((tx) => tx.wait()); + const registerTx = await lbc.registerPegIn( + quote, + signature, + blockHeaderHash, + partialMerkleTree, + height + ); + await expect(registerTx) + .to.emit(lbc, "Penalized") + .withArgs(provider.signer.address, LP_COLLATERAL / 2n, quoteHash); + await lpBalanceAssertion(); + await userBalanceAssertion(); + await expect( + lbc.getCollateral(provider.signer.address) + ).to.eventually.be.eq(0); + }); + + it("should not allow attacker to steal funds", async () => { + const fixtureResult = await loadFixture(deployLbcWithProvidersFixture); + const { liquidityProviders, accounts, bridgeMock } = fixtureResult; + let { lbc } = fixtureResult; + + // The attacker controls a liquidity provider and also a destination address + // Note that these could be the same address, separated for clarity + const attackingLP = liquidityProviders[0]; + const attackerDestAddress = accounts[9]; + + const goodLP = liquidityProviders[1]; + // Add funds from an innocent liquidity provider, note again this could be + // done by an attacker + lbc = lbc.connect(goodLP.signer); + await lbc.deposit({ value: ethers.parseEther("20") }); + + // The quote value in wei should be bigger than 2**63-1. 10 RBTC is a good approximation. + const quoteValue = ethers.parseEther("10"); + // Let's create the evil quote. + const quote: QuotesV2.PeginQuoteStruct = { + fedBtcAddress: "0x0000000000000000000000000000000000000000", + btcRefundAddress: "0x000000000000000000000000000000000000000000", + liquidityProviderBtcAddress: + "0x000000000000000000000000000000000000000000", + rskRefundAddress: attackerDestAddress, + liquidityProviderRskAddress: attackerDestAddress, + data: "0x", + gasLimit: 30000, + callFee: 1n, + nonce: 1, + lbcAddress: await lbc.getAddress(), + agreementTimestamp: 1661788988, + timeForDeposit: 600, + callTime: 600, + depositConfirmations: 10, + penaltyFee: 0n, + callOnRegister: true, + productFeeAmount: 1, + gasFee: 1n, + value: quoteValue, + contractAddress: attackerDestAddress, + }; + const btcRawTransaction = "0x0101"; + const partialMerkleTree = "0x0202"; + const height = 10; + // Let's now register our quote in the bridge... note that the + // value is only a hundred wei + const transferredInBTC = 100; + const quoteHash = await lbc.hashQuote(quote).then((hash) => getBytes(hash)); + const signature = await attackingLP.signer.signMessage(quoteHash); + const { firstConfirmationHeader, nConfirmationHeader } = + getBtcPaymentBlockHeaders({ + quote: quote, + firstConfirmationSeconds: 300, + nConfirmationSeconds: 600, + }); + await bridgeMock.setHeader(height, firstConfirmationHeader); + await bridgeMock.setHeader( + height + Number(quote.depositConfirmations) - 1, + nConfirmationHeader + ); + await bridgeMock.setPegin(quoteHash, { value: transferredInBTC }); + lbc = lbc.connect(attackingLP.signer); + const registerTx = lbc.registerPegIn( + quote, + signature, + btcRawTransaction, + partialMerkleTree, + height + ); + await expect(registerTx).to.be.revertedWith("LBC057"); + }); + + it("pay with insufficient deposit that is not lower than (agreed amount - delta)", async () => { + const fixtureResult = await loadFixture(deployLbcWithProvidersFixture); + const { liquidityProviders, bridgeMock, accounts } = fixtureResult; + const provider = liquidityProviders[0]; + const lbc = fixtureResult.lbc.connect(provider.signer); + const destinationAddress = accounts[1].address; + const quote = getTestPeginQuote({ + lbcAddress: await lbc.getAddress(), + liquidityProvider: provider.signer, + destinationAddress: destinationAddress, + refundAddress: accounts[2].address, + value: ethers.parseEther("0.7"), + }); + quote.callFee = ethers.parseEther("0.00001"); + quote.gasFee = ethers.parseEther("0.00003"); + const delta = totalValue(quote) / 10000n; + const peginAmount = totalValue(quote) - delta; + const quoteHash = await lbc.hashQuote(quote).then((hash) => getBytes(hash)); + const signature = await provider.signer.signMessage(quoteHash); + const { firstConfirmationHeader, nConfirmationHeader } = + getBtcPaymentBlockHeaders({ + quote: quote, + firstConfirmationSeconds: 100, + nConfirmationSeconds: 200, + }); + const { blockHeaderHash, partialMerkleTree } = getTestMerkleProof(); + const height = 10; + await bridgeMock.setHeader(height, firstConfirmationHeader); + await bridgeMock.setHeader( + height + Number(quote.depositConfirmations) + 1, + nConfirmationHeader + ); + await bridgeMock.setPegin(quoteHash, { value: peginAmount }); + + const collateralAssertion = await createCollateralUpdateAssertion({ + lbc: lbc, + address: provider.signer.address, + expectedDiff: 0, + message: "Incorrect collateral after pegin", + type: "pegin", + }); + const lpBalanceAssertion = await createBalanceDifferenceAssertion({ + source: lbc, + address: provider.signer.address, + expectedDiff: peginAmount, + message: "Incorrect LP balance after pegin", + }); + const lbcBalanceAssertion = await createBalanceDifferenceAssertion({ + source: ethers.provider, + address: await lbc.getAddress(), + expectedDiff: peginAmount, + message: "Incorrect LBC balance after pegin", + }); + const destinationBalanceAssertion = await createBalanceDifferenceAssertion({ + source: ethers.provider, + address: destinationAddress, + expectedDiff: quote.value, + message: "Incorrect destination balance after pegin", + }); + + await lbc + .callForUser(quote, { value: quote.value }) + .then((tx) => tx.wait()); + + const registerResult = await lbc.registerPegIn.staticCall( + quote, + signature, + blockHeaderHash, + partialMerkleTree, + height + ); + await lbc + .registerPegIn( + quote, + signature, + blockHeaderHash, + partialMerkleTree, + height + ) + .then((tx) => tx.wait()); + expect(registerResult).to.be.eq(peginAmount); + await collateralAssertion(); + await lpBalanceAssertion(); + await lbcBalanceAssertion(); + await destinationBalanceAssertion(); + }); + + it("revert on insufficient deposit", async () => { + const fixtureResult = await loadFixture(deployLbcWithProvidersFixture); + const { liquidityProviders, bridgeMock, accounts } = fixtureResult; + const provider = liquidityProviders[0]; + const lbc = fixtureResult.lbc.connect(provider.signer); + const destinationAddress = accounts[1].address; + const quote = getTestPeginQuote({ + lbcAddress: await lbc.getAddress(), + liquidityProvider: provider.signer, + destinationAddress: destinationAddress, + refundAddress: accounts[2].address, + value: ethers.parseEther("0.7"), + }); + quote.callFee = ethers.parseEther("0.000005"); + quote.gasFee = ethers.parseEther("0.000006"); + const delta = totalValue(quote) / 10000n; + const peginAmount = totalValue(quote) - delta - 1n; + const quoteHash = await lbc.hashQuote(quote).then((hash) => getBytes(hash)); + const signature = await provider.signer.signMessage(quoteHash); + const { firstConfirmationHeader, nConfirmationHeader } = + getBtcPaymentBlockHeaders({ + quote: quote, + firstConfirmationSeconds: 100, + nConfirmationSeconds: 200, + }); + const { blockHeaderHash, partialMerkleTree } = getTestMerkleProof(); + const height = 10; + await bridgeMock.setHeader(height, firstConfirmationHeader); + await bridgeMock.setHeader( + height + Number(quote.depositConfirmations) + 1, + nConfirmationHeader + ); + await bridgeMock.setPegin(quoteHash, { value: peginAmount }); + const registerTx = lbc.registerPegIn( + quote, + signature, + blockHeaderHash, + partialMerkleTree, + height + ); + await expect(registerTx).to.be.revertedWith("LBC057"); + }); +}); diff --git a/test/pegout.test.ts b/test/pegout.test.ts new file mode 100644 index 0000000..72c4619 --- /dev/null +++ b/test/pegout.test.ts @@ -0,0 +1,1284 @@ +import hre, { ethers } from "hardhat"; +import { anyHex, ZERO_ADDRESS } from "./utils/constants"; +import { loadFixture } from "@nomicfoundation/hardhat-toolbox/network-helpers"; +import { expect } from "chai"; +import { deployLbcWithProvidersFixture } from "./utils/fixtures"; +import { + getBtcPaymentBlockHeaders, + getTestPegoutQuote, + totalValue, +} from "./utils/quotes"; +import { getBytes, hexlify } from "ethers"; +import { + createBalanceDifferenceAssertion, + createBalanceUpdateAssertion, +} from "./utils/asserts"; +import { + BtcAddressType, + generateRawTx, + getTestMerkleProof, + weiToSat, +} from "./utils/btc"; +import { fromLeHex } from "./utils/encoding"; +import * as bs58check from "bs58check"; +import * as hardhatHelpers from "@nomicfoundation/hardhat-network-helpers"; +import { read } from "../scripts/deployment-utils/deploy"; + +describe("LiquidityBridgeContractV2 pegout process should", () => { + ( + ["p2pkh", "p2sh", "p2wpkh", "p2wsh", "p2tr"] satisfies BtcAddressType[] + ).forEach((scriptType) => { + it(`refundPegOut for a ${scriptType.toUpperCase()} transaction`, async () => { + const fixtureResult = await loadFixture(deployLbcWithProvidersFixture); + const { liquidityProviders, accounts } = fixtureResult; + const provider = liquidityProviders[0]; + const user = accounts[0]; + const bridgeMock = fixtureResult.bridgeMock.connect(provider.signer); + let lbc = fixtureResult.lbc; + lbc = lbc.connect(provider.signer); + const daoFee = 100000000000n; + const { blockHeaderHash, partialMerkleTree, merkleBranchHashes } = + getTestMerkleProof(); + const quote = getTestPegoutQuote({ + lbcAddress: await lbc.getAddress(), + value: ethers.parseEther("0.5"), + refundAddress: user.address, + liquidityProvider: liquidityProviders[0].signer, + destinationAddressType: scriptType, + }); + quote.productFeeAmount = daoFee; + const pegoutAmount = totalValue(quote); + + const lpBalanceDiffAfterDepositAssertion = + await createBalanceDifferenceAssertion({ + source: lbc, + address: provider.signer.address, + expectedDiff: 0, + message: "Incorrect LP balance after deposit", + }); + const lbcBalanceDiffAfterDepositAssertion = + await createBalanceDifferenceAssertion({ + source: ethers.provider, + address: await lbc.getAddress(), + expectedDiff: pegoutAmount, + message: "Incorrect LBC balance after deposit", + }); + const userBalanceAfterDepositAssertion = + await createBalanceUpdateAssertion({ + source: ethers.provider, + address: user.address, + message: "Incorrect user balance after deposit", + }); + + const { firstConfirmationHeader } = getBtcPaymentBlockHeaders({ + quote: quote, + firstConfirmationSeconds: 100, + nConfirmationSeconds: 600, + }); + await bridgeMock.setHeaderByHash( + blockHeaderHash, + firstConfirmationHeader + ); + const quoteHash = await lbc + .hashPegoutQuote(quote) + .then((hash) => getBytes(hash)); + const signature = await provider.signer.signMessage(quoteHash); + lbc = lbc.connect(user); + const depositTx = await lbc.depositPegout(quote, signature, { + value: pegoutAmount, + }); + const depositReceipt = await depositTx.wait(); + + await expect(depositTx).to.emit(lbc, "PegOutDeposit"); + await lpBalanceDiffAfterDepositAssertion(); + await lbcBalanceDiffAfterDepositAssertion(); + await userBalanceAfterDepositAssertion( + (pegoutAmount + depositReceipt!.fee) * -1n + ); + + const btcTx = await generateRawTx(lbc, quote, scriptType); + + const lpBalanceAfterRefundAssertion = await createBalanceUpdateAssertion({ + source: ethers.provider, + address: provider.signer.address, + message: "Incorrect LP balance after refund", + }); + const lbcBalanceDiffAfterRefundAssertion = + await createBalanceDifferenceAssertion({ + source: ethers.provider, + address: await lbc.getAddress(), + expectedDiff: pegoutAmount * -1n, + message: "Incorrect LBC balance after refund", + }); + const userBalanceDiffAfterRefundAssertion = + await createBalanceDifferenceAssertion({ + source: ethers.provider, + address: user.address, + expectedDiff: 0, + message: "Incorrect user balance after refund", + }); + + lbc = lbc.connect(provider.signer); + const refundTx = await lbc.refundPegOut( + quoteHash, + btcTx, + blockHeaderHash, + partialMerkleTree, + merkleBranchHashes + ); + const refundReceipt = await refundTx.wait(); + await expect(refundTx).to.emit(lbc, "PegOutRefunded").withArgs(quoteHash); + await expect(refundTx).not.to.emit(lbc, "Penalized"); + await expect(refundTx) + .to.emit(lbc, "DaoFeeSent") + .withArgs(quoteHash, daoFee); + await expect(ethers.provider.getBalance(ZERO_ADDRESS)).to.eventually.eq( + daoFee + ); + await lpBalanceAfterRefundAssertion( + pegoutAmount - BigInt(quote.productFeeAmount) - refundReceipt!.fee + ); + await lbcBalanceDiffAfterRefundAssertion(); + await userBalanceDiffAfterRefundAssertion(); + }); + }); + + it("refundPegOut with wrong rounding", async () => { + const fixtureResult = await loadFixture(deployLbcWithProvidersFixture); + const { liquidityProviders, accounts, bridgeMock } = fixtureResult; + const provider = liquidityProviders[0]; + const user = accounts[0]; + let lbc = fixtureResult.lbc; + const { blockHeaderHash, partialMerkleTree, merkleBranchHashes } = + getTestMerkleProof(); + + const quote = getTestPegoutQuote({ + lbcAddress: await lbc.getAddress(), + value: 0, + refundAddress: user.address, + liquidityProvider: provider.signer, + }); + quote.deposityAddress = bs58check.decode( + "2Mxo7RNBLYVxFhiz4MHbr1UyDWgzCReBRBx" + ); + quote.productFeeAmount = 0; + quote.value = BigInt("72160329123080000"); + quote.gasFee = BigInt("11290000000000"); + quote.callFee = BigInt("300000000000000"); + const pegoutAmount = totalValue(quote); + + const lpBalanceDiffAfterDepositAssertion = + await createBalanceDifferenceAssertion({ + source: lbc, + address: provider.signer.address, + expectedDiff: 0, + message: "Incorrect LP balance after deposit", + }); + const lbcBalanceDiffAfterDepositAssertion = + await createBalanceDifferenceAssertion({ + source: ethers.provider, + address: await lbc.getAddress(), + expectedDiff: pegoutAmount, + message: "Incorrect LBC balance after deposit", + }); + const userBalanceAfterDepositAssertion = await createBalanceUpdateAssertion( + { + source: ethers.provider, + address: user.address, + message: "Incorrect user balance after deposit", + } + ); + + const { firstConfirmationHeader } = getBtcPaymentBlockHeaders({ + quote: quote, + firstConfirmationSeconds: 100, + nConfirmationSeconds: 600, + }); + await bridgeMock.setHeaderByHash(blockHeaderHash, firstConfirmationHeader); + + const quoteHash = await lbc + .hashPegoutQuote(quote) + .then((hash) => getBytes(hash)); + const signature = await provider.signer.signMessage(quoteHash); + lbc = lbc.connect(user); + const depositTx = await lbc.depositPegout(quote, signature, { + value: pegoutAmount, + }); + const depositReceipt = await depositTx.wait(); + await lpBalanceDiffAfterDepositAssertion(); + await lbcBalanceDiffAfterDepositAssertion(); + await userBalanceAfterDepositAssertion( + (pegoutAmount + depositReceipt!.fee) * -1n + ); + + const littleEndianPaidAmount = "a01b6e0000000000"; + const btcTx = `0x0200000001c58d201925a80f49c3160bd97be969453d64c311d7c7a2c2c31318fdeedb8eb7020000006a47304402201944d92c0afd1524ac763c709269f70ca3a7597deffa8d732dad5fb1318ff5bc02205970622ade1d31212ad95ee62926d0acdf7e61e481c118acd02b9c9d29e9913b012102361cffc83b11d361119acd4e57c7103f94bce4ee990e3f2d3fac19017fe076bffdffffff03${littleEndianPaidAmount}17a9143ce07516dd6c85b69b4abec139fbac01cf84fec0870000000000000000226a20${hexlify( + quoteHash + ).slice( + 2 + )}ba9db202000000001976a9140147059622479e482bc1bf7f7ca8433bbfc3a34888ac00000000`; + const lpBalanceAfterRefundAssertion = await createBalanceUpdateAssertion({ + source: ethers.provider, + address: provider.signer.address, + message: "Incorrect LP balance after refund", + }); + const lbcBalanceDiffAfterRefundAssertion = + await createBalanceDifferenceAssertion({ + source: ethers.provider, + address: await lbc.getAddress(), + expectedDiff: pegoutAmount * -1n, + message: "Incorrect LBC balance after refund", + }); + + lbc = lbc.connect(provider.signer); + const refundTx = await lbc.refundPegOut( + quoteHash, + btcTx, + blockHeaderHash, + partialMerkleTree, + merkleBranchHashes + ); + const refundReceipt = await refundTx.wait(); + await expect(refundTx).to.emit(lbc, "PegOutRefunded").withArgs(quoteHash); + await expect(refundTx).not.to.emit(lbc, "Penalized"); + await lpBalanceAfterRefundAssertion(pegoutAmount - refundReceipt!.fee); + await lbcBalanceDiffAfterRefundAssertion(); + // assert that the paid value is truly truncated + expect(fromLeHex(littleEndianPaidAmount)).to.be.eq( + weiToSat(quote.value) - 1n + ); + }); + + it("not generate transaction to DAO when product fee is 0 in refundPegOut", async () => { + const fixtureResult = await loadFixture(deployLbcWithProvidersFixture); + const { liquidityProviders, accounts, bridgeMock } = fixtureResult; + const provider = liquidityProviders[0]; + const user = accounts[0]; + let lbc = fixtureResult.lbc; + const { blockHeaderHash, partialMerkleTree, merkleBranchHashes } = + getTestMerkleProof(); + + const quote = getTestPegoutQuote({ + lbcAddress: await lbc.getAddress(), + value: ethers.parseEther("0.5"), + refundAddress: user.address, + liquidityProvider: provider.signer, + }); + + const { firstConfirmationHeader } = getBtcPaymentBlockHeaders({ + quote: quote, + firstConfirmationSeconds: 100, + nConfirmationSeconds: 600, + }); + await bridgeMock.setHeaderByHash(blockHeaderHash, firstConfirmationHeader); + const quoteHash = await lbc + .hashPegoutQuote(quote) + .then((hash) => getBytes(hash)); + const signature = await provider.signer.signMessage(quoteHash); + lbc = lbc.connect(user); + const depositTx = await lbc.depositPegout(quote, signature, { + value: totalValue(quote), + }); + await expect(depositTx).to.emit(lbc, "PegOutDeposit"); + const btcTx = await generateRawTx(lbc, quote); + lbc = lbc.connect(provider.signer); + const assertFeeColectorBalance = await createBalanceDifferenceAssertion({ + source: ethers.provider, + address: ZERO_ADDRESS, + expectedDiff: 0, + message: "Incorrect DAO fee collector balance after refund", + }); + const refundTx = await lbc.refundPegOut( + quoteHash, + btcTx, + blockHeaderHash, + partialMerkleTree, + merkleBranchHashes + ); + await expect(refundTx).to.emit(lbc, "PegOutRefunded").withArgs(quoteHash); + await expect(refundTx).not.to.emit(lbc, "DaoFeeSent"); + await assertFeeColectorBalance(); + }); + + it("not allow user to re deposit a refunded quote", async () => { + const fixtureResult = await loadFixture(deployLbcWithProvidersFixture); + const { liquidityProviders, accounts, bridgeMock } = fixtureResult; + const provider = liquidityProviders[0]; + const user = accounts[0]; + let lbc = fixtureResult.lbc; + const { blockHeaderHash, partialMerkleTree, merkleBranchHashes } = + getTestMerkleProof(); + + const quote = getTestPegoutQuote({ + lbcAddress: await lbc.getAddress(), + value: ethers.parseEther("0.5"), + refundAddress: user.address, + liquidityProvider: provider.signer, + }); + + const { firstConfirmationHeader } = getBtcPaymentBlockHeaders({ + quote: quote, + firstConfirmationSeconds: 100, + nConfirmationSeconds: 600, + }); + await bridgeMock.setHeaderByHash(blockHeaderHash, firstConfirmationHeader); + + const quoteHash = await lbc + .hashPegoutQuote(quote) + .then((hash) => getBytes(hash)); + const signature = await provider.signer.signMessage(quoteHash); + lbc = lbc.connect(user); + const depositTx = await lbc.depositPegout(quote, signature, { + value: totalValue(quote), + }); + await expect(depositTx).to.emit(lbc, "PegOutDeposit"); + const btcTx = await generateRawTx(lbc, quote); + lbc = lbc.connect(provider.signer); + const refundTx = await lbc.refundPegOut( + quoteHash, + btcTx, + blockHeaderHash, + partialMerkleTree, + merkleBranchHashes + ); + await expect(refundTx).to.emit(lbc, "PegOutRefunded").withArgs(quoteHash); + await expect(refundTx).not.to.emit(lbc, "Penalized"); + const secondDeposit = lbc.depositPegout(quote, signature, { + value: totalValue(quote), + }); + await expect(secondDeposit).to.be.revertedWith("LBC064"); + }); + + it("validate that the quote was processed on refundPegOut", async () => { + const fixtureResult = await loadFixture(deployLbcWithProvidersFixture); + const { liquidityProviders, accounts, lbc } = fixtureResult; + const provider = liquidityProviders[0]; + const user = accounts[0]; + const quote = getTestPegoutQuote({ + lbcAddress: await lbc.getAddress(), + value: ethers.parseEther("0.5"), + refundAddress: user.address, + liquidityProvider: provider.signer, + }); + const { blockHeaderHash, partialMerkleTree, merkleBranchHashes } = + getTestMerkleProof(); + const quoteHash = await lbc + .hashPegoutQuote(quote) + .then((hash) => getBytes(hash)); + const refundTx = lbc.refundPegOut( + quoteHash, + anyHex, + blockHeaderHash, + partialMerkleTree, + merkleBranchHashes + ); + await expect(refundTx).to.be.revertedWith("LBC042"); + }); + + it("revert if LP tries to refund a pegout thats already been refunded by user", async () => { + const fixtureResult = await loadFixture(deployLbcWithProvidersFixture); + const { liquidityProviders, accounts } = fixtureResult; + const provider = liquidityProviders[0]; + let lbc = fixtureResult.lbc; + const user = accounts[0]; + const quote = getTestPegoutQuote({ + lbcAddress: await lbc.getAddress(), + value: ethers.parseEther("0.5"), + refundAddress: user.address, + liquidityProvider: provider.signer, + }); + const { blockHeaderHash, partialMerkleTree, merkleBranchHashes } = + getTestMerkleProof(); + // so its expired after deposit + quote.expireDate = BigInt(quote.agreementTimestamp) + 300n; + quote.expireBlock = await ethers.provider + .getBlockNumber() + .then((result) => result + 10); + const quoteHash = await lbc + .hashPegoutQuote(quote) + .then((hash) => getBytes(hash)); + const signature = await provider.signer.signMessage(quoteHash); + + lbc = lbc.connect(user); + const depositTx = await lbc.depositPegout(quote, signature, { + value: totalValue(quote), + }); + await expect(depositTx).to.emit(lbc, "PegOutDeposit"); + // increase 9 blocks and then 1 block that takes 500s to mine to force expiration + await hardhatHelpers.mine(9); + await hardhatHelpers.time.increase(500); + + const refundUserTx = await lbc.refundUserPegOut(quoteHash); + await expect(refundUserTx).to.emit(lbc, "PegOutUserRefunded"); + lbc = lbc.connect(provider.signer); + const refundTx = lbc.refundPegOut( + quoteHash, + anyHex, + blockHeaderHash, + partialMerkleTree, + merkleBranchHashes + ); + await expect(refundTx).to.be.revertedWith("LBC064"); + }); + + it("penalize LP if refunds after expiration", async () => { + const fixtureResult = await loadFixture(deployLbcWithProvidersFixture); + const { liquidityProviders, accounts, bridgeMock } = fixtureResult; + const provider = liquidityProviders[0]; + let lbc = fixtureResult.lbc; + const user = accounts[0]; + const quote = getTestPegoutQuote({ + lbcAddress: await lbc.getAddress(), + value: ethers.parseEther("0.5"), + refundAddress: user.address, + liquidityProvider: provider.signer, + }); + quote.expireBlock = await ethers.provider + .getBlockNumber() + .then((result) => result + 10); + quote.expireDate = Math.round(Date.now() / 1000) + 100; + const { blockHeaderHash, partialMerkleTree, merkleBranchHashes } = + getTestMerkleProof(); + const quoteHash = await lbc + .hashPegoutQuote(quote) + .then((hash) => getBytes(hash)); + + const { firstConfirmationHeader } = getBtcPaymentBlockHeaders({ + quote: quote, + firstConfirmationSeconds: 100, + nConfirmationSeconds: 600, + }); + + await bridgeMock.setHeaderByHash(blockHeaderHash, firstConfirmationHeader); + const signature = await provider.signer.signMessage(quoteHash); + lbc = lbc.connect(user); + const depositTx = await lbc.depositPegout(quote, signature, { + value: totalValue(quote), + }); + await expect(depositTx).to.emit(lbc, "PegOutDeposit"); + await hardhatHelpers.mine(9); + await hardhatHelpers.time.increase(200); + + const btcTx = await generateRawTx(lbc, quote); + lbc = lbc.connect(provider.signer); + const refundTx = await lbc.refundPegOut( + quoteHash, + btcTx, + blockHeaderHash, + partialMerkleTree, + merkleBranchHashes + ); + await expect(refundTx).to.emit(lbc, "PegOutRefunded").withArgs(quoteHash); + await expect(refundTx) + .to.emit(lbc, "Penalized") + .withArgs(provider.signer.address, quote.penaltyFee, quoteHash); + }); + + it("fail if provider is not registered for pegout on refundPegout", async () => { + const fixtureResult = await loadFixture(deployLbcWithProvidersFixture); + const { accounts, liquidityProviders } = fixtureResult; + let lbc = fixtureResult.lbc; + const user = accounts[3]; + const provider = liquidityProviders[1]; + const quote = getTestPegoutQuote({ + lbcAddress: await lbc.getAddress(), + value: ethers.parseEther("0.5"), + refundAddress: user.address, + liquidityProvider: provider.signer, + }); + const { blockHeaderHash, partialMerkleTree, merkleBranchHashes } = + getTestMerkleProof(); + + const quoteHash = await lbc + .hashPegoutQuote(quote) + .then((hash) => getBytes(hash)); + lbc = lbc.connect(provider.signer); + const refundTx = lbc.refundPegOut( + quoteHash, + anyHex, + blockHeaderHash, + partialMerkleTree, + merkleBranchHashes + ); + await expect(refundTx).to.be.revertedWith("LBC001"); + }); + + it("emit event when pegout is deposited", async () => { + const fixtureResult = await loadFixture(deployLbcWithProvidersFixture); + const { accounts, liquidityProviders } = fixtureResult; + let lbc = fixtureResult.lbc; + const user = accounts[3]; + const provider = liquidityProviders[0]; + const quote = getTestPegoutQuote({ + lbcAddress: await lbc.getAddress(), + value: ethers.parseEther("0.5"), + refundAddress: user.address, + liquidityProvider: provider.signer, + }); + const quoteHash = await lbc + .hashPegoutQuote(quote) + .then((hash) => getBytes(hash)); + const signature = await provider.signer.signMessage(quoteHash); + lbc = lbc.connect(user); + const pegoutValue = totalValue(quote); + const depositTx = await lbc.depositPegout(quote, signature, { + value: pegoutValue, + }); + const depositTimestamp = await ethers.provider + .getBlock("latest") + .then((block) => block!.timestamp); + await expect(depositTx) + .to.emit(lbc, "PegOutDeposit") + .withArgs(quoteHash, user.address, pegoutValue, depositTimestamp); + // deposit again an expect an error to ensure quote is stored + const failedTx = lbc.depositPegout(quote, signature, { + value: pegoutValue, + }); + await expect(failedTx).to.be.revertedWith("LBC028"); + }); + + it("not allow to deposit less than total required on pegout", async () => { + const fixtureResult = await loadFixture(deployLbcWithProvidersFixture); + const { accounts, liquidityProviders } = fixtureResult; + let lbc = fixtureResult.lbc; + const user = accounts[3]; + const provider = liquidityProviders[0]; + const quote = getTestPegoutQuote({ + lbcAddress: await lbc.getAddress(), + value: ethers.parseEther("0.5"), + refundAddress: user.address, + liquidityProvider: provider.signer, + }); + const quoteHash = await lbc + .hashPegoutQuote(quote) + .then((hash) => getBytes(hash)); + const signature = await provider.signer.signMessage(quoteHash); + lbc = lbc.connect(user); + const pegoutValue = totalValue(quote); + const depositTx = lbc.depositPegout(quote, signature, { + value: pegoutValue - 1n, + }); + await expect(depositTx).to.be.revertedWith("LBC063"); + }); + + it("not allow to deposit pegout if quote expired", async () => { + const fixtureResult = await loadFixture(deployLbcWithProvidersFixture); + const { accounts, liquidityProviders } = fixtureResult; + let lbc = fixtureResult.lbc; + const user = accounts[3]; + const provider = liquidityProviders[0]; + const quote = getTestPegoutQuote({ + lbcAddress: await lbc.getAddress(), + value: ethers.parseEther("0.5"), + refundAddress: user.address, + liquidityProvider: provider.signer, + }); + quote.expireBlock = await ethers.provider + .getBlockNumber() + .then((result) => result - 1); + quote.expireDate = Math.round(Date.now() / 1000) + 100; + const quoteHash = await lbc + .hashPegoutQuote(quote) + .then((hash) => getBytes(hash)); + const signature = await provider.signer.signMessage(quoteHash); + lbc = lbc.connect(user); + + const revertByBlocks = lbc.depositPegout(quote, signature, { + value: totalValue(quote), + }); + await expect(revertByBlocks).to.be.revertedWith("LBC047"); + + await hardhatHelpers.time.increase(200); + const revertByTime = lbc.depositPegout(quote, signature, { + value: totalValue(quote), + }); + await expect(revertByTime).to.be.revertedWith("LBC046"); + }); + + it("not allow to deposit pegout after deposit date limit", async () => { + const fixtureResult = await loadFixture(deployLbcWithProvidersFixture); + const { accounts, liquidityProviders } = fixtureResult; + let lbc = fixtureResult.lbc; + const user = accounts[3]; + const provider = liquidityProviders[0]; + const quote = getTestPegoutQuote({ + lbcAddress: await lbc.getAddress(), + value: ethers.parseEther("0.5"), + refundAddress: user.address, + liquidityProvider: provider.signer, + }); + quote.depositDateLimit = quote.agreementTimestamp; + const quoteHash = await lbc + .hashPegoutQuote(quote) + .then((hash) => getBytes(hash)); + const signature = await provider.signer.signMessage(quoteHash); + lbc = lbc.connect(user); + const depositTx = lbc.depositPegout(quote, signature, { + value: totalValue(quote), + }); + await expect(depositTx).to.be.revertedWith("LBC065"); + }); + + it("not allow to deposit the same quote twice", async () => { + const fixtureResult = await loadFixture(deployLbcWithProvidersFixture); + const { accounts, liquidityProviders, lbc } = fixtureResult; + const user = accounts[3]; + const provider = liquidityProviders[0]; + const quote = getTestPegoutQuote({ + lbcAddress: await lbc.getAddress(), + value: ethers.parseEther("0.5"), + refundAddress: user.address, + liquidityProvider: provider.signer, + }); + const quoteHash = await lbc + .hashPegoutQuote(quote) + .then((hash) => getBytes(hash)); + const signature = await provider.signer.signMessage(quoteHash); + + const depositTx = lbc.depositPegout(quote, signature, { + value: totalValue(quote), + }); + await expect(depositTx).to.emit(lbc, "PegOutDeposit"); + const secondDeposit = lbc.depositPegout(quote, signature, { + value: totalValue(quote), + }); + await expect(secondDeposit).to.be.revertedWith("LBC028"); + }); + + it("fail to deposit if provider resigned", async () => { + const fixtureResult = await loadFixture(deployLbcWithProvidersFixture); + const { accounts, liquidityProviders } = fixtureResult; + let lbc = fixtureResult.lbc; + const user = accounts[3]; + const provider = liquidityProviders[0]; + const quote = getTestPegoutQuote({ + lbcAddress: await lbc.getAddress(), + value: ethers.parseEther("0.5"), + refundAddress: user.address, + liquidityProvider: provider.signer, + }); + const quoteHash = await lbc + .hashPegoutQuote(quote) + .then((hash) => getBytes(hash)); + const signature = await provider.signer.signMessage(quoteHash); + lbc = lbc.connect(provider.signer); + await lbc.resign(); + const resignationBlocks = await lbc.getResignDelayBlocks(); + await hardhatHelpers.mine(resignationBlocks); + lbc = lbc.connect(user); + const depositTx = lbc.depositPegout(quote, signature, { + value: totalValue(quote), + }); + await expect(depositTx).to.be.revertedWith("LBC037"); + }); + + it("refund user", async () => { + const fixtureResult = await loadFixture(deployLbcWithProvidersFixture); + const { accounts, liquidityProviders } = fixtureResult; + let lbc = fixtureResult.lbc; + const user = accounts[3]; + const provider = liquidityProviders[0]; + const quote = getTestPegoutQuote({ + lbcAddress: await lbc.getAddress(), + value: ethers.parseEther("0.5"), + refundAddress: user.address, + liquidityProvider: provider.signer, + }); + quote.expireBlock = await ethers.provider + .getBlockNumber() + .then((result) => result + 10); + quote.expireDate = Math.round(Date.now() / 1000) + 100; + const quoteHash = await lbc + .hashPegoutQuote(quote) + .then((hash) => getBytes(hash)); + const signature = await provider.signer.signMessage(quoteHash); + lbc = lbc.connect(user); + const userBalanceBeforeDepositAssertion = + await createBalanceUpdateAssertion({ + source: ethers.provider, + address: user.address, + message: "Incorrect user balance before deposit", + }); + const depositTx = await lbc.depositPegout(quote, signature, { + value: totalValue(quote), + }); + const depositReceipt = await depositTx.wait(); + await expect(depositTx).to.emit(lbc, "PegOutDeposit"); + await userBalanceBeforeDepositAssertion( + (totalValue(quote) + depositReceipt!.fee) * -1n + ); + await hardhatHelpers.mine(9); + await hardhatHelpers.time.increase(200); + const userBalanceBeforeRefundAssertion = await createBalanceUpdateAssertion( + { + source: ethers.provider, + address: user.address, + message: "Incorrect user balance before deposit", + } + ); + const refundTx = await lbc.refundUserPegOut(quoteHash); + const refundReceipt = await refundTx.wait(); + await expect(refundTx) + .to.emit(lbc, "PegOutUserRefunded") + .withArgs(quoteHash, totalValue(quote), user.address); + await expect(refundTx) + .to.emit(lbc, "Penalized") + .withArgs(provider.signer.address, quote.penaltyFee, quoteHash); + await userBalanceBeforeRefundAssertion( + totalValue(quote) - refundReceipt!.fee + ); + }); + + it("validate if user had not deposited yet", async () => { + const fixtureResult = await loadFixture(deployLbcWithProvidersFixture); + const { accounts, liquidityProviders, lbc } = fixtureResult; + const user = accounts[3]; + const quote = getTestPegoutQuote({ + lbcAddress: await lbc.getAddress(), + value: ethers.parseEther("0.5"), + refundAddress: user.address, + liquidityProvider: liquidityProviders[0].signer, + }); + quote.expireBlock = 1; + quote.expireDate = quote.agreementTimestamp; + const quoteHash = await lbc + .hashPegoutQuote(quote) + .then((hash) => getBytes(hash)); + const refundTx = lbc.refundUserPegOut(quoteHash); + await expect(refundTx).to.be.revertedWith("LBC042"); + }); + + it("parse raw btc transaction p2pkh script", async () => { + const btcUtilsAddress = read()[hre.network.name].BtcUtils; + const BtcUtils = await ethers.getContractAt( + "BtcUtils", + btcUtilsAddress.address! + ); + const firstRawTX = + "0x0100000001013503c427ba46058d2d8ac9221a2f6fd50734a69f19dae65420191e3ada2d40000000006a47304402205d047dbd8c49aea5bd0400b85a57b2da7e139cec632fb138b7bee1d382fd70ca02201aa529f59b4f66fdf86b0728937a91a40962aedd3f6e30bce5208fec0464d54901210255507b238c6f14735a7abe96a635058da47b05b61737a610bef757f009eea2a4ffffffff0200879303000000001976a9143c5f66fe733e0ad361805b3053f23212e5755c8d88ac0000000000000000426a403938343934346435383039323135366335613139643936356239613735383530326536646263326439353337333135656266343839373336333134656233343700000000"; + const firstTxOutputs = await BtcUtils.getOutputs(firstRawTX); + + const firstNullScript = await BtcUtils.parseNullDataScript( + firstTxOutputs[1].pkScript + ).then((result) => Buffer.from(result.slice(2), "hex")); + const firstDestinationAddress = await BtcUtils.parsePayToPubKeyHash( + firstTxOutputs[0].pkScript, + false + ); + const firstValue = firstTxOutputs[0].value; + const firstHash = await BtcUtils.hashBtcTx(firstRawTX); + + const secondRawTX = + "0x01000000010178a1cf4f2f0cb1607da57dcb02835d6aa8ef9f06be3f74cafea54759a029dc000000006a473044022070a22d8b67050bee57564279328a2f7b6e7f80b2eb4ecb684b879ea51d7d7a31022057fb6ece52c23ecf792e7597448c7d480f89b77a8371dca4700a18088f529f6a012103ef81e9c4c38df173e719863177e57c539bdcf97289638ec6831f07813307974cffffffff02801d2c04000000001976a9143c5f66fe733e0ad361805b3053f23212e5755c8d88ac0000000000000000426a406539346138393731323632396262633966636364316630633034613237386330653130353265623736323666393365396137663130363762343036663035373600000000"; + const secondTxOutputs = await BtcUtils.getOutputs(secondRawTX); + + const secondNullScript = await BtcUtils.parseNullDataScript( + secondTxOutputs[1].pkScript + ).then((result) => Buffer.from(result.slice(2), "hex")); + const secondDestinationAddress = await BtcUtils.parsePayToPubKeyHash( + secondTxOutputs[0].pkScript, + true + ); + const secondValue = secondTxOutputs[0].value; + const secondHash = await BtcUtils.hashBtcTx(secondRawTX); + + expect(firstNullScript.at(0)).to.be.eq(64); + expect(firstNullScript.subarray(1).toString("ascii")).to.be.eq( + "984944d58092156c5a19d965b9a758502e6dbc2d9537315ebf489736314eb347" + ); + expect(firstDestinationAddress).to.be.eq( + hexlify(bs58check.decode("mm2B8EUvZBZUi4BmBwN2M7RwgVBZ6BcVYU")) + ); + expect(firstValue).to.be.eq("60000000"); + expect(firstHash).to.be.eq( + "0x03c4522ef958f724a7d2ffef04bd534d9eca74ffc0b28308797d2853bc323ba6" + ); + + expect(secondNullScript.at(0)).to.be.eq(64); + expect(secondNullScript.subarray(1).toString("ascii")).to.be.eq( + "e94a89712629bbc9fccd1f0c04a278c0e1052eb7626f93e9a7f1067b406f0576" + ); + expect(secondDestinationAddress).to.be.eq( + hexlify(bs58check.decode("16WDqBPwkA8Dvwi9UNPeXCDcpVar7XdD9y")) + ); + expect(secondValue).to.be.eq("70000000"); + expect(secondHash).to.be.eq( + "0xfd4251485dafe36aaa6766b38cf236b5925f23f12617daf286e0e92f73708aa3" + ); + }); + + it("fail on refundPegout if btc tx has op return with incorrect quote hash", async () => { + const fixtureResult = await loadFixture(deployLbcWithProvidersFixture); + const { accounts, liquidityProviders, lbc } = fixtureResult; + const user = accounts[3]; + const provider = liquidityProviders[0]; + const quote = getTestPegoutQuote({ + lbcAddress: await lbc.getAddress(), + value: ethers.parseEther("0.5"), + refundAddress: user.address, + liquidityProvider: provider.signer, + }); + const quoteHash = await lbc + .hashPegoutQuote(quote) + .then((hash) => getBytes(hash)); + const signature = await provider.signer.signMessage(quoteHash); + + const depositTx = lbc.depositPegout(quote, signature, { + value: totalValue(quote), + }); + await expect(depositTx).to.emit(lbc, "PegOutDeposit"); + const originalConfirmations = quote.transferConfirmations; + quote.transferConfirmations = 5; // to generate another hash + const btcTx = await generateRawTx(lbc, quote); + quote.transferConfirmations = originalConfirmations; + const { blockHeaderHash, partialMerkleTree, merkleBranchHashes } = + getTestMerkleProof(); + const refundTx = lbc.refundPegOut( + quoteHash, + btcTx, + blockHeaderHash, + partialMerkleTree, + merkleBranchHashes + ); + await expect(refundTx).to.be.revertedWith("LBC069"); + }); + + it("fail on refundPegout if btc tx null data script has wrong format", async () => { + const fixtureResult = await loadFixture(deployLbcWithProvidersFixture); + const { accounts, liquidityProviders } = fixtureResult; + let lbc = fixtureResult.lbc; + const user = accounts[3]; + const provider = liquidityProviders[0]; + const quote = getTestPegoutQuote({ + lbcAddress: await lbc.getAddress(), + value: ethers.parseEther("0.5"), + refundAddress: user.address, + liquidityProvider: provider.signer, + }); + const quoteHash = await lbc + .hashPegoutQuote(quote) + .then((hash) => getBytes(hash)); + const signature = await provider.signer.signMessage(quoteHash); + lbc = lbc.connect(user); + const depositTx = lbc.depositPegout(quote, signature, { + value: totalValue(quote), + }); + await expect(depositTx).to.emit(lbc, "PegOutDeposit"); + const btcTx = await generateRawTx(lbc, quote); + const { blockHeaderHash, partialMerkleTree, merkleBranchHashes } = + getTestMerkleProof(); + lbc = lbc.connect(provider.signer); + const incorrectSizeByteTx = btcTx.replace("6a20", "6a40"); + const firstRefundTx = lbc.refundPegOut( + quoteHash, + incorrectSizeByteTx, + blockHeaderHash, + partialMerkleTree, + merkleBranchHashes + ); + await expect(firstRefundTx).to.be.revertedWith("LBC075"); + + const incorrectHashSizeTx = btcTx.replace( + "226a20" + hexlify(quoteHash).slice(2), + "216a19" + hexlify(quoteHash).slice(2, -2) + ); + const secondRefundTx = lbc.refundPegOut( + quoteHash, + incorrectHashSizeTx, + blockHeaderHash, + partialMerkleTree, + merkleBranchHashes + ); + await expect(secondRefundTx).to.be.revertedWith("LBC075"); + }); + + it("fail on refundPegout if btc tx doesn't have correct amount", async () => { + const fixtureResult = await loadFixture(deployLbcWithProvidersFixture); + const { accounts, liquidityProviders, bridgeMock } = fixtureResult; + let lbc = fixtureResult.lbc; + const user = accounts[3]; + const provider = liquidityProviders[0]; + const quote = getTestPegoutQuote({ + lbcAddress: await lbc.getAddress(), + value: ethers.parseEther("0.3"), + refundAddress: user.address, + liquidityProvider: provider.signer, + }); + const quoteHash = await lbc + .hashPegoutQuote(quote) + .then((hash) => getBytes(hash)); + const signature = await provider.signer.signMessage(quoteHash); + lbc = lbc.connect(user); + const depositTx = lbc.depositPegout(quote, signature, { + value: totalValue(quote), + }); + await expect(depositTx).to.emit(lbc, "PegOutDeposit"); + const { firstConfirmationHeader } = getBtcPaymentBlockHeaders({ + quote: quote, + firstConfirmationSeconds: 100, + nConfirmationSeconds: 600, + }); + const { blockHeaderHash, partialMerkleTree, merkleBranchHashes } = + getTestMerkleProof(); + await bridgeMock.setHeaderByHash(blockHeaderHash, firstConfirmationHeader); + const btcTx = await generateRawTx(lbc, quote); + const incorrectValueTx = btcTx.replace( + "80c3c90100000000", + "7fc3c90100000000" + ); + lbc = lbc.connect(provider.signer); + const refundTx = lbc.refundPegOut( + quoteHash, + incorrectValueTx, + blockHeaderHash, + partialMerkleTree, + merkleBranchHashes + ); + await expect(refundTx).to.be.revertedWith("LBC067"); + }); + + it("fail on refundPegout if btc tx doesn't have correct destination", async () => { + const fixtureResult = await loadFixture(deployLbcWithProvidersFixture); + const { accounts, liquidityProviders, bridgeMock } = fixtureResult; + let lbc = fixtureResult.lbc; + const user = accounts[3]; + const provider = liquidityProviders[0]; + const quote = getTestPegoutQuote({ + lbcAddress: await lbc.getAddress(), + value: ethers.parseEther("0.3"), + refundAddress: user.address, + liquidityProvider: provider.signer, + destinationAddressType: "p2pkh", + }); + const quoteHash = await lbc + .hashPegoutQuote(quote) + .then((hash) => getBytes(hash)); + const signature = await provider.signer.signMessage(quoteHash); + lbc = lbc.connect(user); + const depositTx = lbc.depositPegout(quote, signature, { + value: totalValue(quote), + }); + await expect(depositTx).to.emit(lbc, "PegOutDeposit"); + const { firstConfirmationHeader } = getBtcPaymentBlockHeaders({ + quote: quote, + firstConfirmationSeconds: 100, + nConfirmationSeconds: 600, + }); + const { blockHeaderHash, partialMerkleTree, merkleBranchHashes } = + getTestMerkleProof(); + await bridgeMock.setHeaderByHash(blockHeaderHash, firstConfirmationHeader); + const btcTx = await generateRawTx(lbc, quote, "p2sh"); + lbc = lbc.connect(provider.signer); + const refundTx = lbc.refundPegOut( + quoteHash, + btcTx, + blockHeaderHash, + partialMerkleTree, + merkleBranchHashes + ); + await expect(refundTx).to.be.revertedWith("LBC068"); + }); + + it("parse btc raw transaction outputs correctly", async () => { + const btcUtilsAddress = read()[hre.network.name].BtcUtils; + const BtcUtils = await ethers.getContractAt( + "BtcUtils", + btcUtilsAddress.address! + ); + const transactions = [ + { + raw: "0x01000000000101f73a1ea2f2cec2e9bfcac67b277cc9e4559ed41cfc5973c154b7bdcada92e3e90100000000ffffffff029ea8ef00000000001976a9141770fa9929eee841aee1bfd06f5f0a178ef6ef5d88acb799f60300000000220020701a8d401c84fb13e6baf169d59684e17abd9fa216c8cc5b9fc63d622ff8c58d0400473044022051db70142aac24e8a13050cb0f61183704a7fe572c41a09caf5e7f56b7526f87022017d1a4b068a32af3dcea2d9a0e2f0d648c9f0f7fb01698d83091fd5b57f69ade01473044022028f29f5444ea4be2db3c6895e1414caa5cee9ab79faf1bf9bc12191f421de37102205af1df5158aa9c666f2d8d4d7c9da1ef96d28277f5d4b7c193e93e243a6641ae016952210375e00eb72e29da82b89367947f29ef34afb75e8654f6ea368e0acdfd92976b7c2103a1b26313f430c4b15bb1fdce663207659d8cac749a0e53d70eff01874496feff2103c96d495bfdd5ba4145e3e046fee45e84a8a48ad05bd8dbb395c011a32cf9f88053ae00000000", + outputs: [ + { + value: 15706270n, + pkScript: "0x76a9141770fa9929eee841aee1bfd06f5f0a178ef6ef5d88ac", + scriptSize: 25, + totalSize: 34, + }, + { + value: 66492855n, + pkScript: + "0x0020701a8d401c84fb13e6baf169d59684e17abd9fa216c8cc5b9fc63d622ff8c58d", + scriptSize: 34, + totalSize: 43, + }, + ], + }, + { + raw: "0x010000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff1a03583525e70ee95696543f47000000002f4e696365486173682fffffffff03c01c320000000000160014b0262460a83e78d991795007477d51d3998c70629581000000000000160014d729e8dba6f86b5c8d7b3066fd4d7d0e21fd079b0000000000000000266a24aa21a9edf052bd805f949d631a674158664601de99884debada669f237cf00026c88a5f20120000000000000000000000000000000000000000000000000000000000000000000000000", + outputs: [ + { + value: 3284160n, + pkScript: "0x0014b0262460a83e78d991795007477d51d3998c7062", + scriptSize: 22, + totalSize: 31, + }, + { + value: 33173n, + pkScript: "0x0014d729e8dba6f86b5c8d7b3066fd4d7d0e21fd079b", + scriptSize: 22, + totalSize: 31, + }, + { + value: 0n, + pkScript: + "0x6a24aa21a9edf052bd805f949d631a674158664601de99884debada669f237cf00026c88a5f2", + scriptSize: 38, + totalSize: 47, + }, + ], + }, + { + raw: "0x0100000000010fe0305a97189636fb57126d2f77a6364a5c6a809908270583438b3622dce6bc050000000000ffffffff6d487f63c4bd89b81388c20aeab8c775883ed56f11f509c248a7f00cdc64ae940000000000ffffffffa3d3d42b99de277265468acca3c081c811a9cc7522827aa95aeb42653c15fc330000000000ffffffffd7818dabb051c4db77da6d49670b0d3f983ba1d561343027870a7f3040af44fe0000000000ffffffff72daa44ef07b8d85e8ef8d9f055e07b5ebb8e1ba6a876e17b285946eb4ea9b9b0000000000ffffffff5264480a215536fd00d229baf1ab8c7c65ce10f37b783ca9700a828c3abc952c0000000000ffffffff712209f13eee0b9f3e6331040abcc09df750e4a287128922426d8d5c78ac9fc50000000000ffffffff21c5cf14014d28ec43a58f06f8e68c52c524a2b47b3be1c5800425e1f35f488d0000000000ffffffff2898464f9eb34f1d77fde2ed75dd9ae9c258f76030bb33be8e171d3e5f3b56390000000000ffffffffd27a5adff11cffc71d88face8f5adc2ce43ad648a997a5d54c06bcdec0e3eb5c0000000000ffffffff5217ca227f0e7f98984f19c59f895a3cfa7b05cb46ed844e2b0a26c9f5168d7a0000000000ffffffff8384e811f57e4515dd79ebfacf3a653200caf77f115bb6d4efe4bc534f0a39dd0000000000ffffffffd0448e1aae0ea56fab1c08dae1bdfe16c46f8ae8cec6042f6525bb7c1da0fa380000000000ffffffff5831c6df8395e3dc315af82c758c622156e2c40d677dececb717f4f20ded28a90000000000ffffffff56c2ffb0554631cff11e3e3fa90e6f35e76f420b29cde1faaa68c07cd0c6f8030100000000ffffffff02881300000000000016001463052ae51729396821a0cd91e0b1e9c61f53e168424e0800000000001600140d76db7b4f8f93a0b445bd782df2182a3e577604024730440220260695f8cf81168b46a24a07c380fd2568ee72f939309ed710e055f146d267db022044813ec9d65a57c8d4298b0bd9600664c3875bd2230b6a376a6fc70577a222bb012102b4ee3edac446129ec8c011afaba3e5e1ead0cebfd8545f3f6984c167277f8d2302483045022100e0ed473c35a937d0b4d1a5e08f8e61248e80f5fe108c9b8b580792df8675a05d02202073dfd0d44d28780ee321c8a2d18da8157055d37d68793cbe8c53cc1c0a5321012102b4ee3edac446129ec8c011afaba3e5e1ead0cebfd8545f3f6984c167277f8d2302473044022034e28210fe7a14dde84cdb9ef4cf0a013bbc027deebcb56232ff2dabb25c12dc02202f4ff4df794ad3dbcfa4d498ec6d0c56b22c027004767851e3b8ffc5652ba529012102b4ee3edac446129ec8c011afaba3e5e1ead0cebfd8545f3f6984c167277f8d2302473044022030d5f4ffddf70a6086269ce982bff38c396831d0b5ef5205c3e557059903b2550220575bcf3b233c12b383bf2f16cd52e2fff2c488f0aa29ab3dec22b85b536b1c83012102b4ee3edac446129ec8c011afaba3e5e1ead0cebfd8545f3f6984c167277f8d2302483045022100cc07265538f0ea4a8b999450549a965b0cc784371cac42cbcf8f49fbabf72b7c02207ef68377d7c6d3817d7c1a7a7936392b7043189ab1aed81eb0a7a3ad424bdcaf012102b4ee3edac446129ec8c011afaba3e5e1ead0cebfd8545f3f6984c167277f8d230248304502210085a8855abe9fd6680cb32911db66914cf970a30f01ecd17c7527fc369bb9f24002206da3457505a514a076954a2e5756fcc14c9e8bdc18301469dfe5b2b6daef723f012102b4ee3edac446129ec8c011afaba3e5e1ead0cebfd8545f3f6984c167277f8d2302483045022100d4e1963f5945dfae7dc73b0af1c65cf9156995a270164c2bcbc4a539130ac268022054464ea620730129ebaf95202f96f0b8be74ff660fcd748b7a107116e01730f3012102b4ee3edac446129ec8c011afaba3e5e1ead0cebfd8545f3f6984c167277f8d230247304402207a5386c7b8bf3cf301fed36e18fe6527d35bc02007afda183e81fc39c1c8193702203207a6aa2223193a5c75ed8df0e046d390dbf862a3d0da1b2d0f300dfd42e8a7012102b4ee3edac446129ec8c011afaba3e5e1ead0cebfd8545f3f6984c167277f8d2302483045022100c8db534b9ed20ce3a91b01b03e97a8f60853fbc16d19c6b587f92455542bc7c80220061d61d1c49a3f0dedecefaafc51526325bca972e99aaa367f2ebcab95d42395012102b4ee3edac446129ec8c011afaba3e5e1ead0cebfd8545f3f6984c167277f8d2302483045022100f5287807debe8fc2eeee7adc5b7da8a212166a4580b8fdcf402c049a40b24fb7022006cb422492ba3b1ec257c64e74f3d439c00351f05bc05e88cab5cd9d4a7389b0012102b4ee3edac446129ec8c011afaba3e5e1ead0cebfd8545f3f6984c167277f8d230247304402202edb544a679791424334e3c6a85613482ca3e3d16de0ca0d41c54babada8d4a2022025d0c937221161593bd9858bb3062216a4e55d191a07323104cfef1c7fcf5bc6012102b4ee3edac446129ec8c011afaba3e5e1ead0cebfd8545f3f6984c167277f8d230247304402201a6cf02624884d4a1927cba36b2b9b02e1e6833a823204d8670d71646d2dd2c40220644176e293982f7a4acb25d79feda904a235f9e2664c823277457d33ccbaa6dc012102b4ee3edac446129ec8c011afaba3e5e1ead0cebfd8545f3f6984c167277f8d2302483045022100d49488c21322cd9a7c235ecddbd375656d98ba1ca06a5284c8c2ffb6bcbba83b02207dab29958d7c1b2466d5b5502b586d7f3d213b501689d42a313de91409179899012102b4ee3edac446129ec8c011afaba3e5e1ead0cebfd8545f3f6984c167277f8d2302483045022100f36565200b245429afb9cdc926510198893e057e5244a7dabd94bedba394789702206786ea4033f5e1212cee9a59fb85e89b6f7fe686ab0a3b8874e77ea735e7c3b5012102b4ee3edac446129ec8c011afaba3e5e1ead0cebfd8545f3f6984c167277f8d230247304402206ff3703495e0d872cbd1332d20ee39c14de6ed5a14808d80327ceedfda2329e102205da8497cb03776d5df8d67dc16617a6a3904f7abf85684a599ed6c60318aa3be012102b4ee3edac446129ec8c011afaba3e5e1ead0cebfd8545f3f6984c167277f8d2300000000", + outputs: [ + { + value: 5000n, + pkScript: "0x001463052ae51729396821a0cd91e0b1e9c61f53e168", + scriptSize: 22, + totalSize: 31, + }, + { + value: 544322n, + pkScript: "0x00140d76db7b4f8f93a0b445bd782df2182a3e577604", + scriptSize: 22, + totalSize: 31, + }, + ], + }, + { + raw: "0x01000000010178a1cf4f2f0cb1607da57dcb02835d6aa8ef9f06be3f74cafea54759a029dc000000006a473044022070a22d8b67050bee57564279328a2f7b6e7f80b2eb4ecb684b879ea51d7d7a31022057fb6ece52c23ecf792e7597448c7d480f89b77a8371dca4700a18088f529f6a012103ef81e9c4c38df173e719863177e57c539bdcf97289638ec6831f07813307974cffffffff02801d2c04000000001976a9143c5f66fe733e0ad361805b3053f23212e5755c8d88ac0000000000000000426a406539346138393731323632396262633966636364316630633034613237386330653130353265623736323666393365396137663130363762343036663035373600000000", + outputs: [ + { + value: 70000000n, + pkScript: "0x76a9143c5f66fe733e0ad361805b3053f23212e5755c8d88ac", + scriptSize: 25, + totalSize: 34, + }, + { + value: 0n, + pkScript: + "0x6a4065393461383937313236323962626339666363643166306330346132373863306531303532656237363236663933653961376631303637623430366630353736", + scriptSize: 66, + totalSize: 75, + }, + ], + }, + { + raw: "0x020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff050261020101ffffffff02205fa012000000001976a91493fa9b864d39108a311918320e2a804de2e946f688ac0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", + outputs: [ + { + value: 312500000n, + pkScript: "0x76a91493fa9b864d39108a311918320e2a804de2e946f688ac", + scriptSize: 25, + totalSize: 34, + }, + { + value: 0n, + pkScript: + "0x6a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf9", + scriptSize: 38, + totalSize: 47, + }, + ], + }, + { + raw: "0x020000000001010e02566bfc272aed951a7f68152707fd14d29aaf2fe4c8106e623faec848437c0000000000fdffffff02dba01800000000001976a914b2978fcacc03e34dae7b0d9ef112a7b3e5c0bdc488ac03a10185120000001976a9142591f7537994333dc2c119a88defb5b53d34495188ac0247304402205bdb0dfbbeb0ffc7f2d86cd1026a893252f49399d22876dfe6f3ff1ce723507502200f155b8fab03352aec2b07bbd0e0ab147454937f34301518b428af7c6216b79d01210249b9c2a173ec4c9bfae80edf85fa48ff9e196856bf7f48f2208800760bb28d07d4322500", + outputs: [ + { + value: 1614043n, + pkScript: "0x76a914b2978fcacc03e34dae7b0d9ef112a7b3e5c0bdc488ac", + scriptSize: 25, + totalSize: 34, + }, + { + value: 79540887811n, + pkScript: "0x76a9142591f7537994333dc2c119a88defb5b53d34495188ac", + scriptSize: 25, + totalSize: 34, + }, + ], + }, + { + raw: "0x010000000001050010b625779e40b4e8d1288e9db32a9a4026f7e98d0ee97a2fd1b43ca8882a460000000000ffffffff0010b625779e40b4e8d1288e9db32a9a4026f7e98d0ee97a2fd1b43ca8882a460100000000ffffffff0010b625779e40b4e8d1288e9db32a9a4026f7e98d0ee97a2fd1b43ca8882a460300000000fffffffffd67dda5d256393b6e5b4a1ba117c7b60ebb0ff17ff22d4743f12f3a84bcf84e0100000000fffffffffd67dda5d256393b6e5b4a1ba117c7b60ebb0ff17ff22d4743f12f3a84bcf84e0200000000ffffffff060000000000000000536a4c5063cc1853d0117afb0b709321a29ebd6bff4f0488774c3df3a7eae1f237bce099355a809b79d8e327b4844d4d5b01039c68d000fb57d906712c9403a0561a5cd7175d314dbb75bfa53cd033620f916501a60e000000000000160014f58e1a72b69982143e10e505a61f37aa368d92441302010000000000160014323d105482f5065dcd51f1bc5a213d5d723d58dda6870100000000001600140ccce8622a77f0316227cd311fb233bce31f76f6a68701000000000016001463ac4816199ba682879a2373a16fac78c51f6bdaa687010000000000160014b84a456a5a8af29af60d72b03958a9bebf76e6e502483045022100d1fb958108531911fc0ba7df04267c1842718f1d871c555f8b6ce30cc117d4ca022032099c3918c491d0af7fdded1811e2cd0e86b99458661d97ae87ded3c889382001210257d3f874b8203ed7d4fc254d67f68b67e954c19cd37b1b6a6ce7346a52b437230247304402201cbeb5d7865aa47b6a6692b89fbbcd4caad7047b71db97e42b09149594bb141402207b1eaa83ab4ebcf8b063bc401f892043c8cf346e4993bdfdc9f4f979c27ac8b001210326010652c2334417db10fddc0bb10749a3256555dd22ebe1575da9eb3aeccf530247304402205dbc9abd0df608e9548c8e5b3771f7b1f20ad170951a8c254f620ed989a7ea61022002d00d0739f33eb5afd5d7c5e07891c66939656dd024c6fbde8515d4104c052c0121020802d7c7e0e6f040644950f0712d7225cc4b755ece3e0d61568d6c8e362e375c02483045022100db6c33de82ae9e7abbdcd99265931307716112771d2e4273a7381c63e779a2ae02203376181e7e3474b6e771eea127b9ce943ef1025e9190a75304d9cf94d52ed429012103d1609fe77bb362648e9253ed09b7a560448f93fb0612a74db179ac22cc89e86302483045022100f99a02db4e116b3ff92de3cb0af8e3cf29518695fdfadac6cc9cd2104ae009d402206a1e7060874834a68aa7ad5b2ef19ea29c1f04af61aab28c589dfa8937f2287a012103dbfb01dde37e538772edf37434b4b4268f10ab8ed7e1e6a98f89e50aa1a11f2500000000", + outputs: [ + { + value: 0n, + pkScript: + "0x6a4c5063cc1853d0117afb0b709321a29ebd6bff4f0488774c3df3a7eae1f237bce099355a809b79d8e327b4844d4d5b01039c68d000fb57d906712c9403a0561a5cd7175d314dbb75bfa53cd033620f916501", + scriptSize: 83, + totalSize: 92, + }, + { + value: 3750n, + pkScript: "0x0014f58e1a72b69982143e10e505a61f37aa368d9244", + scriptSize: 22, + totalSize: 31, + }, + { + value: 66067n, + pkScript: "0x0014323d105482f5065dcd51f1bc5a213d5d723d58dd", + scriptSize: 22, + totalSize: 31, + }, + { + value: 100262n, + pkScript: "0x00140ccce8622a77f0316227cd311fb233bce31f76f6", + scriptSize: 22, + totalSize: 31, + }, + { + value: 100262n, + pkScript: "0x001463ac4816199ba682879a2373a16fac78c51f6bda", + scriptSize: 22, + totalSize: 31, + }, + { + value: 100262n, + pkScript: "0x0014b84a456a5a8af29af60d72b03958a9bebf76e6e5", + scriptSize: 22, + totalSize: 31, + }, + ], + }, + { + raw: "0x010000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff1e0367352519444d47426c6f636b636861696ee2fb0ac80e02000000000000ffffffff02e338260000000000160014b23716e183ba0949c55d6cac21a3e94176eed1120000000000000000266a24aa21a9ed561c4fd92722cf983c8c24e78ef35a4634e3013695f09186bc86c6a627f21cfa0120000000000000000000000000000000000000000000000000000000000000000000000000", + outputs: [ + { + value: 2504931n, + pkScript: "0x0014b23716e183ba0949c55d6cac21a3e94176eed112", + scriptSize: 22, + totalSize: 31, + }, + { + value: 0n, + pkScript: + "0x6a24aa21a9ed561c4fd92722cf983c8c24e78ef35a4634e3013695f09186bc86c6a627f21cfa", + scriptSize: 38, + totalSize: 47, + }, + ], + }, + { + raw: "0x020000000001016bcabaaf4e28636c4c68252a019268927b79a978cc7a9c2e561d7053dd0bf73b0000000000fdffffff0296561900000000001976a9147aa8184685ca1f06f543b64a502eb3b6135d672088acf9d276e3000000001976a9145ce7908503ef69bfde873fe886133ab8dc23363188ac02473044022078607e1ca987e18ee8934b44ff8a4f0751d27a110540d99deb0a386adbf638c002200a01dc0314bef9b8c966c7a02440309596a6380e1625a7872ed616327a729bed0121029e1bb76f522491f90c542385e6dbff36b92f8984b74f24d0b99b52ea17bed09961352500", + outputs: [ + { + value: 1660566n, + pkScript: "0x76a9147aa8184685ca1f06f543b64a502eb3b6135d672088ac", + scriptSize: 25, + totalSize: 34, + }, + { + value: 3816215289n, + pkScript: "0x76a9145ce7908503ef69bfde873fe886133ab8dc23363188ac", + scriptSize: 25, + totalSize: 34, + }, + ], + }, + { + raw: "0x020000000001014aea9ffcf9be9c98a2a3ceb391483328ff406177fdb60047886a50f33569e0540000000000fdffffff02ce095d5a120000001976a914c38cfd37c4b53ebae78de708a3d8438f6e7cc56588acbc622e00000000001976a914c3ea6613a9dcbf0a63863ec3a3b958127d597b4988ac02473044022009351dd62b2494924397a626524a5c08e16d4d214488b847e7a9cd97fa4aac2302200f5a54fff804f19edf316daaea58052a5f0c2ff3de236a45e05a43474e3a6ddf01210258f308ea046d38403d5afb201df933196b7948acead3048a0413bbaacdc42db166352500", + outputs: [ + { + value: 78825458126n, + pkScript: "0x76a914c38cfd37c4b53ebae78de708a3d8438f6e7cc56588ac", + scriptSize: 25, + totalSize: 34, + }, + { + value: 3039932n, + pkScript: "0x76a914c3ea6613a9dcbf0a63863ec3a3b958127d597b4988ac", + scriptSize: 25, + totalSize: 34, + }, + ], + }, + { + raw: "0x010000000127d57276f1026a95b4af3b03b6aba859a001861682342af19825e8a2408ae008010000008c493046022100cd92b992d4bde3b44471677081c5ece6735d6936480ff74659ac1824d8a1958e022100b08839f167532aea10acecc9d5f7044ddd9793ef2989d090127a6e626dc7c9ce014104cac6999d6c3feaba7cdd6c62bce174339190435cffd15af7cb70c33b82027deba06e6d5441eb401c0f8f92d4ffe6038d283d2b2dd59c4384b66b7b8f038a7cf5ffffffff0200093d0000000000434104636d69f81d685f6f58054e17ac34d16db869bba8b3562aabc38c35b065158d360f087ef7bd8b0bcbd1be9a846a8ed339bf0131cdb354074244b0a9736beeb2b9ac40420f0000000000fdba0f76a9144838a081d73cf134e8ff9cfd4015406c73beceb388acacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacac00000000", + outputs: [ + { + value: 4000000n, + pkScript: + "0x4104636d69f81d685f6f58054e17ac34d16db869bba8b3562aabc38c35b065158d360f087ef7bd8b0bcbd1be9a846a8ed339bf0131cdb354074244b0a9736beeb2b9ac", + scriptSize: 67, + totalSize: 76, + }, + { + value: 1000000n, + pkScript: + "0x76a9144838a081d73cf134e8ff9cfd4015406c73beceb388acacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacac", + scriptSize: 4026, + totalSize: 4037, + }, + ], + }, + ]; + + let outputs; + for (const tx of transactions) { + outputs = await BtcUtils.getOutputs(tx.raw); + expect(outputs.length).to.be.eq(tx.outputs.length); + for (let i = 0; i < outputs.length; i++) { + expect(outputs[i].value).to.be.eq(tx.outputs[i].value.toString()); + expect(outputs[i].pkScript).to.be.eq(tx.outputs[i].pkScript); + expect(outputs[i].scriptSize).to.be.eq( + tx.outputs[i].scriptSize.toString() + ); + expect(outputs[i].totalSize).to.be.eq( + tx.outputs[i].totalSize.toString() + ); + } + } + }); + + it("penalize LP on pegout if the transfer was not made on time", async () => { + const fixtureResult = await loadFixture(deployLbcWithProvidersFixture); + const { accounts, liquidityProviders, bridgeMock } = fixtureResult; + let lbc = fixtureResult.lbc; + const user = accounts[3]; + const provider = liquidityProviders[0]; + const quote = getTestPegoutQuote({ + lbcAddress: await lbc.getAddress(), + value: ethers.parseEther("0.5"), + refundAddress: user.address, + liquidityProvider: provider.signer, + }); + const quoteHash = await lbc + .hashPegoutQuote(quote) + .then((hash) => getBytes(hash)); + const signature = await provider.signer.signMessage(quoteHash); + + lbc = lbc.connect(user); + const pegoutAmount = totalValue(quote); + const depositTx = await lbc.depositPegout(quote, signature, { + value: pegoutAmount, + }); + await depositTx.wait(); + await expect(depositTx).to.emit(lbc, "PegOutDeposit"); + const BTC_BLOCK_TIME = 5400; // 1.5h + const expirationTime = + Number(quote.agreementTimestamp) + + Number(quote.transferTime) + + BTC_BLOCK_TIME; + const { firstConfirmationHeader } = getBtcPaymentBlockHeaders({ + quote: quote, + firstConfirmationSeconds: expirationTime + 1, + nConfirmationSeconds: expirationTime + 600, + }); + const { blockHeaderHash, merkleBranchHashes, partialMerkleTree } = + getTestMerkleProof(); + await bridgeMock.setHeaderByHash(blockHeaderHash, firstConfirmationHeader); + const btcTx = await generateRawTx(lbc, quote); + lbc = lbc.connect(provider.signer); + const refundTx = await lbc.refundPegOut( + quoteHash, + btcTx, + blockHeaderHash, + partialMerkleTree, + merkleBranchHashes + ); + await expect(refundTx).to.emit(lbc, "PegOutRefunded"); + await expect(refundTx) + .to.emit(lbc, "Penalized") + .withArgs(provider.signer.address, quote.penaltyFee, quoteHash); + }); +}); diff --git a/test/penalization.tests.js b/test/penalization.tests.js deleted file mode 100644 index 5b7311f..0000000 --- a/test/penalization.tests.js +++ /dev/null @@ -1,329 +0,0 @@ -const LiquidityBridgeContractV2 = artifacts.require('LiquidityBridgeContractV2.sol'); -const BridgeMock = artifacts.require("BridgeMock"); -const Mock = artifacts.require('Mock') -const truffleAssert = require('truffle-assertions'); -var chai = require("chai"); -const utils = require('../test/utils/index'); - -const BN = web3.utils.BN; -const chaiBN = require('chai-bn')(BN); -chai.use(chaiBN); - -const expect = chai.expect; - -contract('LiquidityBridgeContractV2.sol', async accounts => { - let instance; - let bridgeMockInstance; - const liquidityProviderRskAddress = accounts[0]; - - before(async () => { - const proxy = await LiquidityBridgeContractV2.deployed(); - instance = await LiquidityBridgeContractV2.at(proxy.address); - bridgeMockInstance = await BridgeMock.deployed(); - mock = await Mock.deployed() - }); - - beforeEach(async () => { - await utils.ensureLiquidityProviderAvailable(instance, liquidityProviderRskAddress, utils.LP_COLLATERAL); - }); - - it ('should not penalize with late deposit', async () => { - let val = web3.utils.toBN(1000000000000); - let destAddr = mock.address; - let rskRefundAddress = accounts[2]; - let data = web3.eth.abi.encodeFunctionCall(mock.abi[2], []); - - let quote = utils.getTestQuote( - instance.address, - destAddr, - data, - liquidityProviderRskAddress, - rskRefundAddress, - val); - quote.penaltyFee = web3.utils.toBN(10); - quote.timeForDeposit = 1; - - let btcRawTransaction = '0x101'; - let partialMerkleTree = '0x202'; - let height = 10; - let peginAmount = val.add(quote.callFee); - - let quoteHash = await instance.hashQuote(utils.asArray(quote)); - let signature = await web3.eth.sign(quoteHash, liquidityProviderRskAddress); - let firstConfirmationTime = utils.reverseHexBytes(web3.utils.toHex(quote.agreementTime + 300).substring(2)); - let nConfirmationTime = utils.reverseHexBytes(web3.utils.toHex(quote.agreementTime + 600).substring(2)); - let firstHeader = '0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' + firstConfirmationTime + '0000000000000000'; - let nHeader = '0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' + nConfirmationTime + '0000000000000000'; - let initialUserBalance = await web3.eth.getBalance(rskRefundAddress); - let initialLPDeposit = await instance.getCollateral(liquidityProviderRskAddress); - - await bridgeMockInstance.setPegin(quoteHash, {value : peginAmount}); - await bridgeMockInstance.setHeader(height, firstHeader); - await bridgeMockInstance.setHeader(height + quote.depositConfirmations - 1, nHeader); - - let tx = await instance.registerPegIn( - utils.asArray(quote), - signature, - btcRawTransaction, - partialMerkleTree, - height - ); - - finalUserBalance = await web3.eth.getBalance(rskRefundAddress); - finalLPDeposit = await instance.getCollateral(liquidityProviderRskAddress); - let usrBal = web3.utils.toBN(finalUserBalance).sub(web3.utils.toBN(initialUserBalance)); - truffleAssert.eventNotEmitted(tx, "Penalized"); - expect(usrBal).to.be.a.bignumber.eq(peginAmount); - expect(finalLPDeposit).to.be.a.bignumber.eq(initialLPDeposit); - }); - - it ('should not penalize with insufficient deposit', async () => { - let val = web3.utils.toBN(1000000000000); - let destAddr = mock.address; - let rskRefundAddress = accounts[2]; - let data = web3.eth.abi.encodeFunctionCall(mock.abi[2], []); - - let quote = utils.getTestQuote( - instance.address, - destAddr, - data, - liquidityProviderRskAddress, - rskRefundAddress, - val); - quote.penaltyFee = web3.utils.toBN(10); - let peginAmount = val.add(quote.callFee).sub(web3.utils.toBN(1)); - - let btcRawTransaction = '0x101'; - let partialMerkleTree = '0x202'; - let height = 10; - - let quoteHash = await instance.hashQuote(utils.asArray(quote)); - let signature = await web3.eth.sign(quoteHash, liquidityProviderRskAddress); - let firstConfirmationTime = utils.reverseHexBytes(web3.utils.toHex(quote.agreementTime + 300).substring(2)); - let nConfirmationTime = utils.reverseHexBytes(web3.utils.toHex(quote.agreementTime + 600).substring(2)); - let firstHeader = '0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' + firstConfirmationTime + '0000000000000000'; - let nHeader = '0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' + nConfirmationTime + '0000000000000000'; - let initialUserBalance = await web3.eth.getBalance(rskRefundAddress); - let initialLPDeposit = await instance.getCollateral(liquidityProviderRskAddress); - - await bridgeMockInstance.setPegin(quoteHash, {value : peginAmount}); - await bridgeMockInstance.setHeader(height, firstHeader); - await bridgeMockInstance.setHeader(height + quote.depositConfirmations - 1, nHeader); - - let tx = await instance.registerPegIn( - utils.asArray(quote), - signature, - btcRawTransaction, - partialMerkleTree, - height - ); - - finalUserBalance = await web3.eth.getBalance(rskRefundAddress); - finalLPDeposit = await instance.getCollateral(liquidityProviderRskAddress); - - let usrBal = web3.utils.toBN(finalUserBalance).sub(web3.utils.toBN(initialUserBalance)); - truffleAssert.eventNotEmitted(tx, "Penalized"); - expect(usrBal).to.be.a.bignumber.eq(peginAmount); - expect(finalLPDeposit).to.be.a.bignumber.eq(initialLPDeposit); - }); - - it('should penalize on late call', async () => { - let val = web3.utils.toBN(10); - let rskRefundAddress = accounts[2]; - let destAddr = accounts[1]; - - let quote = utils.getTestQuote( - instance.address, - destAddr, - null, - liquidityProviderRskAddress, - rskRefundAddress, - val); - quote.penaltyFee = web3.utils.toBN(10); - quote.callTime = 1; - let peginAmount = quote.val.add(quote.callFee).add(quote.productFeeAmount).add(quote.gasFee); - - let btcRawTransaction = '0x101'; - let partialMerkleTree = '0x202'; - let height = 10; - - let initialUserBalance = await web3.eth.getBalance(destAddr); - let initialLPBalance = await instance.getBalance(liquidityProviderRskAddress); - - let quoteHash = await instance.hashQuote(utils.asArray(quote)); - let signature = await web3.eth.sign(quoteHash, liquidityProviderRskAddress); - let firstConfirmationTime = utils.reverseHexBytes(web3.utils.toHex(quote.agreementTime + 300).substring(2)); - let nConfirmationTime = utils.reverseHexBytes(web3.utils.toHex(quote.agreementTime + 1).substring(2)); - let firstHeader = '0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' + firstConfirmationTime + '0000000000000000'; - let nHeader = '0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' + nConfirmationTime + '0000000000000000'; - let initialLPDeposit = await instance.getCollateral(liquidityProviderRskAddress); - let reward = Math.floor(quote.penaltyFee.div(web3.utils.toBN(10))); - - await bridgeMockInstance.setPegin(quoteHash, {value : peginAmount}); - await bridgeMockInstance.setHeader(height, firstHeader); - await bridgeMockInstance.setHeader(height + quote.depositConfirmations - 1, nHeader); - - await utils.timeout(5000); - - await instance.callForUser( - utils.asArray(quote), - {value : quote.val} - ); - - currentLPBalance = await instance.getBalance(liquidityProviderRskAddress); - expect(currentLPBalance).to.be.a.bignumber.eq(initialLPBalance); - - let tx = await instance.registerPegIn( - utils.asArray(quote), - signature, - btcRawTransaction, - partialMerkleTree, - height - ); - - finalUserBalance = await web3.eth.getBalance(quote.destAddr); - finalLPBalance = await instance.getBalance(liquidityProviderRskAddress); - finalLPDeposit = await instance.getCollateral(liquidityProviderRskAddress); - let usrBal = web3.utils.toBN(finalUserBalance).sub(web3.utils.toBN(initialUserBalance)); - let lpCol = web3.utils.toBN(initialLPDeposit).sub(web3.utils.toBN(finalLPDeposit)); - let lpBal = web3.utils.toBN(finalLPBalance).sub(web3.utils.toBN(initialLPBalance)); - truffleAssert.eventEmitted(tx, "Penalized", { - liquidityProvider: liquidityProviderRskAddress, - penalty: quote.penaltyFee, - quoteHash: quoteHash - }); - expect(usrBal).to.be.a.bignumber.eq(quote.val); - expect(lpCol).to.be.a.bignumber.eq(quote.penaltyFee); - expect(lpBal).to.eql(peginAmount); - }); - - it('should not underflow when penalty is higher than collateral', async () => { - const lpAddress = accounts[9]; - await instance.register( - "First contract", - "http://localhost/api", - true, - "both", - { - from: lpAddress, - value: utils.LP_COLLATERAL, - } - ); - let val = web3.utils.toBN(10); - let rskRefundAddress = accounts[2]; - let destAddr = accounts[1]; - - let quote = utils.getTestQuote( - instance.address, - destAddr, - null, - lpAddress, - rskRefundAddress, - val); - quote.callTime = 1; - quote.penaltyFee = web3.utils.toBN(utils.LP_COLLATERAL.add(web3.utils.toBN(1))); - let btcRawTransaction = '0x101'; - let partialMerkleTree = '0x202'; - let height = 10; - - let initialLPBalance = await instance.getBalance(lpAddress, { from: lpAddress }); - let peginAmount = quote.val.add(quote.callFee).add(quote.productFeeAmount).add(quote.gasFee); - let initialLPDeposit = await instance.getCollateral(lpAddress, { from: lpAddress }); - let rewardPercentage = await instance.getRewardPercentage(); - let quoteHash = await instance.hashQuote(utils.asArray(quote)); - let signature = await web3.eth.sign(quoteHash, lpAddress); - let firstConfirmationTime = utils.reverseHexBytes(web3.utils.toHex(quote.agreementTime + 300).substring(2)); - let nConfirmationTime = utils.reverseHexBytes(web3.utils.toHex(quote.agreementTime + 1).substring(2)); - let firstHeader = '0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' + firstConfirmationTime + '0000000000000000'; - let nHeader = '0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' + nConfirmationTime + '0000000000000000'; - - let reward = Math.floor(Math.min(initialLPDeposit, quote.penaltyFee) * rewardPercentage / 100); - await bridgeMockInstance.setPegin(quoteHash, {value : peginAmount}); - await bridgeMockInstance.setHeader(height, firstHeader); - await bridgeMockInstance.setHeader(height + quote.depositConfirmations - 1, nHeader); - - await utils.timeout(5000); - - await instance.callForUser( - utils.asArray(quote), - { value: quote.val, from: lpAddress } - ); - - currentLPBalance = await instance.getBalance(lpAddress); - expect(currentLPBalance).to.be.a.bignumber.eq(initialLPBalance); - - let tx = await instance.registerPegIn( - utils.asArray(quote), - signature, - btcRawTransaction, - partialMerkleTree, - height, - { from: lpAddress } - ); - - finalUserBalance = await web3.eth.getBalance(destAddr); - finalLPBalance = await instance.getBalance(lpAddress); - finalLPDeposit = await instance.getCollateral(lpAddress); - - let lpBal = web3.utils.toBN(finalLPBalance).sub(web3.utils.toBN(initialLPBalance)); - truffleAssert.eventEmitted(tx, "Penalized", { - liquidityProvider: lpAddress, - penalty: initialLPDeposit, - quoteHash: quoteHash - }); - expect(web3.utils.toBN(0)).to.be.a.bignumber.eq(finalLPDeposit); - expect(lpBal).to.eql(peginAmount.add(web3.utils.toBN(reward)).sub(quote.productFeeAmount)); - }); - - it("Should penalize LP on pegout if the transfer was not made on time", async () => { - await instance.addPegoutCollateral({ - value: web3.utils.toWei("30000", "wei"), - from: liquidityProviderRskAddress, - }); - const blockHeaderHash = - "0x02327049330a25d4d17e53e79f478cbb79c53a509679b1d8a1505c5697afb326"; - const partialMerkleTree = - "0x02327049330a25d4d17e53e79f478cbb79c53a509679b1d8a1505c5697afb426"; - const merkleBranchHashes = [ - "0x02327049330a25d4d17e53e79f478cbb79c53a509679b1d8a1505c5697afb326", - ]; - - let quote = utils.getTestPegOutQuote( - instance.address, //lbc address - liquidityProviderRskAddress, - accounts[2], - web3.utils.toBN(25) - ); - quote.transferConfirmations = 0; - quote.agreementTimestamp = Math.round(new Date().getTime() / 1000) - - const quoteHash = await instance.hashPegoutQuote(utils.asArray(quote)); - const signature = await web3.eth.sign(quoteHash, liquidityProviderRskAddress); - const msgValue = quote.value.add(quote.callFee).add(quote.productFeeAmount).add(quote.gasFee); - const pegOut = await instance.depositPegout(utils.asArray(quote), signature, { value: msgValue.toNumber() }); - truffleAssert.eventEmitted(pegOut, "PegOutDeposit"); - - const block = await web3.eth.getBlock("latest"); - const BTC_BLOCK_TIME = 5400; // 1.5h - // configure mocked block on mockBridge - const firstConfirmationTime = utils.reverseHexBytes( - web3.utils.toHex(block.timestamp + quote.transferTime + BTC_BLOCK_TIME + 1).substring(2) - ); - const firstHeader = - "0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + - firstConfirmationTime + - "0000000000000000"; - await bridgeMockInstance.setHeaderByHash(blockHeaderHash, firstHeader); - const btcTx = await utils.generateRawTx(instance, quote); - - const refund = await instance.refundPegOut( - quoteHash, - btcTx, - blockHeaderHash, - partialMerkleTree, - merkleBranchHashes - ); - truffleAssert.eventEmitted(refund, "PegOutRefunded"); - truffleAssert.eventEmitted(refund, "Penalized"); - }); -}); diff --git a/test/refund.tests.js b/test/refund.tests.js deleted file mode 100644 index 280e656..0000000 --- a/test/refund.tests.js +++ /dev/null @@ -1,403 +0,0 @@ -const LiquidityBridgeContractV2 = artifacts.require('LiquidityBridgeContractV2.sol'); -const BridgeMock = artifacts.require("BridgeMock"); -const Mock = artifacts.require('Mock'); -const WalletMock = artifacts.require('WalletMock'); -const truffleAssert = require('truffle-assertions'); -const chai = require("chai"); -const utils = require('../test/utils/index'); -const truffleAssertions = require("truffle-assertions"); - -const BN = web3.utils.BN; -const chaiBN = require('chai-bn')(BN); -chai.use(chaiBN); - -const expect = chai.expect; - -contract('LiquidityBridgeContractV2.sol', async accounts => { - let instance; - let bridgeMockInstance; - const liquidityProviderRskAddress = accounts[0]; - - before(async () => { - const proxy = await LiquidityBridgeContractV2.deployed(); - instance = await LiquidityBridgeContractV2.at(proxy.address); - bridgeMockInstance = await BridgeMock.deployed(); - mock = await Mock.deployed(); - }); - - beforeEach(async () => { - await utils.ensureLiquidityProviderAvailable(instance, liquidityProviderRskAddress, utils.LP_COLLATERAL); - }); - - it('should transfer value and refund remaining', async () => { - let destAddr = accounts[1]; - let rskRefundAddress = accounts[2]; - let data = '0x00'; - let val = web3.utils.toBN(10); - let quote = utils.getTestQuote( - instance.address, - destAddr, - data, - liquidityProviderRskAddress, - rskRefundAddress, - val); - - let btcRawTransaction = '0x101'; - let partialMerkleTree = '0x202'; - let height = 10; - let initialUserBalance = await web3.eth.getBalance(destAddr); - let initialLPBalance = await instance.getBalance(liquidityProviderRskAddress); - let initialLBCBalance = await web3.eth.getBalance(instance.address); - let initialRefundBalance = await web3.eth.getBalance(rskRefundAddress); - let additionalFunds = web3.utils.toBN(1000000000000); - let peginAmount = val.add(quote.callFee).add(additionalFunds).add(quote.gasFee); - - let quoteHash = await instance.hashQuote(utils.asArray(quote)); - let signature = await web3.eth.sign(quoteHash, liquidityProviderRskAddress); - let firstConfirmationTime = utils.reverseHexBytes(web3.utils.toHex(quote.agreementTime + 300).substring(2)); - let nConfirmationTime = utils.reverseHexBytes(web3.utils.toHex(quote.agreementTime + 600).substring(2)); - let firstHeader = '0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' + firstConfirmationTime + '0000000000000000'; - let nHeader = '0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' + nConfirmationTime + '0000000000000000'; - - await bridgeMockInstance.setPegin(quoteHash, {value : peginAmount}); - await bridgeMockInstance.setHeader(height, firstHeader); - await bridgeMockInstance.setHeader(height + quote.depositConfirmations - 1, nHeader); - - let initialLPDeposit = await instance.getCollateral(liquidityProviderRskAddress); - - await instance.callForUser( - utils.asArray(quote), - {value : val} - ); - - let currentLPBalance = await instance.getBalance(liquidityProviderRskAddress); - expect(currentLPBalance).to.be.a.bignumber.eq(initialLPBalance); - - let amount = await instance.registerPegIn.call( - utils.asArray(quote), - signature, - btcRawTransaction, - partialMerkleTree, - height - ); - - let tx = await instance.registerPegIn( - utils.asArray(quote), - signature, - btcRawTransaction, - partialMerkleTree, - height - ); - - let finalLPBalance = await instance.getBalance(liquidityProviderRskAddress); - let finalLBCBalance = await web3.eth.getBalance(instance.address); - let finalUserBalance = await web3.eth.getBalance(destAddr); - let finalRefundBalance = await web3.eth.getBalance(rskRefundAddress); - let finalLPDeposit = await instance.getCollateral(liquidityProviderRskAddress); - - let usrBal = web3.utils.toBN(finalUserBalance).sub(web3.utils.toBN(initialUserBalance)); - let lbcBal = web3.utils.toBN(finalLBCBalance).sub(web3.utils.toBN(initialLBCBalance)); - let lpBal = web3.utils.toBN(finalLPBalance).sub(web3.utils.toBN(initialLPBalance)); - let refBal = web3.utils.toBN(finalRefundBalance).sub(web3.utils.toBN(initialRefundBalance)); - truffleAssert.eventEmitted(tx, "Refund", { - dest: rskRefundAddress, - amount: additionalFunds, - success: true - }); - expect(peginAmount).to.be.a.bignumber.eq(amount); - expect(usrBal).to.be.a.bignumber.eq(val); - expect(lbcBal).to.be.a.bignumber.eq(peginAmount.sub(additionalFunds).sub(quote.productFeeAmount)); - expect(lpBal).to.be.a.bignumber.eq(peginAmount.sub(additionalFunds)); - expect(refBal).to.be.a.bignumber.eq(additionalFunds); - expect(finalLPDeposit).to.be.a.bignumber.eq(initialLPDeposit); - }); - - it ('should refund remaining amount to LP in case refunding to quote.rskRefundAddress fails', async () => { - let walletMock = await WalletMock.new(); - await walletMock.setRejectFunds(true); - - let destAddr = accounts[1]; - let rskRefundAddress = walletMock.address; - let data = '0x00'; - let val = web3.utils.toBN(10); - let quote = utils.getTestQuote( - instance.address, - destAddr, - data, - liquidityProviderRskAddress, - rskRefundAddress, // transfer to rskRefundAddress should revert - val); - - let btcRawTransaction = '0x101'; - let partialMerkleTree = '0x202'; - let height = 10; - let initialUserBalance = await web3.eth.getBalance(destAddr); - let initialLPBalance = await instance.getBalance(liquidityProviderRskAddress); - let initialLBCBalance = await web3.eth.getBalance(instance.address); - let initialRefundBalance = await web3.eth.getBalance(rskRefundAddress); - let additionalFunds = web3.utils.toBN(1000000000000); - let peginAmount = val.add(quote.callFee).add(additionalFunds).add(quote.gasFee); - - let quoteHash = await instance.hashQuote(utils.asArray(quote)); - let signature = await web3.eth.sign(quoteHash, liquidityProviderRskAddress); - let firstConfirmationTime = utils.reverseHexBytes(web3.utils.toHex(quote.agreementTime + 300).substring(2)); - let nConfirmationTime = utils.reverseHexBytes(web3.utils.toHex(quote.agreementTime + 600).substring(2)); - let firstHeader = '0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' + firstConfirmationTime + '0000000000000000'; - let nHeader = '0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' + nConfirmationTime + '0000000000000000'; - - await bridgeMockInstance.setPegin(quoteHash, {value : peginAmount}); - await bridgeMockInstance.setHeader(height, firstHeader); - await bridgeMockInstance.setHeader(height + quote.depositConfirmations - 1, nHeader); - - let initialLPDeposit = await instance.getCollateral(liquidityProviderRskAddress); - - await instance.callForUser( - utils.asArray(quote), - {value : val} - ); - - let currentLPBalance = await instance.getBalance(liquidityProviderRskAddress); - expect(currentLPBalance).to.be.a.bignumber.eq(initialLPBalance); - - let amount = await instance.registerPegIn.call( - utils.asArray(quote), - signature, - btcRawTransaction, - partialMerkleTree, - height - ); - - let tx = await instance.registerPegIn( - utils.asArray(quote), - signature, - btcRawTransaction, - partialMerkleTree, - height - ); - - let finalLPBalance = await instance.getBalance(liquidityProviderRskAddress); - let finalLBCBalance = await web3.eth.getBalance(instance.address); - let finalUserBalance = await web3.eth.getBalance(destAddr); - let finalRefundBalance = await web3.eth.getBalance(rskRefundAddress); - let finalLPDeposit = await instance.getCollateral(liquidityProviderRskAddress); - - let usrBal = web3.utils.toBN(finalUserBalance).sub(web3.utils.toBN(initialUserBalance)); - let lbcBal = web3.utils.toBN(finalLBCBalance).sub(web3.utils.toBN(initialLBCBalance)); - let lpBal = web3.utils.toBN(finalLPBalance).sub(web3.utils.toBN(initialLPBalance)); - let refBal = web3.utils.toBN(finalRefundBalance).sub(web3.utils.toBN(initialRefundBalance)); - truffleAssert.eventEmitted(tx, "Refund", { - dest: rskRefundAddress, - amount: additionalFunds, - success: false - }); - truffleAssert.eventEmitted(tx, "BalanceIncrease", { - dest: liquidityProviderRskAddress, - amount: additionalFunds - }); - expect(peginAmount).to.be.a.bignumber.eq(amount); - expect(usrBal).to.be.a.bignumber.eq(val); - expect(lbcBal).to.be.a.bignumber.eq(peginAmount.sub(quote.productFeeAmount)); - expect(lpBal).to.be.a.bignumber.eq(peginAmount); - expect(refBal).to.be.a.bignumber.eq(web3.utils.toBN(0)); - expect(finalLPDeposit).to.be.a.bignumber.eq(initialLPDeposit); - }); - - it ('should refund user on failed call', async () => { - let val = web3.utils.toBN(1000000000000); - let rskRefundAddress = accounts[2]; - let destAddr = mock.address; - let data = web3.eth.abi.encodeFunctionCall(mock.abi[2], []); - let quote = utils.getTestQuote( - instance.address, - destAddr, - data, - liquidityProviderRskAddress, - rskRefundAddress, - val); - - let btcRawTransaction = '0x101'; - let partialMerkleTree = '0x202'; - let height = 10; - let initialLPBalance = await instance.getBalance(liquidityProviderRskAddress); - let peginAmount = quote.val.add(quote.callFee).add(quote.gasFee); - - let quoteHash = await instance.hashQuote(utils.asArray(quote)); - let signature = await web3.eth.sign(quoteHash, liquidityProviderRskAddress); - let firstConfirmationTime = utils.reverseHexBytes(web3.utils.toHex(quote.agreementTime + 300).substring(2)); - let nConfirmationTime = utils.reverseHexBytes(web3.utils.toHex(quote.agreementTime + 600).substring(2)); - let firstHeader = '0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' + firstConfirmationTime + '0000000000000000'; - let nHeader = '0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' + nConfirmationTime + '0000000000000000'; - - let initialUserBalance = await web3.eth.getBalance(rskRefundAddress); - - await bridgeMockInstance.setPegin(quoteHash, {value : peginAmount}); - await bridgeMockInstance.setHeader(height, firstHeader); - await bridgeMockInstance.setHeader(height + quote.depositConfirmations - 1, nHeader); - - let initialLPDeposit = await instance.getCollateral(liquidityProviderRskAddress); - - await instance.callForUser( - utils.asArray(quote), - {value : quote.val} - ); - - currentLPBalance = await instance.getBalance(liquidityProviderRskAddress); - - expect(quote.val).to.be.a.bignumber.eq(currentLPBalance.sub(initialLPBalance)); - - let tx = await instance.registerPegIn( - utils.asArray(quote), - signature, - btcRawTransaction, - partialMerkleTree, - height - ); - - let finalUserBalance = await web3.eth.getBalance(rskRefundAddress); - let finalLPBalance = await instance.getBalance(liquidityProviderRskAddress); - let finalLPDeposit = await instance.getCollateral(liquidityProviderRskAddress); - - let lpBal = web3.utils.toBN(finalLPBalance).sub(web3.utils.toBN(initialLPBalance)); - let usrBal = web3.utils.toBN(finalUserBalance).sub(web3.utils.toBN(initialUserBalance)); - truffleAssert.eventEmitted(tx, "Refund", { - dest: rskRefundAddress, - amount: quote.val, - success: true - }); - expect(lpBal).to.be.a.bignumber.eq(quote.val.add(quote.callFee).add(quote.gasFee)); - expect(usrBal).to.be.a.bignumber.eq(peginAmount.sub(quote.callFee).sub(quote.gasFee)); - expect(finalLPDeposit).to.be.a.bignumber.eq(initialLPDeposit); - }); - - it ('should refund user on missed call', async () => { - let val = web3.utils.toBN(1000000000000); - let rskRefundAddress = accounts[2]; - let destAddr = mock.address; - let data = web3.eth.abi.encodeFunctionCall(mock.abi[2], []); - let quote = utils.getTestQuote( - instance.address, - destAddr, - data, - liquidityProviderRskAddress, - rskRefundAddress, - val); - quote.penaltyFee = web3.utils.toBN(10); - - let btcRawTransaction = '0x101'; - let partialMerkleTree = '0x202'; - let height = 10; - let initialAltBalance = await instance.getBalance(liquidityProviderRskAddress); - let initialUserBalance = await web3.eth.getBalance(rskRefundAddress); - let initialLPDeposit = await instance.getCollateral(liquidityProviderRskAddress); - let reward = Math.floor(quote.penaltyFee.div(web3.utils.toBN(10))); - let initialLbcBalance = await web3.eth.getBalance(instance.address); - let peginAmount = quote.val.add(quote.callFee).add(quote.productFeeAmount).add(quote.gasFee); - - let quoteHash = await instance.hashQuote(utils.asArray(quote)); - let signature = await web3.eth.sign(quoteHash, liquidityProviderRskAddress); - let firstConfirmationTime = utils.reverseHexBytes(web3.utils.toHex(quote.agreementTime + 300).substring(2)); - let nConfirmationTime = utils.reverseHexBytes(web3.utils.toHex(quote.agreementTime + 600).substring(2)); - let firstHeader = '0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' + firstConfirmationTime + '0000000000000000'; - let nHeader = '0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' + nConfirmationTime + '0000000000000000'; - - await bridgeMockInstance.setPegin(quoteHash, {value : peginAmount}); - await bridgeMockInstance.setHeader(height, firstHeader); - await bridgeMockInstance.setHeader(height + quote.depositConfirmations - 1, nHeader); - - let tx = await instance.registerPegIn( - utils.asArray(quote), - signature, - btcRawTransaction, - partialMerkleTree, - height - ); - - let finalUserBalance = await web3.eth.getBalance(rskRefundAddress); - let finalAltBalance = await instance.getBalance(liquidityProviderRskAddress); - let finalLPDeposit = await instance.getCollateral(liquidityProviderRskAddress); - let finalLbcBalance = await web3.eth.getBalance(instance.address); - - let usrBal = web3.utils.toBN(finalUserBalance).sub(web3.utils.toBN(initialUserBalance)); - let altBal = web3.utils.toBN(finalAltBalance).sub(web3.utils.toBN(initialAltBalance)); - let lpCol = web3.utils.toBN(initialLPDeposit).sub(web3.utils.toBN(finalLPDeposit)); - truffleAssert.eventEmitted(tx, "Refund", { - dest: rskRefundAddress, - amount: web3.utils.toBN(1000000000003), - success: true, - quoteHash: quoteHash, - }); - expect(usrBal).to.be.a.bignumber.eq(peginAmount); - expect(altBal).to.be.a.bignumber.eq(web3.utils.toBN(reward)); - expect(lpCol).to.be.a.bignumber.eq(quote.penaltyFee); - expect(finalLbcBalance).to.be.a.bignumber.eq(initialLbcBalance); - }); - - it ('should no one be refunded in registerPegIn on missed call in case refunding to quote.rskRefundAddress fails', async () => { - let walletMock = await WalletMock.new(); - await walletMock.setRejectFunds(true); - - let val = web3.utils.toBN(1000000000000); - let registerPegInCaller = accounts[2]; - let rskRefundAddress = walletMock.address; - let destAddr = mock.address; - let data = web3.eth.abi.encodeFunctionCall(mock.abi[2], []); - let quote = utils.getTestQuote( - instance.address, - destAddr, - data, - liquidityProviderRskAddress, - rskRefundAddress, - val); - quote.penaltyFee = web3.utils.toBN(10); - - let btcRawTransaction = '0x101'; - let partialMerkleTree = '0x202'; - let height = 10; - let peginAmount = quote.val.add(quote.callFee).add(quote.productFeeAmount).add(quote.gasFee); - - let quoteHash = await instance.hashQuote(utils.asArray(quote)); - let signature = await web3.eth.sign(quoteHash, liquidityProviderRskAddress); - let reward = Math.floor(quote.penaltyFee.div(web3.utils.toBN(10))); - let firstConfirmationTime = utils.reverseHexBytes(web3.utils.toHex(quote.agreementTime + 300).substring(2)); - let nConfirmationTime = utils.reverseHexBytes(web3.utils.toHex(quote.agreementTime + 600).substring(2)); - let firstHeader = '0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' + firstConfirmationTime + '0000000000000000'; - let nHeader = '0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' + nConfirmationTime + '0000000000000000'; - - await bridgeMockInstance.setPegin(quoteHash, {value : peginAmount}); - await bridgeMockInstance.setHeader(height, firstHeader); - await bridgeMockInstance.setHeader(height + quote.depositConfirmations - 1, nHeader); - - let initialCallerBalance = await instance.getBalance(registerPegInCaller); - let initialLPDeposit = await instance.getCollateral(liquidityProviderRskAddress); - let initialUserBalance = await web3.eth.getBalance(rskRefundAddress); - let initialLbcBalance = await web3.eth.getBalance(instance.address); - - let tx = await instance.registerPegIn( - utils.asArray(quote), - signature, - btcRawTransaction, - partialMerkleTree, - height, - { from: registerPegInCaller } - ); - - let finalUserBalance = await web3.eth.getBalance(rskRefundAddress); - let finalCallerBalance = await instance.getBalance(registerPegInCaller); - let finalLPDeposit = await instance.getCollateral(liquidityProviderRskAddress); - let finalLbcBalance = await web3.eth.getBalance(instance.address); - - let usrBal = web3.utils.toBN(finalUserBalance).sub(web3.utils.toBN(initialUserBalance)); - let callerBal = web3.utils.toBN(finalCallerBalance).sub(web3.utils.toBN(initialCallerBalance)); - let lpCol = web3.utils.toBN(initialLPDeposit).sub(web3.utils.toBN(finalLPDeposit)); - truffleAssert.eventEmitted(tx, "Refund", { - dest: rskRefundAddress, - amount: web3.utils.toBN(1000000000003), - success: false, - quoteHash: quoteHash, - }); - expect(usrBal).to.be.a.bignumber.eq(web3.utils.toBN(0)); - expect(callerBal).to.be.a.bignumber.eq(web3.utils.toBN(reward)); - expect(lpCol).to.be.a.bignumber.eq(quote.penaltyFee); - expect(finalLbcBalance).to.be.a.bignumber.eq(web3.utils.toBN(initialLbcBalance).add(peginAmount)); - }); -}); diff --git a/test/registration.test.ts b/test/registration.test.ts new file mode 100644 index 0000000..512ca76 --- /dev/null +++ b/test/registration.test.ts @@ -0,0 +1,129 @@ +import hre, { ethers } from "hardhat"; +import { + LP_COLLATERAL, + MIN_COLLATERAL_TEST, + REGISTER_LP_PARAMS, +} from "./utils/constants"; +import { loadFixture } from "@nomicfoundation/hardhat-toolbox/network-helpers"; +import { expect } from "chai"; +import { deployContract } from "../scripts/deployment-utils/utils"; +import { deployLbcFixture } from "./utils/fixtures"; + +describe("LiquidityBridgeContractV2 registration process should", () => { + it("register liquidity provider successfully", async () => { + const fixtureResult = await loadFixture(deployLbcFixture); + const lpAccount = fixtureResult.accounts[0]; + let lbc = fixtureResult.lbc; + + const previousCollateral = await lbc.getCollateral(lpAccount); + lbc = lbc.connect(lpAccount); + + const tx = await lbc.register(...REGISTER_LP_PARAMS); + await tx.wait(); + const currentCollateral = await lbc.getCollateral(lpAccount); + + await expect(tx) + .to.emit(lbc, "Register") + .withArgs(1n, lpAccount.address, LP_COLLATERAL); + expect(2n * (currentCollateral - previousCollateral)).to.be.eq( + LP_COLLATERAL + ); + }); + + it("fail on register if bad parameters", async () => { + const { lbc } = await loadFixture(deployLbcFixture); + const cases = [ + { + name: "", + url: "http://localhost/api", + status: true, + type: "both", + error: "LBC010", + }, + { + name: "First contract", + url: "", + status: true, + type: "both", + error: "LBC017", + }, + { + name: "First contract", + url: "http://localhost/api", + status: true, + type: "", + error: "LBC018", + }, + ]; + + for (const testCase of cases) { + await expect( + lbc.register( + testCase.name, + testCase.url, + testCase.status, + testCase.type, + { value: LP_COLLATERAL } + ) + ).to.be.revertedWith(testCase.error); + } + }); + + it("fail when Liquidity provider is already registered", async () => { + const fixtureResult = await loadFixture(deployLbcFixture); + const lpAccount = fixtureResult.accounts[5]; + const lbc = fixtureResult.lbc.connect(lpAccount); + + const tx = await lbc.register(...REGISTER_LP_PARAMS); + await expect(tx) + .to.emit(lbc, "Register") + .withArgs(1n, lpAccount.address, LP_COLLATERAL); + await expect(lbc.register(...REGISTER_LP_PARAMS)).to.revertedWith("LBC070"); + }); + + it("fail on register if not deposit the minimum collateral", async () => { + const { lbc } = await loadFixture(deployLbcFixture); + await expect( + lbc.register("First contract", "http://localhost/api", true, "both", { + value: 0n, + }) + ).to.be.revertedWith("LBC008"); + }); + + it("not register lp with not enough collateral", async () => { + const { lbc } = await loadFixture(deployLbcFixture); + await expect( + lbc.register("First contract", "http://localhost/api", true, "both", { + value: MIN_COLLATERAL_TEST * 2n - 1n, + }) + ).to.be.revertedWith("LBC008"); + }); + + it("fail to register liquidity provider from a contract", async () => { + const fixtureResult = await loadFixture(deployLbcFixture); + const accounts = fixtureResult.accounts; + const lpSigner = accounts[9]; + const notLpSigner = accounts[8]; + let lbc = fixtureResult.lbc; + const deploymentInfo = await deployContract("Mock", hre.network.name); + let mockContract = await ethers.getContractAt( + "Mock", + deploymentInfo.address + ); + const lbcAddress = await lbc.getAddress(); + + lbc = lbc.connect(lpSigner); + const tx = await lbc.register(...REGISTER_LP_PARAMS); + await tx.wait(); + + mockContract = mockContract.connect(lpSigner); + await expect( + mockContract.callRegister(lbcAddress, { value: LP_COLLATERAL }) + ).to.revertedWith("LBC003"); + + mockContract = mockContract.connect(notLpSigner); + await expect( + mockContract.callRegister(lbcAddress, { value: LP_COLLATERAL }) + ).to.revertedWith("LBC003"); + }); +}); diff --git a/test/resignation.test.ts b/test/resignation.test.ts new file mode 100644 index 0000000..a3a0107 --- /dev/null +++ b/test/resignation.test.ts @@ -0,0 +1,153 @@ +import { ethers } from "hardhat"; +import { LP_COLLATERAL } from "./utils/constants"; +import { loadFixture } from "@nomicfoundation/hardhat-toolbox/network-helpers"; +import { expect } from "chai"; +import { deployLbcWithProvidersFixture } from "./utils/fixtures"; +import { + createBalanceDifferenceAssertion, + createBalanceUpdateAssertion, + createCollateralUpdateAssertion, +} from "./utils/asserts"; +import * as hardhatHelpers from "@nomicfoundation/hardhat-network-helpers"; + +describe("LiquidityBridgeContractV2 resignation process should", () => { + it("fail when liquidityProdvider try to withdraw collateral without resign postion as liquidity provider before", async () => { + const fixtureResult = await loadFixture(deployLbcWithProvidersFixture); + const provider = fixtureResult.liquidityProviders[1]; + let lbc = fixtureResult.lbc; + lbc = lbc.connect(provider.signer); + + await expect(lbc.withdrawCollateral()).to.be.revertedWith("LBC021"); + const resignBlocks = await lbc.getResignDelayBlocks(); + await lbc.resign(); + await hardhatHelpers.mine(resignBlocks); + await expect(lbc.withdrawCollateral()).not.to.be.reverted; + }); + + it("fail when LP resigns two times", async () => { + const fixtureResult = await loadFixture(deployLbcWithProvidersFixture); + const provider = fixtureResult.liquidityProviders[1]; + let lbc = fixtureResult.lbc; + const resignBlocks = await lbc.getResignDelayBlocks(); + lbc = lbc.connect(provider.signer); + await expect(lbc.resign()).not.to.be.reverted; + await expect(lbc.resign()).to.be.revertedWith("LBC001"); + await hardhatHelpers.mine(resignBlocks); + await expect(lbc.withdrawCollateral()).not.to.be.reverted; + }); + + it("should resign", async () => { + const fixtureResult = await loadFixture(deployLbcWithProvidersFixture); + const provider = fixtureResult.liquidityProviders[0]; + let lbc = fixtureResult.lbc; + lbc = lbc.connect(provider.signer); + const lpBalance = ethers.parseEther("0.5"); + await lbc.deposit({ value: lpBalance }); + const resignBlocks = await lbc.getResignDelayBlocks(); + + const lbcBalanceAfterResignAssertion = + await createBalanceDifferenceAssertion({ + source: ethers.provider, + address: await lbc.getAddress(), + expectedDiff: 0, + message: "Incorrect LBC balance after resign", + }); + + const lbcBalanceAfterWithdrawAssertion = + await createBalanceDifferenceAssertion({ + source: ethers.provider, + address: await lbc.getAddress(), + expectedDiff: lpBalance * -1n, + message: "Incorrect LBC balance after withdraw", + }); + + const lpBalanceAfterWithdrawAssertion = await createBalanceUpdateAssertion({ + source: ethers.provider, + address: provider.signer.address, + message: "Incorrect LP balance after withdraw", + }); + + const lpProtocolBalanceAfterWithdrawAssertion = + await createBalanceDifferenceAssertion({ + source: lbc, + address: provider.signer.address, + expectedDiff: lpBalance * -1n, + message: "Incorrect LP balance in LBC after withdraw", + }); + + const peginCollateralAfterWithdrawAssertion = + await createCollateralUpdateAssertion({ + lbc: lbc, + address: provider.signer.address, + expectedDiff: (LP_COLLATERAL / 2n) * -1n, + message: "Incorrect pegin collateral after withdraw", + type: "pegin", + }); + + const pegoutCollateralAfterWithdrawAssertion = + await createCollateralUpdateAssertion({ + lbc: lbc, + address: provider.signer.address, + expectedDiff: (LP_COLLATERAL / 2n) * -1n, + message: "Incorrect pegout collateral after withdraw", + type: "pegout", + }); + + const resignTx = await lbc.resign(); + const resignReceipt = await resignTx.wait(); + + await lbcBalanceAfterResignAssertion(); + + const withdrawTx = await lbc.withdraw(lpBalance); + const withdrawReceipt = await withdrawTx.wait(); + + await expect(resignTx) + .to.emit(lbc, "Resigned") + .withArgs(provider.signer.address); + await expect(withdrawTx) + .to.emit(lbc, "Withdrawal") + .withArgs(provider.signer.address, lpBalance); + + await lbcBalanceAfterWithdrawAssertion(); + await lpBalanceAfterWithdrawAssertion( + lpBalance - withdrawReceipt!.fee - resignReceipt!.fee + ); + await lpProtocolBalanceAfterWithdrawAssertion(); + + const lpBalanceAfterCollateralWithdrawAssertion = + await createBalanceUpdateAssertion({ + source: ethers.provider, + address: provider.signer.address, + message: "Incorrect LP balance after withdraw", + }); + + const lbcBalanceAfterCollateralWithdrawAssertion = + await createBalanceDifferenceAssertion({ + source: ethers.provider, + address: await lbc.getAddress(), + expectedDiff: LP_COLLATERAL * -1n, + message: "Incorrect LBC balance after collateral withdraw", + }); + + await hardhatHelpers.mine(resignBlocks); + + const withdrawCollateralTx = await lbc.withdrawCollateral(); + const withdrawCollateralReceipt = await withdrawCollateralTx.wait(); + + await expect(withdrawCollateralTx) + .to.emit(lbc, "WithdrawCollateral") + .withArgs(provider.signer.address, LP_COLLATERAL); + await lpBalanceAfterCollateralWithdrawAssertion( + LP_COLLATERAL - withdrawCollateralReceipt!.fee + ); + await peginCollateralAfterWithdrawAssertion(); + await pegoutCollateralAfterWithdrawAssertion(); + await lbcBalanceAfterCollateralWithdrawAssertion(); + await expect( + lbc.getCollateral(provider.signer.address) + ).to.eventually.be.eq(0); + await expect( + lbc.getPegoutCollateral(provider.signer.address) + ).to.eventually.be.eq(0); + }); +}); diff --git a/test/utils/asserts.ts b/test/utils/asserts.ts new file mode 100644 index 0000000..96e35db --- /dev/null +++ b/test/utils/asserts.ts @@ -0,0 +1,129 @@ +import { BigNumberish, Provider } from "ethers"; +import { LiquidityBridgeContractV2 } from "../../typechain-types"; +import { expect } from "chai"; + +/** + * Creates an assertion that checks the difference between the balance of an address + * before and after the assertion is created. The current balance is determined when + * **this function** is called. The expected difference is compared with the difference + * of the balance that the address has in the moment the assertion is called minus the + * balance the address had when the assertion was created. + * + * @param args.source The source of the balance information. Might be an LBC instance + * or an RPC provider. So this function might be used to verify network balance or + * protocol balance. + * + * @param args.address The address to check the balance. + * + * @param args.expectedDiff The expected difference between the balance when this function + * is called (the assert function creation) and the balance when the assert function + * is called. + * + * @param args.message The message to display when the assertion fails. + * + * @returns { Promise<() => Promise> } The assertion function itself. When the assertion function + * is called it will fetch the balance again and subtract from it the balance that was fetched when + * **this** function was called. The result is compared with the `expectedDiff` parameter. + */ +export async function createBalanceDifferenceAssertion(args: { + source: LiquidityBridgeContractV2 | Provider; + address: string; + expectedDiff: BigNumberish; + message: string; +}): Promise<() => Promise> { + const { source, address, expectedDiff, message } = args; + + const balanceNow = await source.getBalance(address); + return async function () { + const balanceAfter = await source.getBalance(address); + expect(balanceAfter - balanceNow).to.equal(expectedDiff, message); + }; +} + +/** + * Creates an assertion that checks the difference between the balance of an address + * before and after the assertion is created. The current balance is determined when + * **this function** is called. The difference of the balance that the address has + * when the assertion is called minus the balance the address had when the + * assertion was created is compared to the `balanceUpdate` parameter received by the + * assert function. + * + * The difference between this function and {@link createBalanceDifferenceAssertion} is + * that in {@link createBalanceDifferenceAssertion} the expected difference is passed when + * the assertion is created, while in this function the expected difference is passed when + * the assertion is called. You should use this function when you are not sure about the + * expected difference because it depends on other factors. + * + * @param args.source The source of the balance information. Might be an LBC instance + * or an RPC provider. So this function might be used to verify network balance or + * protocol balance. + * + * @param args.address The address to check the balance. + * + * @param args.message The message to display when the assertion fails. + * + * @returns { Promise<(balanceUpdate: bigint) => void> } The assertion function itself. When the assertion + * function is called it will fetch the balance again and subtract from it the balance that was fetched when + * **this** function was called. The result is compared with the `balanceUpdate` parameter. + */ +export async function createBalanceUpdateAssertion(args: { + source: LiquidityBridgeContractV2 | Provider; + address: string; + message: string; +}): Promise<(balanceUpdate: bigint) => Promise> { + const { source, address, message } = args; + const balanceNow = await source.getBalance(address); + return async function (balanceUpdate: BigNumberish) { + const balanceAfter = await source.getBalance(address); + expect(balanceAfter - balanceNow).to.equal(balanceUpdate, message); + }; +} + +/** + * This function has the same purpose as {@link createBalanceDifferenceAssertion} but + * it is used to check the collateral balance of a liquidity provider. The difference + * between this function and {@link createBalanceDifferenceAssertion} is that this function + * is used to compare protocol collateral, while the other function is used to compare network + * or protocol balance of any address. + * + * @param args.lbc The LBC contract instance. + * + * @param args.address The address to check the collateral. + * + * @param args.expectedDiff The expected difference between the collateral when this function + * is called (the assert function creation) and the collateral when the assert function + * is called. + * + * @param args.message The message to display when the assertion fails. + * + * @param args.type The type of collateral to check. It can be "pegin" or "pegout". + * + * @returns { Promise<() => Promise> } The assertion function itself. When the assertion function + * is called it will fetch the collateral again and subtract from it the collateral that was fetched when + * **this** function was called. The result is compared with the `expectedDiff` parameter. + */ +export async function createCollateralUpdateAssertion(args: { + lbc: LiquidityBridgeContractV2; + address: string; + expectedDiff: BigNumberish; + message: string; + type: "pegin" | "pegout"; +}): Promise<() => Promise> { + let balanceNow: bigint; + const { lbc, address, expectedDiff, message, type } = args; + + if (type === "pegin") { + balanceNow = await lbc.getCollateral(address); + } else { + balanceNow = await lbc.getPegoutCollateral(address); + } + return async function () { + let balanceAfter: bigint; + if (type === "pegin") { + balanceAfter = await lbc.getCollateral(address); + } else { + balanceAfter = await lbc.getPegoutCollateral(address); + } + expect(balanceAfter - balanceNow).to.equal(expectedDiff, message); + }; +} diff --git a/test/utils/btc.ts b/test/utils/btc.ts new file mode 100644 index 0000000..e340a79 --- /dev/null +++ b/test/utils/btc.ts @@ -0,0 +1,103 @@ +import { bech32, bech32m } from "bech32"; +import * as bs58check from "bs58check"; +import { BytesLike, hexlify } from "ethers"; +import { LiquidityBridgeContractV2, QuotesV2 } from "../../typechain-types"; +import { toLeHex } from "./encoding"; + +export type BtcAddressType = "p2pkh" | "p2sh" | "p2wpkh" | "p2wsh" | "p2tr"; + +const WEI_TO_SAT_CONVERSION = 10n ** 10n; +export const weiToSat = (wei: bigint) => + wei % WEI_TO_SAT_CONVERSION === 0n + ? wei / WEI_TO_SAT_CONVERSION + : wei / WEI_TO_SAT_CONVERSION + 1n; + +export function getTestBtcAddress(addressType: BtcAddressType): BytesLike { + switch (addressType) { + case "p2pkh": + return bs58check.decode("mxqk28jvEtvjxRN8k7W9hFEJfWz5VcUgHW"); + case "p2sh": + return bs58check.decode("2N4DTeBWDF9yaF9TJVGcgcZDM7EQtsGwFjX"); + case "p2wpkh": + return new Uint8Array( + bech32.decode("tb1qlh84gv84mf7e28lsk3m75sgy7rx2lmvpr77rmw").words + ); + case "p2wsh": + return new Uint8Array( + bech32.decode( + "tb1qrp33g0q5c5txsp9arysrx4k6zdkfs4nce4xj0gdcccefvpysxf3q0sl5k7" + ).words + ); + case "p2tr": + return new Uint8Array( + bech32m.decode( + "tb1ptt2hnzgzfhrfdyfz02l02wam6exd0mzuunfdgqg3ttt9yagp6daslx6grp" + ).words + ); + default: + throw new Error("Invalid btcAddressType"); + } +} + +/** + * Generates a raw BTC transaction paying to the address specified in the given quote. + * The transaction will have two outputs, one for the specified amount and one null data + * script output for the quote hash. + * @param lbc The LBC contract instance to hash the quote + * @param quote The pegout quote + * @param scriptType The type of the output script to generate + * @returns { Promise } The raw BTC transaction + */ +export async function generateRawTx( + lbc: LiquidityBridgeContractV2, + quote: QuotesV2.PegOutQuoteStruct, + scriptType: BtcAddressType = "p2pkh" +) { + const quoteHash = await lbc.hashPegoutQuote(quote); + let outputScript: number[]; + const addressBytes = quote.deposityAddress as Uint8Array; + switch (scriptType) { + case "p2pkh": + outputScript = [0x76, 0xa9, 0x14, ...addressBytes.slice(1), 0x88, 0xac]; + break; + case "p2sh": + outputScript = [0xa9, 0x14, ...addressBytes.slice(1), 0x87]; + break; + case "p2wpkh": + outputScript = [0x00, 0x14, ...bech32.fromWords(addressBytes.slice(1))]; + break; + case "p2wsh": + outputScript = [0x00, 0x20, ...bech32.fromWords(addressBytes.slice(1))]; + break; + case "p2tr": + outputScript = [0x51, 0x20, ...bech32m.fromWords(addressBytes.slice(1))]; + break; + default: + throw new Error("Invalid scriptType"); + } + const outputScriptFragment = hexlify(new Uint8Array(outputScript)).slice(2); + const outputSize = (outputScriptFragment.length / 2).toString(16); + const amount = toLeHex(weiToSat(BigInt(quote.value))).padEnd(16, "0"); + const btcTx = `0x0100000001013503c427ba46058d2d8ac9221a2f6fd50734a69f19dae65420191e3ada2d40000000006a47304402205d047dbd8c49aea5bd0400b85a57b2da7e139cec632fb138b7bee1d382fd70ca02201aa529f59b4f66fdf86b0728937a91a40962aedd3f6e30bce5208fec0464d54901210255507b238c6f14735a7abe96a635058da47b05b61737a610bef757f009eea2a4ffffffff02${amount}${outputSize}${outputScriptFragment}0000000000000000226a20${quoteHash.slice( + 2 + )}00000000`; + return btcTx; +} + +/** + * Use this function to get hardcoded values to use as merkle proofs in tests + */ +export function getTestMerkleProof() { + const blockHeaderHash = + "0x02327049330a25d4d17e53e79f478cbb79c53a509679b1d8a1505c5697afb326"; + const partialMerkleTree = + "0x02327049330a25d4d17e53e79f478cbb79c53a509679b1d8a1505c5697afb426"; + const merkleBranchHashes = [ + "0x02327049330a25d4d17e53e79f478cbb79c53a509679b1d8a1505c5697afb326", + ]; + return { + blockHeaderHash, + partialMerkleTree, + merkleBranchHashes, + }; +} diff --git a/test/utils/constants.ts b/test/utils/constants.ts new file mode 100644 index 0000000..f892d00 --- /dev/null +++ b/test/utils/constants.ts @@ -0,0 +1,38 @@ +import { ethers } from "hardhat"; +import { LiquidityBridgeContractV2 } from "../../typechain-types"; +import * as bs58check from "bs58check"; + +export const LP_COLLATERAL = ethers.parseEther("1.5"); + +export const MIN_COLLATERAL_TEST = ethers.parseEther("0.03"); + +export const TEST_FED_ADDRESS = "2N5muMepJizJE1gR7FbHJU6CD18V3BpNF9p"; + +export const P2PKH_ZERO_ADDRESS_TESTNET = "mfWxJ45yp2SFn7UciZyNpvDKrzbhyfKrY8"; + +export const TEST_P2PKH_ADDRESS = "mtwn2DFCfiJ75ppTYvAULs1v3nqyKo5Dnn"; + +export const DECODED_P2PKH_ZERO_ADDRESS_TESTNET = bs58check.decode( + P2PKH_ZERO_ADDRESS_TESTNET +); + +export const DECODED_TEST_FED_ADDRESS = bs58check.decode(TEST_FED_ADDRESS); + +export const DECODED_TEST_P2PKH_ADDRESS = bs58check.decode(TEST_P2PKH_ADDRESS); + +export const ZERO_ADDRESS = "0x" + "00".repeat(20); + +export const anyHex = "0x" + "ff".repeat(32); + +export const anyNumber = 10; + +export type RegisterLpParams = Parameters< + LiquidityBridgeContractV2["register"] +>; +export const REGISTER_LP_PARAMS: RegisterLpParams = [ + "First contract", + "http://localhost/api", + true, + "both", + { value: LP_COLLATERAL }, +]; diff --git a/test/utils/encoding.ts b/test/utils/encoding.ts new file mode 100644 index 0000000..f9d1445 --- /dev/null +++ b/test/utils/encoding.ts @@ -0,0 +1,37 @@ +import * as ethers from "ethers"; + +/** + * Converts number to little-endian hex without the 0x prefix + * @param n The number to convert + * @returns { string } The little-endian hex representation of the number + */ +export const toLeHex = (n: ethers.BigNumberish) => + ethers + .toBeHex(n) + .slice(2) + .match(/.{1,2}/g)! + .reverse() + .join(""); + +/** + * Converts a little-endian hex string to a number + * @param hex The little-endian hex string + * @returns { bigint } The number represented by the hex string + */ +export const fromLeHex: (hex: string) => bigint = (hex: string) => + hex.startsWith("0x") + ? fromLeHex(hex.slice(2)) + : ethers.getBigInt( + "0x" + + hex + .match(/.{1,2}/g)! + .reverse() + .join("") + ); + +/** + * Converts a number to a big-endian hex string without the 0x prefix + * @param n The number to convert + * @returns { string } The big-endian hex representation of the number + */ +export const toBeHex = (n: ethers.BigNumberish) => ethers.toBeHex(n).slice(2); diff --git a/test/utils/fixtures.ts b/test/utils/fixtures.ts new file mode 100644 index 0000000..f33c795 --- /dev/null +++ b/test/utils/fixtures.ts @@ -0,0 +1,121 @@ +import { deployLbcProxy } from "../../scripts/deployment-utils/deploy-proxy"; +import hre, { ethers } from "hardhat"; +import { upgradeLbcProxy } from "../../scripts/deployment-utils/upgrade-proxy"; +import { LiquidityBridgeContractV2 } from "../../typechain-types"; +import { HardhatEthersSigner } from "@nomicfoundation/hardhat-ethers/signers"; +import { LP_COLLATERAL } from "./constants"; + +/** + * Fixture that deploys the LBC contract and upgrades it to the latest version. + * @returns { { + * lbc: LiquidityBridgeContractV2, + * lbcOwner: HardhatEthersSigner, + * accounts: HardhatEthersSigner[], + * bridgeMock: BridgeMock + * } } + * The returned object contains the following: + * - lbc: The LiquidityBridgeContractV2 contract instance. Connected to the account 0 of the hardhat network. + * - lbcOwner: The account 0 of the hardhat network. + * - accounts: The accounts 1 to 19 of the hardhat network. + * - bridgeMock: The BridgeMock contract instance. Connected to the account 0 of the hardhat network. + */ +export async function deployLbcFixture() { + const network = hre.network.name; + const deployInfo = await deployLbcProxy(network, { verbose: false }); + await upgradeLbcProxy(network, { verbose: false }); + const lbc: LiquidityBridgeContractV2 = await ethers.getContractAt( + "LiquidityBridgeContractV2", + deployInfo.address + ); + const lbcOwner = await hre.ethers.provider.getSigner(); + const accounts = await ethers + .getSigners() + .then((signers) => signers.slice(1)); + + const bridgeMock = await lbc + .getBridgeAddress() + .then((bridgeAddress) => ethers.getContractAt("BridgeMock", bridgeAddress)); + return { lbc, lbcOwner, accounts, bridgeMock }; +} + +/** + * Fixture that deploys the LBC contract and registers the last 3 hardhat signers as liquidity providers. + * @returns { { + * lbc: LiquidityBridgeContractV2, + * liquidityProviders: { + * signer: HardhatEthersSigner, + * registerParams: Parameters + * }[], + * lbcOwner: HardhatEthersSigner, + * bridgeMock: BridgeMock, + * accounts: HardhatEthersSigner[] + * } } + * The returned object contains the following: + * - lbc: The LiquidityBridgeContractV2 contract instance. Connected to the account 0 of the hardhat network. + * - liquidityProviders: An array of objects containing the signer and the parameters to register as a liquidity provider. + * the signers of the liquidity providers are the last 3 signers of the hardhat network accounts. + * - lbcOwner: The account 0 of the hardhat network. + * - bridgeMock: The BridgeMock contract instance. Connected to the account 0 of the hardhat network. + * - accounts: The accounts 1 to 16 of the hardhat network. + */ +export async function deployLbcWithProvidersFixture() { + const network = hre.network.name; + const deployInfo = await deployLbcProxy(network, { verbose: false }); + await upgradeLbcProxy(network, { verbose: false }); + let lbc: LiquidityBridgeContractV2 = await ethers.getContractAt( + "LiquidityBridgeContractV2", + deployInfo.address + ); + + const bridgeMock = await lbc + .getBridgeAddress() + .then((bridgeAddress) => ethers.getContractAt("BridgeMock", bridgeAddress)); + + const signers = await ethers.getSigners(); + const accounts = signers.slice(1, -3); + const lpSigners = signers.splice(-3); + const liquidityProviders: { + signer: HardhatEthersSigner; + registerParams: Parameters; + }[] = [ + { + signer: lpSigners[0], + registerParams: [ + "First LP", + "http://localhost/api1", + true, + "both", + { value: LP_COLLATERAL }, + ], + }, + { + signer: lpSigners[1], + registerParams: [ + "Second LP", + "http://localhost/api2", + true, + "pegin", + { value: LP_COLLATERAL / 2n }, + ], + }, + { + signer: lpSigners[2], + registerParams: [ + "Third LP", + "http://localhost/api3", + true, + "pegout", + { value: LP_COLLATERAL / 2n }, + ], + }, + ]; + + for (const provider of liquidityProviders) { + lbc = lbc.connect(provider.signer); + const registerTx = await lbc.register(...provider.registerParams); + await registerTx.wait(); + } + + const lbcOwner = await hre.ethers.provider.getSigner(); + return { lbc, liquidityProviders, lbcOwner, bridgeMock, accounts }; +} diff --git a/test/utils/index.js b/test/utils/index.js deleted file mode 100644 index cab28bb..0000000 --- a/test/utils/index.js +++ /dev/null @@ -1,228 +0,0 @@ -const bs58check = require('bs58check') -const { bech32, bech32m } = require("bech32") - -function getTestQuote( - lbcAddress, - destAddr, - callData, - liquidityProviderRskAddress, - rskRefundAddress, - value -) { - let val = value || web3.utils.toBN(0); - let userBtcRefundAddress = "0x000000000000000000000000000000000000000000"; - let liquidityProviderBtcAddress = - "0x000000000000000000000000000000000000000000"; - let fedBtcAddress = "0x0000000000000000000000000000000000000000"; - let callFee = web3.utils.toBN(1); - let gasLimit = 150000; - let nonce = 0; - let data = callData || "0x00"; - let agreementTime = Math.floor(Date.now() / 1000); - let timeForDeposit = 600; - let callTime = 600; - let depositConfirmations = 10; - let penaltyFee = web3.utils.toBN(0); - let callOnRegister = false; - let productFeeAmount = web3.utils.toBN(1); - const gasFee = web3.utils.toBN(1); - let quote = { - fedBtcAddress, - lbcAddress, - liquidityProviderRskAddress, - userBtcRefundAddress, - rskRefundAddress, - liquidityProviderBtcAddress, - callFee, - penaltyFee, - destAddr, - data, - gasLimit, - nonce, - val, - agreementTime, - timeForDeposit, - callTime, - depositConfirmations, - callOnRegister, - productFeeAmount, - gasFee - }; - - return quote; -} - -function getTestPegOutQuote(lbcAddress, lpRskAddress, rskRefundAddress, value, btcAddressType = "p2pkh") { - let depositAddress; - switch (btcAddressType) { - case "p2pkh": - depositAddress = bs58check.decode("mxqk28jvEtvjxRN8k7W9hFEJfWz5VcUgHW") - break; - case "p2sh": - depositAddress = bs58check.decode("2N4DTeBWDF9yaF9TJVGcgcZDM7EQtsGwFjX") - break; - case "p2wpkh": - depositAddress = bech32.decode("tb1qlh84gv84mf7e28lsk3m75sgy7rx2lmvpr77rmw").words - break; - case "p2wsh": - depositAddress = bech32.decode("tb1qrp33g0q5c5txsp9arysrx4k6zdkfs4nce4xj0gdcccefvpysxf3q0sl5k7").words - break; - case "p2tr": - depositAddress = bech32m.decode("tb1ptt2hnzgzfhrfdyfz02l02wam6exd0mzuunfdgqg3ttt9yagp6daslx6grp").words - break; - default: - throw new Error("Invalid btcAddressType"); - } - - let valueToTransfer = value || web3.utils.toBN(0); - const callFee = web3.utils.toBN(2); - let nonce = 0; - let agreementTimestamp = 1661788988; - let expireDate = Math.round(new Date().getTime() / 1000) + 3600; - let expireBlock = 4000; - let transferTime = 1661788988; - let depositDateLimit = Math.round(new Date().getTime() / 1000) + 600; - let depositConfirmations = 10; - let transferConfirmations = 10; - let penaltyFee = web3.utils.toBN(0); - let productFeeAmount = web3.utils.toBN(1); - const gasFee = web3.utils.toBN(42); - - let quote = { - lbcAddress, - lpRskAddress, - btcRefundAddress: depositAddress, - rskRefundAddress, - lpBtcAddress: "0x000000000000000000000000000000000000000000", - callFee, - penaltyFee, - nonce, - deposityAddress: depositAddress, - value: valueToTransfer, - agreementTimestamp, - depositDateLimit, - depositConfirmations, - transferConfirmations, - transferTime, - expireDate, - expireBlock, - productFeeAmount, - gasFee - }; - - return quote; -} - -async function ensureLiquidityProviderAvailable( - instance, - liquidityProviderRskAddress, - amount -) { - let lpIsAvailableForPegin = await instance.isOperational(liquidityProviderRskAddress); - let lpIsAvailableForPegout = await instance.isOperationalForPegout(liquidityProviderRskAddress); - if (!lpIsAvailableForPegin || !lpIsAvailableForPegout) { - return await instance.register( - "First contract", - "http://localhost/api", - true, - "both", - { - from: liquidityProviderRskAddress, - value: amount, - } - ); - } - return null; -} - -function asArray(obj) { - return Object.values(obj); -} - -function timeout(ms) { - return new Promise((resolve) => setTimeout(resolve, ms)); -} - -function reverseHexBytes(hexStr) { - let arr = []; - for (let i = 0; i < hexStr.length / 2; i++) { - let pos = hexStr.length - i * 2; - arr.push(hexStr.substring(pos - 2, pos)); - } - return arr.join(""); -} - -const LP_COLLATERAL = web3.utils.toBN(1500000000000000000); -const ONE_COLLATERAL = web3.utils.toBN(1); -const RESIGN_DELAY_BLOCKS = 60; - -async function generateRawTx(lbc, quote, scriptType = "p2pkh") { - const quoteHash = await lbc.hashPegoutQuote(asArray(quote)); - let outputScript; - switch (scriptType) { - case "p2pkh": - outputScript = [0x76, 0xa9, 0x14, ...quote.deposityAddress.slice(1), 0x88, 0xac] - break; - case "p2sh": - outputScript = [0xa9, 0x14, ...quote.deposityAddress.slice(1), 0x87] - break; - case "p2wpkh": - outputScript = [0x00, 0x14, ...bech32.fromWords(quote.deposityAddress.slice(1))] - break; - case "p2wsh": - outputScript = [0x00, 0x20, ...bech32.fromWords(quote.deposityAddress.slice(1))] - break; - case "p2tr": - outputScript = [0x51, 0x20, ...bech32m.fromWords(quote.deposityAddress.slice(1))] - break; - default: - throw new Error("Invalid scriptType"); - } - const outputScriptFragment = web3.utils.bytesToHex(outputScript).slice(2); - const outputSize = (outputScriptFragment.length / 2).toString(16) - const btcTx = `0x0100000001013503c427ba46058d2d8ac9221a2f6fd50734a69f19dae65420191e3ada2d40000000006a47304402205d047dbd8c49aea5bd0400b85a57b2da7e139cec632fb138b7bee1d382fd70ca02201aa529f59b4f66fdf86b0728937a91a40962aedd3f6e30bce5208fec0464d54901210255507b238c6f14735a7abe96a635058da47b05b61737a610bef757f009eea2a4ffffffff02a086010000000000${outputSize}${outputScriptFragment}0000000000000000226a20${quoteHash.slice(2)}00000000`; - return btcTx -} - -async function mineBlocks (blocks) { - for (let i = 0; i < blocks; i++) { - await new Promise((resolve, reject) => { - web3.currentProvider.send({ - jsonrpc: "2.0", - method: "evm_mine", - id: 1 - }, (error, result) => { - if (error) { - return reject(error); - } - return resolve(result); - }); - }); - } -}; - -function parseLiquidityProvider(contractLp) { - return { - id: parseInt(contractLp.id), - provider: contractLp.provider, - name: contractLp.name, - apiBaseUrl: contractLp.apiBaseUrl, - status: contractLp.status, - providerType: contractLp.providerType, - }; -} - -module.exports = { - getTestQuote, - getTestPegOutQuote, - asArray, - ensureLiquidityProviderAvailable, - LP_COLLATERAL, - ONE_COLLATERAL, - timeout, - reverseHexBytes, - generateRawTx, - mineBlocks, - RESIGN_DELAY_BLOCKS, - parseLiquidityProvider -}; diff --git a/test/utils/quotes.ts b/test/utils/quotes.ts new file mode 100644 index 0000000..1bf1db1 --- /dev/null +++ b/test/utils/quotes.ts @@ -0,0 +1,137 @@ +import { HardhatEthersSigner } from "@nomicfoundation/hardhat-ethers/signers"; +import { QuotesV2 } from "../../typechain-types"; +import { + DECODED_P2PKH_ZERO_ADDRESS_TESTNET, + DECODED_TEST_FED_ADDRESS, + DECODED_TEST_P2PKH_ADDRESS, +} from "./constants"; +import { randomBytes } from "crypto"; +import { BigNumberish, BytesLike } from "ethers"; +import { toLeHex } from "./encoding"; +import { BtcAddressType, getTestBtcAddress } from "./btc"; + +const now = () => Math.floor(Date.now() / 1000); // ms to s + +export function getTestPeginQuote(args: { + lbcAddress: string; + liquidityProvider: HardhatEthersSigner; + value: BigNumberish; + destinationAddress: string; + refundAddress: string; + data?: BytesLike; + productFeePercentage?: number; +}): QuotesV2.PeginQuoteStruct { + // TODO if at some point DAO integration is re activated, this default value should be updated to not be 0 + const productFeePercentage = args.productFeePercentage ?? 0; + const productFee = (BigInt(productFeePercentage) * BigInt(args.value)) / 100n; + + const quote: QuotesV2.PeginQuoteStruct = { + fedBtcAddress: DECODED_TEST_FED_ADDRESS.slice(1), // remove version byte + lbcAddress: args.lbcAddress, + liquidityProviderRskAddress: args.liquidityProvider.address, + btcRefundAddress: DECODED_P2PKH_ZERO_ADDRESS_TESTNET, + rskRefundAddress: args.refundAddress, + liquidityProviderBtcAddress: DECODED_TEST_P2PKH_ADDRESS, + callFee: "100000000000000", + penaltyFee: "10000000000000", + contractAddress: args.destinationAddress, + data: args.data ?? "0x", + gasLimit: 21000, + nonce: BigInt("0x" + randomBytes(7).toString("hex")), + value: args.value, + agreementTimestamp: now(), + timeForDeposit: 3600, + callTime: 7200, + depositConfirmations: 10, + callOnRegister: false, + productFeeAmount: productFee, + gasFee: 100, + }; + return quote; +} + +export function getTestPegoutQuote(args: { + lbcAddress: string; + liquidityProvider: HardhatEthersSigner; + refundAddress: string; + value: BigNumberish; + destinationAddressType?: BtcAddressType; + productFeePercentage?: number; +}): QuotesV2.PegOutQuoteStruct { + // TODO if at some point DAO integration is re activated, this default value should be updated to not be 0 + const productFeePercentage = args.productFeePercentage ?? 0; + const productFee = (BigInt(productFeePercentage) * BigInt(args.value)) / 100n; + const destinationAddressType = args.destinationAddressType ?? "p2pkh"; + const nowTimestamp = now(); + + const quote: QuotesV2.PegOutQuoteStruct = { + lbcAddress: args.lbcAddress, + lpRskAddress: args.liquidityProvider.address, + btcRefundAddress: DECODED_P2PKH_ZERO_ADDRESS_TESTNET, + rskRefundAddress: args.refundAddress, + lpBtcAddress: DECODED_TEST_P2PKH_ADDRESS, + callFee: "100000000000000", + penaltyFee: "10000000000000", + deposityAddress: getTestBtcAddress(destinationAddressType), + nonce: BigInt("0x" + randomBytes(7).toString("hex")), + value: args.value, + agreementTimestamp: nowTimestamp, + depositDateLimit: nowTimestamp + 600, + transferTime: 3600, + depositConfirmations: 10, + transferConfirmations: 2, + productFeeAmount: productFee, + gasFee: 100, + expireBlock: 4000, + expireDate: nowTimestamp + 7200, + }; + return quote; +} + +/** + * Get the total value of a pegin or pegout quote + * @param quote The quote to get the total value of + * @returns { bigint } The total value of the quote + */ +export function totalValue( + quote: QuotesV2.PeginQuoteStruct | QuotesV2.PegOutQuoteStruct +): bigint { + return ( + BigInt(quote.value) + + BigInt(quote.callFee) + + BigInt(quote.productFeeAmount) + + BigInt(quote.gasFee) + ); +} + +/** + * Get mock bitcoin block headers for the given quote + * @param args.quote The quote to get the block headers for + * @param args.firstConfirmationSeconds The time in seconds for the first confirmation + * @param args.nConfirmationSeconds The time in seconds for the n-th confirmation + * @returns { firstConfirmationHeader, nConfirmationHeader } The block headers for the first and n-th confirmations. + * Their only populated field will be the block timestamp + */ +export function getBtcPaymentBlockHeaders(args: { + quote: QuotesV2.PeginQuoteStruct | QuotesV2.PegOutQuoteStruct; + firstConfirmationSeconds: number; + nConfirmationSeconds: number; +}) { + const { quote, firstConfirmationSeconds, nConfirmationSeconds } = args; + const firstConfirmationTime = toLeHex( + Number(quote.agreementTimestamp) + firstConfirmationSeconds + ); + const nConfirmationTime = toLeHex( + Number(quote.agreementTimestamp) + nConfirmationSeconds + ); + + const firstConfirmationHeader = + "0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + + firstConfirmationTime + + "0000000000000000"; + const nConfirmationHeader = + "0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + + nConfirmationTime + + "0000000000000000"; + return { firstConfirmationHeader, nConfirmationHeader }; +} diff --git a/testBridge.js b/testBridge.js deleted file mode 100644 index 629e9b7..0000000 --- a/testBridge.js +++ /dev/null @@ -1,31 +0,0 @@ -const Web3 = require("web3"); -const web3Provider = new Web3.providers.HttpProvider('http://localhost:4444'); - -const web3 = new Web3(web3Provider); -web3.eth.handleRevert = true; - -const bridge = new web3.eth.Contract(require("./build/contracts/Bridge.json").abi, "0x0000000000000000000000000000000001000006"); - - -const bh ="0x" + "440fd85092e1f422507b8b307e0773bb95725cfddd81d51b485d9fee11aab4c4"; - - -const tx = "0x" + "82e2cb89e23b4cafb1a91a882db842e77da275fa6c6b4f9ca6ef0ee29caa345d"; - - -const pmt = "1"; - -const mtb = [ - "0x" + "ac30ca450d5782c2523a450d077943b2d8916eeeb100ada79b7f4e9c945c2dd0", -]; -bridge.methods.getBtcTransactionConfirmations(tx, bh, pmt, mtb).call() -.then(t => { - console.log('success') - console.log(t) - -}) -.catch(e => { - console.log('error') - console.log(e) }); - -bridge.methods.getBtcBlockchainBestChainHeight().call().then(console.log) \ No newline at end of file diff --git a/testHashQuote.js b/testHashQuote.js deleted file mode 100644 index 51ee476..0000000 --- a/testHashQuote.js +++ /dev/null @@ -1,46 +0,0 @@ -const Web3 = require("web3"); -const bs58 = require("bs58"); -const BN = Web3.utils.BN; - -const toHex = hash => { - const b = bs58.decode(hash); - return b; -}; - -const toBuffer = (value) => Buffer.from() - -const toHex20 = hash => { - const b = bs58.decode(hash); - return b.slice(1, b.length-4); -}; - -const toHex21 = hash => { - const b = bs58.decode(hash); - return b.slice(0, b.length-4); -}; -const web3Provider = new Web3.providers.HttpProvider('http://localhost:4444'); - -const web3 = new Web3(web3Provider); -web3.eth.handleRevert = true -const json = require("./build/contracts/LiquidityBridgeContract.json"); - -const contract = new web3.eth.Contract(json.abi, "0xC9dB73F54D43479b1a67DB2284bCFed17b0A13c2"); - -const quotePegOutRegister = { - "lbcAddress": "0xC9dB73F54D43479b1a67DB2284bCFed17b0A13c2", - "liquidityProviderRskAddress": "0x9D93929A9099be4355fC2389FbF253982F9dF47c", - "rskRefundAddress": "0xa554d96413FF72E93437C4072438302C38350EE3", - "fee": "0", - "penaltyFee": "1000000", - "nonce": "4838926104160593202", - "valueToTransfer": "200", - "agreementTimestamp": "1669989762", - "depositDateLimit": "7200", - "depositConfirmations": "2", - "transferConfirmations": "0", - "transferTime": "0", - "expireDate": 1669996962, - "expireBlocks": 43219 -} - -contract.methods.hashPegoutQuote(quotePegOutRegister).call().then(console.log) diff --git a/testRefundPegout.js b/testRefundPegout.js deleted file mode 100644 index b7789a2..0000000 --- a/testRefundPegout.js +++ /dev/null @@ -1,79 +0,0 @@ -const Web3 = require("web3"); -const web3Provider = new Web3.providers.HttpProvider('http://localhost:4444'); - -const web3 = new Web3(web3Provider); -web3.eth.handleRevert = true; -const json = require("./build/contracts/LiquidityBridgeContract.json"); - -const contract = new web3.eth.Contract(json.abi, "0x1Af2844A588759D0DE58abD568ADD96BB8B3B6D8"); - -const quotePegOutRegister = { - "lbcAddress": "0x1Af2844A588759D0DE58abD568ADD96BB8B3B6D8", - "liquidityProviderRskAddress": "0x9D93929A9099be4355fC2389FbF253982F9dF47c", - "rskRefundAddress": "0xa554d96413FF72E93437C4072438302C38350EE3", - "fee": 1000, - "penaltyFee": 1000000, - "nonce": "8572757636462532616", - "valueToTransfer": 200, - "agreementTimestamp": 1671742578, - "depositDateLimit": 3600, - "depositConfirmations": 2, - "transferConfirmations": 0, - "transferTime": 0, - "expireDate": 1671746178, - "expireBlocks": 5495 -} - - -const bh ="0x" + "440fd85092e1f422507b8b307e0773bb95725cfddd81d51b485d9fee11aab4c4"; - - -const tx = "0x" + "82e2cb89e23b4cafb1a91a882db842e77da275fa6c6b4f9ca6ef0ee29caa345d"; - - -const pmt = "1"; - -const mtb = [ - "0x" + "ac30ca450d5782c2523a450d077943b2d8916eeeb100ada79b7f4e9c945c2dd0", -]; - -contract.methods.refundPegOut(quotePegOutRegister, tx, bh, pmt, mtb).send({from: "0xCD2a3d9F938E13CD947Ec05AbC7FE734Df8DD826", gas: "900000"}) -.then(t => { - console.log('success') - console.log(t) - -}); -contract.methods.getProcessedQuote(Buffer.from(Web3.utils.hexToBytes("0x" + "8089169d67d7c6730f7fb8db0cfdf946f91c30ab8001d27370a6e4efc5e03179"))).call().then(console.log) -contract.methods.getPegOutBalance("0xa554d96413FF72E93437C4072438302C38350EE3").call().then(console.log); - - - -// bridge.methods.getBtcTransactionConfirmations(tx, bh, pmt, mtb).call() -// .then(t => { -// console.log('success') -// console.log(t) - -// }) -// .catch(e => { -// console.log('error') -// console.log(e) }); - -// bridge.methods.registerBtcTransaction("0x02000000031c906a7af99bf059bfad3169e3fdc35949efbc9cfab7acf4222c3d5f972fd469000000006a4730440220484cbb1ad386de74e080d1609981c662b637975329130a335f2a91515bbf347c0220320da0fa9f699ffa79f14d4843d622c55f2881796ba45f97cce8b56362a051060121027e05478598c0798f2059632058284e907b2ae164e9e043549a719e87c6a9da90feffffffdce43e4d6aea558f7dcefa4b51f4a133d7fb71acbf67eb8f3971f6fa500a46480000000048473044022023834902b46e45df06de26d1bf425cd2ac752341ea42ab0bd1a67522c6bc904002205474959a01df092584d5e086b84e76e95bfbe7751d012817b6a40aae9717697c01feffffffa08e305897a37cd974bc4f076d2e88ba5da7f59992fa27fe38e910816078cadc00000000484730440220485a2f214a71218e93812c2f7863c2b9ecc74153a5972054eb73f83a8438444002207adaa10fb3ff176e9e6816c0ef80599be0540a9f8d3d4d68ee6ae9fe64f9e88101feffffff0200e1f5050000000017a91497433ae1859cb691744621cdf4b007cfaebc169d87fa0a8200000000001976a91497474ad4463d16942ed496be29a61adb207a3e1b88ac59050000", -// 1370, "0x41b049db5b9e365bf8b3e0ea595c06af8d5fd5d5b7f8031beae2ebb1f4f8e661" -// ).send({from: "0xCD2a3d9F938E13CD947Ec05AbC7FE734Df8DD826", gas: "900000"}).then(console.log) -// console.log(web3.eth.accounts.decrypt({"address":"9d93929a9099be4355fc2389fbf253982f9df47c","crypto":{"cipher":"aes-128-ctr","ciphertext":"2f6b816b46ea7e9917acad870e4acb8fae1ac57535d20d9f7f5bbd6fc9ceea6f","cipherparams":{"iv":"5d57f07627bfab8e840fea6b7cbeb123"},"kdf":"scrypt","kdfparams":{"dklen":32,"n":262144,"p":1,"r":8,"salt":"5272e0072f0fb5d53171d250729979777abc65f4bd946a995397c26eef33ef92"},"mac":"f7ccbf7492edf922f11d67b5ff864d7d5b5df845586b0669af563626ba1ddad8"},"id":"f344d854-cea8-479c-93ff-0f496e9a4df3","version":3}, "test")) - -async function main() { - // // console.log(Web3.utils.hexToBytes("0x")) - // const txHeight = await bridge.methods.getBtcTxHashProcessedHeight("4ad9e96e6cb5387d20e0819e28e74cf5ec2eeea59126bc6a3231b1e215bae52e").call(); - // console.log("🚀 ~ file: testRefundPegout.js ~ line 75 ~ main ~ txHeight", txHeight) - // const response = bestHeight - txHeight + 1; - // console.log("🚀 ~ file: testRefundPegout.js ~ line 75 ~ main ~ response", response) - // await web3.eth.sendTransaction({ from: "0xCD2a3d9F938E13CD947Ec05AbC7FE734Df8DD826", to: "0x9D93929A9099be4355fC2389FbF253982F9dF47c", value: "9000000" }); - - await web3.eth.accounts.wallet.add("0x87ce4239eef3d02cf31223490cd686f6a3d2d338af58646ea36be24c04a926b2"); - const response = await contract.methods.refundPegOut(quotePegOutRegister, tx, bh, pmt, mtb).send({from: "0x9D93929A9099be4355fC2389FbF253982F9dF47c", gas: "6800000"}) - console.log(response); -} - -main(); \ No newline at end of file diff --git a/testRegisterPegout.js b/testRegisterPegout.js deleted file mode 100644 index b56fd72..0000000 --- a/testRegisterPegout.js +++ /dev/null @@ -1,31 +0,0 @@ -const Web3 = require("web3"); -const web3Provider = new Web3.providers.HttpProvider('http://localhost:4444'); - -const web3 = new Web3(web3Provider); -web3.eth.handleRevert = true -const json = require("./build/contracts/LiquidityBridgeContract.json"); - -const contract = new web3.eth.Contract(json.abi, "0x1Af2844A588759D0DE58abD568ADD96BB8B3B6D8"); - -const quotePegOutRegister = { - "lbcAddress": "0x1Af2844A588759D0DE58abD568ADD96BB8B3B6D8", - "liquidityProviderRskAddress": "0x9D93929A9099be4355fC2389FbF253982F9dF47c", - "rskRefundAddress": "0xa554d96413FF72E93437C4072438302C38350EE3", - "fee": 1000, - "penaltyFee": 1000000, - "nonce": "8572757636462532616", - "valueToTransfer": 200, - "agreementTimestamp": 1671742578, - "depositDateLimit": 3600, - "depositConfirmations": 2, - "transferConfirmations": 0, - "transferTime": 0, - "expireDate": 1671746178, - "expireBlocks": 5495 -} - - - -const sig = Web3.utils.hexToBytes("0x"+"7869400876f1f56f2d7f926961ac98476dc51ba507b1c403690a348e2bd88bab64ec265ce63186aec7afb8f862db919707fe0f23c2ee7e1d033fc51e3403e48b1c"); - -contract.methods.registerPegOut(quotePegOutRegister, Buffer.from(sig)).send({from: "0xCD2a3d9F938E13CD947Ec05AbC7FE734Df8DD826",value: "1200", gas: "900000"}).then(console.log) \ No newline at end of file diff --git a/truffle-config.js b/truffle-config.js deleted file mode 100644 index 0bf0bbc..0000000 --- a/truffle-config.js +++ /dev/null @@ -1,89 +0,0 @@ -require('dotenv').config() -const HDWalletProvider = require('@truffle/hdwallet-provider'); - -const fs = require('fs'); -let mnemonic; -try { - mnemonic = fs.readFileSync(".secret").toString().trim(); -} catch (e) { - mnemonic = 'INVALID'; -} - -module.exports = { - mocha: { - enableTimeouts: false, - timeout: 1000000 - }, - plugins: ["truffle-contract-size"], - networks: { - ganache: { - host: '127.0.0.1', - port: 7545, - network_id: 5777, - gas: 200000000 - }, - rskRegtest: { - host: '127.0.0.1', - port: 4444, - network_id: 33, - }, - alphanet: { - provider: () => new HDWalletProvider({ - mnemonic, - providerOrUrl: process.env.ALPHANET_RPC_URL, - derivationPath: "m/44'/60'/0'/0/", - pollingInterval: 30000, - }), - port: 4444, - network_id: 78 - }, - rskDevelopment: { - provider: () => new HDWalletProvider({ - privateKeys: [process.env.DEV_SIGNER_PRIVATE_KEY], - providerOrUrl: process.env.TESTNET_RPC_URL, - derivationPath: "m/44'/60'/0'/0/", - pollingInterval: 30000, - }), - network_id: 31, - deploymentPollingInterval: 30000, - networkCheckTimeout: 10000, - timeoutBlocks: 200 - }, - rskTestnet: { - provider: () => new HDWalletProvider({ - mnemonic, - providerOrUrl: process.env.TESTNET_RPC_URL, - derivationPath: "m/44'/37310'/0'/0/", - pollingInterval: 30000, - }), - network_id: 31, - deploymentPollingInterval: 30000, - networkCheckTimeout: 10000, - timeoutBlocks: 200 - }, - rskMainnet: { - provider: () => new HDWalletProvider({ - privateKeys: [process.env.MAINNET_SIGNER_PRIVATE_KEY], - providerOrUrl: process.env.MAINNET_RPC_URL, - derivationPath: "m/44'/137'/0'/0/", - pollingInterval: 30000, - }), - network_id: 30, - deploymentPollingInterval: 30000, - networkCheckTimeout: 10000, - timeoutBlocks: 200 - } - }, - compilers: { - solc: { - version : "0.8.18", - settings: { // See the solidity docs for advice about optimization and evmVersion - optimizer: { - enabled: true, - runs: 1 - }, - // evmVersion: "byzantium" - } - } - } -} diff --git a/tsconfig.json b/tsconfig.json new file mode 100644 index 0000000..73d80a1 --- /dev/null +++ b/tsconfig.json @@ -0,0 +1,14 @@ +{ + "compilerOptions": { + "allowSyntheticDefaultImports": true, + "target": "es2020", + "module": "commonjs", + "esModuleInterop": true, + "forceConsistentCasingInFileNames": true, + "strict": true, + "skipLibCheck": true, + "resolveJsonModule": true, + "noUnusedLocals": true, + "noUnusedParameters": true + } +}